Stop Programming

Last week I had to tell one of our coders to be more lazy and to work less. This probably sounds like a crazy thing for a boss to be saying.

Here’s a good quote from Bill Gates

“I choose a lazy person to do a hard job. Because a lazy person will find an easy way to do it.”

A while back I sat in a talk at Valve about their employment process. Someone in the audience put their hand up and asked whether they hired junior programmers. The speaker said they didn’t. The audience member asked why not? Who does the shit, boring programming tasks? The speaker said this attitude was backwards, there were no shit or boring programming tasks. If you give that task to a good programmer he will code it in a way that means no-one has to ever deal with that problem again. A junior programmer will solve the problem over and over again. Adding more and more code to maintain, more and more things that could go wrong.

So by telling our programmer to calm down, to be more lazy – I wasn’t reducing productivity, I was increasing it. The less code the less chance that you’re fixing a problem that doesn’t exist. The less chance you’re optimizing stuff that doesn’t need optimizing. The less code, the less possible bugs, the less time it takes to maintain it. The happier everyone is.

27 thoughts on “Stop Programming

    1. Why is it? He doesn’t say “I’ve stopped programming”. There’s nothing misleading there at all. It’s pretty straight-forward.

      Also, why would he click-bait? There’s no ads here, he has nothing to gain from it at all.

    2. The title says “stop programming”, like he has a good reason why. He just talks about how you should be writing elegant solutions.

  1. Being a rather junior programmer myself, I somewhat disagree to the implicit mention that junior programmers cannot do this. Granted, some don’t, but the good junior programmers will do this just the same as a senior can. As long as they’re lazy :)

  2. I agree. If I was a junior programmer I’d be paranoid as hell trying to work on something that didn’t needed to be worked on or something that wouldn’t make a big difference overall, this is what I do when 3D modelling, I usually slightly laze it out because otherwise I’d add too much detail and too much polygons/vertices. Detail that the average joe wouldn’t really see that much.

      1. Hence the reason I said slightly.

        And no it’s no different. Why add too much vertices/detail no one is going to notice, this is like creating part of a map no one is going to even venture into, it’s pointless.

  3. Laziness is the art of taking the path of least resistance. Now I feel better about myself. All I need now is some Vivaldi and scented toilet paper so I can feel rich too.

  4. This is a common idiom among programmers. I found a few blog pages about it (ordered by quality):

    “Why Good Programmers Are Lazy and Dumb” http://blogoscoped.com/archive/2005-08-24-n14.html
    Hacker News comments: https://news.ycombinator.com/item?id=902659

    “Laziness is a virtue”: http://c2.com/cgi/wiki?LazinessImpatienceHubris

    “Dear Lazy Developer, Rock On!!!” (uses the same Gates quote): http://blog.raavel.com/2013/08/26/lazy-developer/

    … and obviously, the Atwood post lined earlier in these comments is perhaps the most notable depiction of this.

  5. Hey Garry! The whole subject of programming and coding brings me to ask a question. Seeing how it is now the year 2014 I’ve been wondering, when will the Garry’s Mod 14 update be released?

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s