Comments about Larry Wall's "Three Virtues of a Programmer" are Utter Bullshit

Larry would never attack someone or their ideas like you did. Read those ideas from him again, and see that they are actually principles of generosity(laziness), that make programming a people-first practice( impatience), and hubris (professional pride) because of course. Your characterizations of these principles are not characteristics that Larry would have supported.

😊+

1 0

You entirely missed the point. Laziness is unwillingness to do work that a machine can do for you. You’re constitutional unsuited to be the guy that screws caps on bottles all day. You’ll go to great effort to build a machine that can do it for you. Laziness here is not the rejection of all work, it’s rejection of mindless busy work in favor of work worthy of a primate: building and using tools.

Yes, drudgery is part of the job. But the “lazy” programmer goes to great effort to eliminate that drudgery, for the benefit of himself in others. That’s what makes him virtuous.

😊+

1 0

I think the three virues go well with the attitude to “always write code like you’ve forgotten, and weren’t paying attention in the first place” as well as the adjunct to reality driven development I use (it’s a thing, look it up) which is - always try to implement something three times. First time do it wrong and expect to throw it away. Second time do it less wrong such that when you hit the third time you can ensure all subsequently found mistakes are easily recoverable. This also lends itself well to a write the tests first if practical approach.

😊+

1 0

This article blows, Larry Wall is the man! If you don’t like him there’s always this fun quote: German general Kurt von Hammerstein-Equord is quoted as dividing his officers into four "quadrants" like this:

I distinguish four types. There are clever, hardworking, stupid, and lazy officers. Usually two characteristics are combined. Some are clever and hardworking; their place is the General Staff. The next ones are stupid and lazy; they make up 90 percent of every army and are suited to routine duties. Anyone who is both clever and lazy is qualified for the highest leadership duties, because he possesses the mental clarity and strength of nerve necessary for difficult decisions. One must beware of anyone who is both stupid and hardworking; he must not be entrusted with any responsibility because he will always only cause damage.

The stupid and hardworking have caused me infinitely more sorrow than the clever and lazy.

😊+

1 0

2 years ago

Larry considered what those words are supposed to mean, looked at the actions of the people to whom they are applied, and found that they don’t work out the way those people intend. So-called lazy people make things harder for themselves, so-called prideful people make foolish mistakes because of their so-called pride, and so-called impatient people make things take longer. The people you’re complaining about are the ones using those words that way.

I’m lazy, so I think about what my boss really wants to happen and write my code to achieve that, rather than what she literally said. I think about the possible failure modes and code to have it fail gracefully when I can’t figure out how to have it handle situations I haven’t entirely thought through.

I’m prideful. I want to always be right, so when I’m wrong, I want people to correct me so I can get closer to being right. My grandfather insisted he was always right, and so he was always wrong. I want my code to be legible and maintainable so that when I leave here, it’s a legacy to me, rather than the first thing they have to figure out how to replace.

I’m impatient, so I’m careful to avoid making mistakes that will make things take much longer. I am especially careful in my interactions with coworkers, as handling fallout from careless coworker interactions is a complete distraction from writing code.

😊+

1 0

you have so miss read larry wall and instead read all the bullshit on the internet

get a first edition of programming perl (I’m too lazy, impatiens and arrogant right now to find mine so I’ll paraphrase)

lazyness - don’t do it use cpan i.e. others work; translation - (gems/npm/cargo/etc)

impatience - expect it now and it should all just fit

hubris (arrogant pride) publish what you do back to cpan (github/bitbucket etc)

until today I’d not realised how correct george orwell was in 1984 when he said that to control the future you need to control the past adn how much the internet now is being used by the likes of you to corrupt the good messages of the past for our own ends!

😊+

3 0

3 years ago

I don’t think you read past the first word of each virtue. Computing in the 80s and 90s had a spirit of playful cleverness that’s since been lost diluted by fashionable startup culture, mcmindfulness, etc. The younger generations have been deprived of a the montessori-like environment of early computing where much of it was about enjoying computing, and learning was just a happy side-effect.

Anyway, you can see all of this exemplified in Larry’s virtues. The phrasing of these, I’m very certain, was intended to shock people in a very playful but pedagogical way. The first thing you think of when you think of these read this words (i.e. what’s in your section headings) is exactly not what Larry meant by these, which is why he took trouble to define them. But, that also made them memorable, hence the pedagogy. It’s laziness in a sense that you wouldn’t expect, impatience in a sense that you wouldn’t expect, and hubris in a sense that you wouldn’t expect. That’s why people still quote and remember them.

Suspend the priors you have the connotations of these words, and just read the definitions and then rewrite this article.

😊+

3 0

Trending Topics

blockchaincryptocurrencyhackernoon-top-storyprogrammingsoftware-developmenttechnologystartuphackernoon-booksBitcoinbooks