
Maintainable
Podcast von Robby Russell
Nimm diesen Podcast mit

Mehr als 1 Million Hörer*innen
Du wirst Podimo lieben und damit bist du nicht allein
Mit 4,7 Sternen im App Store bewertet
Alle Folgen
214 Folgen
CTO coach Joel Chippindale [https://monkeysthumb.co.uk] joins Robby to share what he's learned over two decades of building and leading software teams. Joel argues that maintainability has less to do with “clean code” and more to do with how teams communicate, prioritize, and make progress visible. Drawing on his time at Unmade and his current coaching practice, Joel outlines practical ways teams can build trust, navigate brittle systems, and stop letting technical debt conversations get lost in translation. EPISODE HIGHLIGHTS [00:01:10] A Working Definition of Maintainability Joel explains why “software that’s easy to keep changing” is the gold standard—and why context matters as much as code. [00:05:24] The Pitfalls of Pre-Optimization How developers can trap themselves by designing for futures that may never arrive. [00:10:40] Challenging the Iron Triangle Joel pushes back on the idea that teams must sacrifice quality for speed or cost. [00:15:31] Quality Is a Team Conversation Why code quality starts long before you open your editor. [00:20:00] Unmade Case Study: From Chaos to Confidence How Joel helped a struggling team at Unmade regain trust by delivering less—and showing more. [00:28:08] Helping Business Stakeholders Buy Into Maintenance Work How to reframe backend investments in terms that resonate across departments. [00:33:40] First Steps for Fragile Systems What Joel looks for when coaching teams overwhelmed by legacy code. [00:41:32] The Value of Boring Technology Why solving real problems matters more than chasing resume polish. [00:45:20] The Case for Coaching What makes leadership coaching valuable—and why it's not a sign of weakness. [00:51:10] Building Your Manager Voltron Joel shares why every developer should cultivate their own support system, including mentors, peers, and coaches. RESOURCES & MENTIONS * Joel’s Coaching Site – Monkey’s Thumb [https://monkeysthumb.co.uk/] * Joel on Mastodon [https://social.monkeysthumb.co.uk/@joel] * “Take Back Control of Code Quality” – Joel’s Blog Post [https://blog.mocoso.co.uk/posts/talks/take-back-control-of-code-quality/] * “Manager Voltron” by Lara Hogan [https://larahogan.me/blog/manager-voltron/] * Never Split the Difference [https://www.ethicalbooksearch.com/books/m/ol:OL18819818W/never-split-the-difference-chris-voss-tahl-raz] by Chris Voss THANKS TO OUR SPONSOR! Turn hours of debugging into just minutes! AppSignal [https://www.appsignal.com/?utm_source=maintainable&utm_medium=podcast] is a performance monitoring and error-tracking tool designed for Ruby, Elixir, Python, Node.js, Javascript, and other frameworks. It offers six powerful features with one simple interface, providing developers with real-time insights into the performance and health of web applications. Keep your coding cool and error-free, one line at a time! Use the code maintainable to get a 10% discount for your first year. Check them out! [https://www.appsignal.com/?utm_source=maintainable&utm_medium=podcast] Subscribe to Maintainable on: * Apple Podcasts [https://podcasts.apple.com/us/podcast/maintainable/id1459893010] * Spotify [https://open.spotify.com/show/6Ah6xxZ04VQBqjBB5ZU0Ll?si=1ZcnrwoJSNiksYgDqsRmRQ] Or search "Maintainable" wherever you stream your podcasts. Keep up to date with the Maintainable Podcast by joining the newsletter. [https://maintainable.fm/newsletter/]

MELANIE SUMNER: WHY CONTINUOUS ACCESSIBILITY IS A STRATEGIC ADVANTAGE Melanie Sumner, Product Accessibility Lead for Design Systems at HashiCorp [https://www.hashicorp.com/], joins Robby to talk about what it takes to scale accessibility across legacy products—and how aligning design and engineering processes creates lasting change. Melanie shares her work making Ember.js more accessible, her team’s philosophy behind their design system, and why she treats accessibility like any other technical concern. From the pitfalls of nested interactive elements to the strengths of Ember's conventions and codemods, this conversation offers a roadmap for integrating accessibility into every layer of product development. Melanie also reflects on why she trademarked the term Continuous Accessibility, how it fits into product lifecycles, and what other frameworks can learn from the Ember community’s approach. > “Accessibility is a technical problem with a technical solution.” Melanie joins us from Chicago, Illinois. EPISODE HIGHLIGHTS [00:01:00] What Well-Maintained Software Looks Like: Consistency, purpose, and bridging design and engineering [00:02:30] Building a Unified Design System Across 10+ Legacy Products [00:03:30] Creating Component Requirements Before Design or Code [00:05:00] Designing with Accessibility Defaults—and Providing Bridges for Legacy [00:07:00] How Ember’s Conventions Help Scale Front-End Systems [00:09:30] Who Uses Ember—and Why It's a Fit for Teams with Big Requirements [00:13:30] Technical Debt in Design Systems and the Cost of Rushing [00:16:30] How They Future-Proof Components and Avoid Over-Engineering [00:19:00] What “Continuous Accessibility” Means in Practice [00:21:00] Accessibility Testing and the Limits of Automation [00:23:00] Common Accessibility Mistakes: Nested Interactives and Misused DIVs [00:24:30] Keyboard Navigation as a Litmus Test [00:26:00] Text Adventure Games and Accessibility as a Playable Experience [00:28:30] The Origin of Her Accessibility Journey at UNC Chapel Hill [00:31:00] Why She Avoids Framing Accessibility in Emotional Terms [00:32:45] Compliance as a Business Driver for Accessibility [00:35:00] Open Source Work on Testing Rules Across Frameworks [00:38:00] The Navigation API and Fixing Single-Page App Accessibility [00:40:30] HTML’s Forgiveness and the Illusion of “Good Enough” [00:43:00] Advice for Engineers Advocating for Accessibility Without Authority [00:46:45] Book Recommendation: Cradle Series by Will Wight [00:48:30] Where to Follow Melanie: melanie.codes [https://melanie.codes] LINKS AND RESOURCES * Melanie's Website [https://melanie.codes] * Helios Design System at HashiCorp [https://helios.hashicorp.design/] * Cradle Series by Will Wight [https://www.willwight.com/] * Ember Community Survey [https://emberjs.com/survey/2024/] * A11y Automation GitHub Project [https://github.com/melsumner/a11y-automation] * Axe-core [https://github.com/dequelabs/axe-core] Follow Melanie: * GitHub [https://github.com/melsumner] * LinkedIn [https://www.linkedin.com/in/melaniesumner/] THANKS TO OUR SPONSOR! Turn hours of debugging into just minutes! AppSignal [https://www.appsignal.com/?utm_source=maintainable&utm_medium=podcast] is a performance monitoring and error-tracking tool designed for Ruby, Elixir, Python, Node.js, Javascript, and other frameworks. It offers six powerful features with one simple interface, providing developers with real-time insights into the performance and health of web applications. Keep your coding cool and error-free, one line at a time! Use the code maintainable to get a 10% discount for your first year. Check them out! [https://www.appsignal.com/?utm_source=maintainable&utm_medium=podcast] Subscribe to Maintainable on: * Apple Podcasts [https://podcasts.apple.com/us/podcast/maintainable/id1459893010] * Spotify [https://open.spotify.com/show/6Ah6xxZ04VQBqjBB5ZU0Ll?si=1ZcnrwoJSNiksYgDqsRmRQ] Or search "Maintainable" wherever you stream your podcasts. Keep up to date with the Maintainable Podcast by joining the newsletter. [https://maintainable.fm/newsletter/]

In this episode of Maintainable, Robby speaks with Joe Masilotti [https://masilotti.com/], an independent consultant who helps Rails teams ship mobile apps using Hotwire Native. Joe shares his perspective on what makes software maintainable—especially for consultants who need to onboard quickly. He explains why setup scripts often add unnecessary complexity, and how he evaluates a project’s maintainability by how quickly he can go from clone to coding. Robby and Joe also discuss how hybrid mobile development can offer faster delivery, fewer bugs, and better long-term flexibility—especially when teams reuse their existing Rails web views. Joe explains how Hotwire Native allows teams to incrementally introduce native features without rewriting their entire app. Whether you’re maintaining a mobile shell built two years ago or just starting to explore native development, Joe offers actionable advice on setting expectations, scoping client work, and navigating modern mobile tech stacks. ⏱️ EPISODE HIGHLIGHTS [00:01:17] Onboarding as a Measure of Maintainability Joe shares how quickly he can spin up a Rails app often reflects how maintainable it is. [00:05:12] Being a Good Guest in Someone Else’s Codebase Joe outlines his ideal onboarding checklist and how he adapts to unfamiliar environments. [00:08:00] Setting Communication and Collaboration Expectations The three questions Joe asks every client to understand how their team works. [00:13:02] Offering Opinions—Only Where Invited Why Joe stays scoped to the work he’s hired for, even when tempted to fix more. [00:14:15] When Technical Debt Enters the Conversation Joe explains how debt discussions usually emerge after version one is shipped. [00:15:33] Who Should Read Hotwire Native for Rails Developers Joe describes the type of developer his book is written for and what it covers. [00:18:01] Choosing Native vs. Hybrid for Your Rails App A framework comparison based on your current frontend architecture. [00:20:00] Introducing the Hotwire Native Mindset Why logic belongs on the server and the client should stay thin. [00:21:00] Bridge Components: How Rails, iOS, and Android Connect Joe walks through how native and web technologies pass data between layers. [00:24:00] Why Even a Web View-Based App is Worth Shipping The practical benefits of discoverability, push notifications, and native APIs. [00:28:01] Replacing Unmaintainable Apps with Hotwire Native Joe describes how hybrid rewrites often reduce mobile code by 90%. [00:31:33] Letting Go of Feature Parity Why most clients end up cutting features they originally wanted to preserve. [00:32:18] Scoping and Estimating Project-Based Work How Joe uses repeatable patterns to price fixed-fee consulting engagements. [00:35:15] Using AI to Translate Between Tech Stacks Joe shares how he leverages LLMs to explore unfamiliar languages like Kotlin. [00:42:26] Long-Term Maintainability and When to Touch the Code Why some apps don’t need changes for years—and that’s okay. [00:43:43] Why Hybrid Apps Are Easier to Replace Joe explains why hybrid apps are often more disposable and less risky than monolithic web apps. 🔗 RESOURCES MENTIONED: * Joe’s Book: Hotwire Native for Rails Developers [https://pragprog.com/titles/jmnative/hotwire-native-for-rails-developers/] * Joe’s Newsletter [https://masilotti.com/newsletter/] * Hotwire Native Mindset Article [https://masilotti.com/turbo-native-is-dead-long-live-hotwire-native/] * Please Unsubscribe, Thanks by Julio Vincent Gambuto [https://www.juliovincent.com/please] Follow Joe on X (formerly Twitter) [https://x.com/joemasilotti] and visit masilotti.com [https://masilotti.com/] to learn more. THANKS TO OUR SPONSOR! Turn hours of debugging into just minutes! AppSignal [https://www.appsignal.com/?utm_source=maintainable&utm_medium=podcast] is a performance monitoring and error-tracking tool designed for Ruby, Elixir, Python, Node.js, Javascript, and other frameworks. It offers six powerful features with one simple interface, providing developers with real-time insights into the performance and health of web applications. Keep your coding cool and error-free, one line at a time! Use the code maintainable to get a 10% discount for your first year. Check them out! [https://www.appsignal.com/?utm_source=maintainable&utm_medium=podcast] Subscribe to Maintainable on: * Apple Podcasts [https://podcasts.apple.com/us/podcast/maintainable/id1459893010] * Spotify [https://open.spotify.com/show/6Ah6xxZ04VQBqjBB5ZU0Ll?si=1ZcnrwoJSNiksYgDqsRmRQ] Or search "Maintainable" wherever you stream your podcasts. Keep up to date with the Maintainable Podcast by joining the newsletter. [https://maintainable.fm/newsletter/]

Freedom Dumlao [https://www.linkedin.com/in/apiguy/] (CTO at Vestmark [https://www.vestmark.com]) joins Robby to explore what it means to maintain software at scale—and why teams sometimes need to unlearn the hype. With two decades of experience supporting financial systems, Freedom shares how his team manages a Java monolith that oversees $1.6 trillion in assets. But what’s most surprising? His story of how a team working on 70+ microservices rebuilt their platform as a single Ruby on Rails monolith—and started shipping faster than ever before. EPISODE HIGHLIGHTS [00:02:00] Why Respecting Legacy Code Matters Freedom reflects on a lesson he learned at Amazon: "Respect what came before." He discusses the value of honoring the decisions of past developers—especially when their context is unknown. [00:05:00] How Tests Help (and Where They Don’t) Freedom discusses how tests can clarify system behavior but not always intent—especially when market logic or business-specific rules come into play. [00:07:00] The Value of Understudies in Engineering Freedom shares how his team intentionally pairs subject matter experts with understudies to reduce risk and transfer knowledge. [00:09:30] Rethinking Technical Debt He challenges the fear-based framing of technical debt, comparing it instead to a strategic mortgage. [00:17:00] From 70 Services to 1 Monolith At FlexCar, Freedom led an unconventional rewrite—consolidating 70 Java microservices into a single Rails app. The result? A dramatic increase in velocity and ownership. [00:25:00] Choosing Rails Over Phoenix, Laravel, and Django After evaluating multiple frameworks, Rails' cohesiveness, Hotwire, and quick developer ramp-up made it the clear winner—even converting skeptical team members. [00:31:00] How Rails Changed Team Dynamics By reducing dependency handoffs, the new Rails app enabled solo engineers to own complete features. The impact? Faster delivery and more engaged developers. [00:36:30] Why Rails Still Makes Sense at a 20-Year-Old Company Even with a large Java codebase, Vestmark uses Rails for rapid prototyping and new product development. [00:41:00] Using AI to Navigate Legacy Systems Freedom explains how his team uses retrieval-augmented generation (RAG) to surface relevant code—but also the limitations of AI on older or less common codebases. [00:51:00] Seek Feedback, Not Consensus Freedom explains why aiming for alignment slows teams down—and how decision-makers can be inclusive without waiting for full agreement. LINKS AND RESOURCES * Freedom Dumlao on LinkedIn [https://www.linkedin.com/in/freedomdumlao/] * Vestmark [https://www.vestmark.com] * No Rules Rules [https://www.norulesrules.com/] * Dungeon Crawler Carl series [https://www.goodreads] THANKS TO OUR SPONSOR! Turn hours of debugging into just minutes! AppSignal [https://www.appsignal.com/?utm_source=maintainable&utm_medium=podcast] is a performance monitoring and error-tracking tool designed for Ruby, Elixir, Python, Node.js, Javascript, and other frameworks. It offers six powerful features with one simple interface, providing developers with real-time insights into the performance and health of web applications. Keep your coding cool and error-free, one line at a time! Use the code maintainable to get a 10% discount for your first year. Check them out! [https://www.appsignal.com/?utm_source=maintainable&utm_medium=podcast] Subscribe to Maintainable on: * Apple Podcasts [https://podcasts.apple.com/us/podcast/maintainable/id1459893010] * Spotify [https://open.spotify.com/show/6Ah6xxZ04VQBqjBB5ZU0Ll?si=1ZcnrwoJSNiksYgDqsRmRQ] Or search "Maintainable" wherever you stream your podcasts. Keep up to date with the Maintainable Podcast by joining the newsletter. [https://maintainable.fm/newsletter/]

Mercedes Bernard [https://mercedesbernard.com/], Staff Software Engineer at Kit [https://kit.com/], joins Robby to talk about what it really means to write code that lasts—and who it should be written for. In this episode of Maintainable, Mercedes shares a thoughtful and practical perspective on working with legacy codebases, managing technical debt, and creating a team culture that values maintainability without fear or shame. Her guiding principle? Well-maintained software is friendly software—code that is understandable and approachable, especially for early-career developers. Together, they discuss how to audit and stabilize older systems, avoid full rewrites, and create consistent developer experiences in large applications. Mercedes reflects on her decade in consulting and how that shaped her approach to navigating incomplete documentation, missing historical context, and multiple competing patterns in a codebase. She breaks down different types of technical debt, explains why not all of it is inherently bad, and offers strategies for advocating for maintenance work across engineering and product teams. The conversation also touches on architecture patterns like job fan-out, measuring performance regressions, reducing infrastructure load, and building momentum for improvements even when leadership isn’t actively prioritizing them. If you’ve ever felt overwhelmed by a messy project or struggled to justify maintenance work, this episode will leave you with a fresh mindset—and a few practical tactics—for making code more sustainable and inclusive. EPISODE HIGHLIGHTS [00:01:08] Defining Well-Maintained Software Mercedes explains her top metric: software that feels friendly, especially to early-career developers navigating the codebase for the first time. [00:03:00] What Friendly Code Actually Looks Like She shares why consistency, discoverability, and light documentation (like class comments or UML snippets) can make a huge difference. [00:05:00] Assessing Code Like a House Tour Mercedes introduces her metaphor of giving a house tour to evaluate code: does everything feel like it’s in the right place—or is the stove in the cabinet? [00:06:53] Consulting Mindset: Being a Guest in the Codebase With a decade of consulting experience, Mercedes shares how she navigates legacy systems when historical context is long gone. [00:10:40] Stabilizing a Startup’s Tangled Architecture She walks through an in-depth case study where she helped a client with multiple abandoned services get back to stability—without a rewrite. [00:17:00] The Power of a One-Line Fix Mercedes shares how a missing check caused a job to fan out 30 million no-op background jobs a day—and how one line of code reduced that by 75%. [00:23:40] Why State Checks Belong Everywhere She explains how defense-in-depth patterns help avoid job queue flooding and protect system resources early in the fan-out process. [00:24:59] Reframing Technical Debt Not all debt is bad. Mercedes outlines three types—intentional, evolutionary, and time-based—and how to approach each one differently. [00:28:00] Why Teams Fall Behind Without Realizing It Mercedes and Robby talk about communication gaps between engineers and product stakeholders—and why it’s not always clear when tech debt starts piling up. [00:34:00] Quantifying Developer Friction Mercedes recommends expressing technical debt in terms of lost time, slow features, and increased cost rather than vague frustrations. [00:42:00] Getting Momentum Without Permission Her advice to individual contributors: start small. Break down your frustrations into bite-sized RFCs or tickets and show the impact. [00:45:40] Letting the Team Drive Standards Mercedes encourages team-led conventions over top-down declarations, and explains why having any decision is better than indecision. [00:47:54] Recommended Reading She shares a surprising favorite: The Secret Life of Groceries, a systems-thinking deep dive into the grocery industry by Benjamin Lorr [https://bookshop.org/p/books/the-secret-life-of-groceries-the-dark-miracle-of-the-american-supermarket-benjamin-lorr/14856923]. RESOURCES & LINKS * 🧠 Mercedes Bernard’s website [https://mercedesbernard.com/] * 🛠 Kit [https://kit.com/] * 📘 The Secret Life of Groceries [https://bookshop.org/p/books/the-secret-life-of-groceries-the-dark-miracle-of-the-american-supermarket-benjamin-lorr/14856923] by Benjamin Lorr * 🔎 Fan-out Pattern – Martin Fowler [https://martinfowler.com/bliki/FanOut.html] (for deeper context on fan-out job strategies) * 💬 Mercedes on LinkedIn [https://www.linkedin.com/in/mercedesbernard/] THANKS TO OUR SPONSOR! Turn hours of debugging into just minutes! AppSignal [https://www.appsignal.com/?utm_source=maintainable&utm_medium=podcast] is a performance monitoring and error-tracking tool designed for Ruby, Elixir, Python, Node.js, Javascript, and other frameworks. It offers six powerful features with one simple interface, providing developers with real-time insights into the performance and health of web applications. Keep your coding cool and error-free, one line at a time! Use the code maintainable to get a 10% discount for your first year. Check them out! [https://www.appsignal.com/?utm_source=maintainable&utm_medium=podcast] Subscribe to Maintainable on: * Apple Podcasts [https://podcasts.apple.com/us/podcast/maintainable/id1459893010] * Spotify [https://open.spotify.com/show/6Ah6xxZ04VQBqjBB5ZU0Ll?si=1ZcnrwoJSNiksYgDqsRmRQ] Or search "Maintainable" wherever you stream your podcasts. Keep up to date with the Maintainable Podcast by joining the newsletter. [https://maintainable.fm/newsletter/]