What does “make your code DRY” even mean?! Here is a glossary of some common terms and acronyms used in software development.
- DRY: Don’t Repeat Yourself
- Don’t copy your code (and more importantly, don’t duplicate your abstractions.
- YAGNI: You Aren’t Going to Need It
- While you are developing, if you think to yourself “I may need this functionality someday,” don’t implement it until you actually need. Because you aren’t going to need it.
- KISS: Keep It Simple, Stupid
- When you have to choose between a simple and a complex implementation, always choose the simple one.
- GIL: Global Interpreter Lock
- The GIL is used in Python, and is one of the reasons parallelization is difficult/inefficient.
- OBOE: Off By One Error
- Good luck catching these bugs…
- SCM: Source Code Management
- Whenever you see this, think git.
- Yak Shaving: Uncover many layers of complexity
- Have you ever solved a problem only to uncover another problem underneath it? This is also referred to as doing menial tasks that preclude you from doing the real interesting work.
- Bike Shedding: Focusing on the trivial in spite of the essential
- Imagine you are working on an important building (like a nuclear power plant), spending time discussing the color of the bike shed is trivial compared to the rest of the project.
Bonus, not an acronym, but rather initials:
- DHH: David Heinemeier Hansson
- Co-founder of Basecamp, creator of Ruby on Rails, and holder of strong opinions.
Leave a Reply