Look for any podcast host, guest or anyone
Showing episodes and shows of

Bruce Eckel & James Ward

Shows

Happy Path ProgrammingHappy Path Programming#103 AI Augmented Programming with ⁠⁠Stephan Janssen⁠⁠⁠Stephan Janssen⁠ is always on the bleeding edge of both helping developers grow and with how he uses technology to accomplish amazing things. He led the creation of Devoxx but is a coder at heart. Stephan shares his journey with AI, both as a "library" in his applications and also as an "assistant" that helps him iterate and program more quickly. Resources: DevoxxGenie IntelliJ Plugin Ollama LangChain for Java LMstudio Llama.cpp James on The AI Native Dev Podcast: Rethinking Software Development: James Ward on AI's Role in Software Testing and Coding Discuss this episode: ⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠discord.gg/XVKD2uPKyF⁠2024-08-201h 07Happy Path ProgrammingHappy Path Programming#100 Thinking about Thinking with Diana MontalionDiana Montalion teaches us about Systems Thinking and why it matters for those of us building software. Diana is founder of ⁠Mentrix⁠, which teaches "systems architecture skills for an increasingly complex world." Pre-Order Diana's book: Learning Systems Thinking: Essential Nonlinear Skills and Practices for Software Professionals Discuss this episode: ⁠⁠⁠⁠⁠⁠discord.gg/XVKD2uPKyF2024-06-191h 31Happy Path ProgrammingHappy Path Programming#99 The Agile Illusion with Trond HjortelandWe chat with Trond Hjorteland about Agile and why it hasn't led to successful outcomes in many traditional organizations. Mentioned and related resources: Trond & João Rosa's training on Agile + DP2 Open Systems Theory LinkedIn Group for Open Systems Theory More material on Open Systems Theory Resource List from Trond Some of Trond's recorded talks 2024-06-1055 minHappy Path ProgrammingHappy Path Programming#98 Continuous Deployment with Valentina ServileWe chat with Valentina Servile about her upcoming book on Continuous Deployment and reducing the risks to keeping HEAD not just always deployable, but automatically deployed to production. Book for preorder on Amazon: Continuous Deployment: Enable Faster Feedback, Safer Releases, and More Reliable Software Discuss this episode: ⁠⁠⁠⁠⁠discord.gg/XVKD2uPKyF2024-04-211h 06Happy Path ProgrammingHappy Path Programming#97 The Pkl Configuration Language with Philip HölzenspiesWe chat with Philip Hölzenspies, one of the maintainers of the new Pkl configuration language (pkl-lang.org). Resources: James' Pkl for GitHub Actions: github.com/jamesward/pklgha Discuss this episode: ⁠⁠⁠⁠discord.gg/XVKD2uPKyF2024-04-051h 14Happy Path ProgrammingHappy Path Programming#96 Compassionate Coding with April WenselWe chat with April Wensel, founder of Compassionate Coding, about helping programmers bring more compassion to themselves and others. Resources: Confessions of a Recovering Jerk Programmer Marshall Rosenberg - Nonviolent Communication Kristin Neff - Self-Compassion Karen Armstrong - Twelve Steps to a Compassionate Life UC Berkeley Greater Good Science Center definition of compassion Oren Jay Sofer's Needs & Feelings Lists Discuss this episode: ⁠⁠⁠discord.gg/XVKD2uPKyF2024-03-2259 minHappy Path ProgrammingHappy Path Programming#95 21st Century Databases with Gwen ShapiraWe chat with Gwen Shapira, co-founder of Nile, about her journey to creating a virtualized, serverless Postgres database service. We also dive into the challenges with traditional data architectures and approaches like ORMs. Discuss this episode: ⁠⁠discord.gg/XVKD2uPKyF2024-03-101h 00Happy Path ProgrammingHappy Path Programming#94 Build Ops & Developer Productivity With Trisha GeeWe chat with Trisha Gee about Test Driven Development (TDD), flaky tests, ops & observability for builds, and developer productivity. Mentioned TDD Article: The beautiful theory of TDD and the reality check of practice Discuss this episode: ⁠discord.gg/XVKD2uPKyF2024-02-161h 07Happy Path ProgrammingHappy Path Programming#93 Nerd Sniping via the 1B Row Challenge with Gunnar MorlingWhen Gunnar Morling announced the 1 Billion Row Challenge a few weeks ago, he had no idea it'd go crazy viral. Resources: Challenge details: www.morling.dev/blog/one-billion-row-challenge Rust 1BRC Blog: aminediro.com/posts/billion_row/ Cliff Click's implementation walkthrough: www.youtube.com/watch?v=NJNIbgV6j-Y James' very slow Scala ZIO implementation: github.com/jamesward/1brc-zio/blob/main/src/main/scala/Main.scala Discuss this episode: discord.gg/XVKD2uPKyF2024-01-1959 minHappy Path ProgrammingHappy Path Programming#92 Virtual Threads Looming with Adam WarskiWe chat with Adam Warski about Loom, Virtual Threads, and his Loom-based Scala library, Ox, for structured concurrency & Go-Like Channels. Referenced articles & code: Ox EasyRacer Client Go statement considered harmful Go-like selects using jox channels in Java Limits of Loom's performance Fast and Scalable Channels in Kotlin Coroutines Discuss this episode: ⁠⁠⁠⁠⁠https://discord.gg/nPa76qF2024-01-121h 07Happy Path ProgrammingHappy Path Programming#91 'Tis The Season For Reducing Gradle FrictionAnnouncing Graboo, a collection of experiments to reduce friction with Gradle. Repo: https://github.com/jamesward/graboo Buy your Happy Path Programming Shirt: https://happy-path.printify.me/products Discuss this episode: ⁠⁠⁠⁠https://discord.gg/nPa76qF2023-12-221h 07Happy Path ProgrammingHappy Path Programming#90 The Best Manager with Sushila SahayMost of us have managers but they aren't always great. We chat with James' best manager, Sushila Sahay, about what makes her such a great manager. We also dive a bit into open source business models since Sushila has deep experience in that realm. Discuss this episode: ⁠⁠⁠https://discord.gg/nPa76qF2023-12-1544 minHappy Path ProgrammingHappy Path Programming#89 Algebraic Effects with Kyo (Flavio Brasil)We learn about Algebraic Effects with the Scala library Kyo ( getkyo.io) from the creator, Flavio Brasil. Discuss this episode: ⁠⁠https://discord.gg/nPa76qF2023-12-081h 07Happy Path ProgrammingHappy Path Programming#88 Developers Thriving In the Flow with Arty StarrArty Starr is a PhD student and entrepreneur focused on helping developers thrive. We chat about her research on developer momentum and ways that developers can find joy through more time in the flow state. Referenced resources: SpringOne Talk Arty's Idea Flow Book FlowInsight Discuss this episode: ⁠https://discord.gg/nPa76qF2023-10-201h 15Happy Path ProgrammingHappy Path Programming#87 Diving Deeper into Wasm with Zalim BashorovZalim Bashorov (@bashorov) works on Kotlin/Wasm at JetBrains and answers our many questions about Wasm, GC, the Component Model, and other future proposals. Discuss this episode: https://discord.gg/nPa76qF2023-10-061h 07Happy Path ProgrammingHappy Path Programming#86 The Journey to OCaml with SabineSabine went from acedemia and a PhD in formal methods, to Python, Elm, Haskell, and now OCaml. We chat about this journey and some of the reasons why OCaml is an awesome modern language. Discuss this episode: https://discord.gg/nPa76qF2023-09-291h 10Happy Path ProgrammingHappy Path Programming#85 Scala, Rust, and Durable Computing with John De GoesOur chat with John De Goes starts with his Scala & Rust journeys, then goes into Golem Cloud, a serverless durable computing platform underpinned by Wasm, and ends with a discussion about whether business applications really need parallelism. Discuss this episode: https://discord.gg/nPa76qF2023-09-151h 19Happy Path ProgrammingHappy Path Programming#84 Inevitable Failure with Dormain DrewitzWe chat with Dormain Drewitz about failure and reliability. Ironically our recording software crashed near the end of the episode but we recovered and wrapped things up. Referenced Article: 10 Years of Failure Friday at PagerDuty: Fostering Resilience, Learning and Reliability Discuss this episode: https://discord.gg/nPa76qF2023-09-061h 09Happy Path ProgrammingHappy Path Programming#83 Rust Developer Retreat & Structured ConcurrencyAt the Rust Developer Retreat we explored Structured Concurrency with Tokio. With the attendees we chat about our projects and things learned, liked, and disliked about Rust. Then dive into Structured Concurrency generally and specific implementations. Discuss this episode: https://discord.gg/nPa76qF2023-08-2158 minHappy Path ProgrammingHappy Path Programming#82 The Future of ProgrammingBruce and James chat about the future of programming. Discuss this episode: https://discord.gg/nPa76qF2023-07-071h 12Happy Path ProgrammingHappy Path Programming#81 TypeScript & Effects with Michael ArnaldiMichael created Effect, a functional effect system inspired by Scala ZIO, for TypeScript. We chat about Functional Programming, the TypeScript language, and Effects. Discuss this episode: https://discord.gg/nPa76qF2023-06-301h 06Happy Path ProgrammingHappy Path Programming#80 Investing in Developer Tools with Renee ShahRenee Shah is a partner at Amplify Partners, an early stage venture capital firm. We discuss some broad industry trends: Edge, Wasm, Distributed Systems, Functional Programming, and much more! Discuss this episode: https://discord.gg/nPa76qF2023-05-1445 minHappy Path ProgrammingHappy Path Programming#79 Domain-Driven Design and Moduliths with Oliver DrotbohmWe chat with Oliver Drotbohm about what Domain-Driven Design is and how it might intersect with Microservices, Monoliths, or Moduliths. Mentioned resources: Parnas on modularity Chris Richardson – Introducing Assemblage - a microservice architecture definition process Spring Modulith Project Introducing Spring Modulith Discuss this episode: https://discord.gg/nPa76qF2023-05-061h 02Happy Path ProgrammingHappy Path Programming#78 Immutability & IDLs for Declarative Services with Jakub KozłowskiFirst a short rant about mutability followed by learning about Smithy, an Interface Description Language (IDL), with Jakub Kozłowski. Discuss this episode: https://discord.gg/nPa76qF2023-04-281h 16Happy Path ProgrammingHappy Path Programming#77 Quarkus and Microservices with Holly CumminsHolly Cummins, a Senior Principal Software Engineer on Quarkus at Redhat, joins us to chat about Microservices and Quarkus. Discuss this episode: https://discord.gg/nPa76qF2023-04-051h 00Happy Path ProgrammingHappy Path Programming#76 WebAssembly (Wasm) "The Web Finds a Way" with Vivek SekharWebAssembly (Wasm) finds a way for the web to move forward to near-native performance while avoiding the limitations of JavaScript.  In this episode we chat with Vivek Sekhar, a product manager on the Chrome team, about all the Wasm things and how they relate to a better foundation for cross-platform, high performance apps, in the browser, on the cloud, and maybe just everywhere. Discuss this episode: https://discord.gg/nPa76qF2023-02-271h 01Happy Path ProgrammingHappy Path Programming#75 Haskell "Not as Scary as You Think" with Kris JenkinsWe learn the motivations behind Haskell and why it is the pinnacle of Functional Programming from Kris Jenkins, a Developer Advocate at Confluent. Discuss this episode: https://discord.gg/nPa76qF2023-02-181h 07Happy Path ProgrammingHappy Path Programming#74 Developer Joy = Developer Productivity with Justin ReockDeveloper Productivity Engineering (DPE) is a set of tools & practices that help engineers be more productive. We chat with Justin Reock, field CTO at Gradle, about why more organizations need DPE and what that really means.  Learn more at: https://gradle.com/developer-productivity-engineering/ Discuss this episode: https://discord.gg/nPa76qF2023-01-131h 07Happy Path ProgrammingHappy Path Programming#73 Nix - Functional Programming for Software Packaging with Domen KožarAfter being told many times that Nix is all we dream for when it comes to software packaging, we finally chat with Domen Kožar and learn all about Nix. Discuss this episode: https://discord.gg/nPa76qF2023-01-061h 02Happy Path ProgrammingHappy Path Programming#72 Pants Makes Developers Happier & More Productive with Benjy WeinbergerThe Pants build tool is polyglot (Python, Java, Kotlin, Scala, Go, etc) and focused on helping developers be more productive and happier.  We chat with a co-creator of Pants, Benjy Weinberger, about the history, motivations, and future of the build tool. Discuss this episode: https://discord.gg/nPa76qF2022-12-161h 08Happy Path ProgrammingHappy Path Programming#71 Functional Programming in Kotlin with Simon Vergauwen (Sorry about the terrible audio)Simon Vergauwen shares about Arrow, a collection of Functional Programming libraries for Kotlin.  Sincere apologies for Bruce & James' bad audio.  We forgot to change our input device but figured we'd still publish this as it is tolerable and Simon has so much good stuff to say.  (His audio is great) Discuss this episode: https://discord.gg/nPa76qF2022-12-011h 03Happy Path ProgrammingHappy Path Programming#70 Understanding Software Through Bees & Biology With Grace JansenGrace Jansen joins us to chat about how bees and biology can help us better understand software development tools & paradigms like Reactive, Kubernetes, and maybe parts of the 15 Factor App methodology (a modernized version of the Twelve-Factor App methodology). Discuss this episode: https://discord.gg/nPa76qF2022-10-311h 03Happy Path ProgrammingHappy Path Programming#69 Polymorphism UnboundBruce continues his archaeological dig into the foundations of mainstream programming. Referenced blog: Why Are There Functions? Discuss this episode: https://discord.gg/nPa76qF2022-09-301h 07Happy Path ProgrammingHappy Path Programming#68 The End of Ivory Tower Architecture with Andrew Harmel-LawAndrew Harmel-Law shares a better way to make decisions in software teams using the "Advice Process" which he has used in a number of teams resulting in happier, more productive programmers. Discuss this episode: https://discord.gg/nPa76qF2022-09-031h 08Happy Path ProgrammingHappy Path Programming#67 Swallowed by a Python with Luciano RamalhoFinally Bruce gets a whole episode about Python with our friend Luciano Ramalho, author of Fluent Python.  In the words of Luciano: "Thanks James and Bruce for the most enjoyable podcast panel I ever had!" Discuss this episode: https://discord.gg/nPa76qF2022-08-311h 23Happy Path ProgrammingHappy Path Programming#66 The Journey to Rust with Christopher HuntNo doubt that Rust is hot right now. We chat with Christopher Hunt about his journey through Java, Scala, and many other languages and learn why he is now using Rust. Discuss this episode: https://discord.gg/nPa76qF2022-08-141h 20Happy Path ProgrammingHappy Path Programming#65 Rod's Gambit - Spring, Scala, TypeScript, and Chess with Rod JohnsonRod Johnson (creator of Spring Framework) reflects on his programming and chess journeys. References: ScalaDays 2013 Talk Stockfish Chess Engine Discuss this episode: https://discord.gg/nPa76qF2022-08-081h 04Happy Path ProgrammingHappy Path Programming#64 Building Build Tools is Hard with Josh SuerethBruce and James often rant about build tools but it turns out they are hard to get right. We dive into the reasons with Josh Suereth who maintained sbt (a Scala build tool) for a number of years. Discuss this episode: https://discord.gg/nPa76qF2022-07-221h 03Happy Path ProgrammingHappy Path Programming#63 ZIO 2 dot Ohhhhh! with Bill FrasureOur co-author on Effect Oriented Programming, Bill Frasure, joins us to chat about his programming journey and his involvement in last week's ZIO 2.0 release. Book repo: https://github.com/EffectOrientedProgramming/book Discuss this episode: https://discord.gg/nPa76qF2022-07-011h 26Happy Path ProgrammingHappy Path Programming#62 Musing About Local-First Sync & CRDTs with Mark McGranaghanMark McGranaghan joins us to talk about how the Muse app uses Conflict-free Replicated Data Types (CRDTs) for local-first data synchronization. More details on Local-first: https://www.inkandswitch.com/local-first/ Referenced article about hybrid logical clocks: https://archive.jlongster.com/using-crdts-in-the-wild Discuss this episode: https://discord.gg/nPa76qF2022-05-271h 06Happy Path ProgrammingHappy Path Programming#61 Compassionate Communities with Tonya MooreTonya Moore has been helping build developer communities for years. We discuss how to deal with jerks and the importance of building on a foundation of compassion. Referenced blog from Bill Venners: https://www.artima.com/articles/compassion-in-our-community Discuss this episode: https://discord.gg/nPa76qF2022-05-131h 04Happy Path ProgrammingHappy Path Programming#60 Kotlin Language Design with Roman ElizarovKotlin Language designer Roman Elizarov, joins us to talk about finding the right balances when designing Kotlin. Discuss this episode: https://discord.gg/nPa76qF2022-04-121h 02Happy Path ProgrammingHappy Path Programming#59 Goetz's Law, Dhall, and Nix (With Gabriella Gonzalez)Gabriella Gonzalez joins to teach us about the Dhall configuration language they created and Nix. References: The Dhall configuration language Henk: a typed intermediate language Pants Build Tool The Purely Functional Software Deployment Model Haskell for all: How to use NixOS for lightweight integration tests How to market Haskell to a mainstream programmer Discuss this episode: https://discord.gg/nPa76qF2022-03-2959 minHappy Path ProgrammingHappy Path Programming#58 Scala 3: Significant indentation and other things we love (With Martin Odersky)Martin Odersky, creator of Scala, joins us to chat about Scala, Effects, Exceptions, Experiments, and other Exciting stuff. Discuss this episode: https://discord.gg/nPa76qF2022-03-201h 08Happy Path ProgrammingHappy Path Programming#57 Technology Trade Offs: Python & Kotlin (With Matt Anger)We explore with Matt Anger a blog he wrote about migrating from Python to Kotlin and the trade offs engineering teams make when deciding which technologies to use. Discuss this episode: https://discord.gg/nPa76qF2022-03-151h 00Happy Path ProgrammingHappy Path Programming#56 Feedback Loops & Software is Like Surgery (With Daniel Terhorst-North)We explore with Daniel Terhorst-North how social and technical feedback loops can help us build the right thing faster. Discuss this episode: https://discord.gg/nPa76qF2022-03-101h 26Happy Path ProgrammingHappy Path Programming#55 Apache Kafka - Like Functional Programming but for Data (With Anna McDonald)We chat with the Kafka Duchess, Anna McDonald, about Apache Kafka, CQRS, Event Sourcing, and of-course Functional Programming. Note: There was a bit of echo for a few minutes but we did resolve it around 8 minutes in. Discuss this episode: https://discord.gg/nPa76qF2022-03-031h 08Happy Path ProgrammingHappy Path Programming#54 Flix: Designing a principled programming language with Magnus MadsenMagnus Madsen, language designer for the Flix programming language, joins us to talk about the driving principles and innovative features of the language. Discuss this episode: https://discord.gg/nPa76qF2022-02-051h 16Happy Path ProgrammingHappy Path Programming#53 Open Source: Free as in Hot Dogs (With Donald Fischer)Open Source is an essential foundation for pretty much everything. How do we fund it appropriately? What do we do about Log4Shell-types of issues?  Donald Fischer of Tidelift joins us to discuss these economic and human issues. Discuss this episode: https://discord.gg/nPa76qF2022-01-211h 01Happy Path ProgrammingHappy Path Programming#52 Reveling in Nonsense With Josh LongA stroll through 20 years of Spring with Josh Long. Also: Bruce, James, and Josh announce their new Ska band. Discuss this episode: https://discord.gg/nPa76qF2022-01-151h 22Happy Path ProgrammingHappy Path Programming#51 James' New Kotlin PM JobHope you all have a happy & healthy holiday! Discuss this episode: https://discord.gg/nPa76qF2021-12-241h 03Happy Path ProgrammingHappy Path Programming#50 Testcontainers (Like Uber but for Integration Tests) with Sergei EgorovTestcontainers are one of James' favorite modern technologies and in this episode we chat with Sergei Egorov, one of the project creators.  We learn about what Testcontainers are and the new Testcontainers Cloud service created by Sergei's new company, AtomicJar. Discuss this episode: https://discord.gg/nPa76qF2021-12-171h 05Happy Path ProgrammingHappy Path Programming#49 Smart Types (Like Regular Types, Only Smarter) with Jorge VasquezJorge Vasquez has been working on a way to have more precise data modeling while not sacrificing performance or ergonomics. Smart Types in ZIO Prelude are the answer, and they are amazing! Discuss this episode: https://discord.gg/nPa76qF2021-12-101h 04Happy Path ProgrammingHappy Path Programming#48 Composability in Distributed Systems - Because Math! With Heather MillerHeather Miller, Computer Science professor at Carnegie Mellon, joins us to talk about her research into composability in distributed systems, the challenges with serialization, and a better approach to Chaos Engineering. Discuss this episode: https://discord.gg/nPa76qF2021-11-191h 02Happy Path ProgrammingHappy Path Programming#47 The Future of Programming Rocs! With Richard FeldmanThe creator of the new Roc programming language, Richard Feldman, joins us to talk about rocking developers worlds' with better tools & paradigms. Discuss this episode: https://discord.gg/nPa76qF2021-11-171h 00Happy Path ProgrammingHappy Path Programming#46 What Problem Does GraalVM Solve? All of them. Featuring Alina YurenkoWe dive deep on GraalVM and learn from Alina Yurenko about all the problems it solves. Discuss this episode: https://discord.gg/nPa76qF2021-11-0559 minHappy Path ProgrammingHappy Path Programming#45 ZIO 2 - Better, Faster, Friendlier with Adam FraserAdam Fraser is a core contributor to Scala ZIO. He joins us to chat about improvements in ZIO 2 and how we can grow adoption. Discuss this episode: https://discord.gg/nPa76qF2021-10-301h 01Happy Path ProgrammingHappy Path Programming#44 Tired of Getting N+1'd by Your ORM? A Chat With Alexander Ioffe.We chat with Alexander Ioffe, maintainer of the Quill library, about database access approaches and Scala metaprogramming. Discuss this episode: https://discord.gg/nPa76qF2021-10-2959 minHappy Path ProgrammingHappy Path Programming#43 Rúnar Bjarnason is Jackhammering the Foundations of ProgrammingWe've mentioned the futuristic Unision programming language many times but now we dive deep with one of the co-founders. Discuss this episode: https://discord.gg/nPa76qF2021-10-251h 04Happy Path ProgrammingHappy Path Programming#42 The answer to life, the universe, and everything is an abstraction with Viktor KlangThe legendary Viktor Klang chats with Bruce & James about information loss, reactive, emergence, and many other mind expanding topics. Discuss this episode: https://discord.gg/nPa76qF2021-10-051h 26Happy Path ProgrammingHappy Path Programming#41 "Never gonna give you up" (FP that is) with Wiem Zine ElabidineBruce and James hear about Wiem's journey in Functional Programming, her contributions to Scala ZIO, and how she never gave up despite the challenges she faced. Discuss this episode: https://discord.gg/nPa76qF2021-09-261h 00Happy Path ProgrammingHappy Path Programming#40 Poisoned Agile with Barry HawkinsBruce and James chat with Barry Hawkins about software methodologies, their triumphs and abuses. Discuss this episode: https://discord.gg/nPa76qF2021-09-171h 16Happy Path ProgrammingHappy Path Programming#39 Cracking the Company Culture Conundrum with Sharon SchmidtAccording to James, Heroku had the best company culture / vibe of anywhere he has worked. Bruce & James talk with Sharon Schmidt who is in large part responsible for creating that magical experience. Discuss this episode: https://discord.gg/nPa76qF2021-09-101h 02Happy Path ProgrammingHappy Path Programming#38 Databases are Insufficient with Jonas BonérJames rants about databases with Jonas Bonér, CEO of Lightbend and creator of Akka. Bruce & James also learn about the actor model, Reactive, and Akka Serverless. Discuss this episode: https://discord.gg/nPa76qF2021-08-271h 04Happy Path ProgrammingHappy Path Programming#37 The Future of Everything with Paul SnivelyPaul Snively helps us see the future of programming. Spoiler: It's Typed & Functional. Referenced talks: Types vs. Tests: An Epic Battle? Type Systems - The Good, Bad and Ugly Discuss this episode: https://discord.gg/nPa76qF2021-08-141h 17Happy Path ProgrammingHappy Path Programming#36 The Freedom of Structured UnconferencesBruce describes his multi-decade journey running conferences and how letting go of control, while still having a structure, has led to conferences where attendees connect in meaningful ways. Discuss this episode: https://discord.gg/nPa76qF2021-08-0653 minHappy Path ProgrammingHappy Path Programming#35 The Pattern of Design PatternsAs usual, Bruce & James try to figure out monads & type classes. Then something new, as they go meta on design patterns. Discuss this episode: https://discord.gg/nPa76qF2021-07-231h 11Happy Path ProgrammingHappy Path Programming#34 Fear, Uncertainty, and Monads with Dick WallFEE, FOO, FUD, and FUM (Fear, Uncertainty, and Monads) - Scala Giant, Dick Wall, joins Bruce and James to talk about life, work, and Functional Programming. Discuss this episode: https://discord.gg/nPa76qF2021-07-091h 01Happy Path ProgrammingHappy Path Programming#33 Rethinking "Thinking in Objects"Object Oriented Programming might just be a series of solutions to self-created problems. Discuss this episode: https://discord.gg/nPa76qF2021-07-021h 02Happy Path ProgrammingHappy Path Programming#32 Adopting Kotlin & FP with Katie LevyKatie Levy joins Bruce & James to talk about how to help teams adopt Kotlin and Functional Programming. Discuss this episode: https://discord.gg/nPa76qF2021-06-1859 minHappy Path ProgrammingHappy Path Programming#31 "ZIO's not a library it's a state of mind" with Kit LangtonBruce and James' coauthor Bill Frasure, joins to talk with Kit Langton, creator of ZIO Magic and many other magical ZIO tools & libraries. Discuss this episode: https://discord.gg/nPa76qF2021-06-111h 00Happy Path ProgrammingHappy Path Programming#30 Programming in (not with) Scala 3 but with Bill VennersBruce and James chat with their long time friend Bill Venners about Scala 3 and the updates to his "Programming in Scala" book. Discuss this episode: https://discord.gg/nPa76qF2021-05-281h 04Happy Path ProgrammingHappy Path Programming#29 Contemplating Computer Cognition with Julie AmundsonBruce and James chat with their friend Julie Amundson about AI, Machine Learning, and many related complexities.  They explore what the journey is like for Data Scientists at medium / large companies where everything from data access to productionizing models, has challenges.  Also we learn about the Metaflow system Julie's team built to make this journey smoother at Netflix. Discuss this episode: https://discord.gg/nPa76qF2021-05-191h 01Happy Path ProgrammingHappy Path Programming#28 PREP - Performant, Reliable, Expressive, and ProductiveBruce, James, and their friend Bill are working on a new book about systems that are Performant, Reliable, Expressive, and Productive. This episode explores those themes with some significant detours along the way. Discuss this episode: https://discord.gg/nPa76qF2021-04-3059 minHappy Path ProgrammingHappy Path Programming#27 Side-Effects of a Scala 3 ReleaseWith the eminent release of Scala 3, we chat about the language changes, effect systems (ZIO), and reliability. Discuss this episode: https://discord.gg/nPa76qF2021-04-231h 03Happy Path ProgrammingHappy Path Programming#26 Dependency Injection - Why Do We Even...All about Dependency Injection, why we do it, and why James thinks it is terrible. Discuss this episode: https://discord.gg/nPa76qF2021-04-161h 02Happy Path ProgrammingHappy Path Programming#25 No Good Build Tools. Blocked on Reactive.Once again we lament build tools. Then we get blocked talking about Reactive, async, non-blocking, actors, and concurrency. Discuss this episode: https://discord.gg/nPa76qF2021-04-091h 05Happy Path ProgrammingHappy Path Programming#24 Vulnerability & Additive Hiring with Dianne MarshBruce & James have a delightful chat with long-time friend Dianne Marsh about changing tech culture to be more vulnerable and diverse. Note: The Non-Violent Communication trainer mentioned in the episode is Karl Steyaert. Discuss this episode: https://discord.gg/nPa76qF2021-04-021h 04Happy Path ProgrammingHappy Path Programming#23 The Modern Java Platform - 2021 EditionJames shares about a blog he posted this week titled: "The Modern Java Platform - 2021 Edition" Discuss this episode: https://discord.gg/nPa76qF2021-03-191h 00Happy Path ProgrammingHappy Path Programming#22 Be the Kindness You Want to See in the Programming WorldSpecial guest Oli joins us to chat about Recursion Schemes, tech conferences, podcasts, and kindness. Discuss this episode: https://discord.gg/nPa76qF2021-03-081h 03Happy Path ProgrammingHappy Path Programming#21 Statically-Dynamic Programming or Dynamically-Static Programming? And Death by 1000 Language QuirksJames is a Dynamic Programming Language Denier but realizes only a part of his code is actually statically typed. And programming languages so full of quirks that you have to hold the quick reference book in your teeth. Discuss this episode: https://discord.gg/nPa76qF2021-02-2751 minHappy Path ProgrammingHappy Path Programming#20 Cultures (not the petri dish variety) & Developer Marketing (also not the petri dish variety)Culture - the hidden force that sometimes reveals itself through code reviews. What is it & how does it form / change? Also, Developer Marketing and how most companies do it wrong. Discuss this episode: https://discord.gg/nPa76qF2021-02-121h 03Happy Path ProgrammingHappy Path Programming#19 Technology Evolution & Adoption - Why So Slow?Change happens, but slowwwwly. How can we accelerate the adoption of new & better programming language features? Should we? Discuss this episode: https://discord.gg/nPa76qF2021-02-0655 minHappy Path ProgrammingHappy Path Programming#18 "But Will it Scale?" and Other Illusions of ControlSoftware architectures, organizational management, hiring practices, and many other normal part of life give us an illusion of control.  But is there another way? Discuss this episode: https://discord.gg/nPa76qF2021-01-181h 10Happy Path ProgrammingHappy Path Programming#17 The Problem with Gradle; Java 11; SemVer Isn'tBruce and James have struggled with Gradle for years and Bruce this week blogged about some of his gripes: The Problem with Gradle. This prompted a lengthy response from Cédric Champeau. James has mostly stuck to Java 8 and Bruce is exploring Java 11. Finally, James rants about SemVer for the 3.1.4'th time. Discuss this episode: https://discord.gg/nPa76qF2021-01-071h 08Happy Path ProgrammingHappy Path Programming#16 Kotlin for Scala Devs. Reflection is the Devil. Meta-Programming.James, as a Scala "True Believer," talks about his experiences with Kotlin and how they compare to Scala. Then he switches gears to rant about runtime reflection which leads to a deeper conversation about meta-programming and alternatives to runtime reflection. Discuss this episode: https://discord.gg/nPa76qF2020-12-191h 07Happy Path ProgrammingHappy Path Programming#15 Atomic Kotlin Done! Cloud Events. TestContainers / Serverless Cassandra. Scala ZIO CLI.Bruce shares exciting news about completing the Atomic Kotlin book. The rest is a mishmash of topics related to newsworthy announcements including Spring Boot Cloud Event support, Serverless + TestContainer + Kubernetes Cassandra support, and Scala ZIO CLI. Discuss this episode: https://discord.gg/nPa76qF2020-12-141h 06Happy Path ProgrammingHappy Path Programming#14 Poly-PolymorphismMost developers have been exposed to inheritance based polymorphism but there are other ways to deal with overlapping functionality. In this episode we talk about ad-hoc polymorphism, parametric polymorphism, and type classes. Discuss this episode: https://discord.gg/nPa76qF2020-12-041h 01Happy Path ProgrammingHappy Path Programming#12 The Rise of Python & (Unrelated) Making Illegal States UnrepresentablePython usage surpasses Java to second place on the Tiobe Index (behind C). Is developer productivity the primary driver? We then switch gears to talk about the concept of "Making Illegal States Unrepresentable" where James continues his crusade against the Builder Pattern. Discuss this episode: https://discord.gg/nPa76qF2020-11-0635 minHappy Path ProgrammingHappy Path Programming#11 Small talk about SmalltalkOur friend Joey Gibson joins us to talk about Smalltalk, the well known grandfather of Object Oriented Programming.  James is assigned some homework to get a Smalltalk web app running on Google Cloud Run, which he did (after recording). Check out the source: https://github.com/jamesward/hello-pharo Discuss this episode: https://discord.gg/nPa76qF2020-10-301h 06Happy Path ProgrammingHappy Path Programming#10 Gazing Into the Programming Crystal Ball and Can Organizations Adopt Inner Source?We start off discussing what the future of programming might be... Can developers stop thinking about resource limitations?  Can we make the "right path" easy?  Then we dive into Inner Source and the organizational & cultural challenges with adopting it. Discuss this episode: https://discord.gg/nPa76qF2020-10-201h 06Happy Path ProgrammingHappy Path Programming#9 Buildpacks, Containers, Kubernetes, Happy Path Programming, Rust, and gRPCWe start off talking about Cloud Native Buildpacks and Containers which of-course leads to James trying to explain Kubernetes.  Then we dive into what "Happy Path Programming" means and how, while the term is somewhat derogatory, it is what we ultimately want.  We end with a discussion about Bruce's recent explorations into Rust and gRPC. Discuss this episode: https://discord.gg/nPa76qF2020-10-161h 07Happy Path ProgrammingHappy Path Programming#8 Kotlin Revisited with Cedric BeustLong-time Java author & expert, Cedric Beust, joins us to revisit some of the topics from our Kotlin episodes.  We talk more deeply about checked exceptions, null safety, the builder pattern, build systems, and of-course Monads. Discuss this episode: https://discord.gg/nPa76qF2020-10-071h 06Happy Path ProgrammingHappy Path Programming#7 Why Adopt New Technology? And Monads! Monads! Monads!What are the reasons to adopt or migrate to a new technology?  What prevents you from doing so?  We explore that question and the differences between green-field and brown-field.  Then we finally dive deep into Monads trying to conquer the Curse of the Monad. Discuss this episode: https://discord.gg/nPa76qF2020-09-3056 minHappy Path ProgrammingHappy Path Programming#6 The Crusade Against Custom Declarative Languages and Meta-Bike-SheddingJames officially launches his crusade against custom declarative languages and then we bike-shed about bike-shedding; exploring ways to make decisions for trivial problems. Discuss this episode: https://discord.gg/nPa76qF2020-09-251h 07Happy Path ProgrammingHappy Path Programming#5 Developer Productivity, Non-Violent Agile, and Organizational StructuresWe begin by talking about personal developer productivity but then expand the scope to "collective" / team productivity.  This leads us to grapple with some challenging ideas around Agile, non-violent communication, organization structures, diversity, and inclusion. Discuss this episode: https://discord.gg/nPa76qF2020-09-171h 03Happy Path ProgrammingHappy Path Programming#4 Why is Developer Experience Often Terrible?In this episode we discuss things that are often overlooked in developer experience and what underlying values make developer experience an afterthought. Discuss this episode: https://discord.gg/nPa76qF2020-09-161h 02Happy Path ProgrammingHappy Path Programming#3 Nulls, ADTs, and Code FormattingA bike-shedless discussion about nulls, algebraic data types, and code formatting. Discuss this episode: https://discord.gg/nPa76qF2020-09-151h 02Happy Path ProgrammingHappy Path Programming#2 More Kotlin!In episode 2 we continue the conversation about Kotlin, things we enjoy and things that could be better. Discuss this episode: https://discord.gg/nPa76qF2020-09-1459 minHappy Path ProgrammingHappy Path Programming#1 Adventures in KotlinIn our first episode we discuss features of the Kotlin programming language that we like. Discuss this episode: https://discord.gg/nPa76qF2020-09-1329 min