Programmers are lazy. Or not. Programmers are sometimes lauded for "laziness", in reference to a personality trait that leads them to automate a task rather than doing repetitive work. This tale has truth, but is sort of a tongue-in-cheek idea. The personality traits that actually lead to success, while hard to pin down, are certainly not laziness. Traits I think of include creativity, meticulousness, ability to get along with others, and lots of other the habits they give you stars for in elementary school.
I am lazy sometimes, but mostly not (I think). I do not have the varied industry experience required to have observed a lot of developers in a lot of different scenarios, so I have a hard time coming up with analogies myself. I certainly have met a lot of lazy people in non-programming environments, and I have worked with developers who seemed lazy, but it was hard to pin down whether they were so or whether they were simply not motivated enough in their role and this is a big distinction. Perhaps they were simply going through something in their personal life preventing them from putting their energy into the task. We really do not know enough about each individual case. I am curious about how one even can be lazy in this industry because that seems hard. I do not want to place any judgement on laziness itself, as everyone needs to do what works for them, but I remain curious about long-term programmer laziness.
What is the career arc of someone who is decently gifted and enthusiastic, but fundamentally lazy, beyond a simple lack of motivation? They mostly write good code, but they sometimes do not. They tend to come through with nifty solutions but sometimes falls way behind on complicated projects. They turn a quick glance at Reddit or Twitter into two hours of unproductivity. These traits are potentially something they will get better at, but they could easily stick with them throughout their career.
In the current economy for programming jobs, an experienced and reasonably talented programmer should have an easy time finding a job, but it is also easy to imagine that a lazy developer would have a hard time sticking around long at any one job. Do these programmers hop from place to place, never really contributing any meaningful code, or do they just keep doing lazy work at one place? Are they fired or do they quit? How long does it take for people to find out how lazy they are and how long does it take before it catches up with them in each case?
Perhaps lazy programmers not very common because they weed themselves out of an industry that can be quite psychologically demanding and unforgiving. As the guy who makes many of those stupid O’Reilly parody covers, I know programmers love to poke fun at their own laziness, but I am curious about how a truly lazy programmer gets by. How self-aware are lazy programmers in their laziness, how numerous are they, how does one recognize laziness before it hurts their career and the teams they are a part of? Laziness is a fascinating human condition and so too is its intersection with code, so I posed these questions. I could have used this as a jumping off point to do research on the topic, but I am way too lazy.