Difference between revisions of "Unmaintainable code"
Karl Jones (Talk | contribs) (→Documentation) |
Karl Jones (Talk | contribs) (→Coding Obfuscation) |
||
Line 43: | Line 43: | ||
=== Coding Obfuscation === | === Coding Obfuscation === | ||
+ | "Sedulously eschew obfuscatory hyperverbosity and prolixity." (Anon.) | ||
+ | |||
[http://mindprod.com/jgloss/unmainobfuscation.html Link] | [http://mindprod.com/jgloss/unmainobfuscation.html Link] | ||
Revision as of 08:23, 18 August 2015
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
"Since the computer ignores comments and documentation, you can lie outrageously and do everything in your power to befuddle the poor maintenance programmer."
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."
Coding Obfuscation
"Sedulously eschew obfuscatory hyperverbosity and prolixity." (Anon.)