Embrace the natural order and your true self
After over 25 years of being in the software development “circus”, I can safely say that the majority of developers are lazy. Yes, that’s right, nearly all developers you have worked with, are working with, or will ever work with, are lazy. After you get over the violent reaction of reading and processing that, allow me to explain why this isn’t necessarily a bad thing. In fact, it can be a powerful energy to harness. In addition, if you’re hung up with the word “lazy”, I have a solution at the end of this reading to ease your mind.
Before we dive deeper, let’s unpack what lazy means here. At first glance, lazy seems negative. That’s fair, but can we view it differently? Think about “peer pressure”. It often has negative connotations, linked to bad habits. Yet, peer pressure can also lead to positive behaviors, like exercising or eating healthy. One more thing to consider: nature favors the path of least resistance. Electricity, water, and even air follow this principle. It’s a fundamental concept in physics, from motion to fluid dynamics to gravitational theory. Just look at the Grand Canyon, shaped by forces taking the easiest route over a long period of time. In summary, words can have more than one meaning and humans are part of a system that favors least resistance. So, let’s reconsider “lazy.”
Developers, being human (until AI takes over), also prefer the path of least resistance. Unless you’re a special masochistic kind (I tend to be at times, a topic for another day), we avoid unnecessary pain. Who likes 3AM ops calls or dealing with tech debt? Are recurring bugs any fun? Do you cherish doing low value and highly repetitive tasks? How about the look you get from your peers when things don’t work in a high-profile demo? If these things raise your blood pressured and trigger PTSD, welcome to the club. Ironically, many workplace behaviors go against this natural order. Chasing the latest tech fad, ignoring quality, and poor planning? Neglecting security best practices? Avoiding collaboration in the name of expediency and to have the illusion of more agency? All of these create more pain.
Is there the possibility to harness our natural laziness for our long-term benefit? Can we embrace our motivation to avoid pain, as a powerful force for good? The short answer is yes. We just need to reframe certain things in order to achieve the natural order of the cosmos, in software development. Being a Lazy Developer is the way. It is about prioritizing you and stopping contra naturam forces that hollow out your life as a developer. It is about acknowledging that there is a cost to our decisions. It is about investing in the areas that will yield the most peace of mind and less overhead for you and others in the future. This is the core of this manifesto. It’s to liberate developers from the clutches of terrible mistakes, crushing complexity and the endless cycle of tech debt.
The Manifesto
Developers are creative and responsible. We build software that lasts, which requires little to no attention and just works. We value our time and those who use our software. We refuse to waste time on anything that doesn’t further the craft, our growth and the value we create. We take great pride on building software for the benefit of others. We are kind and leave things better than how we found them.
So how do be begin to reframe our lives as developers and embrace our inner laziness, for our benefit and those around us? By following simple principles:
- Stop chasing squirrels. Don’t follow every new trend. Stop the destructive cycle of change for the sake of change. If is not simplifying complexity and improving quality of life for you and your team, you’re wasting time.
- Stop predicting the future. If you were good at it, you wouldn’t be a developer. Instead of future proofing, pre-optimizing and “getting ahead” of your users, focus on building adaptable systems. Do your future self a favor and invest in measuring and tracking the quality of your software. In a changing world, there’s no better feeling than shrugging at the prospect of change.
- Collaboration goes a long way. Shortcuts and silos lead to tech debt. These coping mechanism will give you short-term gains at the expense of long-term pain. Embrace standards, best practices, and shared tools. These are investments that will empower you to be truly Lazy. Furthermore, they unlock the superpower of mobility in organizations. Imagine the ability to jump from one team to another and having a positive and meaningful impact on your first day.
By following these principles, you’re actively fighting the forces that are sapping away the best version of yourself. Embrace your inner Lazy Developer for a better, more efficient future.
To close out and inspired by Gordon Gekko in Wall Street:
For those still hung up by “lazy”, just replace globally with effective, productive or whatever other word makes you feel better.
2I come from a dimension where Engineers are thoughtful, mature and take their craft seriously. I've been sent to this reality to fight a cosmic battle to ensure that technology always works. What I've learned: you die a good Engineer or live long enough to bury others in your tech debt