Log in

goodpods headphones icon

To access all our features

Open the Goodpods app
Close icon
headphones
Maintainable

Maintainable

Robby Russell

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.
bookmark
Share icon

All episodes

Best episodes

Top 10 Maintainable Episodes

Goodpods has curated a list of the 10 best Maintainable episodes, ranked by the number of listens and likes each episode have garnered from our listeners. If you are listening to Maintainable for the first time, there's no better place to start than with one of these standout episodes. If you are a fan of the show, vote for your favorite Maintainable episode by adding your comments to the episode page.

Robby sits down with Justine Gehring, an AI Research Engineer at Moderne, to explore how AI tools are transforming code maintenance and scalability. They dive into the unique ways AI can support refactoring for massive and legacy codebases, from retrieval-augmented generation (RAG) to lossless semantic trees, and discuss how developers can benefit from AI-assisted planning and refactoring.

Justine shares her background transitioning from academia to industry and reflects on the essential role of reproducibility in AI, why maintainable code is often overlooked in research, and the challenges of balancing innovation with real-world reliability in software projects.

Topics Discussed

  • What Makes Software Maintainable: Justine’s take on good documentation, reusable code, and ensuring new team members can quickly navigate a codebase. [00:00:42]
  • Academia vs. Industry in Code Maintainability: Why reproducibility and code maintenance often diverge in research settings, and how industry standards address this gap. [00:01:14]
  • From Academia to AI Engineering: Justine shares her journey and how her background in machine learning led to a career in AI-focused software maintenance. [00:04:48]
  • Scaling Refactoring with OpenRewrite: An introduction to OpenRewrite, the open-source tool that facilitates large-scale code transformations, developed by Moderne. [00:12:15]
  • Lossless Semantic Trees: The benefits of LSTs for detailed code analysis, retaining essential syntax and type information critical for reliable AI refactoring. [00:20:24]
  • Retrieval-Augmented Generation (RAG): Justine explains RAG’s significance in allowing AI models to provide context-specific responses without heavy re-training. [00:26:00]
  • Trust and Validation in AI-Generated Code: The importance of robust test cases and human oversight when leveraging AI-generated code to avoid cascading errors. [00:31:36]
  • AI as a Planning Tool for Refactoring Projects: Justine’s insights on using AI as a collaborative coding assistant, offering developers suggestions for planning refactoring and maintenance tasks. [00:35:24]
  • Real-World Example of Scaling Refactoring: Justine recounts a case study where Moderne used OpenRewrite to facilitate large-scale code migration involving multiple frameworks. [00:42:00]
  • Advocating for AI Tools in Code Maintenance: Tips for developers interested in introducing AI tools and approaches within their teams or organizations. [00:42:31]

Key Takeaways

  • AI Supports Reproducibility and Reliability: Ensuring reproducibility in AI-driven tools can enhance both credibility and usability for complex codebases.
  • Prioritize Planning Before Refactoring: Understanding code dependencies and structure is key to successful refactoring; AI tools like OpenRewrite can automate targeted changes.
  • Human Expertise Remains Essential: AI can be an effective coding assistant, but human oversight is necessary to ensure accuracy and quality.
  • Experiment and Scale: Start with small, impactful AI-assisted refactoring recipes and scale up once the process is reliable, saving significant development hours over time.

Resources

Thanks to Our Sponsor!

Turn hours of debugging into just minutes! AppSignal 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!

Subscribe to Maintainable on:

bookmark
plus icon
share episode

In this episode of Maintainable, Robby Russell sits down with Tanmai Gopal, the CEO and co-founder of Hasura. Tanmai shares his insights into the characteristics of well-maintained software and the importance of a codebase that no team member fears. He emphasizes the need for accessibility and understandability in code, making it easier for developers to work with and iterate upon.

Tanmai dives deep into the metaphor of technical debt, urging teams to prioritize product outcomes over best practices. He highlights the value of addressing technical debt contextually and in a way that aligns with product goals.

A significant portion of the discussion revolves around the concept of the "super graph" in GraphQL. Tanmai explains how a unified API, created through federated GraphQL, can streamline API integration and reduce latency. He compares GraphQL with RESTful APIs, showcasing the advantages of a graph-based approach for handling complex data relationships.

Tanmai also introduces Hasura's platform, which introspects databases, code, and APIs to create a comprehensive super graph. This platform simplifies API management, making it easier for developers to maintain and evolve their applications.

Listeners will also learn about Hasura's upcoming user conference and the new features they plan to unveil. Tanmai shares his top science fiction book recommendations and where to follow his thoughts on software engineering online.

Key Takeaways:

  • The importance of a fearless codebase for well-maintained software.
  • Strategies to improve code accessibility and understandability.
  • The metaphor of technical debt and its contextual importance.
  • The concept and benefits of a super graph in GraphQL.
  • How Hasura simplifies API management through introspection.
  • Upcoming Hasura user conference and new features.

Resources Mentioned:

Thanks to Our Sponsor!

Turn hours of debugging into just minutes! AppSignal is a performance monitoring and error tracking tool designed for Ruby, Elixir, Python, Node.js, Javascript, and soon, 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! Check them out!

Subscribe to Maintainable on:

Or search "Maintainable" wherever you stream your podcasts.

Keep up to date with the Maintainable Podcast by joining the newsletter.

bookmark
plus icon
share episode

In this episode of Maintainable, our host Robby Russell sits down with Martin Emde, a sage in the Ruby community and the current Director of Open Source at Ruby Central. Together, they weave through the intricacies of maintainable software, legacy code, and the unwavering power of the Ruby ecosystem. Martin, with his wealth of experience, shares tales from the trenches of open-source software development, focusing on RubyGems and Bundler, and how they've evolved to face the challenges of modern software needs.

Martin addresses the elephant in the room - complexity in software. He muses on the natural progression of software projects from simplicity to complexity, drawing parallels to the growth of living organisms. It's not about fighting complexity, but embracing it with open arms, ensuring the software remains adaptable and maintainable. This conversation sheds light on the importance of testing, documentation, and community support in navigating the seas of complex software development.

Diving deeper, they discuss the essence of technical debt, not as a villain in our stories but as a necessary step in the rapid evolution of technology. Martin's perspective on technical debt as a tool for progress rather than an obstacle is refreshing, encouraging developers to approach their work with more kindness and understanding.

The discussion also highlights Ruby Central's pivotal role in nurturing the Ruby community, emphasizing the importance of contributions, whether code, conversation, or financial support. Martin's call to action for developers to engage with open-source projects, to adopt gems in need, and to provide support where possible, is a heartwarming reminder of the collective effort required to sustain the vibrant Ruby ecosystem.

For those curious minds eager to dive into the world of Ruby, contribute to its growth, or simply enjoy a captivating discussion on software development, this episode is a delightful journey through the challenges and joys of maintaining open-source software. Don't miss out on the gems of wisdom shared in this episode, and be sure to check out the useful links below for more information on how you can contribute to the Ruby community.

Book Recommendation:

Helpful Links:

Thanks to Our Sponsor!

Turn hours of debugging into just minutes! AppSignal is a performance monitoring and error tracking tool designed for Ruby, Elixir, Python, Node.js, Javascript, and soon, 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! Check them out!

Subscribe to Maintainable on:

Or search "Maintainable" wherever you stream your podcasts.

Keep up to date with the Maintainable Podcast by joining the newsletter.

bookmark
plus icon
share episode

In this episode of Maintainable, Robby speaks with April Wensel, Founder and Owner of Compassionate Coding. April shares her journey in the software industry and how she came to embrace compassion as a core value in coding and team dynamics. She explains why empathy is critical when working with legacy code, mentoring junior developers, and addressing technical debt.

Episode Highlights

  • [00:05:32] Introduction to Compassionate Coding: April discusses the mission behind Compassionate Coding and why human-centered development is essential.
  • [00:13:36] Compassion and Technical Debt: How fostering a compassionate mindset helps teams navigate the challenges of maintaining legacy code and tackling technical debt.
  • [00:20:10] Empathy in Code Reviews: April talks about the role of compassion in creating healthy, constructive code review cultures.
  • [00:26:30] Onboarding with Compassion: The importance of pairing and empathy in onboarding new engineers, whether junior or senior.
  • [00:31:55] The Refactor vs. Rewrite Debate: April explains why she usually sides with refactoring over rewriting code, and how compassion can inform that decision.
  • [00:41:20] The Role of Leadership in Code Quality: How leaders can set the tone for compassionate coding by prioritizing better documentation and creating a supportive team environment.
  • [00:44:56] Community Service and Building Empathy: April shares how volunteering outside of tech has helped her develop empathy that translates into better teamwork and communication in the workplace.

Key Takeaways:

  • Compassion in coding isn’t just about clean code; it's about how we treat ourselves and others in the process of writing and maintaining software.
  • Legacy code doesn’t have to be a source of frustration; by embracing empathy and self-compassion, teams can tackle it with a positive mindset.
  • Pairing and mentorship are powerful tools in onboarding, helping to bring new team members into a supportive, inclusive environment.
  • Effective communication with stakeholders about technical debt requires empathy and understanding of their priorities.
  • Compassionate coding also extends beyond the development team, influencing interactions with non-engineers, users, and the broader community.

Resources:

Follow April Wensel:

Thanks to Our Sponsor!

Turn hours of debugging into just minutes! AppSignal 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!

Subscribe to Maintainable on:

Or search "Maintainable" wherever you stream your podcasts.

Keep up to date with the Maintainable Podcast by joining the newsletter.

bookmark
plus icon
share episode

Welcome to another engaging episode of the Maintainable Software Podcast! In this episode, Robby sits down with Moriel Schottlender, Principal Software Engineer at the Wikimedia Foundation, to explore the complex journey of modernizing MediaWiki, the software behind Wikipedia. Moriel shares her insights on what it takes to keep an enormous monolithic codebase maintainable while supporting an ever-growing and diverse set of global users. She highlights the importance of modularization, ownership, and the delicate balance between flexibility and stability in open-source software.

Key Takeaways

[00:00:51] Characteristics of Well-Maintained Software: Moriel discusses the three crucial characteristics of well-maintained software: ownership, modularization, and documentation.

[00:01:09] Ownership and Rules for Contribution: Ownership goes beyond just fixing bugs—it involves understanding the architectural purpose and maintaining consistency even as teams change.

[00:03:35] Product Vision's Role in Maintainability: Why a clear product vision is essential for maintaining software, even in the face of organic growth.

[00:07:14] Balancing Experimentation and Long-Term Planning: Moriel shares insights into how Wikimedia balances rapid experimentation with careful, long-term architectural planning.

[00:07:32] The Evolution of MediaWiki: MediaWiki's growth from a small project to the backbone of Wikipedia, now supporting over 900 wikis, and the challenges that come with scaling.

[00:14:18] Modernizing a 23-Year-Old Monolith: Robby and Moriel dive into the challenges of modernizing MediaWiki’s architecture, including the difficulties of updating a monolithic structure.

[00:17:15]Wikitext vs. Markdown: Moriel explains why MediaWiki uses its own Wikitext language instead of Markdown and the unique challenges it presents.

[00:22:25] Architectural Flexibility for the Future: The importance of having a flexible architecture that can adapt to the evolving needs of users and technologies.

[00:26:04] Technical Debt and Modularization: How Wikimedia approaches technical debt in MediaWiki and prioritizes architectural interventions to improve modularity and maintainability.

[00:39:00] Community Contributions to MediaWiki: Strategies for increasing developer contributions and how Wikimedia empowers volunteers while maintaining software quality.

[00:41:59] Advice for Aspiring Open Source Contributors: Moriel shares encouraging words for anyone looking to contribute to open-source projects, emphasizing that everyone can make a meaningful impact.

[00:35:44] The Role of Documentation: Moriel discusses Wikimedia's efforts to improve documentation and ensure it's useful for both developers and end-users, leveraging the strengths of wiki-based contributions.

[00:30:29] Celebrating Small Wins: Moriel talks about how Wikimedia celebrates small victories to keep team morale high in the face of big challenges.

Resources Mentioned

Book Recommendation:

Connect with Moriel

Thanks to Our Sponsor!

Turn hours of debugging into just minutes! AppSignal 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!

Subscribe to Maintainable on:

Alan Ridlehoover: Building Robust Systems Through Behavior-Centric Testing

In this episode of Maintainable, Robby speaks with Alan Ridlehoover, Senior Engineering Manager at Cisco Meraki. Alan shares his perspective on building well-maintained software by focusing on behavior-centric testing, clear code ownership, and thoughtful technical decisions that stand the test of time.

Alan discusses his experience working in both startup environments and large-scale engineering teams, including how he navigates the unique challenges of each. He provides practical advice on managing conditional logic in code, scaling with third-party dependencies, and ensuring that testing strategies remain effective as systems grow in complexity.

Key Takeaways:

  • The characteristics of well-maintained software: behavior-centric testing, solid code principles, and ownership boundaries.
  • Balancing the needs of startups vs. large enterprises when it comes to software maintenance.
  • Alan’s approach to handling conditional logic with a technique called "rehydration" to simplify complex code.
  • Why focusing on behavior, not implementation, is critical for scalable, maintainable tests.
  • The importance of interfaces and facades for managing third-party dependencies and future scalability.
  • How to approach technical debt as a conscious trade-off, not an inevitable burden.
  • Best practices for addressing flaky tests, including managing non-determinism, order dependencies, and race conditions.
  • How to set up effective monitoring and alerting systems to maintain a healthy software environment.
  • The role of team structure and product ownership in delivering sustainable, high-quality software.

Episode Highlights:

  • [00:05:32] Introduction to the Guest's Background: Robby and Alan discuss Alan's work at Cisco Meraki and his approach to well-maintained software.
  • [00:15:10] The Importance of Behavior-Centric Testing: Alan explains why focusing on behavior, not implementation, helps in both startups and large-scale environments.
  • [00:24:30] Rehydration: A Strategy for Managing Conditional Logic in Code: Alan shares his method for simplifying code with many conditionals.
  • [00:35:00] Navigating Technical Debt: Alan offers advice on how to strategically manage technical debt without slowing down business needs.
  • [00:45:18] Monitoring and Alerting: Alan’s tips on keeping systems healthy and avoiding customer-facing issues through smart monitoring setups.

Resources Mentioned:

Connect with Alan Ridlehoover:

Thanks to Our Sponsor!

Turn hours of debugging into just minutes! AppSignal 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!

Subscribe to Maintainable on:

Or search "Maintainable" wherever you stream your podcasts.

Keep up to date with the Maintainable Podcast by joining the newsletter.

bookmark
plus icon
share episode

In this episode of Maintainable, Robby chats with Stig Brautaset, Staff Software Engineer at CircleCI. Stig shares his insights on maintaining well-documented but complex legacy code, the impact of team dynamics on software maintenance, and his experiences with the SBJSON library.

Stig discusses the characteristics of well-maintained software, emphasizing the importance of team experience, domain knowledge, and risk appetite. He reflects on his own career journey, highlighting the transition from overconfidence to a balanced approach to risk-taking.

A significant portion of the conversation delves into Stig's concept of "Alien Artifacts," which describes highly resistant legacy code written by highly skilled engineers. He explains the challenges of modifying such code and shares examples from his own experiences.

Stig also talks about his work on the SBJSON library, addressing the complexities of handling multiple versions and dependency conflicts. He advocates for developers maintaining the software they ship and discusses the balance between shipping features quickly and maintaining long-term code quality.

Key Takeaways

  • The influence of team dynamics on software maintenance
  • Understanding the concept of "Alien Artifacts" in legacy code
  • Strategies for handling multiple versions of a software library
  • The importance of developers being on call for the software they ship
  • Managing different types of technical debt

Book Recommendation:

Helpful Links:

Want to share your thoughts on this episode? Reach out to Robby at [email protected].

Thanks to Our Sponsor!

Turn hours of debugging into just minutes! AppSignal is a performance monitoring and error tracking tool designed for Ruby, Elixir, Python, Node.js, Javascript, and soon, 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! Check them out!

Subscribe to Maintainable on:

Or search "Maintainable" wherever you stream your podcasts.

Keep up to date with the Maintainable Podcast by joining the newsletter.

bookmark
plus icon
share episode

In this episode of Maintainable, Robby is joined by Brian Scanlan, Principal Systems Engineer at Intercom. Brian shares insights into how Intercom has successfully implemented a volunteer-led on-call support system, emphasizing the importance of meaningful alarms and a consistent software environment.

Summary of Topics

  • [00:05:32] Introduction to the Guest's Background: Brian Scanlan discusses his role at Intercom and his experience with on-call practices.
  • [00:15:10] Developing a Volunteer-Led On-Call System: Brian explains how Intercom transitioned to a volunteer-led on-call system, ensuring that alarms are meaningful and actionable.
  • [00:20:00] The Role of Consistent Software Architecture: The impact of Intercom’s monolithic Ruby on Rails architecture on simplifying on-call duties.
  • [00:29:46] Managing Technical Debt as Velocity Risks: Brian describes how Intercom manages technical debt through a velocity risk framework.
  • [00:38:45] Improving Deployment Processes: The evolution of Intercom’s deployment processes, reducing the time from merge to production.
  • [00:43:32] Treating Internal Tools as a Product: The importance of treating internal tools with the same care as external products, focusing on usability and impact.
  • [00:50:56] Encouraging Small Wins in Productivity: How Intercom encourages engineers to address small productivity issues to prevent larger problems.
  • [00:51:39] Balancing Innovation with Stability: Intercom’s conservative approach to engineering and how it helps maintain a stable product.

Key Takeaways

  • Meaningful Alarms: Ensure that all alarms are actionable and represent real or inevitable customer pain.
  • Consistent Architecture: A consistent software environment, like Intercom's Ruby on Rails monolith, simplifies on-call duties and allows for greater flexibility across teams.
  • Velocity Risk Framework: Managing technical debt by quantifying its impact on velocity helps prioritize the most impactful work.
  • Continuous Improvement: Regular reviews and continuous improvement are essential for maintaining a sustainable on-call system.
  • Product-Focused Engineering: At Intercom, the emphasis is on building products, not just writing code, ensuring that engineers are focused on delivering value.

Helpful Links

Subscribe to Maintainable on:

Or search "Maintainable" wherever you stream your podcasts.

Keep up to date with the Maintainable Podcast by joining the newsletter.

bookmark
plus icon
share episode
Maintainable - Marit van Dijk: How Are We Going to Test This?
play

02/10/20 • 37 min

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 Takeaways

  • Testing 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 Links

Subscribe to Maintainable on:

Or search "Maintainable" wherever you stream your podcasts.

Keep up to date with the Maintainable Podcast by joining the newsletter.

bookmark
plus icon
share episode

In this episode of Maintainable, Robby welcomes Scott Hanselman, VP of Developer Community at Microsoft and host of the Hanselminutes Podcast, to discuss the emotional side of maintainable software. Scott shares his thoughts on fear as a common thread in poorly maintained software, the importance of building a team culture of trust, and how finding a good work-life balance helps create better software.

The Role of Fear in Technical Debt

  1. Scott believes that if you fear the software you work on, it's a tell-tale sign that it has maintainability issues.
  2. Technical debt is rooted in fear--either fear of making a change that will break something or fear of being unable to change something when needed.
  3. He encourages teams to talk openly about their fears and anxieties regarding the software and to consider what things give them confidence in the codebase.

Building a Team Culture of Confidence

  1. Scott emphasizes the importance of empathy in overcoming technical debt and making software more maintainable.
  2. Senior engineers and team leads have a responsibility to make junior developers feel safe enough to speak up and ask questions.
  3. He advocates for providing new hires with small, achievable tasks to build their confidence and trust in the software.
  4. Scott encourages teams to use "inner loop" and "outer loop" thinking.
  5. Inner loop - The cycle of making a change, hitting f5, and seeing changes immediately.
  6. Outer loop - Things like deploying the codebase, getting it tested, ensuring production stability.
  7. Both experienced and junior engineers have their own inner and outer loops as individuals, and continuous improvement at all levels is key.

Overcoming Fear, Embracing Maintainability, and Finding Balance

  1. Scott shares stories about Microsoft's journey with open-source software and how that process has shaped the company's culture around maintainable code.
  2. He talks about the importance of striking a balance between source-opened and open-source software and finding the sweet spot for a project or organization.
  3. Scott warns against the trap of striving for unattainable perfection. Aiming for good, solid repeatable work over perfection ultimately yields better results.
  4. He uses his own projects, like the Hanselminutes podcast, as examples of focusing on consistent outputs and utilizing a simple workflow.
  5. Scott advocates for using AI tools to transcribe coding sessions, freeing up developers from extensive note-taking.

Book Recommendation:

Helpful Links:

Thanks to Our Sponsor!

Turn hours of debugging into just minutes! AppSignal is a performance monitoring and error tracking tool designed for Ruby, Elixir, Python, Node.js, Javascript, and soon, 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! Check them out!

Subscribe to Maintainable on:

Or search "Maintainable" wherever you stream your podcasts.

Keep up to date with the Maintainable Podcast by joining the newsletter.

bookmark
plus icon
share episode

Show more best episodes

Toggle view more icon

FAQ

How many episodes does Maintainable have?

Maintainable currently has 195 episodes available.

What topics does Maintainable cover?

The podcast is about Coding, Web Development, Software, Software Development, Agile, Podcasts, Technology, Business, Careers and Programming.

What is the most popular episode on Maintainable?

The episode title 'Irina Nazarova - Investing in Innovation: The Consultancy's Guide to Growth' is the most popular.

What is the average episode length on Maintainable?

The average episode length on Maintainable is 44 minutes.

How often are episodes of Maintainable released?

Episodes of Maintainable are typically released every 7 days.

When was the first episode of Maintainable?

The first episode of Maintainable was released on Apr 15, 2019.

Show more FAQ

Toggle view more icon

Comments