> Markdown version of [/videos/601-the-clean-as-you-code-imperative?t=481](https://www.wearedevelopers.com/videos/601-the-clean-as-you-code-imperative?t=481). Every page supports `.md` or `Accept: text/markdown`. Links point to the HTML versions so they work for humans too. Agent guide: [/agents.md](https://www.wearedevelopers.com/agents.md). --- # The Clean as You Code Imperative Stop mopping the floor while ignoring the leak. Learn how enforcing strict quality gates exclusively on new code changes naturally remediates legacy systems without an impossible refactoring backlog. - **Speakers:** Olivier Gaudin - **Event:** World Congress 2023 - **Published:** August 11, 2023 - **Duration:** 30:40 - **URL:** https://www.wearedevelopers.com/videos/601-the-clean-as-you-code-imperative ## Summary Software engineering often prioritizes immediate functionality over structural health, treating code as a disposable asset rather than a foundational root. True clean code rests on four pillars: consistency for team collaboration, intentionality to prevent logic and security errors, adaptability to meet evolving business needs, and responsibility regarding secure practices like avoiding hardcoded secrets. Without this foundation, development slows as teams constantly rewrite brittle legacy code and negotiate with cross-functional teams to fix preventable vulnerabilities. Attempting to retroactively fix massive codebases is equivalent to mopping a floor while ignoring an active water leak. The clean as you code imperative argues for establishing strict quality gates exclusively for newly written or modified code. By enforcing basic coding hygiene at the pull request level—blocking critical issues and stopping the introduction of new technical debt—organizations arrest software degradation immediately. Because teams realistically modify roughly 20 percent of a codebase annually, this forward-looking approach naturally remediates legacy systems over time without requiring impossible, demoralizing refactoring backlogs. Successful implementation integrates seamlessly into the developer workflow, moving from rapid feedback in the IDE via linters to automated enforcement during CI/CD promotion. Setting clear, achievable release criteria prevents developers from fighting overly strict global presets that cause alert fatigue. Furthermore, as generative AI exponentially increases the volume of code produced, treating code generation defensively becomes critical; even outwardly clean snippets require continuous, systemic quality checks to ensure they do not introduce structural or security flaws into the broader application. **Keywords:** clean code methodology, technical debt remediation, legacy code refactoring, software quality gates, pull request linting, codebase adaptability, secure coding practices, continuous code inspection, sonarqube adoption, generative ai code risks, ci/cd pipeline testing, developer workflow integration, team code consistency, vulnerability prevention, defensive programming ## Chapters 1. **The fundamental importance of a robust codebase** (00:19) — Software relies entirely on its code, making it the most critical and non-disposable asset to manage. 1. **Four pillars of writing maintainable application code** (03:57) — Writing code that is consistent, intentional, adaptable, and responsible ensures strong operational roots for the application. 1. **Balancing acceptable code quality with team velocity** (08:01) — Striving for reasonable code cleanliness prevents constant rework while maintaining high throughput and true developer ownership. 1. **Why traditional code quality metrics fail in legacy applications** (11:03) — Attempting to fix entire legacy codebases to meet overarching coverage targets quickly overwhelms specific engineering teams. 1. **Shifting focus to plug the code quality leak** (14:17) — Implementing strict quality gates exclusively on newly added or modified code functionally stops technical debt from compounding. 1. **Managing legacy code organically through natural churn** (18:58) — Focusing quality metrics strictly on modified components organically restructures legacy systems over continuous software update cycles. 1. **Implementing continuous code quality throughout the development lifecycle** (20:18) — Quality verification starts efficiently inside the local development workspace before propagating through pull requests and automated checkpoints. 1. **Summarizing the simple advantages of the clean code approach** (21:53) — Prioritizing immediate basic coding hygiene without resolving massive existing errors produces an optimal working environment for engineering. 1. **Strategies for customized tool adoption and local testing** (23:50) — Answers to audience queries detail practices for avoiding excessive operational friction while pushing early code inspection leftwards. ## Related Moments - [Introduction to keeping test code clean](https://www.wearedevelopers.com/videos/515-dirty-tests-and-how-to-clean-them) (from "Dirty Tests And How To Clean Them") - [Improving communication while defending foundational code quality](https://www.wearedevelopers.com/videos/1438-why-most-software-projects-fail-silently) (from "Why (most) software projects fail silently...") - [Defining the core principles of clean code](https://www.wearedevelopers.com/videos/515-dirty-tests-and-how-to-clean-them) (from "Dirty Tests And How To Clean Them") - [Balancing technical debt and clean code practices](https://www.wearedevelopers.com/videos/100360-developing-the-backend-with-stefan-lingler-cto-at-shpock) (from "Developing the Backend with Stefan Lingler, CTO at Shpock") - [Evaluating generated code syntax and maintaining quality control](https://www.wearedevelopers.com/videos/1906-rag-s-not-dead-you-re-just-using-it-wrong-phil-nash) (from "RAG's Not Dead, You're Just Using It Wrong! - Phil Nash") - [Managing codebase bloat and preserving critical software auditability](https://www.wearedevelopers.com/videos/100242-running-ai-at-scale-the-secret-ingredients) (from "Running AI at Scale: The Secret Ingredients") ## Related Articles - [How to Avoid Over-Engineering](https://www.wearedevelopers.com/magazine/546-how-to-avoid-over-engineering) - [Now is the time for industrialized software development](https://www.wearedevelopers.com/magazine/601-now-is-the-time-for-industrialized-software-development) - [One billion (bad?) developers: How AI is changing the way we learn to code](https://www.wearedevelopers.com/magazine/516-one-billion-bad-developers-how-ai-is-changing-the-way-we-learn-to-code) - [Code reviews might actually be pointless](https://www.wearedevelopers.com/magazine/519-code-reviews-might-actually-be-pointless) ## Related Jobs - [Senior Software Engineer](https://www.wearedevelopers.com/jobs/ext/15942-senior-software-engineer) at **GitHub** - [Tribe Lead - ( Software) Engineering Centre of Excllence](https://www.wearedevelopers.com/jobs/ext/1475530-tribe-lead-software-engineering-centre-of-excllence) at **SD Worx** - [Staff Developer Advocate, GitHub Security Lab](https://www.wearedevelopers.com/jobs/ext/1921051-staff-developer-advocate-github-security-lab) at **GitHub** - [Senior Software Engineer, Enterprise Products](https://www.wearedevelopers.com/jobs/ext/1841248-senior-software-engineer-enterprise-products) at **GitHub** - [Senior Software Engineer](https://www.wearedevelopers.com/jobs/ext/159190-senior-software-engineer) at **GitHub** - [Senior Software Engineer, Client Apps Platform](https://www.wearedevelopers.com/jobs/ext/1773893-senior-software-engineer-client-apps-platform) at **GitHub**