Pithy Advice for programmers

Of course, the original "Pithias" were stoned out of their minds on the methane gas that seeped up out of the caves at Delphi ...


There is no "they"

If you don't do it, it won't get done. (See this.)

There is no "later"

Schedules get tighter as time goes by.

It's kind of like entropy, but not nearly as much fun to watch.

All luck is bad!

Good luck gives you the false impression that you were doing something right.

Mediocrity is its own reward

You get what you give.

If you can't explain it, you aren't ready to write it

Interviewer's corollary: If a candiate can't explain his last job, he probably can't do this job either.

Anal retentiveness is the programmer's best friend

If you don't have the energy to document your code properly, at least have the decency to be CONSISTENT!

The devil you know is to be preferred

Since nobody ... ever ... has a proper requirements list, the existing code at least has the virtue of actually doing what your customer's have condescended to ask you for.

You don't actually think that anyone understands the code do you?

"Starting from scratch" is seductive but disease ridden

If you are too lazy to figure out the code that we've already got, why should we trust you to create it all from scratch -- with no better documentation than we had the last time.

Cutting corners just makes more corners

Perfect software isn't the goal -- customer service is

As much fun as this is, we really only get to do it because someone pays our salaries.

Paying the piper. Calling the tune. Get it?

The codebase is not a playground -- do that in your home directory

Ok, so you hate Microsoft and want to write your own operating system -- fine, just don't drag us into it!

How many Java or Python projects got started because some programmer thought that it would be cool to learn the language?

Before refactoring the code, try finishing the documentation

Yes, God can make a rock bigger than even He can lift!

And you can write more code than you can understand!