Never Rewrite

Isaac Askew and Jeffrey Sherman
undefined
Nov 1, 2024 • 25min

Episode 76: Aligning Your Company Standards to its Lifecycle Phase

Guest Dustin Rea joins us to discuss the importance of aligning a company's standards and processes with its lifecycle stages. The discussion covers five key phases: the MVP phase, where the foundation is built; the Product User Fit phase, focusing on understanding customer needs; the Product Market Fit phase, solidifying the offering; the Scaling Up phase, managing growth; and finally, the Multi-Product Platform phase, where companies expand their offerings. Each phase presents unique challenges and requires different approaches to maintain quality and efficiency.
undefined
Oct 25, 2024 • 17min

Episode 75: Rewriting is Gambling - A Lesson in Risk

Jeffrey and Isaac discuss the inherent risks associated with software rewrites, emphasizing how rewrites push risk to the end of the development cycle. The discussion highlights the need for iterative development and the significance of delivering independent components to ensure project success, particularly within the SaaS model, which thrives on continuous improvement and customer satisfaction.
undefined
Oct 18, 2024 • 11min

Episode 74: Musketeering

Jeffrey and Isaac explore the concept of 'musketeering' in software development, emphasizing the importance of collaboration in solving complex problems. They discuss the challenges of legacy code, the necessity of testing, and the strategy of 'divide and conquer' to tackle intertwined issues effectively.
undefined
Oct 11, 2024 • 12min

Episode 73: The Politics of Delivering Trivial Changes

Isaac and Jeffrey discuss the philosophy of continuous iteration in software development, emphasizing the importance of making small, incremental changes rather than large, risky updates. They explore the challenges of communicating the value of these trivial changes to non-technical stakeholders and the benefits of refactoring code for future development. The discussion also highlights the significance of storytelling in conveying the purpose and impact of these changes to a broader audience.
undefined
Oct 4, 2024 • 27min

Episode 72: Perfectionism in Programming

Isaac and Dustin Rea discuss the impact of perfectionism in programming, particularly how it can hinder project success. They explore the importance of launching minimum viable products (MVPs) to validate ideas in the market, the challenges of managing change in production software, and the balance between perfectionism and practicality. The discussion also highlights the significance of team dynamics and customer empathy in software development, as well as lessons learned from scaling and responding to customer demands.
undefined
Sep 27, 2024 • 13min

Episode 71: Are Ignorable Errors Still "Errors"?

Isaac and Jeffrey explore the complexities of error management in software development, particularly focusing on the significance of logs, the philosophical implications of ignoring errors, and the importance of proactive log management. They discuss how to differentiate between true errors and warnings, the role of telemetry in alerting, and the necessity of maintaining clean logs to enhance system understanding and customer experience.
undefined
Sep 20, 2024 • 23min

Episode 70: Resource Engineering

Isaac and Jeffrey delve into the concept of resource engineering, emphasizing the importance of understanding cost implications in engineering decisions. They discuss how engineers often overlook financial aspects while focusing on technical solutions, leading to potential inefficiencies. The dialogue highlights the need for engineers to have greater visibility into costs, particularly in cloud services like AWS, and how this awareness can drive better decision-making. They also explore the balance between optimizing costs and developing new features, advocating for a more business-oriented mindset among engineers to enhance overall effectiveness.
undefined
Sep 13, 2024 • 17min

Episode 69: Anxiety When Fixing a System You Didn't Create

Isaac and Jeffrey delve into the anxiety developers face when dealing with legacy systems they did not create. They explore the reasons behind the fear of fixing such systems, the challenges of refactoring, and the skills required to navigate these situations. The discussion emphasizes the importance of understanding legacy code, learning from it, and developing strategies to reduce anxiety when approaching refactoring tasks. Practical tips are provided for developers to build confidence and make meaningful contributions to legacy systems.
undefined
Sep 6, 2024 • 17min

Episode 68: The Fallacy of Rewriting Software to Save Money

Jeffrey and Isaac discuss the fallacy of rewriting software to save money. They highlight that organizations end up running multiple systems simultaneously, resulting in increased costs. The conversation also touches on the challenges of maintaining multiple versions of a software system and the importance of continuous delivery and iteration. It concludes by emphasizing the need to prove the ability to migrate existing pages before starting a rewrite.
undefined
Aug 30, 2024 • 39min

Episode 67: Revisiting "The Joel Test: 12 Steps to Better Code"

Jeffrey revisits The Joel Test, a 12-question test to determine if a software development team is set up for success. Jeffrey and Isaac discuss the relevance of each question in today's context and how the industry has evolved over the years. The topics covered include source control, building and deployment processes, bug tracking, bug fixing, project scheduling, specifications, working conditions, and tools.

The AI-powered Podcast Player

Save insights by tapping your headphones, chat with episodes, discover the best highlights - and more!
App store bannerPlay store banner
Get the app