Why does so much software still feel broken, even after years of new tools and processes?
On this episode of Distributed, host Jack Hannah sits down with Scott Hanselman, Vice President of Developer Community at Microsoft, to explore how fear-driven development, speed-first incentives, and short-term thinking continue to shape modern software.
Scott reflects on why craftsmanship has become rare, how some teams still manage to do quality work, and how today’s engineering systems influence the outcomes we see. The conversation also examines how AI is changing the day-to-day experience of engineers, why junior developers need much more support, and what stronger apprenticeship models could look like in practice. Scott shares ideas for investing in people over the long term and building meaningful communities across distributed teams. This episode offers a clear lens on what it takes to build better software by investing in people and systems together.
—
Where to find Scott Hanselman:
• X: https://x.com/shanselman
• LinkedIn: https://www.linkedin.com/in/shanselman
• Blog: https://www.hanselman.com/blog
• Newsletter: https://hanselman.substack.com
• The Hanselminutes Podcast: https://www.hanselminutes.com
• Scott and Mark Learn To Podcast: https://www.youtube.com/playlist?list=PL0M0zPgJ3HSf4XZvYgZPUXgSrfzBN26pf
—
Where to find Jack Hannah:
• LinkedIn: https://www.linkedin.com/in/jack-hannah/
• Website: https://tuple.app/
—
Timestamps:
(00:00) Intro
(01:25) Why so much software feels broken and why it persists
(03:38) The outlier companies focused on quality software
(04:30) What software craftsmanship looks like and why it’s rare
(08:18) How to reduce fear-driven development
(11:50) How AI reflects the flaws in today’s software practices
(12:46) How AI affects senior and junior engineers differently
(17:03) Rethinking the mentorship model for junior engineers
(19:11) Best practices for a structured apprenticeship program
(21:43) Delegate, verify, and integrate: a model for managing AI and junior engineers
(22:05) Why pair programming isn’t enough on its own
(27:07) The case for long-term investment in people
(29:54) Where big tech has fallen short and created division
(32:52) The indie web and alternatives to platform-driven tech
(34:30) How to build community across distributed teams
(38:20) Rapid fire round
—
Referenced:
• Everything’s broken and nobody’s upset: https://www.hanselman.com/blog/everythings-broken-and-nobodys-upset
• Instapaper: https://www.instapaper.com
• Pocket: https://heypocket.com
• 1Password: https://1password.com
• Cabel Sasser’s website: https://cabel.com
• Visual Studio Code: https://code.visualstudio.com
• Boeing: https://www.boeing.com
• Mark Russinovich on LinkedIn: https://www.linkedin.com/in/markrussinovich
• Tech Promised Everything. Did it deliver? | Scott Hanselman | TEDxPortland: https://www.youtube.com/watch?v=dVG8W-0p6vg
• IntelliSense: https://code.visualstudio.com/docs/editing/intellisense
• Usenet: https://en.wikipedia.org/wiki/Usenet
• POSSE: https://indieweb.org/POSSE
• DuckDuckGo: https://duckduckgo.com
• Amanda Silver on LinkedIn: https://www.linkedin.com/in/amandaksilver
• Brain, Bytes, Back, Buns - The Programmer's Priorities: https://www.hanselman.com/blog/brain-bytes-back-buns-the-programmers-priorities
• WeWork: https://www.wework.com
• Simon Willison’s blog: https://simonwillison.net