Warsaw’s Laws of Hackering

In the great tradition of Murphy’s Law, I offer my humble few. I’m not sure I have rightful claim to the originator of all of these, so if you find a previous reference to these laws, please let me know!

Warsaw’s First Law (The Rule of Estimate Accuracy Insurance)

When making a time estimate for any programming task, make your best formalized guess, then multiply by two and bump it up a unit. E.g. “I think it will take me three days to hack in those changes to the frobnicator”; My official estimate: 6 weeks

Warsaw’s Second Law (Unbending Law of Commit Scheduling)

Never change anything after 3pm on a Friday.

Corollary to Warsaw’s Second Law

If you do change anything after 3pm on Friday, you will break it, and thus end up fixing it for the entire weekend. You will probably not be able to sleep, and if you do fall asleep, you will dream about the breakage. On Monday morning, you will fix the problem in five minutes.

Warsaw’s Third Law (Law of Software in a Vacuum)

All software sucks. Make sure yours sucks less.

Warsaw’s Fourth Law (The Law of Pinball Machine Instructions)

It doesn’t matter a whit if the instructions are printed clearly for all to see, nobody will read them. They’ll just drop their quarters and start pushing buttons like a Tommy. Software is the same.

Warsaw’s Fifth Law (A Rose By Any Other Name (a.k.a the Pink Floyd Rule)

All names are stupid until you become rich and famous with it.