According to Larry Wall, (the original author of the Perl programming language) in his book ‘Programming Perl’, there are three great virtues of a programmer.

1. 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.

2. 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.

3. Hubris

The quality that makes you write (and maintain) programs that other people won’t want to say bad things about.


Personally, I haven’t read his book (Programming Perl), and don’t think I will, but I still want to put this here. Pretty cool stuff. Pretty sure I’ve attained and internalized the first virtue already (I’m really lazy). Otherwise, I don’t think I’m good enough at this point to be able to have the other 2 virtues fully embedded in me, not that I endorse trying to mould yourself to others’ expectations or requirements. Again, pretty cool stuff, and it’s pretty relatable too. Hmm. 🤔