Maintainable - podcast cover

Maintainable

Robby Russellmaintainable.fm
Do you feel like you're hitting a wall with your existing software projects? Are you curious to hear how other people are navigating this? You're not alone. On the Maintainable Software Podcast, Robby speaks with seasoned practitioners who have overcome the technical and cultural problems often associated with software development. Our guests will share stories in each episode 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.
Last refreshed:
Download Metacast podcast app
Podcasts are better in Metacast mobile app
Don't just listen to podcasts. Learn from them with transcripts, summaries, and chapters for every episode. Skim, search, and bookmark insights. Learn more

Episodes

Kyle Daigle - Scaling Up with AI: A New Era of Code Maintenance

Robby has a chat with Kyle Daigle, the Chief Operating Officer at GitHub. They dive into the evolution of software development from the perspective of maintaining and scaling software within large organizations like GitHub. Kyle talks about the importance of simplicity and readability in code over complexity, advocating for well-named variables and straightforward codebases to enhance maintainability. He reflects on his journey from a young developer to understanding the value of well-maintained...

Mar 05, 202447 minEp. 163

Jon Moniaci - Can We Draw A Boundary?

Robby speaks to the Senior Software Engineer at Perchwell, Jon Moniaci. They discuss the delicate balance between innovation and stability in software development. Jon emphasizes the importance of fostering an environment where engineers can experiment without fear, advocating for a culture of defensive programming to mitigate the fear of breaking things in production. He shares insights from his experiences, including the challenges of working with legacy code and the importance of testing and ...

Feb 27, 202454 minEp. 162

Chad Fowler - How Small Can We Make This Problem

Robby has a candid chat with Chad Fowler, the General Partner & CTO at BlueYard Capital. They delve into the nuances of software maintenance, the evolution and challenges of managing software projects, and insights from Chad's tenure as CTO of Wunderlist. They discuss the importance of building software in small, manageable pieces to facilitate easy updates or replacements, the counterintuitive perspective on unit testing's impact on maintainability, and strategies for keeping software up-to...

Feb 20, 202459 minEp. 161

John Nunemaker - How Scary Is This Change?

Robby has a conversation with John Nunemaker, the Owner at "Box Out Sports" and "Fewer & Faster". They dive into the basics of maintaining software projects, highlighting the crucial importance of keeping dependencies and versions up to date. John shares his wealth of experience from his time at GitHub, shedding light on the delicate balance between exploring new architecture patterns and adhering to existing ones. They explore practical approaches to software challenges, emphasizing tools l...

Feb 13, 20241 hr 3 minEp. 160

Jemma Issroff - Running the Parser in the Rain

Robby has a conversation with Jemma Issroff, a Senior Software Engineer, speaker and the author of the book, “Ruby Garbage Collection in Under Two Hours” They delve into the intricacies of well-maintained software, and Jemma brings her wealth of experience, particularly from her involvement in Prism, a notable rewrite of the Ruby parser. The duo explores the contrasting dynamics of maintaining software in C versus Ruby, shedding light on the nuanced challenges and advantages each presents. As th...

Feb 06, 202440 minEp. 159

Jeanine Soterwood - Helping Clients Understand Maintenance Work

Robby has a chat with the Software Development Team Lead at Thoughtbot, Jeanine Soterwood. Unraveling the intricacies of Ruby on Rails, they explore the often overlooked importance of keeping apps up-to-date and maintaining a robust test suite. The conversation weaves through the delicate balance between enticing features and the long-term needs of software maintenance, shedding light on the aspects clients may not find thrilling. Drawing from their experiences in the consulting realm, Robby and...

Jan 30, 202439 minEp. 158

Andrew Atkinson - Maintainable... Databases?

Robby engages with independent consultant and author, Andrew Atkinson, delving into the intricate world of software development and database maintenance. The duo kicks off with a profound exploration of the importance of swift and intuitive change management in software, unraveling the key traits that transform a database into a well-maintained powerhouse. From securing data to cleaning up legacy information, they shed light on the often-neglected aspects that can significantly enhance a softwar...

Jan 23, 202454 minEp. 157

Jimmy Koppel - Aspects of Good Code

Robby engages in a captivating conversation with the CEO at Mirdin and UpToSpeed, Jimmy Koppel. They delve into the transformative power of evolvable code, shedding light on its myriad benefits and how it contributes to an enriching coding experience. Drawing inspiration from Jimmy's insightful blog post, " The 11 Aspects of Good Code ," the discussion unfolds to explore the external qualities of code and the profound impact of crafting code that is not just functional, but a joy to work with. J...

Jan 16, 202444 minEp. 156

Hila Fish - Maintainable Infrastructure Code, Culture, and Documentation

Robby has a chat with Senior DevOps Engineer, Hila Fish. They start off by discussing the key characteristics of maintainable infrastructure code. Hila shared insights on providing software engineering teams with the necessary space for exploration while maintaining essential guardrails to ensure the stability of production environments. The conversation also touched upon the significance of offering engineers useful metrics and dashboards for measuring load and stress tests. Robby and Hila remi...

Jan 09, 20241 hr 2 minEp. 155

Jacob Aronoff - At Least One Person Who Cares To See It Through

Robby has a chat with Staff Software Engineer at Lightstep from ServiceNow, Jacob Aronoff. Their conversation delves into the vital signs of a thriving open source software project. They unpack the characteristics of well-maintained open source endeavors, emphasizing the importance of a passionate community behind the project, rather than misleading indicators like GitHub stars. They discuss the nuances of evaluating a project's health through performance metrics, suggesting that a more holistic...

Nov 21, 202347 minEp. 154

Oliver Drotbohm - Modulithic Applications

Robby has a chat with Oliver Drotbohm, a Staff 2 Engineer at VMware. They explore the essence of maintainable software, pinpointing understandability and modifiability as its foundational pillars. Drawing from Dr. Carola Lilienthal's "Sustainable Software Architecture: Analyze and Reduce Technical Debt," Robby and Oliver dissect the metaphor of technical debt, discussing its historical context and its relevance in today's fast-paced software development environment. Their nuanced conversation ba...

Nov 14, 202342 minEp. 153

Colin Campbell - The Daily Habits of Effective Engineers

Robby has a chat with Colin Campbell, the Director of Engineering at Tucows. Colin delves into the professional ethos of software development, emphasizing that the caliber of an engineer’s work is a reflection of their daily habits. He stressed the importance of humility for software engineers, arguing that it is crucial for continuous improvement and effective teamwork. He also talked about the strategic approach of doing nothing during Sprint Zero, suggesting that thorough planning and groundw...

Nov 07, 202341 minEp. 152

Dave Bryant Copeland - Quantifying the Carrying Cost

Robby has a chat with the Author of Sustainable Web Development with Ruby on Rails, Dave Bryant Copeland (he/him/his). Dave is a Senior Software Engineer and speaker. Reflecting on his experience, Dave believes that well-maintained software is software that people understand what it does, how it works, and that it can be changed. He starts off by highlighting the challenges that developers face when trying to retrofit software with more testing. He also shares his expert insights on how software...

Oct 03, 202343 minEp. 151

Cameron Jacoby - Am I Learning From This?

Robby has a chat with Cameron Jacoby (she/her/hers), a Senior Full-Stack Engineer at BetterUp, a platform that uses world-class coaching and science-backed solutions that help people grow personally and professionally. The one thing that Cameron says should stand out about code being maintainable is that it should be easy to read and understand. She explains why procedural code can often be easier to communicate with and highlights the importance of having helpful data metrics for most new featu...

Sep 26, 202349 minEp. 150

Adriana Villela - On Being a Serial Refactorer

Robby has a chat with Adriana Villela, a Senior Developer Advocate at Lightstep. Adriana highlights that well-maintained software should be software that one can understand when they go into the code even if they’re not super familiar with it. She shares why she values being a serial refactorer and describes what beautiful code should look like. Adriana views debuggers as her best friends because as she says, “I do find maintaining documentation very difficult. That’s where a debugger comes in v...

Aug 22, 202351 minEp. 149

Ahmed Wasfy - Thriving as an Engineering Manager

Robby has a chat with Ahmed Wasfy (he/him/his), the Senior Development Manager at Amazon. On the topic of the common characteristics of well maintained software, Ahmed feels that one critical thing is that software should serve a purpose in terms of what values it adds and the trackable business goal it fulfills. He shares some valuable insights about legacy code based on his vast experience and dives into how to approach the management of technical debt so that an engineering team trusts there ...

Aug 08, 202356 minEp. 148

Naomi Ceder - People-Centric Community Building

Robby has a chat with Independent Python Instructor and Consultant, Naomi Ceder (she/her/hers). Naomi values clear organization, separation of concern and capsulation, visibility instrumentation, and tests when it comes to creating a legacy piece of code that will be continuously useful. She will talk about the importance of weighing up the costs of using 3rd party tools vs rolling your own solution, working in small teams through a career, and what to consider when weighing up a rewrite vs refa...

Jul 04, 202348 minEp. 147

Nadia Odunayo - Don't Try to Solve a Pain Point For a Problem You Aren't Experiencing

Robby has a chat with Nadia Odunayo (she/her/hers), the Founder and CEO at The StoryGraph. Nadia starts off by highlighting solid test coverage, up-to-date gem language platform versions, all security patches, and proper documentation as some of the few common characteristics of maintainable software. She talks about when it makes sense to document debugging processes for your future self, the tradeoffs made when you're the solo developer and founder of a software project, how she approaches pro...

Jun 19, 202357 minEp. 146

Daniela Baron - About Those Docs

Robby has a chat with Senior Staff Engineer, Daniela Baron (she/her). Daniela starts by listing the following things about the characteristics of well-maintained software; it should be easy for new people to join and get the project running on their laptops just by following the README, it should have conventions in place for what kind of code goes where, and several less obvious aspects like how to integrate with third parties and how to deploy to a test environment. Daniela will share ways to ...

Jun 12, 202349 minEp. 145

Cory House - Finding Opportunities for Improvement

Robby has a chat with Cory House (he/him/his), the Founder at Reactjsconsulting.com, a software developer, author, speaker, and consultant. “I love the old saying that we write software for humans. So, I think about that regularly”, Cory says about what the maintainability of software is all about. When it comes down to it, he thinks more about his fellow developers than the compiler. He talks about the importance of good variable naming, shares the tactics for writing good tests for your regula...

Jun 05, 202335 minEp. 144

Avery Quinn - Can You Quantify the Impact?

Robby has a chat with Senior Software Engineer, Avery Quinn. Avery was previously a Senior Software Engineer at Remotion. Avery starts by sharing that she finds well-maintained software to have cohesive modules, be singularly responsible in its functions, and have just a general level of refinement over time. They will dive into the benefits of having a skeleton project that you can experiment with when weighing up different dependencies, tips for onboarding engineers to your teams, things to co...

May 22, 202340 minEp. 143

Carlos Blé - Código Sostenible

Robby has a chat with Carlos Blé, the CEO of Lean Mind, an organization focused on boosting the growth of developers and teams. Carlos is a software crafter, entrepreneur, mentor, speaker, podcaster, blogger, and author of several tech books in Spanish (Diseño Ágil con TDD and Código Sostenible). He is also the Founder of Savvily, a publisher specializing in tech books. Carlos will start off by sharing the four important traits of well-maintained software and examples of what maintainable tests ...

Apr 24, 202350 minEp. 142

Lena Reinhard - How Will People Get Stuff Done?

Robby has a chat with Executive and Leadership Coach, Lena Reinhard (she/her/hers). Lena is a speaker, writer, and Founder of Lena Reinhard Leadership Coaching and Consulting. Previously, Lena served as the VP of Engineering with CircleCI and TravisCI, as well as the startup Founder and CEO of The Neighbourhoodie Software GmbH. From Lena’s perspective, well-maintained software is supposed to serve a business’s goals and continuously improve not just reactively. She highlights the importance of o...

Apr 17, 202356 minEp. 141

Eric Normand - Grokking Simplicity

Robby has a chat with software engineer, trainer, and author of the book Grokking Simplicity, Eric Normand (he/him/his). As Eric reflects on his experience, the first thought he has of well-maintained software is that it’s like a unicorn (Something you can’t find in real life), but on a more serious note, he emphasizes that smaller code bases are easier to maintain and that the maintainability of a code base is also highly dependent on the team of engineers that are working on it. Robby and Eric...

Mar 13, 202347 minEp. 140

Henrik Warne - There is No Software Maintenance

Robby has a chat with Henrik Warne (he/him/his), the Senior Software Engineer at Talos. In Henrik’s view of well-maintained software, he talks about the importance of code having structure early on because, without structure, code tends to inevitably drift over time toward complexity. He highlights the importance of engineers being able to not only read code when they join a project but also be able to run the code and test it. Henrik will share the details of his blog titled, "There is No Softw...

Mar 06, 202343 minEp. 139

Andy Croll - Keep the Weird Stuff Weird

Robby has a chat with Andy Croll (he/him/his), the CTO at CoverageBook, a Rubyist, the Organizer of the Brighton Ruby Conference, an author, speaker, and bootstrapper. The most important thing when it comes to the maintainability of software is “That code is read much more than it’s written”, Andy says. He insists that the core focus should always be on readability. Andy will dive into the rationale for why weird things in our code should stay weird until we find a better way to express it and e...

Feb 06, 202350 minEp. 138

Marianne Bellotti - Building Empathy by Asking, "How Would You Write This in 2007?"

Robby has a chat with Marianne Bellotti (she/her/hers), the Engineering Manager at Rebellion Defense. Marianne is the author of the books, “Hiring Engineers” and “Kill it with Fire” . She talks about the maintainability of software being about whether software can be changed and how easily changes can be made to it. She dives into her experience with legacy modernization and talks about how to effectively judge software. Marianne also shares her insights on the challenges teams face when people ...

Jan 16, 20231 hr 2 minEp. 137

Arpit Mohan - Aspiring To Be Boring As Possible

Robby has a chat with Arpit Mohan, the Co-Founder and CTO of Appsmith, an open-source low-code tool that helps developers build dashboards and admin panels very quickly. Appsmith helps businesses build any custom internal application within hours. In regard to well-maintained software, Arpit points to the importance of engineers writing code for humans and not machines while also focusing a lot on readability. He believes useful code comments are also very crucial in facilitating well-maintained...

Dec 26, 202252 minEp. 136

Noah Clark - Maintainable Software is a Team Sport

Robby has a chat with Noah Clark, a consulting applications developer at Merchants Bonding Company, one the top 15 largest surety writers in the United States. On the top of Noah’s list of things that facilitate the maintainability of software is team dynamics. Well-maintained software can never be achieved by a single individual refactoring code or having grand ideas/visions. It’s made possible by a team coming together and committing to a practice of well-maintained software. He highlights tru...

Dec 19, 202259 minEp. 135

Ben Parisot - Documentation Just Needs To Be Used Once

Robby has a chat with the Engineering Manager at Planet Argon, Ben Parisot. Ben has worked in the tech industry since 2010 and has worn many, many hats: blogger, web designer, web developer, technical producer, scrum master, technical project manager, copywriter, and more. He loves all parts of the software development lifecycle and always has a creative personal web or mobile app humming along outside of work. The first thing Ben says he looks for that represents well-maintained software is tho...

Nov 07, 20221 hr 1 minEp. 134
For the best experience, listen in Metacast app for iOS or Android