I just read a quote that rocked my world:
“Debugging is twice as hard as writing the code in the
first place. Therefore, if you write the code as
cleverly as possible, you are, by definition, not
smart enough to debug it.”
– Brian W. Kernighan –
Mr Kernighan’s quote eloquently says what I have been trying to convince people of, my whole career: Keep it simple. Its ironic because “clever code” is probably the #1 reason that a lot of programs get rewritten. Programmers just don’t think about maintainability (except when it applies to themselves).
I know I don’t get much respect from my colleagues and peers for keeping my programs simple, but I do have a lot of satisfaction when I am asked to rewrite one of their programs because no one else can read their stuff.