All code is legacy, deal with it now
A podcast discussing why all code becomes legacy and how to write modular, maintainable code to reduce future technical debt.
A podcast discussing why all code becomes legacy and how to write modular, maintainable code to reduce future technical debt.
A podcast episode discussing how to write code that becomes manageable legacy code, using a personal game development example.
A senior engineer reflects on the complex reasons behind messy codebases, arguing against blaming developers and for focusing on systemic solutions.
A TypeScript tip on using a custom `TODO` type as a purposeful escape hatch for difficult type problems, with a caution against overuse.
The article uses the visible routers at Centre Pompidou as a metaphor for how software systems evolve and adapt to new requirements over time.
A summary of a study showing how technical debt and low code quality significantly slow development and increase defects.
A developer's reflection on the challenges of modernizing the aging Dask project blog, exploring technical and community communication hurdles.
A senior engineer explains why writing less code is often better, focusing on long-term maintenance costs and technical debt.
A consultant outlines six common signs that a software system's architecture lacks visibility and discoverability, hindering developer understanding and maintenance.
A developer argues for proactively cleaning up unused code and dependencies to prevent future technical debt and hidden bugs.
A manager argues that effective management is crucial for keeping engineering teams focused on business goals and preventing technical rabbit holes.
A coaching-style article posing critical questions for tech leaders to consider before scaling their engineering teams and hiring new developers.
A critique of the unrealistic expectation that an outsider could quickly fix Twitter's massive, complex legacy codebase.
Strategies for managing complex, semantic code migrations in large, multi-team mobile codebases, focusing on coordination and tooling.
An iOS engineer's experience tackling technical debt and refactoring a legacy codebase at Babylon, highlighting the challenges of prioritizing tech work over new features.
A guide to manually tackling tedious software development tasks like linting and dependency upgrades, and when brute force is the right approach.
Explores how legacy IT systems resemble zombies, surviving on human knowledge, and why digital transformation must address both technology and human processes.
Strategies for development teams to identify, plan for, and break the vicious cycle of accumulating technical debt.
Explains how to leverage urgency to justify large-scale refactoring projects and gain organizational buy-in for technical improvements.
Introduces the 'Code Review Pyramid' concept to prioritize important aspects like functionality and performance over style in code reviews.