I am getting really tired of these extremely low effort "manifestos". They complain about the state of software, but make no attempt at understanding why it is that way or what tradeoffs had to be managed. There are just these vague claims that "we should be better" because the problem is that we're just "lazy". It's the writing that is lazy, not the industry. The software industry is arguably one of the most productive spaces that the world has ever seen.
If you're going to criticize the state of software, you have to:
1. Demonstrate you understand the systemic incentives in place that encourage this behavior,
2. persuasively argue why this condition needs to be improved,
3. and propose concrete policies or incentives that counteract these tendencies.
Otherwise it's just whining about something you don't really understand, and the proposed "solution" is to just start all over because this time it'll be different I swear.
The author appears to raise valid points. There are explanations that they did not visit, which is okay by me. It does read like a manifesto but gets the conversation started.
> The software industry is arguably one of the most productive spaces that the world has ever seen.
I would argue based on personal experience that majority of software that comes out of the industry is unmaintainable garbage. The reason it is acceptable in most cases is that the barrier to entry is low and there are few consequences of things going wrong. Quality goes up significantly when consequences become real. At any rate, I would not call the software industry "productive".
> The reason it is acceptable in most cases is that the barrier to entry is low and there are few consequences of things going wrong
Then it is acceptable. You're making a moral value judgement because it's not up to your personal standards, but that's not relevant for whether or not the software accomplishes what it set out to do.
> At any rate, I would not call the software industry "productive".
This is indefensible, given that basically the entire world runs on software these days. Again, I think you're making some sort of subjective value judgement about the perceived "quality" of the software, while ignoring what it has enabled.
We need more of these articles. Teams has no business being as slow and awful as it is. No reason to try multiple times to do a simple task in any OS and app. Sony cameras computer software UX is inexcusable. Overall software quality is dismal. And society is ever more dependent on it.
> Teams has no business being as slow and awful as it is
Why not? This is part of the problem I'm talking about: we have too many armchair software engineers that know nothing about extremely complex codebases making sweeping generalizations about how they "should be". Their solutions are invariably "let's get rid of most features" or "let's just start over and Do It Better This Time."
Whining about a problem comes before fixing the problem. Demanding people must come up with a solution on their own before they share a problem doesn't help fix problems.
And my point is that this problem has been whined to death, with absolutely no concrete suggestions on how to fix it. All I've ever read is complaints about how some-or-another software should be better, and surprise! the author knows absolutely nothing about the codebase or the tradeoffs being managed. It's lazy armchair software engineering.
It obviously hasn't, there is still so much low hanging fruit everywhere.
And don't think this problem is unfixable, we will fix it at some point via standardization and each whiner is a data point that helps us get closer to standardization. It happened to cars, planes, boats, tanks etc, those fields started out with a lot of whacky ideas that didn't fit but then designs got standardized and the only thing left to do was to optimize those standard designs.
Edit: But for example, whining gave is git, a fast standard version control system that everyone now uses. When enough people whine about something then it gets fixed, bigger problems needs more of it.
The problem is that the whining on display in the post is completely rudderless. It has no idea what it's actually complaining about, just a general feeling of "wow things are complicated aren't they?". Then it asserts a priori that it could be simpler. Out of all the different examples that it complained about, not once did they propose a solution in any of those scenarios.
If your argument is that things are more complex then they need to be, prove it. Because it's like an old man looking at a Honda and going "things were so much simpler back in my day!!"
If you're going to criticize the state of software, you have to:
1. Demonstrate you understand the systemic incentives in place that encourage this behavior,
2. persuasively argue why this condition needs to be improved,
3. and propose concrete policies or incentives that counteract these tendencies.
Otherwise it's just whining about something you don't really understand, and the proposed "solution" is to just start all over because this time it'll be different I swear.