5 ms·
> software bloat almost always comes from smart, often the smartest, devs who are technically the most competent. That's not my experience. My experience is t
by adekok 11y ago
> software bloat almost always comes from smart, often the smartest, devs who are technically the most competent.
That's not my experience.
My experience is that software bloat comes from people who think they know what they're doing, but actually don't.
Competent programmers tend to be much more cynical about their own ability to write good code. They've been burned too many times by bad code, including their own.
The cases discussed here are not about competence or brains. They're about upgrading systems, which maintaining compatibility with existing systems. That is very, very, hard for anyone to do.
- awinter-py 11y agoThis is the classic 'curse of the gifted' flame war between ESR and linus https://lwn.net/2000/0824/a/esr-sharing.php3 https://lwn.net/2000/0824/a/esr-sharing.php3 Robert Frost and TS Eliot had a similar conversation. Frost wrote eliot saying 'the problem with you is that you speak 13 languages and know nothing about real life'. Eliot responds 'the problem with you is that you're stupid'. Age old debate, never fails to entertain.
- AndyMcConachie 11y agoThanks for reminding me that ESR used to be a reasonable person. I mean this in all seriousness, I had forgotten.
- masklinn 11y ago> Thanks for reminding me that ESR used to be a reasonable person. http://www.catb.org/esr/writings/dancing.html http://www.catb.org/esr/writings/dancing.html predates that by 5 years, so "could be reasonable" might be a better description than "used to be a reasonable person".
- copperx 11y agoI find his response to Linus condescending. He calls Linus a genius yet he speaks to him like an idiot. Perhaps that was the intended effect, but I wouldn't call his "praising while bashing" approach being reasonable.
- repomies691 11y ago"Robert Frost and TS Eliot had a similar conversation. Frost wrote eliot saying 'the problem with you is that you speak 13 languages and know nothing about real life'. Eliot responds 'the problem with you is that you're stupid'. Age old debate, never fails to entertain." I'm too stupid to understand how this is supposed to be entertaining...
- awinter-py 11y agothat's meta
- Zenst 11y agoEqualy the aspect of a competent programmer being curtailed to optimize the code to the level they are happy with. A business wants software that works, if they can chuck some hardware at a problem and add more processing power then they tend to do that more often than optimize the process. This and legacy build up upon many a program/system will end up with people who do not know all the parts and with that tread too carefully at times and lots of redundant, duplication and bloat inducing additions ensue.
- theandrewbailey 11y ago> Competent programmers tend to be much more cynical about their own ability to write good code. Did you mean skeptical instead of cynical?
- irl_zebra 11y agoI wouldn't think so. Either cynicism or skepticism in this case would lead one to doubt one's own code.
- mwfunk 11y agoIt's true in isolation, but on the whole I consider skepticism to be much more useful and constructive than cynicism. Skepticism is being mindful of one's assumptions, whereas cynicism is just the opposite of optimism. Alternately, skepticism vs. cynicism is "don't assume anything" vs. "assume everything sucks". The former is actively trying to avoid cognitive bias, but the latter is embracing one bias to counteract another one.
- gdulli 11y ago> software bloat almost always comes from smart, often the smartest, devs who are technically the most competent. Which is reason #36 why wisdom is more important than knowledge.
- Retra 11y agoIt's more important to know what's relevant than what's true.
- kazinator 11y ago> Competent programmers tend to be much more cynical about their own ability to write good code. Yes, and so instead of writing something from scratch, these prudent, smart programmers link in some well-tested, popular, widely-used third-party bloat, and repeat that a number of times to make a big program, fast. Smart programmers definitely have ways to make hugeware. One skill that smart programmers have is to skim through the documentation of some API with a thousand functions and immediately see how to combine six of those functions from completely different places in the documentation to solve a task. Of course, the entire thing is brought in! (You wouldn't want to be taking apart some well-tested third party code just to make it smaller. There is the risk that something could break. Plus you create a maintenance headache since you're introducing a fork. Each new revision of the bloat has to be stripped down to size all over again. Your thoughts then turn to that 128 GB MicroSD card in your phone and suddenly the bloat looks small).
- mborch 11y agoAre you saying that the only programmer who's able to avoid bloat is a not-smart programmer? The truth is that it's a balancing act and it's not always clear when bringing in yet another externally maintained library is the right thing to do.
- deleted 11y ago[deleted]
- mborch 11y agoVery true. It's like a cooking competition where you take over from someone else after being blind-folded. Unless you're from the same schooling chances are the result will lack direction. The equivalent in software is bloat. Note that sometimes that "someone" is your former self and you forgot what the idea was.