Road to Refactoring
A developer shares practical principles for successfully refactoring complex, large-scale codebases without introducing regressions.
A developer shares practical principles for successfully refactoring complex, large-scale codebases without introducing regressions.
A developer investigates a bug in a Space War game where duplicate bases cause crashes, detailing the debugging process and unit testing.
A critique of publishing code as images in academic papers, highlighting errors and reproducibility issues in statistical computing examples.
A developer's personal rule for avoiding technical debt by not writing 'bad' code, based on experiences with legacy systems.
Explains what 'magic values' are in programming and provides examples of how to replace them with named constants for better code clarity.
A senior software engineer shares practical tips for succeeding in a new job, focusing on kindness, work attitude, and code quality.
Analyzes the problems with if/else/switch statements in code and proposes a polymorphic factory object solution for better architecture.
A developer's reflection on how writing a test for a simple one-line bug fix can become a complex, time-consuming task.
Explores the benefits and common questions about mob programming, a collaborative coding practice where teams work together on features and problems.
A tutorial on integrating ESLint with Webpack 5 and Babel to enforce code style and catch errors in a JavaScript project.
A developer shares the rare joy of running Python code successfully on the first try and reflects on the experience.
A guide to effective naming in code, covering principles for clarity, precision, and consistency to improve software design and maintainability.
Advocates for writing 'honest code' through practices like referential transparency and explicit dependencies to improve software understandability and maintainability.
Explains referential transparency in Swift, its benefits for code clarity, and how to achieve it in practice.
A guide to setting up a Python project with automated testing, linting, and type-checking to improve code quality and team collaboration.
Explores the mental framework of 'builders' vs 'architects' in programming to understand team conflicts and improve collaboration.
Explains the importance of documenting unit tests with examples and best practices for writing clear test comments.
Explores the Thanos project's extended Go style guide for writing high-quality, readable, and efficient code in large-scale distributed systems.
A developer explains cyclomatic complexity, its importance for maintainable code, and demonstrates it with examples from simple functions to the Gilded Rose kata.
Explores the philosophy of writing good, idiomatic Go code, questioning common mantras and seeking better principles for the community.