loading...

The Three Virtues of a GREAT Programmer

napolux profile image Francesco Napoletano ・1 min read

I'm for sure not a great programmer, but I find myself 100% convinced that the three virtues of great programmer from Larry Wall are the best explanation of what a great programmer is.

The Three Virtues of a GREAT Programmer, according to Larry Wall (the creator of PERL):

  • Laziness: The quality that makes you go to great effort to reduce overall energy expenditure. It makes you write labor-saving programs that other people will find useful and document what you wrote so you don't have to answer so many questions about it.
  • Impatience: The anger you feel when the computer is being lazy. This makes you write programs that don't just react to your needs, but actually anticipate them. Or at least pretend to.
  • Hubris: The quality that makes you write (and maintain) programs that other people won't want to say bad things about.

Source: http://threevirtues.com/

Originally published @ https://coding.napolux.com

Posted on by:

napolux profile

Francesco Napoletano

@napolux

Software Engineer, husband, programmer, videogames player, technical writer. Opinions expressed here are my own.

Discussion

pic
Editor guide
 

I'm not sure I'd label that third quality as hubris if done in a healthy way. I think that's sometimes the way you end up with "greatish" programs with critical flaws that the inventors were too proud to address.

Perhaps a bit of hubris can be a positive as part of a group, but I'm not sure if teams filled with this quality are going to be doing well.

My 2 cents

 

Perhaps a bit of hubris can be a positive as part of a group, but I'm not sure if teams filled with this quality are going to be doing well.

I agree. But sometimes you have to be "over-proud" of what you're doing (and willing to do).

 

I have a feeling that these are a bit tongue-in-cheek ;)