6 reasons that lazy developers are the best developers
This story originally started life as a Slack conversation between techies defending laziness as a lifestyle choice. It rings as true now as it did a couple of years ago…
“Progress isn’t made by early risers. It’s made by lazy men trying to find easier ways to do something.” — Robert A. Heinlein
1) Lazy developers write well documented and readable code, so they don’t have to answer stupid questions later
2) Lazy developers test their code well, because it takes longer to fix bugs once they’ve gone live
3) Lazy developers follow standards, because it’s easier than creating your own and explaining them to other people over and over again
“I don’t think necessity is the mother of invention. Invention, in my opinion, arises directly from idleness, possibly also from laziness — to save oneself trouble.” — Agatha Christie
4) Lazy developers take time to talk to people and understand the big picture, because developing the wrong thing is more work than getting it right first time
5) Lazy developers speak to their designers and stakeholders, because otherwise they pop up at the end and change the entire product
6) Lazy developers automate things, because…who wants to do manual labour nowadays…?
“I was born lazy. I am no lazier now than I was forty years ago, but that is because I reached the limit forty years ago. You can’t go beyond possibility.”— Mark Twain
I jest somewhat of course, but an intolerance of ‘work’ is no bad thing. Back in my early days of trying to move to *nix style systems, one of the most striking things to learn was the philosophy of building tools to automate work as soon as there was a hint that you’d need to repeat it in the future.
The hallmark of excellent developers was that they had built their own ecosystem of toolsets and libraries so that their flow wasn’t interrupted by ‘work’. Having a broad base of knowledge, by taking time to learn as many different approaches and technologies as possible is what gives highly effective people their ability to make complex things look trivial. It’s all about connecting the work that needs doing with the tool that can do it most easily.
If you really want to be an excellent developer — or designer, product owner, scrum master, UX researcher, data scientist, marketeer or manager — grab every opportunity you can to try something new and file it away in your toolbox. As my dad never tired of telling me, “You should always use the right tool for the job”. Sometimes, that includes making your own.
Originally published at www.ridley.co on May 14, 2015.