The three virtues of a programmer
May 1st, 2008
Being relatively new to the professional software development world, I sometimes hear a smart quip and come to find that it's an old adage (whereby "old" I mean 5-10 years). A month or two ago, when I was in Spring Framework training, I heard this:
"The three virtues of a programmer are laziness, impatience, and hubris (excessive pride)." - Larry Wall in Programming Perl
I don't want to go around tooting my own horn, but that rung true with me. When I find myself doing something over and over again, I try to find a way to automate it. When an application requires too many clicks or too many decisions to operate efficiently, I try to improve the interface. And when my code breaks, I get frustrated; so I try not to let it happen in the first place.
Of course, these three "virtues" are really vices unless you do something about it. A lazy programmer could just continue to do things over and over because they don't want to solve a problem; they just come to work and "do their work". An impatient programmer could be impatient and just get pissed off, or they could solve the problem and make it better. A prideful programmer could refuse to take responsibility for a mistake and push the blame on others, or they could accept the praise and the blame that comes with taking ownership of their work.
- No matter the circumstance you can always improve
- You can always start improving with yourself.
- You can always start improving today.
- Kent Beck, Extreme Programming Explained