DEV Community

Cover image for I am a lazy developer

I am a lazy developer

Jean-Michel πŸ•΅πŸ»β€β™‚οΈ Fayard on April 03, 2023

My career-related content is now open-source on GitHub. Thoughts on my personal mantra Laziness, Impatience and Hubris πŸ‡«πŸ‡· version franΓ§aise ...
Collapse
 
fen1499 profile image
Fen

Really nice article. The part about laziness throws me back to around a decade ago when I answered that as a weakness for an internship and the feedback I got was that I should never use this word on an interview but rather say that I'm proactive or something.

Nowadays I've been reflecting on how my main motivation to get my work done is exactly not having to work and how I could never say that on a job interview.

Collapse
 
jmfayard profile image
Jean-Michel πŸ•΅πŸ»β€β™‚οΈ Fayard • Edited

I'm glad that it resonated with you, thanks for your kind words.

I got was that I should never use the word laziness on an interview but rather say that I'm proactive or something.

Yes, that's very widespread, LinkedIn is infested by it, that's the cult of toxic positivity.

You wouldn't believe how many grown ups would benefit for watching a Walt Disney movie...

Collapse
 
blindfish3 profile image
Ben Calder

Nice article. I definitely prefer a 'lazy' style of coding. I sometimes know there's a more 'clever' solution to a problem; and sometimes see these implemented when doing code reviews. But often these 'clever' solutions increase complexity/decrease legibility; and are quite often clever just for the sake of it (i.e. provide little, if any, benefit).

Knowing that I - and others - will have to come back and work with that code at some later time I almost always stick to the 'lazy' option. That's easier than having to remind myself how the clever solution works; and in practice saves everyone time and effort.

Collapse
 
jmfayard profile image
Jean-Michel πŸ•΅πŸ»β€β™‚οΈ Fayard

That's great dialectic. You search the right trade off between two kind of laziness, short term laziness (the clever solution will spare me some work) and long term laziness (I will need to explain to my colleagues and maintain later).

Collapse
 
almostconverge profile image
Peter Ellis

When you think about it, the history of mathematics is the history of laziness. If we weren't lazy, we wouldn't have multiplication, we'd still add up the same term again and again and again. (In fact we wouldn't even have addition because we could just count marbles one by one or something.)

But importantly it's not any kind of laziness, it's laziness coupled with a determination to still achieve the correct result.

Collapse
 
jmfayard profile image
Jean-Michel πŸ•΅πŸ»β€β™‚οΈ Fayard

Another good example

Bad laziness is minimizing the amount of efforts in the short term
Good laziness is minimizing the amount of efforts in the long term.

Collapse
 
akmjenkins profile image
Adam • Edited

Level 10 is where you don’t write any code because the product feature that’s being requested is not what’s actually desired and you nip it in the bud before you start. Sadly, this part usually involves a lot of talking.

Level 11 is when you inform product that what they really want (not what they think they want) is already available by doing X instead.

Then, with product off your back, you can go back to fine tuning and refactoring the spaghetti mess that the last revolving door of devs left you

Collapse
 
jmfayard profile image
Jean-Michel πŸ•΅πŸ»β€β™‚οΈ Fayard

Absolutely.
Building things right is important, but building the right things is even more important.
I think the Lean Startup has pretty valid insights on this that are too often neglected.

Collapse
 
parth51199 profile image
parth51199

I also prefer a simple and straightforward approach to coding, often referred to as the "lazy" style. The clever solutions may be implemented for the sake of being clever, without providing significant benefits.

As developers, we must consider the fact that we or others may need to come back and work with the code at a later time. Therefore, it is usually better to opt for the lazy option, which is easier to understand and saves time and effort in the long run.

Collapse
 
pandademic profile image
Pandademic

Nice article, just that the french link is dead, possibly from a trailing underscore.

Collapse
 
jmfayard profile image
Jean-Michel πŸ•΅πŸ»β€β™‚οΈ Fayard • Edited

Merci! πŸ™πŸ»

Collapse
 
sique976 profile image
San D.

Applause! Clap your (my) hands πŸ‘πŸΏπŸ‘πŸΏπŸ‘πŸΏβ—

Collapse
 
sique976 profile image
San D.

Super! I guess it was all I needed to hear!

Collapse
 
snowyang profile image
Snow YΓ‘ng

Before we developer anything, we have to be able to developer ourselves.

Collapse
 
nikhilroy2 profile image
Nikhil Chandra Roy

I am here to read article and comments and become lazy...

Collapse
 
jmfayard profile image
Jean-Michel πŸ•΅πŸ»β€β™‚οΈ Fayard

Welcome to the club.
You probably already were the day you choose to become a programmer though :)

Collapse
 
bybydev profile image
byby.dev

In my experience, the virtue of laziness has helped me to avoid repetitive tasks and write more efficient code.

Collapse
 
jmfayard profile image
Jean-Michel πŸ•΅πŸ»β€β™‚οΈ Fayard

Yes that's exactly why pretty much why the human brain invented lazyness.

Your brain is lazy because it is smart. It doesn't want you to try to catch a fucking insanely fit antilope if that doesn't immediately work. Sure you could get her with robot-like discipline because you sweat better than her. But you would be exhausted too and that's not the point. We are not competing in the olympics. We are trying to get food as easily as possible. Better scan the environment for a better project!

Collapse
 
combo profile image
Combo

Most of mankind's inventions were motivated by good old laziness!

Collapse
 
jmfayard profile image
Jean-Michel πŸ•΅πŸ»β€β™‚οΈ Fayard

Truth, the lazy guy is on the left here

Collapse
 
elvishalvorson38076 profile image
Elvis Halvorson

Thx for this post!

Collapse
 
canro91 profile image
Cesar Aguirre

What would you say are your three greatest strengths and weaknesses?

What a coincidence! Today I got this question

In the meantime, I have a question for you : What would you say are the three most annoying questions one could ask in a job interview?

I didn't see this one coming. LOL

Collapse
 
jmfayard profile image
Jean-Michel πŸ•΅πŸ»β€β™‚οΈ Fayard

LOL, what did you answer?

Collapse
 
dgpickett profile image
David G. Pickett

I often tell my tutoring students that a good programmer is in dialectic tension between OCD and lazy, taking care of every detail but not creating more details than necessary. Of course, that needs to be tempered with best practices: no variable names too short that live too long in too many places, good error checking, validation, error reporting and logging. Lots of seats at the design table: you need to please the customer, tester, next developer, production support, and the end user.