Wearing dice on my head since 2008 Programmer, engineer, scientist, critic, gamer, dreamer, and kid-at-heart. Randomly amazed.

A Programmer's Hubris

· by roy · Read in about 2 min · (403 Words)
Categories: Software Development | Tags:

“We will encourage you to develop the three great virtues of a programmer: laziness, impatience, and hubris.” — Larry Wall, Programming Perl (1st edition)

Hubris is a fancier word for an excessive sense of pride. Why is this to be considered a great virtue for a programmer? Programming is at least partly an act of creation, which means there is an element of craftsmanship involved. A craftsman imbued with hubris is able to take pride in his work – he is driven to create work that is the best quality he can provide. For a programmer, this quality reflects both externally (low number of defects) and internally (code that is easy to read and maintain)

There are also programmers who do not see themselves as craftsmen, but rather simply code-generating cogs in a machine. They are not imbued with hubris, and hence have no concern with the quality of their work. Their only concern is to be able to do the bare minimum to satisfy the requirements of their tasks. And if you that is the way you choose to live and work, that can be fine for many people

In general however, I find that programmers who are able to take pride in their work are more able to go the extra mile. They will tend to be more productive, they will be more able to think outside the box, they will be more able to provide suggestions for improvement, they will be more willing and able to help and support other programmers, and so on

This ability to take pride in one’s work applies at the company level too. There are companies that don’t like to focus on quality or standards or doing things right. When your company decides that quality is not that important and sacrifices it at the altar of profits, it reflects poorly upon the craftsmen in your company and affects their happiness and morale. No craftsman will be happy being pressured to do substantial work simply because the company is unwilling to manage schedules properly.

If you are a leader in a company who has developed a culture of quality and craftsmanship, think long and hard before pivoting to any direction that takes away from that culture. There are people who stay at a company simply because they enjoy being craftsmen able to do high-quality work. If you take that away, well, you can imagine the consequences