No-frills discussions between Bruce Eckel and James Ward about programming, what it is, and what it should be. Buy the Happy Path Programming t-shirt: https://happy-path.printify.me/products
…
continue reading
![Artwork](/static/images/128pixel.png)
1
#103 AI Augmented Programming with Stephan Janssen
1:07:54
1:07:54
Play later
Play later
Lists
Like
Liked
1:07:54
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. …
…
continue reading
![Artwork](/static/images/128pixel.png)
1
#102 Gathering Nerds and Java Gatherers with Venkat Subramaniam
52:33
52:33
Play later
Play later
Lists
Like
Liked
52:33
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
…
continue reading
![Artwork](/static/images/128pixel.png)
1
#101 Effects and Local-First with Johannes Schickling
1:13:10
1:13:10
Play later
Play later
Lists
Like
Liked
1:13:10
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: riff…
…
continue reading
![Artwork](/static/images/128pixel.png)
1
#100 Thinking about Thinking with Diana Montalion
1:31:57
1:31:57
Play later
Play later
Lists
Like
Liked
1:31:57
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 epis…
…
continue reading
![Artwork](/static/images/128pixel.png)
1
#99 The Agile Illusion with Trond Hjorteland
55:54
55:54
Play later
Play later
Lists
Like
Liked
55:54
We 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…
…
continue reading
![Artwork](/static/images/128pixel.png)
1
#98 Continuous Deployment with Valentina Servile
1:06:04
1:06:04
Play later
Play later
Lists
Like
Liked
1:06:04
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/XVKD…
…
continue reading
![Artwork](/static/images/128pixel.png)
1
#97 The Pkl Configuration Language with Philip Hölzenspies
1:14:36
1:14:36
Play later
Play later
Lists
Like
Liked
1:14:36
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
…
continue reading
![Artwork](/static/images/128pixel.png)
1
#96 Compassionate Coding with April Wensel
59:13
59:13
Play later
Play later
Lists
Like
Liked
59:13
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 Scie…
…
continue reading
![Artwork](/static/images/128pixel.png)
1
#95 21st Century Databases with Gwen Shapira
1:00:15
1:00:15
Play later
Play later
Lists
Like
Liked
1:00:15
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
…
continue reading
![Artwork](/static/images/128pixel.png)
1
#94 Build Ops & Developer Productivity With Trisha Gee
1:07:31
1:07:31
Play later
Play later
Lists
Like
Liked
1:07:31
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
…
continue reading
![Artwork](/static/images/128pixel.png)
1
#93 Nerd Sniping via the 1B Row Challenge with Gunnar Morling
59:06
59:06
Play later
Play later
Lists
Like
Liked
59:06
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 implemen…
…
continue reading
![Artwork](/static/images/128pixel.png)
1
#92 Virtual Threads Looming with Adam Warski
1:07:37
1:07:37
Play later
Play later
Lists
Like
Liked
1:07:37
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 thi…
…
continue reading
![Artwork](/static/images/128pixel.png)
1
#91 'Tis The Season For Reducing Gradle Friction
1:07:23
1:07:23
Play later
Play later
Lists
Like
Liked
1:07:23
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
…
continue reading
Most 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/nPa76qF
…
continue reading
![Artwork](/static/images/128pixel.png)
1
#89 Algebraic Effects with Kyo (Flavio Brasil)
1:07:45
1:07:45
Play later
Play later
Lists
Like
Liked
1:07:45
We learn about Algebraic Effects with the Scala library Kyo ( getkyo.io) from the creator, Flavio Brasil. Discuss this episode: https://discord.gg/nPa76qF
…
continue reading
![Artwork](/static/images/128pixel.png)
1
#88 Developers Thriving In the Flow with Arty Starr
1:15:08
1:15:08
Play later
Play later
Lists
Like
Liked
1:15:08
Arty 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/nPa76qF…
…
continue reading
![Artwork](/static/images/128pixel.png)
1
#87 Diving Deeper into Wasm with Zalim Bashorov
1:07:11
1:07:11
Play later
Play later
Lists
Like
Liked
1:07:11
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
…
continue reading
![Artwork](/static/images/128pixel.png)
1
#86 The Journey to OCaml with Sabine
1:10:34
1:10:34
Play later
Play later
Lists
Like
Liked
1:10:34
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
…
continue reading
![Artwork](/static/images/128pixel.png)
1
#85 Scala, Rust, and Durable Computing with John De Goes
1:19:34
1:19:34
Play later
Play later
Lists
Like
Liked
1:19:34
Our 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/nPa76qF
…
continue reading
![Artwork](/static/images/128pixel.png)
1
#84 Inevitable Failure with Dormain Drewitz
1:09:11
1:09:11
Play later
Play later
Lists
Like
Liked
1:09:11
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…
…
continue reading
![Artwork](/static/images/128pixel.png)
1
#83 Rust Developer Retreat & Structured Concurrency
58:12
58:12
Play later
Play later
Lists
Like
Liked
58:12
At 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/nPa76qF…
…
continue reading
Bruce and James chat about the future of programming. Discuss this episode: https://discord.gg/nPa76qF
…
continue reading
![Artwork](/static/images/128pixel.png)
1
#81 TypeScript & Effects with Michael Arnaldi
1:06:20
1:06:20
Play later
Play later
Lists
Like
Liked
1:06:20
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
…
continue reading
![Artwork](/static/images/128pixel.png)
1
#80 Investing in Developer Tools with Renee Shah
45:37
45:37
Play later
Play later
Lists
Like
Liked
45:37
Renee 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/nPa76qF
…
continue reading
![Artwork](/static/images/128pixel.png)
1
#79 Domain-Driven Design and Moduliths with Oliver Drotbohm
1:02:13
1:02:13
Play later
Play later
Lists
Like
Liked
1:02:13
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:/…
…
continue reading
![Artwork](/static/images/128pixel.png)
1
#78 Immutability & IDLs for Declarative Services with Jakub Kozłowski
1:16:15
1:16:15
Play later
Play later
Lists
Like
Liked
1:16:15
First 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/nPa76qF
…
continue reading
![Artwork](/static/images/128pixel.png)
1
#77 Quarkus and Microservices with Holly Cummins
1:00:58
1:00:58
Play later
Play later
Lists
Like
Liked
1:00:58
Holly Cummins, a Senior Principal Software Engineer on Quarkus at Redhat, joins us to chat about Microservices and Quarkus. Discuss this episode: https://discord.gg/nPa76qF
…
continue reading
![Artwork](/static/images/128pixel.png)
1
#76 WebAssembly (Wasm) "The Web Finds a Way" with Vivek Sekhar
1:01:00
1:01:00
Play later
Play later
Lists
Like
Liked
1:01:00
WebAssembly (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 cl…
…
continue reading
![Artwork](/static/images/128pixel.png)
1
#75 Haskell "Not as Scary as You Think" with Kris Jenkins
1:07:19
1:07:19
Play later
Play later
Lists
Like
Liked
1:07:19
We 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/nPa76qF
…
continue reading
![Artwork](/static/images/128pixel.png)
1
#74 Developer Joy = Developer Productivity with Justin Reock
1:07:59
1:07:59
Play later
Play later
Lists
Like
Liked
1:07:59
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…
…
continue reading
![Artwork](/static/images/128pixel.png)
1
#73 Nix - Functional Programming for Software Packaging with Domen Kožar
1:02:13
1:02:13
Play later
Play later
Lists
Like
Liked
1:02:13
After 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/nPa76qF
…
continue reading
![Artwork](/static/images/128pixel.png)
1
#72 Pants Makes Developers Happier & More Productive with Benjy Weinberger
1:08:03
1:08:03
Play later
Play later
Lists
Like
Liked
1:08:03
The 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/nPa76qF…
…
continue reading
![Artwork](/static/images/128pixel.png)
1
#71 Functional Programming in Kotlin with Simon Vergauwen (Sorry about the terrible audio)
1:03:16
1:03:16
Play later
Play later
Lists
Like
Liked
1:03:16
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/nPa76qF…
…
continue reading
![Artwork](/static/images/128pixel.png)
1
#70 Understanding Software Through Bees & Biology With Grace Jansen
1:03:47
1:03:47
Play later
Play later
Lists
Like
Liked
1:03:47
Grace 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/nPa76qF…
…
continue reading
Bruce continues his archaeological dig into the foundations of mainstream programming. Referenced blog: Why Are There Functions? Discuss this episode: https://discord.gg/nPa76qF
…
continue reading
![Artwork](/static/images/128pixel.png)
1
#68 The End of Ivory Tower Architecture with Andrew Harmel-Law
1:08:48
1:08:48
Play later
Play later
Lists
Like
Liked
1:08:48
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
…
continue reading
![Artwork](/static/images/128pixel.png)
1
#67 Swallowed by a Python with Luciano Ramalho
1:23:29
1:23:29
Play later
Play later
Lists
Like
Liked
1:23:29
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
…
continue reading
![Artwork](/static/images/128pixel.png)
1
#66 The Journey to Rust with Christopher Hunt
1:20:05
1:20:05
Play later
Play later
Lists
Like
Liked
1:20:05
No 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/nPa76qF
…
continue reading
![Artwork](/static/images/128pixel.png)
1
#65 Rod's Gambit - Spring, Scala, TypeScript, and Chess with Rod Johnson
1:04:33
1:04:33
Play later
Play later
Lists
Like
Liked
1:04:33
Rod 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/nPa76qF
…
continue reading
![Artwork](/static/images/128pixel.png)
1
#64 Building Build Tools is Hard with Josh Suereth
1:03:58
1:03:58
Play later
Play later
Lists
Like
Liked
1:03:58
Bruce 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/nPa76qF
…
continue reading
![Artwork](/static/images/128pixel.png)
1
#63 ZIO 2 dot Ohhhhh! with Bill Frasure
1:26:17
1:26:17
Play later
Play later
Lists
Like
Liked
1:26:17
Our 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/nPa76qF
…
continue reading
![Artwork](/static/images/128pixel.png)
1
#62 Musing About Local-First Sync & CRDTs with Mark McGranaghan
1:06:05
1:06:05
Play later
Play later
Lists
Like
Liked
1:06:05
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://dis…
…
continue reading
![Artwork](/static/images/128pixel.png)
1
#61 Compassionate Communities with Tonya Moore
1:04:52
1:04:52
Play later
Play later
Lists
Like
Liked
1:04:52
Tonya 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/nPa76qF…
…
continue reading
![Artwork](/static/images/128pixel.png)
1
#60 Kotlin Language Design with Roman Elizarov
1:02:59
1:02:59
Play later
Play later
Lists
Like
Liked
1:02:59
Kotlin Language designer Roman Elizarov, joins us to talk about finding the right balances when designing Kotlin. Discuss this episode: https://discord.gg/nPa76qF
…
continue reading
![Artwork](/static/images/128pixel.png)
1
#59 Goetz's Law, Dhall, and Nix (With Gabriella Gonzalez)
59:49
59:49
Play later
Play later
Lists
Like
Liked
59:49
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 …
…
continue reading
![Artwork](/static/images/128pixel.png)
1
#58 Scala 3: Significant indentation and other things we love (With Martin Odersky)
1:08:31
1:08:31
Play later
Play later
Lists
Like
Liked
1:08:31
Martin Odersky, creator of Scala, joins us to chat about Scala, Effects, Exceptions, Experiments, and other Exciting stuff. Discuss this episode: https://discord.gg/nPa76qF
…
continue reading
![Artwork](/static/images/128pixel.png)
1
#57 Technology Trade Offs: Python & Kotlin (With Matt Anger)
1:00:02
1:00:02
Play later
Play later
Lists
Like
Liked
1:00:02
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/nPa76qF
…
continue reading
![Artwork](/static/images/128pixel.png)
1
#56 Feedback Loops & Software is Like Surgery (With Daniel Terhorst-North)
1:26:42
1:26:42
Play later
Play later
Lists
Like
Liked
1:26:42
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/nPa76qF
…
continue reading
![Artwork](/static/images/128pixel.png)
1
#55 Apache Kafka - Like Functional Programming but for Data (With Anna McDonald)
1:08:20
1:08:20
Play later
Play later
Lists
Like
Liked
1:08:20
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/nPa76qF
…
continue reading
![Artwork](/static/images/128pixel.png)
1
#54 Flix: Designing a principled programming language with Magnus Madsen
1:16:53
1:16:53
Play later
Play later
Lists
Like
Liked
1:16:53
Magnus 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/nPa76qF
…
continue reading