Maintainable cover image

Maintainable

Latest episodes

undefined
Apr 13, 2020 • 47min

Sandi Metz: Making is Easy, Mending is a Challenge

Guest Sandi Metz, a 40-year programming veteran, discusses why teaching maintenance skills is difficult, the challenges of messy situations, her 'Rules for Developers', thoughts on Ruby and Rails, and using the phrase 'Lambs to the Slaughter'.
undefined
Apr 6, 2020 • 51min

Clare Sudbery: Refactoring Should Be Part of Your Daily Work

Robby speaks with Clare Sudbery, Lead Engineer with Made Tech. They discuss how to document and prioritize technical debt with a visual tool, trunk-based development patterns, and the importance of getting fast feedback.Helpful LinksFollow Clare on TwitterIn Simple TermsClare's upcoming workshops and speaking engagementsMadeTechClare on MediumRefactoring: Improving the Design of Existing Code (2nd Edition) by Martin FowlerDelusions of Gender: How Our Minds, Society, and Neurosexism Create Difference by Cordelia FineSubscribe to Maintainable on:Apple PodcastsOvercastSpotifyOr search "Maintainable" wherever you stream your podcasts.Join the discussion in the Maintainable Discord Community Subscribe to Maintainable on:Apple PodcastsSpotifyOr search "Maintainable" wherever you stream your podcasts.Keep up to date with the Maintainable Podcast by joining the newsletter.
undefined
Mar 30, 2020 • 38min

Kelly Sutton: Custodians of the Monolith

Robby speaks with Kelly Sutton, Software Engineer at Gusto. They discuss how to deal with technical debt from the pre-product/market fit era, the benefits of monoliths and knowing when to begin abstracting to micro-services, and the challenges of keeping Ruby on Rails applications up-to-date. Kelly also gives advice for developers who want to convince stakeholders to invest in refactoring projects – a common challenge.Helpful LinksFollow Kelly on TwitterKelly's website[Book] Seeing like a State: How Certain Schemes to Improve the Human Condition Have Failed by James C. ScottTalk on Desirable TestsSubscribe to Maintainable on:Apple PodcastsOvercastSpotifyOr search "Maintainable" wherever you stream your podcasts.Join the discussion in the Maintainable Discord Community Subscribe to Maintainable on:Apple PodcastsSpotifyOr search "Maintainable" wherever you stream your podcasts.Keep up to date with the Maintainable Podcast by joining the newsletter.
undefined
Mar 23, 2020 • 44min

Jonathan Abourbih: Creating a Culture Where It's Okay To Take Risks

Robby speaks to Jonathan Abourbih, Engineering Team Lead at the BBC in Voice & AI. They discuss how to conduct blameless post-mortems, what's technical debt vs. bad code, and the challenges of measuring your success as a manager after years of being a developer. Jonathan also shares stories about large Java apps in a pre-Garbage Collection world.Helpful LinksJonathan on TwitterThe Prime DirectiveBBC CareersGoogle's Project AristotleGrowing Object-Oriented Software Guided by Tests by Steve Freeman and Nat PryceThe Power In Agile Talk by Sarah Mei[Book] The Phoenix Project by Gene KimSubscribe to Maintainable on:Apple PodcastsOvercastSpotifyOr search "Maintainable" wherever you stream your podcasts.Join the discussion in the Maintainable Discord Community Subscribe to Maintainable on:Apple PodcastsSpotifyOr search "Maintainable" wherever you stream your podcasts.Keep up to date with the Maintainable Podcast by joining the newsletter.
undefined
Mar 9, 2020 • 41min

Jessica Kerr: Software Is Not A Craft (or an Art)

Robby speaks with Jessica Kerr, Symmathecist at Jessitron LLC. They discuss why working on existing projects is more interesting than greenfield ones, the overuse and harm of the term "technical debt", and how software is not a craft. Jessica also gives an introduction to being a Symmathecist.Helpful LinksFollow Jessica on TwitterJessica's websiteJessica's blogSymmathecist, Noun by Jessica Kerr[Book] Team Topologies bookArty's suggestion about "escalating risk":[Book] Ecology, the Ascendent Perspective by Robert UlanowiczThe Myth of the Sufficiently Smart Engineer by Aaron Blohowiak[Book] The Secrets of Consulting by Gerald M. Weinberg7 Rules for Positive Productive Change by Esther DerbySystems thinking: Mel Conway on TwitterSubscribe to Maintainable on:Apple PodcastsOvercastSpotifyOr search "Maintainable" wherever you stream your podcasts.Join the discussion in the Maintainable Discord Community Subscribe to Maintainable on:Apple PodcastsSpotifyOr search "Maintainable" wherever you stream your podcasts.Keep up to date with the Maintainable Podcast by joining the newsletter.
undefined
Mar 2, 2020 • 40min

Jon Thornton: Technical Debt is a Good Thing (Sometimes)

Robby speaks with Jon Thornton, Engineer at Squarespace. This discuss examples of good technical debt, implementing a new monolith alongside another monolith (and when to extract to a microservice), metrics to track within your engineering team, and more.Helpful LinksThree Kinds of Good Technical DebtCareers at Squarespace[Book] Nonviolent Communication by Marshall B. RosenbergJon on TwitterJon on GithubJon's websiteJon on LinkedInSubscribe to Maintainable on:Apple PodcastsOvercastSpotifyOr search "Maintainable" wherever you stream your podcasts.Join the discussion in the Maintainable Discord Community Subscribe to Maintainable on:Apple PodcastsSpotifyOr search "Maintainable" wherever you stream your podcasts.Keep up to date with the Maintainable Podcast by joining the newsletter.
undefined
Feb 24, 2020 • 31min

Ben Orenstein: "Someday We'll Go Clean That Up" Doesn't Work

Robby speaks with Ben Orenstein, CEO and Co-founder of Tuple, a remote pair programming app. They discuss why saying, "someday we'll go clean that up" doesn't work in reality, the downsides to putting maintenance work into a backlog, and implicit vs. explicit knowledge. Ben also gives an intro to Tuple.Ben on TwitterTupleTuple on Twitter[Book] The Great CEO WithinSubscribe to Maintainable on:Apple PodcastsOvercastSpotifyOr search "Maintainable" wherever you stream your podcasts.Join the discussion in the Maintainable Discord Community Subscribe to Maintainable on:Apple PodcastsSpotifyOr search "Maintainable" wherever you stream your podcasts.Keep up to date with the Maintainable Podcast by joining the newsletter.
undefined
Feb 17, 2020 • 47min

Ernesto Tagwerker: Tracking Technical Debt With Metrics (aka Stink Score)

In the latest episode of Maintainable, we're joined by Ernesto Tagwerker, Founder and CTO of OmbuLabs. This isn't just another podcast episode; it's a deep dive into the world of technical debt and Ruby on Rails.Ernesto starts by demystifying technical debt – it's more than just a buzzword; it's a real challenge that can turn your project into a Tar Pit. And, believe it or not, there are actual tools to measure this. We explore these tools and how they can help identify technical debt and communicate the progress of tackling it.Then, we get into the juicy part: Ruby on Rails upgrades. Ernesto shares the strategies his team at OmbuLabs uses to help clients with these upgrades. And I, Robby, chime in with how we handle similar challenges at Planet Argon. It's like getting insights from two different angles on the same tricky problem!We also touch on recruiting consultant-minded developers, hiring junior devs, and what senior developers should aim for in mentoring. Oh, and for the Rails enthusiasts, Ernesto gives us a sneak peek into what's coming in Rails 6.1.https://mastodon.social/@etagwerkerErnesto on TwitterFastRuby blogOmbu LabsErnesto's siteEscaping The Tar Pit: Introducing Skunk v0.3.2 at RubyConf 2019[Book] The Mythical Man-Month by Frederick P. Brooks Jr.Subscribe to Maintainable on:Apple PodcastsOvercastSpotifyOr search "Maintainable" wherever you stream your podcasts. Subscribe to Maintainable on:Apple PodcastsSpotifyOr search "Maintainable" wherever you stream your podcasts.Keep up to date with the Maintainable Podcast by joining the newsletter.
undefined
Feb 10, 2020 • 37min

Marit van Dijk: How Are We Going to Test This?

In this episode of Maintainable, Robby sits down with Marit van Dijk, a Software Engineer at bol.com. Marit brings a wealth of experience from her work on complex systems and her involvement in the European testing conference and the Cucumber community. They dive deep into the importance of testing, maintaining legacy code, and the collaborative nature of software development.Episode Highlights[00:01:00] The Role of Tests in Well-Maintained Codebases: Marit emphasizes the importance of clear and intent-driven tests in understanding application behavior and maintaining code quality.[00:01:55] Dependency Management in Legacy Systems: Marit discusses the challenges of keeping dependencies up to date and the potential issues that arise when they fall behind.[00:02:35] Documentation Practices: Exploring the differences in documentation needs for internal projects versus open-source projects, and how README files play a critical role in onboarding and running applications.[00:05:09] Defining Technical Debt: Marit shares her perspective on technical debt, including the concept of "code rot" and how it can slow down development over time.[00:06:41] Empathy in Software Maintenance: The importance of understanding the context in which legacy code was written and having empathy for past decisions.[00:08:53] Test-Driven Development for Bug Fixing: Marit explains how writing tests first when fixing bugs can ensure a thorough understanding of the issue and lead to more reliable fixes.[00:14:52] bol.com's Approach to Automation: How bol.com uses automation tools to maintain its large-scale platform, ensuring consistency and reliability across its services.[00:15:48] Collaborative Coding: The benefits of pair programming and mob programming, and how they contribute to knowledge sharing and faster problem-solving within a team.[00:18:03] Managing Technical Debt: Strategies for integrating technical debt management into the development process and how to advocate for it within a team.[00:21:00] Isolating Test Environments: How Marit and her team use mock testing to ensure that tests are maintainable and independent of other services in their landscape.[00:25:15] The Balance Between Refactoring and Rewriting: Marit shares her preference for refactoring over rewriting and discusses the challenges of maintaining complex applications.[00:29:23] Advocating for Maintenance Work: Tips on how developers can make the case for addressing technical debt and maintenance within their teams.Key TakeawaysTesting is a cornerstone of well-maintained software, helping to ensure that code behaves as expected and can be confidently changed or extended.Documentation, whether in README files or more extensive systems like Confluence, is critical for both onboarding and long-term maintenance.Managing technical debt is an ongoing process that requires empathy, strategic planning, and sometimes, a bit of civil disobedience.Collaborative coding practices like pair programming and mob programming can accelerate problem-solving and foster a culture of continuous learning.Refactoring code, rather than rewriting it from scratch, can often be a more effective approach to maintaining complex systems.Helpful LinksMarit on TwitterCareers at bol.comTest Automation UniversityUse Testing to Develop Better Software FasterMarit on MediumTesting on Production – deep backend editionThe Wall of Technical Debt Subscribe to Maintainable on:Apple PodcastsSpotifyOr search "Maintainable" wherever you stream your podcasts.Keep up to date with the Maintainable Podcast by joining the newsletter.
undefined
Feb 3, 2020 • 37min

Mike Perham: How Developers Underestimate Long-Term Costs of External Dependencies

Robby speaks with Mike Perham, Founder and CEO at Contribsys and author of Sidekiq and Faktory. They discuss the pros and cons of using external dependencies, how Mike built a business off of his open source project, Sidekiq, and the dIfference in maintaining Ruby vs Go software projects.Helpful LinksMike on GithubMike on Twittermikeperham.comContribsysSidekiq[Book] Rising by Elizabeth Rush[Book] The Watch, Thoroughly Revised by Gene Stone and Stephen PulvirentSubscribe to Maintainable on:Apple PodcastsOvercastSpotifyOr search "Maintainable" wherever you stream your podcasts.Join the discussion in the Maintainable Discord Community Subscribe to Maintainable on:Apple PodcastsSpotifyOr search "Maintainable" wherever you stream your podcasts.Keep up to date with the Maintainable Podcast by joining the newsletter.

Get the Snipd
podcast app

Unlock the knowledge in podcasts with the podcast player of the future.
App store bannerPlay store banner

AI-powered
podcast player

Listen to all your favourite podcasts with AI-powered features

Discover
highlights

Listen to the best highlights from the podcasts you love and dive into the full episode

Save any
moment

Hear something you like? Tap your headphones to save it with AI-generated key takeaways

Share
& Export

Send highlights to Twitter, WhatsApp or export them to Notion, Readwise & more

AI-powered
podcast player

Listen to all your favourite podcasts with AI-powered features

Discover
highlights

Listen to the best highlights from the podcasts you love and dive into the full episode