Live data from Hacker News

Three virtues of a great programmer

thethreevirtues.com

51–60 of 141 posts

Re: Three virtues of a great programmer

#51

Oh Larry, never change. I often give a similar list as a glib answer in interviews when asked "what are your greatest strengths?" Mine are usually: I'm stupid (not smart enough to overcomplicate), lazy (prefer turning MVP in on time rather than adding too many bells and whistles), and forgetful (document everything because I won't remember what I was doing the next day).

What is your biggest weakness: "I work too hard" -- humblebrag

Are they still asking that ridiculous question?

Re: Three virtues of a great programmer

#52

Oh Larry, never change. I often give a similar list as a glib answer in interviews when asked "what are your greatest strengths?" Mine are usually: I'm stupid (not smart enough to overcomplicate), lazy (prefer turning MVP in on time rather than adding too many bells and whistles), and forgetful (document everything because I won't remember what I was doing the next day).

I've never been asked "my greatest weakness" or "my greatest strength" in an interview. What sort of jobs have asked you those questions?

(I've worked (and interviewed) as a programmer at VC backed startups and FAANG in SF and NYC over the past 12 years)

Re: Three virtues of a great programmer

#53
post #27

Earlier quoted context omitted.

When you learn programming, you are told to never roll your own crypto, or to always use the ready-made libraries, or to avoid manual memory management - and you can have a perfectly fruitful career following rules like that. But you don't get big changes or ambitious intellectual growth without spotting that - if you did choose to break those sorts of rules - you could build something really new and exciting. Anyhow…

> When you learn programming, you are told to never roll your own crypto, or to always use the ready-made libraries, or to avoid manual memory management I've always taken this sort of advice, such as "never reinvent the wheel" to mean "inventing the wheel is time consuming so give yourself an advantage by using already existing wheels", which really has nothing to do with hubris. I never took it as "Don't bother try…

You can build a better wheel if you want to focus on that.

If you want to build a car however, focus on building the car and not creating a new kind of wheel.

Re: Three virtues of a great programmer

#54
One missing virtue is never impart programming advice or wisdom on the internet - Because 10 other programmers who know nothing about you or your job will tell you in detail all the ways in which you're doing it wrong.

Re: Three virtues of a great programmer

#55
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.

Hubris was really about building the community. It encouraged you to build things that you would want to share, so that we could all benefit from your Laziness and Impatience.

Re: Three virtues of a great programmer

#56
post #36

Earlier quoted context omitted.

As someone currently recovering from burnout, that is indeed my greatest weakness, and it's anything but a brag! Working too hard means you're liable to disappear for 6+months, no sane employer should want that!

As someone who has worked hard for years (at some point I had three con-concurrent jobs), I’m not sure working hard is the variable that causes burnout :thinking_face: I will say tho, it gave me persistent back problems and RSI for two years :). But that again is not just “working hard”. It was bad posture, lack of stretching, breaks and exercise, I think. Edit: Perhaps it’s the nature of the work or working hard unh…

I remember hearing about burnout, that it becomes more likely to happen the less meaningful work you do.

Re: Three virtues of a great programmer

#57

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?

A quick explanation of the Three Virtues by Larry and then an impromptu explanation of why Hobbits would make good programmers

https://www.youtube.com/watch?v=G49RUPv5-NU

Re: Three virtues of a great programmer

#58
post #36

Earlier quoted context omitted.

As someone currently recovering from burnout, that is indeed my greatest weakness, and it's anything but a brag! Working too hard means you're liable to disappear for 6+months, no sane employer should want that!

Do you work too hard or spend a lot of time on work? (before downvoting me, please consider that those things maybe different)

A bit of both I suppose. In my case I think taking on too many responsibilities and stressing out too much over any production issues that arose were the main ingredients for disaster.

But there were others as well. Burnout is complicated.

Re: Three virtues of a great programmer

#59
post #47

Earlier quoted context omitted.

I read hubris here as...you want to be the best, you don't want to be criticized, so you will work hard and be super motivated to make your program work very well, handling all the various edge cases, making it better than the competition.

Yes, but that is not what the word hubris means. It means pride in the seven deadly sins sense. The pride that comes before a fall. Hubris would not mean working hard to reduce the scope for criticism. It would mean not accepting valid criticism because you think you are better than the critics. He could have just used the word "pride" (which is far broader and has positive meanings too) instead. In some ways "ambiti…

Ambition might stand out in the same list as laziness. Plus I'd be reticent to tell programmers to "be more ambitious!" - I see greenhorns esp just trying to do too damn much at once.

In the context of "code that is going to be reviewed" maybe even "vanity" might have been closer to what he was getting at? (did you even RUN this?) Except us old neck beards obviously don't care about how WE look ;)} - just how our code reads.

I think "take pride in your work" would have substituted well; but given the options, maybe hubris was fine - he explains what he means in a couple of sentences.

Re: Three virtues of a great programmer

#60
It was kind of a thing at the time. In the Afterword of Æleen Frisch's Essential System Administration (also 1991) subtitled "Don't Forget to Have Fun", there are listed _seven_ virtues of a system administrator:

* Flexibility: being able to wriggle out of tight spots and escape when irate users seem to have you cornered

* Ingenuity: realizing that you can use syslog to send messages to your friend on another system

* Patience: remaining capable of waiting until the final sendmail bug is fixed

* Persistence: the compulsion to try just-one-more-thing to fix a problem before going home

* Adherence to Routine: insisting on real milk and sugar-in-the-raw in your coffee (which is Kona or nothing)

* Attention to Detail: noticing that the clock on one of your systems is using Aleutian time, and changing all the others to match

* Laziness: writing a 250-line Perl script to avoid typing 15 characters

I took the last one to heart and have admired those who could utilize the first one, because I never could.

Post reply on HN