Home > Articles > Programming

"The Best Programming Advice I Ever Got" with Mark Bates

  • Print
  • + Share This
Laziness is a virtue—if you're programming. Mark Bates, the author of Programming in CoffeeScript and Distributed Programming with Ruby, explains how taking shortcuts can actually help you become a more innovative developer.
Be sure to check InformIT for a new article every Wednesday. See more advice from other programmers here.

From the author of


Mark Bates

Job Experience:

I am the founder and chief architect of Meta42 Labs, based in Boston. I focus on application development and consulting, as well as writing books and raising my kids. Occasionally I form a band and try to "make it."

Most Frequently Used Programming Language:

Ruby and CoffeeScript


Laziness can be a virtue. There are two types of laziness in this world. Good laziness and bad laziness. Every developer should strive towards being a good lazy developer. Normally laziness has a stigma attached to it, and rightfully so, but in the programming world, laziness can be a real asset.

Let me explain.

In 1999, I graduated college and got a job as a UI developer for a start up in Cambridge, MA. In 2000, I was promoted and became a Java developer. I was told that as part of being on the development I had to take a shift as the Error Czar. The Error Czar's job for the week was to, each day, crawl on to each of the servers, pull down the error logs, parse out the most common errors, assemble them into an email, and send that email to the team.

I did that on Monday. On Tuesday I got lazy. It seemed ridiculous to me that someone, in this case me, had to do this every day. There had to be a better way and there was. I got lazy.

I wrote a script that did all of that for me. I refined my script during my stint as the Error Czar and by the end of the week the Error Czar got its pink slip. Now the script ran every night and no one had to do a thing. A beautiful email was sent to the team each day with a list of all of the errors, their totals, and in order of recurrence.

I was lauded by team members for taking away this painful chore. I was told I had the true mark of a developer in me, I was lazy. In a good way.

  • + Share This
  • 🔖 Save To Your Account