Don’t be a Lazy Coder
I hear versions of this CONSTANTLY: “Being a lazy coder is good.” Well, I’m here to tell you being lazy is not a good trait for being a software engineer. How do I know this? I’ve worked with plenty of lazy developers! They’re the absolute worst and I’m here to tell you why.
Lazy != Efficient
I think a lot of people confuse lazyiness with efficiency. Efficiency is described as being able to do the maximum amount of work with the least amount of effort. While that can easily be conflated with being “lazy” I can assure you it is anything but. Being efficient takes time, practice, and hard work. The two keys there are time and hard work. These are two things that are antithetical to laziness. Laziness is not about putting in work to find the most efficient way to do things, it’s about doing the bare minimum to get by. Laziness means not maximizing the amount of work done with the least effort it means doing as little work as possible. That’s really the main difference I want to get across.
Efficient — maximizing amount of work done for least amount of effort
Lazy — doing the minimum amount of work to simple get by
Procrastination
That’s the other thing that bugs me about lazy people; they’re serial procrastinators. This is something we all do, I get it. However, the lazy do it CONSTANTLY. When you hire a lazy person for any job, expect it to not be done, and certainly expect it to not be done well. You can often expect rush jobs because the lazy mf’er kept putting the work off until the lasty minute.
Laziness Leads to Mistakes
One of my biggest issues with lazyiness is the amount of mistakes that happen when developers get lazy. I will hear things like:
“It’s too much work to unit test ALL of this code”. — some lazy developer
“It works I guess.” — a coding bum
The trait of laziness does not lend itself to forethought about issues that might come up. Why not? It’s too much work.
If that lazy developer had started writing unit tests incrementally as they were completing features there wouldn’t be as much code to unit test in the first place. However, that developer thought “I can just get away with doing the bare minimum for now and worry about it later.”
This mentality is a problem with anything you do, not just coding. However, we live in a world dominated by code. Literally everything runs on some kind of code. There’s even smart toasters (just… why?!). With that in mind, it’s especially important for us to be on our toes. To constantly think of the issues coming around the corner and plan for them accordingly. That’s how you don’t get caught off guard with hackers stealing all your PII because you bought a shitty smarty toaster where the company spent about $0.03 on security for it. How many “smart” devices have been found to have MASSIVE security flaws in them? Plenty. Do you know why they have those flaws? Partly budget, but mostly because the developers were LAZY.
Thinking about security is too much work man, I just want to build some cool shit.
Thanks for Coming to my Ted Talk
This is something that has bothered me for a while now. Please stop promiting laziness in the world of software development. It’s a real pain in the ass to continually pick up after all these lazy people.