My modules on the CPAN My obsession Thing I like

All rules have exceptions, especially this one.

Always code as if the guy who ends up maintaining your code will be a violent psychopath who knows where you live. Damian Conway, “Perl Best Practices”

If it’s broken, fix it.

Always code assuming that there are bugs somewhere else your in code, because there are.

Any naming standard must meet the “across the room” test. If you ask, “Hey, what was the name of that {function|variable|class|whatever}?”, someone on the other side of the room should be able to verbally respond, and (assuming you know how to spell) you should be able to type that name in correctly without looking it up.

Write your code in a way that requires as little surrounding context to understand as possible. This makes the task of a future maintainer (a.k.a. “you”) who has to jump into the middle of things easier because they have to spend less time figuring out what’s going on and yet are able to fix things correctly.

Do it right the first time. Don't say “we'll get back to it later”, because later is never.

home » code

Elliot Shank