YAGNI and DRY
9th December 2003
Two acronyms that have been seeing a lot of action at work recently are YAGNI and DRY. They’re great principles to go by in any case, but in a pair programming environment they take on a whole new level of utility.
You Ain’t Gonna Need It states that you should always implement things when you actually need them, never when you just foresee that you need them.
This is great for controlling feature creep; the moment one of us says “we might need that later” the other says “YAGNI” and we can move right along.
Don’t Repeat Yourself is one of the tips from The Pragmatic Programmer, a book which is every bit as good as people say it is. It states that Every piece of knowledge must have a single, unambiguous, authoritative representation within a system
—whenever we spot something that is duplicated and can be considered a “piece of knowledge” we frequently refactor it straight away.
One of the most interesting things about pair programming is that introduces a complete reliance on communication into something that is generally a solitary activity. Guidelines like the two listed above extend the vocabulary that can be used in such communication, speeding up development and making tough decisions easier to quickly resolve.
More recent articles
- Weeknotes: Llama 3, AI for Data Journalism, llm-evals and datasette-secrets - 23rd April 2024
- Options for accessing Llama 3 from the terminal using LLM - 22nd April 2024
- AI for Data Journalism: demonstrating what we can do with this stuff right now - 17th April 2024
- Three major LLM releases in 24 hours (plus weeknotes) - 10th April 2024
- Building files-to-prompt entirely using Claude 3 Opus - 8th April 2024
- Running OCR against PDFs and images directly in your browser - 30th March 2024
- llm cmd undo last git commit - a new plugin for LLM - 26th March 2024
- Building and testing C extensions for SQLite with ChatGPT Code Interpreter - 23rd March 2024
- Claude and ChatGPT for ad-hoc sidequests - 22nd March 2024
- Weeknotes: the aftermath of NICAR - 16th March 2024