Unmaintainable code
Unmaintainable code is an essay by Roedy Green about [[software development], software testing, code refactoring, and related topics.
It is a satire in the tradition of The Devil's Dictionary.
Many of the examples use Java, but the general principles apply to all programming languages.
See the official website for the complete essay.
Contents
- 1 Topics
- 1.1 General Principles
- 1.2 Naming
- 1.3 Camouflage
- 1.4 Documentation
- 1.5 Program Design
- 1.6 Coding Obfuscation
- 1.7 Ambiguity
- 1.8 Testing
- 1.9 Choice of Language
- 1.10 Dealing With Others
- 1.11 Roll Your Own
- 1.12 Tricks In Offbeat Languages
- 1.13 Miscellaneous Techniques
- 1.14 Philosophy
- 1.15 The Shoemaker Has No Shoes
- 1.16 Contributors
- 1.17 Operation Termite
- 1.18 Feedback
- 2 See also
- 3 External links
Topics
General Principles
"You want to make it as hard as possible for [the maintenance programmer] to find the code he is looking for. But even more important, you want to make it as awkward as possible for him to safely ignore anything.
"Programmers are lulled into complacency by conventions. By every once in a while, by subtly violating convention, you force him to read every line of your code with a magnifying glass."
Naming
"Much of the skill in writing unmaintainable code is the art of naming variables and methods. They don’t matter at all to the compiler. That gives you huge latitude to use them to befuddle the maintenance programmer."
Camouflage
"Much of the skill in writing unmaintainable code is the art of camouflage, hiding things, or making things appear to be what they are not."
Documentation
Program Design
"The cardinal rule of writing unmaintainable code is to specify each fact in as many places as possible and in as many ways as possible."