
Happy Path Programming
By Bruce Eckel & James Ward
Buy the Happy Path Programming t-shirt: happy-path.printify.me/products


#111 Wasm & MCP with Steve Manuel
We chat with Steve Manuel (of dylibso.com and mcp.run) about LLM "plugins" with Wasm & MCP (Model Context Protocol).
Discuss this episode: discord.gg/XVKD2uPKyF

#110 Unlocking Developer Productivity with Justin Reock
Justin Reock has spent a lot of his career thinking about how to help developers be more productive. In this episode we learn about the methodologies that can help developers spend more time in "flow state" - happily coding the fun stuff. Further reading: Measuring developer productivity with the DX Core 4
Discuss this episode: discord.gg/XVKD2uPKyF

#109 AI, LLMs, and MCP with Lize Raes
Lize Raes teaches us about AI models, LLMs, Tools, Agents, and MCP.
Article from Anthropic on Agent architectures: Building effective agents
Discuss this episode: discord.gg/XVKD2uPKyF


#107 The Joy of Programming with Dave Thomas
We chat with Dave Thomas, co-author of The Pragmatic Programmer, about the joy of programming and the tensions between our and others needs.
Discuss this episode: discord.gg/XVKD2uPKyF

#106 Agile Organizations with Jutta Eckstein
Jutta Eckstein is expanding the concepts of Agile to be a company-wide model, instead of a niche process for software developers. We chat with her about the book "Company-wide Agility with Beyond Budgeting, Open Space & Sociocracy" which she co-authored on this subject. For more details on the book and many free resources, see: www.agilebossanova.com
Discuss this episode: discord.gg/XVKD2uPKyF

#105 Nathan Sobo's Pursuit of the Ultimate Code Editor
Nathan Sobo is co-founder of Zed, a super-fast, collaborative, AI-powered, code editor. We chat about his journey to build the ultimate code editor: lessons learned from building Atom, Electron and its challenges, CRDTs, Rust native GPU GUIs, AI Code Assistants, and more CRDTs.
See also:
Discuss this episode: discord.gg/XVKD2uPKyF

#104 Effect Oriented Programming: The Book
After 4 years in development, our book is out! Along with our friend and lead-author, Bill Frasure, we we discuss the book, its motivation and the process we used to create it. Now available in digital and print forms at: effectorientedprogramming.com
At the end of the episode we step into the "twilight zone" with a 7 minute NotebookLM AI-generated podcast based on the book.
Discuss this episode: discord.gg/XVKD2uPKyF

#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

#102 Gathering Nerds and Java Gatherers with Venkat Subramaniam
We chat with Venkat about his upcoming dev2next conference and the new Stream Gatherers API (preview in JDK 22).
Discuss this episode: discord.gg/XVKD2uPKyF

#101 Effects and Local-First with Johannes Schickling
Johannes Schickling (@schickling | schickling.dev) gets us up-to-speed on Effect, the ZIO-inspired Effect System for TypeScript, and the Local-First movement. Resources:
- Local-First Podcast: www.localfirst.fm
- Ink & Switch's Local-First Essay: www.inkandswitch.com/local-first
- Effect (TypeScript Library): effect.website
- Riffle research project: riffle.systems
- LiveStore: github.com/livestorejs
- Overtone: overtone.pro
Related Episodes:
- #81 TypeScript & Effects with Michael Arnaldi
- #62 Musing About Local-First Sync & CRDTs with Mark McGranaghan
Discuss this episode: discord.gg/XVKD2uPKyF

#100 Thinking about Thinking with Diana Montalion
Diana 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/XVKD2uPKyF

#99 The Agile Illusion with Trond Hjorteland
We chat with Trond Hjorteland about Agile and why it hasn't led to successful outcomes in many traditional organizations.
Mentioned and related resources:

#98 Continuous Deployment with Valentina Servile
We 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/XVKD2uPKyF

#97 The Pkl Configuration Language with Philip Hölzenspies
We 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/XVKD2uPKyF

#96 Compassionate Coding with April Wensel
We 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/XVKD2uPKyF

#95 21st Century Databases with Gwen Shapira
We 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/XVKD2uPKyF

#94 Build Ops & Developer Productivity With Trisha Gee
We 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/XVKD2uPKyF

#93 Nerd Sniping via the 1B Row Challenge with Gunnar Morling
When 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/XVKD2uPKyF

#92 Virtual Threads Looming with Adam Warski
We 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/nPa76qF

#91 'Tis The Season For Reducing Gradle Friction
Announcing 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/nPa76qF


#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/nPa76qF

#88 Developers Thriving In the Flow with Arty Starr

#87 Diving Deeper into Wasm with Zalim Bashorov
Zalim 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/nPa76qF

#86 The Journey to OCaml with Sabine
Sabine 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/nPa76qF


#84 Inevitable Failure with Dormain Drewitz
We 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/nPa76qF

#83 Rust Developer Retreat & Structured Concurrency


#81 TypeScript & Effects with Michael Arnaldi
Michael 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/nPa76qF


#79 Domain-Driven Design and Moduliths with Oliver Drotbohm
We 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/nPa76qF



#76 WebAssembly (Wasm) "The Web Finds a Way" with Vivek Sekhar


#74 Developer Joy = Developer Productivity with Justin Reock
Developer 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/nPa76qF


#72 Pants Makes Developers Happier & More Productive with Benjy Weinberger

#71 Functional Programming in Kotlin with Simon Vergauwen (Sorry about the terrible audio)

#70 Understanding Software Through Bees & Biology With Grace Jansen


#68 The End of Ivory Tower Architecture with Andrew Harmel-Law
Andrew 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/nPa76qF

#67 Swallowed by a Python with Luciano Ramalho
Finally 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/nPa76qF





#62 Musing About Local-First Sync & CRDTs with Mark McGranaghan
Mark 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/nPa76qF