Friday, August 19, 2005

Get Me The Laziest People ...

Coding Horror: Get Me The Laziest People Money Can Buy

"If you like getting work done, you learn to appreciate inspired laziness as the positive character trait it really is...

...

3. People don't scale
Truly lazy developers let their machines do the work for them. This is partially motivated out of self-interest, it's true, but smart developers know that people don't scale-- machines do. If you want it done the same way every time, and with any semblance of reliability, you want the human factor removed as much as is reasonably possible. ..."


I dig Jeff Atwood's post about hiring "lazy" developers. I love good lazy developers and coders. I make every attempt to be as good lazy as possible.

The "People don't scale" item is so true... (i.e. 9 women can't have a baby in one month... )

Some of My Lazy Thoughts:

If I can buy/find/copy it, why invent it myself?

If I do the same thing twice, then take a bit and make it so you don't ever have to do the same thing a third time.

Don't try to remember everything. All you need to remember is the pointers to the thing (i.e. what to search for in you blog/help/google/email/code, etc)

I try to keep my code as simple as possible, but no simpler.
Meaning no huge and complex frameworks/classes/implementation/feature sets "just cause I might need it one day". Build in enough flexibility to respond to reasonable changes. If in the future there's a true demand for more complexity, THEN you build it. There's NO need to start off complex... It will get complex all by itself in time anyway.

Hire people smarter than you and make sure they have what they need to succeed. If your people succeed, then you succeed.

Deliver fast. Get the app into the real world as soon as possible. In most businesses good enough is good enough. Then grow the app/features/etc as needed to respond to real world requirements/needs/demands. (Hence being lazy in trying to design and build the uber feature set... Avoiding "they MIGHT need this one day" )

Deliver tested. Being lazy to me means that I try to work on a feature once. I don't want to have to touch it again to fix syntax/code/logic bugs. Yeah, perfect world and all that... Still I'd rather spend a little time testing and making sure it works as intended than to have QA/Users push it back as an issue...

Okay, ok... enough for now. Sorry, for the brain dump... :)

1 comment:

Anonymous said...

I really like the phrase "good lazy."

Says it really nicely.