Managing Cyclomatic Complexity
A developer explains cyclomatic complexity, its importance for maintainable code, and demonstrates it with examples from simple functions to the Gilded Rose kata.
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.
A developer questions the pursuit of 'clean code' after refactoring for DRYness makes the codebase harder to understand.
Explains how to restrict attribute assignment in Python classes to prevent typos and enforce defined attributes, using a real-world example.
Argues that overly clever code is harmful in production environments, using Project Euler examples to contrast with maintainable code.
Explains what code linting is, its benefits for catching errors and enforcing style, and provides a basic setup guide for JavaScript/React.
A developer's guide to avoiding premature abstraction by prototyping, shipping, and then refining code for better results.
Explores the concept of defensive programming, its challenges, and practical resources to write more resilient code against unknown failures.
Introducing ArchUnit, a Java library for testing and enforcing architectural rules and naming conventions in your codebase.
Identifies and explains five common JavaScript coding anti-patterns, such as implicit type conversion, with actionable fixes to improve code quality.
A critique of blindly following software development 'best practices', arguing for more thoughtful discussion and application.
A guide offering practical tips for new software developers to improve productivity, including mastering IDE shortcuts and effective searching.
A guide to installing, integrating, and configuring SwiftLint to enforce Swift coding styles and conventions in your Xcode projects.
A software developer draws parallels between keeping a clean kitchen bench in cooking and maintaining a tidy codebase and workstation for better productivity.
An architect's journey designing a micro-frontends system at DAZN to achieve speed, scalability, and code quality by applying microservices principles to the frontend.
Explains how to enforce test naming conventions through automated checks, ensuring consistency and acting as living documentation.
Applying digital minimalism principles to software development to reduce clutter, optimize code, and improve maintainability.
An article discussing the importance of fixing hidden technical debt and friction in software development, even when it's not immediately visible.
A software developer argues that writing less code is a key skill for creating maintainable, efficient systems and solving problems effectively.
Explores why skilled developers write poor unit tests by misapplying production code principles, arguing test code should prioritize clarity over abstraction.