Live data from Hacker News

On software popularity

soveran.com

11–20 of 75 posts

Re: On software popularity

#11
post #7
post #5

That Knuth quote by itself is interesting. Perhaps he is not suggesting that popular ideas likely to be are wrong. Instead maybe he is saying that to think and develop ideas like Knuth's one needs a certain amount of irreverance for what is popular. (Undue?) reverance is rampant in the software industry, in my opinion. Would Knuth agree?

I hope that quote doesn't become popular, because it may invalidate itself.

This is the most ironically stupid thing about hacker culture. It's just as 'follow the leader' as directly following the leader, and it makes the culture and the people in it definably predictable.

Actually reasoning about stuff when stuff can be reasoned about, and considering most opinions to be superfluous nonsense is the right direction. Opinions follow abstract models. You can pretty much find a computational or mathematical model, throw some nouns and verbs on it, and bam, you've got an opinion that has nothing to do with reality.

Re: On software popularity

#12
post #5

That Knuth quote by itself is interesting. Perhaps he is not suggesting that popular ideas likely to be are wrong. Instead maybe he is saying that to think and develop ideas like Knuth's one needs a certain amount of irreverance for what is popular. (Undue?) reverance is rampant in the software industry, in my opinion. Would Knuth agree?

I think you are correct, I don't think he means popular ideas are likely to be wrong. Just more likely to be misused or misapplied. As in the linked article, they received a lot of advice to use rails not because it was the right tool for the job but because it was the popular tool for a vaguely similar job. Also no one had the knowledge to comment on their selected tool because it wasn't the popular tool.

Re: On software popularity

#13
It's turtles all the way down.

Using a lightweight, comprehensible framework is good, until you hit the limits of that framework and start pulling in lots more libraries to fill the gaps (the Sinatra/Cuba world). Using a heavyweight, complete library is good, until you start suffering from bugs caused by incomprehensible magic buried deep inside (the Rails world).

I see the same problem in microservices versus monolithic apps. If you use microservices, you have a lot of duplication and inter-component configuration management complexity. If you use monolithic apps, you get the big ball of mud.

Or, as I sometimes put it, "Which kneecap do you want to get shot in?"

The underlying problem isn't fashion, or bloat. It's that software is very, very complex. Unless you're doing hardcore embedded work in assembly language, you're building a raft on an ocean of code you won't read and can't understand.

A friend of mine put it well once. He said that you should have deep understanding of systems one layer from yours (ie your frameworks), and at least a shallow understanding of things two or three layers away (operating systems, etc). If you don't have some grasp of the things you depend on, you're relying on magic and are vulnerable. But you can't realistically expect to know it all.

Re: On software popularity

#14
"That didn't prevent further criticism, and many comments followed recommending Rails and Sinatra as alternatives based on familiarity and popularity."

Ah, the "industry standard" argument, where industry standard seems to be defined as "whatever I've read the most blog posts about", or "whatever was used at my last job", or possibly "what I learned in school (last year)".

One of my major dissatisfactions is newly hired, junior (or mid-level) developers coming on board and then immediately wanting to change everything to be more "industry standard". They rarely seem to try to understand why we're already doing what we're doing, they almost never seem able to explain why what they want to do is strongly better, and they frequently just go off and do it, leaving a pile of projects each doing the same task in different ways.

Re: On software popularity

#15

Wrong according to whom? If most people believe X and that makes you think X is probably wrong, then you are probably in one of the groups that believes alternatives to X. There are lots of groups like yours, they can't all be right, and therefore your chances of being any more right than X is are slim (all things being equal). At least, with X, you have the support of the population and can fit into society during y…

That last line is important. Depending on software hardly anyone uses means depending on software that hasn't been torture tested in production. And frankly, a lot of the ugly weird parts of mature code are scars and armor from the wounds suffered in the real world.

Re: On software popularity

#16
post #13

It's turtles all the way down. Using a lightweight, comprehensible framework is good, until you hit the limits of that framework and start pulling in lots more libraries to fill the gaps (the Sinatra/Cuba world). Using a heavyweight, complete library is good, until you start suffering from bugs caused by incomprehensible magic buried deep inside (the Rails world). I see the same problem in microservices versus monoli…

Which knee do you want to get shot in is the best way I've heard this explained. Ever.

Re: On software popularity

#18
I don't remember his name, but one of the creators of Angular said (paraphrasing) "When choosing between libraries and in doubt, choose the one that has more testing in place". This is something I've personally found true the majority of the time.

Re: On software popularity

#19
Sure, sure. If a tool or an idea is popular it still may not be any good.

But the thing about groupthink is, it is at its most insidiously effective when its participants don't recognize it as such. It works best when one feels oneself an iconoclast for saying what most everyone around them believes.

Re: On software popularity

#20

Wrong according to whom? If most people believe X and that makes you think X is probably wrong, then you are probably in one of the groups that believes alternatives to X. There are lots of groups like yours, they can't all be right, and therefore your chances of being any more right than X is are slim (all things being equal). At least, with X, you have the support of the population and can fit into society during y…

The way you put it, it looks like it's a matter of trust rather than understanding. If you don't understand what X does and how, if you don't want to invest the time to analyze it, then you are gambling. The fact that a lot of people use X makes it look like a safe bet, but the point is that even if it turns out to be a safe bet, it's still a gamble. Isn't that cargo cult programming?
Post reply on HN