Feel like you’re hitting a wall with your existing software projects? You're not alone. On the Maintainable software podcast, we speak with seasoned practitioners who have worked past the problems often associated with technical debt and legacy code. In each episode, our guests will share stories and outline tangible, real-world approaches to software challenges. In turn, you'll uncover new ways of thinking about how to improve your software project's maintainability. We're in this together. Enjoy the show!
DHH: Celebrating Legacy Software as a Victory and the Story of How Humans Can't Estimate
53:16Robby speaks with David Heinemeier Hansson (aka DHH), Creator of Ruby on Rails and CTO of Basecamp / HEY.Disclaimer: Robby sat down with DHH in early March 2021 about ~5-6 weeks before Basecamp's policy changes were announced and the significant impact that had within our community. It's quite likely that some of Basecamp's internal software engineering processes have since changed.Topics coveredWhy we should celebrate legacy software as a victory..that means it was successfulWhy Basecamp has opted to release new versions of their Saas vs iterating on a single versionHow Basecamp handles pure maintenance work and accounts for security backportsA high-level intro into ShapeUp and how Basecamp/HEY's team manages bugs and follow-up work during their two-week cooldownsWhy Basecamp has a Security Infrastructure Performance (SIP) team that deals with tipping points, security patches, and reactive workBasecamp's Research & Fidelity team that focuses on building and extracting frameworksWhy hasn't Ruby on Rails undergone a major rewrite?What types of testing does DHH find to provide the most value for effort in their Ruby on Rails applications?DHH's thoughts on Test-Driven Development (TDD)How budgeting is more valuable than estimatingWhat is Ruby on Rails competitive advantage in the current field of technology platforms?Ruby on Rails isn't a talking-point anymore and why that is not a problemBook Recommendation: "The Manual" by EpictetusHelpful LinksDHH on TwitterShape UpBasecampHEYBlogRuby on RailsDHH on GithubSubscribe to Maintainable on:Apple PodcastsOvercastSpotifyOr search "Maintainable" wherever you stream your podcasts.
Matt Wynne: Cucumber and Why Is TDD Such a Challenge?
41:20Robby speaks with Matt Wynne, who is currently a co-lead of Cucumber Open and a BDD Advocate at SmartBear. They cover an introduction to Cucumber and how it fits into a software team's toolbox, the importance of reliable tests and speedy tests for quick feedback loops, and why teams struggle to introduce TDD into existing software applications.Helpful LinksCucumberSmartbearGherkinTechnical Debt vs Technical WasteFollow Matt on TwitterMatt's blogBook Recommendation: Zen and the Art of Motorcycle Maintenance by Robert M. PirsigSubscribe to Maintainable on:Apple PodcastsOvercastSpotifyOr search "Maintainable" wherever you stream your podcasts.
Tom Granot: Finding Your Style When Explaining Things to Technical Audiences
45:52Robby speaks with Tom Granot, Solution Engineer at Lightrun. They discuss producing content for technical (and non-technical) audiences, why consistency in your communication style matters, and the importance of good bug reporting and resolution.Helpful Links:[Book Recommendation] The Hacker's Diet by John WalkerFollow Tom on TwitterTom's websiteLightrunMonica CRMAsync http clientSubscribe to Maintainable on:Apple PodcastsOvercastSpotifyOr search "Maintainable" wherever you stream your podcasts.
Andrew Watkins: How To Test What You're Trying to Build
47:14Robby speaks with Andrew Watkins, VP of Engineering at Buildops. They dig into what it means to be "easily testable", the downsides to being allured by new technology, and why rewrites are really, really tough.Helpful LinksConnect with Andrew on LinkedInFollow Buildops on LinkedIn[Book Recommendation] Heroes DieSubscribe to Maintainable on:Apple PodcastsOvercastSpotifyOr search "Maintainable" wherever you stream your podcasts.
Rodney Cobb: Repeatable. Testable. Scalable.
44:36Robby speaks with Rodney Cobb, Principal DevOps Engineer at Remine Inc. They discuss the three verticals of maintainable systems, the importance of mental health days, why all work needs to be visible and tracked, comparing DevOps to Hip Hop culture, and taking time to ask yourself, "when do I take the time to level up?"Helpful LinksRodney on LinkedInBook Recommendation: Influence: The Psychology of Persuasion by Robert B Cialdini PhDSubscribe to Maintainable on:Apple PodcastsOvercastSpotifyOr search "Maintainable" wherever you stream your podcasts.
Dr. Michaela Greiler: Getting Awesome at Code Reviews
41:17Robby speaks with Dr. Michaela Greiler, Founder and Trainer at Awesome Code Review Workshops. They discuss the importance of taking time to revisit past technical decisions, what is/isn't technical debt, as well as the distinction between protecting the quality of the code and expanding the knowledge of what is changing in a software codebase.Dr. Greiler also talks about some mistakes that engineers make when conducting code reviews. She also shares helpful tips on how to provide meaningful feedback without making it personal and/or blaming.Helpful LinksDr. Greiler's WebsiteWorkshopsPodcastDr. Greiler on TwitterSE Unlocked on TwitterDr. Greiler on LinkedIn[Book Recommendation] Essentialism, Greg McKeown Subscribe to Maintainable on:Apple PodcastsOvercastSpotifyOr search "Maintainable" wherever you stream your podcasts.
Mark Kilby: Overcoming Challenges that Remote Technical Teams Experience
52:39Robby speaks with Mark Kilby, Distributed Agile Guide and Founder at K5 Labs. They discuss the benefits of healthy and reliable automated tests, symptoms of when things are not working, challenges that teams may face in different types of remote working scenarios, and what effective communication looks like amongst team members. Mark also gives advice on things to consider as an Agile coach and how to build your Agile toolbox.Helpful LinksMark's WebsiteMark on Twitter[Book Recommendation] The 7 Habits of Highly Effective People, Stephen R. Covey[Book Recommendation] From Chaos to Successful Distributed Agile Teams: Collaborate to Deliver, Johanna Rothman and Mark Kilby[Article] Is hybrid-remote going backward or forward? Subscribe to Maintainable on:Apple PodcastsOvercastSpotifyOr search "Maintainable" wherever you stream your podcasts.
Kevin Stewart: Short-term Decisions That Need To Be Revisited
51:24Robby speaks with Kevin Stewart, VP of Engineering at Harvest. They discuss fighting ideological battles, why time-to-deploy is one of the most valuable metrics to measure and improve, and why teams should be revisiting their technical stack decisions. Kevin also gives advice to developers and shares some approaches to running internship programs.Helpful LinksKevin's Websiteleaddev.comKevin on TwitterKevin on LinkedInCareers at Harvest[Book Recommendation] The Hard Thing About Hard Things, Ben HorowitzSubscribe to Maintainable on:Apple PodcastsOvercastSpotifyOr search "Maintainable" wherever you stream your podcasts.
Ken Fogel: What Are You Leaving Behind?
47:50Robby speaks with Ken Fogel, College Instructor, JCP EC member, and Java Champion. They discuss the benefits of unit testing, how Dawson approaches internship placement, and the importance of code documentation. Ken also talks about how software is about more than just getting things to work, and why it's important to focus on the long-term impact of coding decisions.Helpful LinksOmnijava.comKen's TwitterDzone ArticleSubscribe to Maintainable on:Apple PodcastsOvercastSpotifyOr search "Maintainable" wherever you stream your podcasts.
Murray Steele: Maintainable Code Is Easy to Turn Off and Delete
59:26Robby speaks with Murray Steele, Engineering Manager at CLEO AI. They discuss approaches to tracking down unused code in your system, working as a consultant vs within a product company, and why technical debt is good. Murray also talks about why we need to be cautious when we discuss prototypes and the importance of community sharing experiences of helping co-organize London Ruby User Group.Helpful LinksMurray's WebsiteMurray's TwitterMurray's LinkedInLondon Ruby User GroupCLEO IA job openingsSubscribe to Maintainable on:Apple PodcastsOvercastSpotifyOr search "Maintainable" wherever you stream your podcasts.