Skip to main content
Happy Path Programming

Happy Path Programming

By Bruce Eckel & James Ward
No-frills discussions between Bruce Eckel and James Ward about programming, what it is, and what it should be. Listen to live episodes and chat with us: discord.gg/nPa76qF
Listen on
Where to listen
Apple Podcasts Logo

Apple Podcasts

Breaker Logo

Breaker

Google Podcasts Logo

Google Podcasts

Overcast Logo

Overcast

Pocket Casts Logo

Pocket Casts

RadioPublic Logo

RadioPublic

Spotify Logo

Spotify

Currently playing episode

#6 The Crusade Against Custom Declarative Languages and Meta-Bike-Shedding

Happy Path Programming

#6 The Crusade Against Custom Declarative Languages and Meta-Bike-Shedding

Happy Path Programming

1x
#21 Statically-Dynamic Programming or Dynamically-Static Programming? And Death by 1000 Language Quirks
James 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/nPa76qF
51:29
February 26, 2021
#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/nPa76qF
01:03:58
February 12, 2021
#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/nPa76qF
55:34
February 5, 2021
#18 "But Will it Scale?" and Other Illusions of Control
Software 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/nPa76qF
01:10:25
January 18, 2021
#17 The Problem with Gradle; Java 11; SemVer Isn't
Bruce 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/nPa76qF
01:08:23
January 7, 2021
#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/nPa76qF
01:07:37
December 19, 2020
#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/nPa76qF
01:06:56
December 14, 2020
#14 Poly-Polymorphism
Most 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/nPa76qF
01:01:31
December 4, 2020
#12 The Rise of Python & (Unrelated) Making Illegal States Unrepresentable
Python 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/nPa76qF
35:48
November 6, 2020
#11 Small talk about Smalltalk
Our 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/nPa76qF
01:06:43
October 30, 2020
#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/nPa76qF
01:06:26
October 20, 2020
#9 Buildpacks, Containers, Kubernetes, Happy Path Programming, Rust, and gRPC
We 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/nPa76qF
01:07:34
October 16, 2020
#8 Kotlin Revisited with Cedric Beust
Long-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/nPa76qF
01:06:28
October 6, 2020
#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/nPa76qF
56:29
September 29, 2020
#6 The Crusade Against Custom Declarative Languages and Meta-Bike-Shedding
James 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/nPa76qF
01:07:23
September 25, 2020
#5 Developer Productivity, Non-Violent Agile, and Organizational Structures
We 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/nPa76qF
01:03:19
September 17, 2020
#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/nPa76qF
01:02:10
September 16, 2020
#3 Nulls, ADTs, and Code Formatting
A bike-shedless discussion about nulls, algebraic data types, and code formatting. Discuss this episode: https://discord.gg/nPa76qF
01:02:34
September 15, 2020
#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/nPa76qF
59:23
September 14, 2020
#1 Adventures in Kotlin
In our first episode we discuss features of the Kotlin programming language that we like. Discuss this episode: https://discord.gg/nPa76qF
29:40
September 13, 2020