What Is Legacy Code? A Clear Definition for Developers
What is legacy code? A clear definition for developers, why Michael Feathers defines it as code without tests, and how to tell debt from legacy.
Practical advice for engineers who want to ship better software, faster.
What is legacy code? A clear definition for developers, why Michael Feathers defines it as code without tests, and how to tell debt from legacy.
Break dependencies in legacy code safely. A practical guide to sprout method, wrap method, and seams from Working Effectively with Legacy Code.
A practical guide to secrets management: stop committing tokens, pick the right vault, rotate cleanly, and keep CI from leaking credentials in logs.
A practical guide to setting and tracking SLOs: pick meaningful SLIs, calculate error budgets, alert on burn rate, and avoid the metrics that mislead teams.
GitHub Actions patterns for faster, safer CI: reusable workflows, matrix builds, OIDC, dependency caching, concurrency control, and secret handling that scales.
How architecture decision records help engineering teams capture context, avoid repeated debates, and ship better systems. A practical guide with examples.
A practical developer onboarding playbook: get a new engineer from first day to first merged PR in under a week, without skipping the steps that matter.
A practical guide to database connection pooling for Postgres and Node.js. Pool sizing, timeouts, PgBouncer, serverless pitfalls, and real numbers.
A practical checklist for reviewing AI-generated code: what to check first, common failure modes, and how to combine AI with human review safely.