Live data from Hacker News

Three virtues of a great programmer

thethreevirtues.com

11–20 of 141 posts

Re: Three virtues of a great programmer

#12
post #3

I would say that the character arc of Perl, and the profession generally, leads me to this observation: laziness and impatience are virtues. Be careful with hubris.

I'd say wisdom should be the third, but that in turn often leads to hubris.

Wisdom is to know yourself. Hubris is the belief that your accomplishments and skills are greater than they are. Are these not mutually exclusive?

Re: Three virtues of a great programmer

#13

If you're not familiar with Larry Wall's style this might seem a bit off putting. The first time I ever saw him speak was the 1997 first annual O'Reilly Perl conference. I remember thinking, "This guy is a jerk" while also thinking "I love this guy"

Is there any publicly available talk of Larry Wall that might evoke it today?

Any of his "State of the Onion" talks. https://www.youtube.com/watch?v=a1SEt_-QMDo

Re: Three virtues of a great programmer

#14
I've never really liked his inclusion of hubris here. Hubris is often defined as unjustified arrogance. Justified confidence, even if you're a jerk about it, was never the fatal flaw of a Greek hero.

So I've always substituted arrogance for hubris: the belief that you better understand, and can better address, the requirements than any off-the-shelf library/program/ecosystem.

Re: Three virtues of a great programmer

#16

I don’t have the time or want to read the page, but I’m sure I’m already as good as him.

You're only dunking on yourself here, the page is four sentences long. Being proudly ignorant is still just ignorance.

You missed the joke. Should I diagram it for you?

Re: Three virtues of a great programmer

#19
I would also like to add one more thing: hesitation. From my own experience, in my programming career, the most time my team wasted was on redoing something from scratch. Why redo it? Because the previous design was not comprehensive enough to meet subsequent requirements. If everyone could spend more time researching and discussing the plan before starting, and get things right in one go, in my view, this is much more effective than rushing into development work.

Re: Three virtues of a great programmer

#20
post #19

I would also like to add one more thing: hesitation. From my own experience, in my programming career, the most time my team wasted was on redoing something from scratch. Why redo it? Because the previous design was not comprehensive enough to meet subsequent requirements. If everyone could spend more time researching and discussing the plan before starting, and get things right in one go, in my view, this is much mo…

Hindsight / survivorship bias affects this viewpoint.

You will never get it "right" the first time as much as you can avoid doing it "very wrong".

The key is to have enough experience and taste to appropriately break down problems into pieces that encapsulate the volatility of the various domains.

Then you can refactor easier which should be the real goal.

Prune and tend to the garden.

Post reply on HN