Why We Can't Have Nice Software
Why We Can't Have Nice Software
Why We Can't Have Nice Software
https://andrewkelley.me/post/why-we-cant-have-nice-software.html
From Andrew R. Kelley, he's the author of the Zig language
Why We Can't Have Nice Software
Why We Can't Have Nice Software
https://andrewkelley.me/post/why-we-cant-have-nice-software.html
From Andrew R. Kelley, he's the author of the Zig language
Is the reason capitalism? I bet it's capitalism
Edit: it's capitalism
You're cheating. The answer is always capitalism.
Not always! Sometimes it's eg. cognitive biases
Now now... Oftentimes it's Ronald Reagan as well....
The only mention of capitalism in the article is specifically venture capitalism.
Not sure it’s capitalism per se. Perhaps rampant waste. Criticism of capitalism could include monopoly formation; massive tech companies buy small ones (obtain more capital = more control over production = more profit).
There’s despair over everyone, big & small, resolving the same recreated problems. Kelley doesn’t talk about breaking Microsoft up (i.e. redistributing their capital). He implies he’d be ok for Microsoft to maintain its market position if it just fixed some damn bugs.
Hey, a lot of open source software is really warty too. But you could probably also blame that on capitalism if you tried hard enough :)
Yeah, because being required to a) compete with "capitalist" software and corporations while b) having most developers working only in their free time besides a regular job forced on them by capitalism kind of means capitalism is kind of involved here.
Don't act so smug, you're a hooker just like we all are. We just have the luxury to be somewhat higher class escorts and not crack removed. But we're getting fucked nonetheless.
… did we read the same blog post? Did it mention OSS once?
Peak dishwasher is a great concept and I think it highlights something important in the way we think of technology. There's often this underlying assumption of technological progress, but if we look at a particular area (e.g. dishwashers) we can see that after a burst of initial innovation the progress has basically halted. Many things are like this and I would in fact wager that a large portion of technologies that we use haven't actually meaningfully developed since the 80s. Computers are obviously a massive exception to this - and there are several more - but I think that we tend to overstate the inevitability of technological progress. One day we might even exhaust the well of smaller and faster computers each year and I wonder how we will continue to view technological progress after that.
There is a lot of fake progress. In computer technology some things were refined, but the only true technological novelty these last 20 years was the containerization. And maybe AI. Internet was the previous jump, but it's not really a computer technology, and it affect much, much more than that.
And Moor law has already ended some years ago.
20 years ago 32-bit systems, CRT monitors, dial-up modems, single core processors or HDDs with most people having 160 GB of storage at most were common. And laptop battery life and thermal performance was just ridiculous in most cases.
Moore's law is mostly dead for commercial crap, i.e. JS-heavy 3rd party spyware filled websites with comparably slow and costly backends and Electron/React Native bloat on desktop/mobile, because shorter time to market and thus paying the devs less is often much cheaper for a lot of companies.
I'd argue free software luckily proves this theorem wrong. There are still a lot of actively maintained, popular programs in C and C++ and a lot of newer ones written in Rust, Dart or Go.
Clock speed and other areas I'd agree have stagnated, but graphics cards, wireless communicaiton standards, cheap fast SSD's, and power efficient CPU's have massively impacted end-user performance in the last 10 years. RISC-V is also a major development that is just getting started.
Products are developed and in that process technology is created. Once the technical problems have been solved, manufacturers seek to remove as much cost from the process as possible and this generally degrades the durability of the product. The biggest problem with a lot of technology is that virtually no consideration is given to the long term maintenance of the product. There's no way to interface the system with other parts and re-use the product. We throw it away and buy the next thing because that's good for capitalism but it's horrible for people and the environment.
Consequence:
Software can only be good, when enough people WANT to work on it and with it along the complete life-cycle. There's a critical amount of developers/contributors/testers and (feedback providing) users.
Hence a lot of critical consumer stuff is based on popular opensource.
Also, we're entering an aera where the difference between hardware/firmware/software gets increasingly blurred. So all of this applies to more and more hardware, too.
The vast majority of people are techno illiterate, even within firms that make technology. A handful of people (relatively speaking) are making most of the stuff. Everyone else is just feeding that process. The legal system is set up to motivate the concealment of information about products. You cannot find the documentation to repair embedded systems, even if you have the desire to fix them and the 'right to repair'.
In our village we have a wildly popular 'repair cafe' where people bring their faulty electrical items to be repaired by volunteers. People don't want to toss their duff appliances in landfill but we need the tools and education.
I disagree slightly, but only with his level of cynicism. I agree, we see the "peak diskwasher" problem everywhere. And I agree with his conclusion. But I feel he glossed over that, well, people still need dishwashers. Growth might be impossible, but a steady and "boring" amount of profit should still be possible selling plain-ole-dishwashers. Yet ... for some reason, we don't see that.
Instead companies throw everything into growth and we get the removed bluetooth enabled dishwasher problem everywhere, and I'd like to know more about why.
Growth might be impossible, but a steady and "boring" amount of profit should still be possible selling plain-ole-dishwashers. Yet ... for some reason, we don't see that.
God yes this bothers and fascinates me.
Instead companies throw everything into growth and we get the removed bluetooth enabled dishwasher problem everywhere, and I'd like toknow more about why.
I think it's alluded to in the article:
They found a way to make consumers spend more money on dishwashing. The line goes up, for one more year. But it's not enough. It has to go up every year.
Digging deeper: why must the line go up? Pesonally I see it as a deeply emotional, human thing.
When you read those annual financial reports from big companies, they will do anything to make sure things look rosy. Bullshit terms like "negative growth" are used because "loss" or "shrink" sound bad. So what if it sounds bad?
Confidence. Trust. It's emotional. These are deep in our psyche. It's how governments get elected, contracts are won, and investments are made. It's what makes us human. If that line goes down... will it go back up? What's going to happen? Alarm bells! Uncertaintly. Anxiety. People abandon you. Money, power, influence fades. You could find yourself replaced by the up-and-coming who "show promise".
Our social emotional species has hundreds of thousands of years (millions?) of years of this stuff hardwired into us. Trust let us cooperate beyond our own individual or family interests. Would we be human otherwise? (I found the article Behavioural Modernity interesting).
I think the key fault lies in that most companies are publicly traded stock companies.
It challenges what corporations are at the heart. A company owned through stocks is controlled by those stock holders, and exist to make the stock holders money. It's expected for the stock to be worth it by growing, not paying out dividends. (but that is also another layer)
But that's not why a company should exist, it should turn a profit but ultimately it's about being a source of income to its workers. But stocks go against that, since stocks seek to extract money to the non-working owners. Well paid workers is rather contrary to the goal of the stock owners, as long as you can keep going.
The advantage of stock companies were getting investment to start and grow, but it forever shackles the company bar some rich maniac buys the whole thing for his own crazed ideas.
Private companies aren't guaranteed to be good either, but if they are set up right they at least aren't just a funnel of money for the people at the top.
Its because so much money can be gotten out of the perpetual invest, grow, squeeze and sell that things are as they are today. You're not a worthy company if you just increase your cash flow in line with inflation.
The need to grow also comes back as enshitification, planned obsolescence (or just made as cheap as possible), high focus on consumable products or subscriptions to ensure a steady flow of income. Making a product lasting for life? One and done, you'll grow until the market is saturated and then collapse because the cash flow simply won't be there.
Its especially noticeable when the economy takes a hit, all things go from being good investment objects to being something that needs to turn profit. So all the future profit is dropped, tons of layoffs, and rapidly increasing subscription costs. All to counter the reduced demand. Take streaming, the market fragmented, interest rates spiked so holding debt is bad, consumers have less money to spend easily. So the big ones take steps, more ads, crack down on sharing, layoffs, reduced selection and cancelation of various shows and projects. And then stock holders can be happy they once again have a good year and good growth of profit despite turbulent times.
Edit: By contrast a private company is not beholden to any requirement to cancerous growth. It too will be hurt by not having steady cash flow, but they don't need to grow until they are so big that they need constant growth to stay alive. But a private company can be steady for years without problem.
Digging deeper: why must the line go up? Pesonally I see it as a deeply emotional, human thing.
The idea that corporations, economies or any human ventures in general have to grow infinitely is a very recent invention and obsession. I honestly find it worrying that someone would think it's some sort of deeply ingrained human trait when it's clearly not culturally universal (eg. small hunter-gatherer tribes wouldn't exist otherwise) and not present through all of history. Really goes to show how well the current economic system has been "bought" (har har), and how easily we start thinking that some culturally defined phenomenon or another just has to be a fundamental part of humans. There's a lot of similar thinking around nation states that are ethnically homogenous and based around a shared national cultural identity – people seem to think that that's the default and how things have been since ancient times, but nation states are barely even 200 years old as a concept.
The line has to go up because the current economic system demands it has to go up, not some fundamental feature of the human psyche
I wholeheartedly agree with that. Every version of Excel is massively worse than previous one. Same with the other Office products. Incremental fixes and impovements covered with unneded features and Ribbon design.
The Ribbon interface intoduction is the most obnoxious design decision that was pushed to the keyboard and mouse users. It only helps "touch" or "pen" users and only marginally.
Then OneDrive aka "we holding your data ransom" Drive. This is the only one Drive that is purelly sheit.
idk as an ADHDer I might not have a hard time learning keyboard shortcuts (i uSe VIm bTw, fr in many cases for text docs I'd rather write them using markdown and maybe add some html styling then convert with pandoc than deal with the sensory overload that RTEs can give me) I need more time to navigate solely text-based menus with lots of items than a ribbon.
in many cases for text docs I'd rather write them using markdown and maybe add some html styling then convert with pandoc
Yep. Exactly the case. Using the multiple instruments instead of one "specially created for this reason" programm become normal. And it become normal because the program become unpredictable in changes. All the functionality is click away, but you need to know what to click.
And as a chery on top Outlook by default uses ctrl+f to forward a message. Instead of starting search.
It's like the author has just read Georges Bataille - The Accursed Share and now sees it in everything.
Most OSS software have UX thats sucks (with big execptions of course!) compared to their paid alternative, is it because of capitalism ? :D
Also, dishwasher sucks now, not because of the shitty software on it, but because regulations make them not draw too much power, so now my dish are not dry when the dishwasher is done.
Ah yes all that famously amazing ux spawned by capitalism
The two thing you sent are not paid software.
Giving example of something that make it's UX shit on purpose is almost a good comparison to OSS software.
Again, there are good counterexample that made UX that are ahead their paid counterpart, but it's an exception, not the rule.
Author point that we can't have nice software because of capitalism, my point was that software developed without money incentive in mind are not nicer either.
Their merit is to be free and open, and that's why a lot of people will use it, not because it has a better UI.
That is true and the reason for that is not capitalism, of course. Most projects don't have UI experts and when someone wants to help, devs usually don't listen. Sometimes there are technical obstacles too (old framework, hardcoded UI), but probably not in web or Electron apps.
compared to their paid alternative
Keep in mind that Libre Software can be commercial too, so you really mean proprietary alternatives.
My statement was to dunk on the "that's capitalism fault", to not have nice software. My OSS example is a counter example.