Ask HN: Is Software Getting Worse?
A couple of days ago I was trying to check my messages on a real estate website (I won't say which). But scrolling only worked in landscape mode.
Then I tried to watch a TikTok that a friend sent me, but the website took forever to load. When it finished loading, the player didn't work.
What is happening? Is software quality in decline?
106 comments
[ 4.8 ms ] story [ 252 ms ] threadFor example, the most recent update to iBooks from Apple glitches if you rotate the screen, and stays that way even if you rotate it back. iBooks is an app that recently got a tiny facelift, yet no one tested what happens if you flip the phone.
I agree that we use more software now, so we should experience more buggy software, but if that was the case, we should have experienced the same proportion of buggy software all our life. I still think easy patching facilitated bad quality practices, although those bad practices probably make commercial sense.
That was fast, which is the bright side of network patches.
[1] https://stats.stackexchange.com/questions/238529/the-sum-of-...
Which brings up the question: what is negative software quality? Can we define that?
So overall I don't think it's getting worse but it's always been bad on mobile for whatever reason.
No, you just have a skewed memory of some time when software was "good". Remember Windows ME?
Example: in C++, writing switch(..) on an enum would automatically default create all switch cases. Then later versions, it only occasionally did it, now it doesn't do it at all.
Another example: When my application finishes and VS is activated, sometimes the cursor is in one window, but typing happens in another.
Another example: In Windows 11, when resizing a window, the artifacts seem to have gotton worse. Sometimes even the whole window is flickering.
Visual Studio -> Jetbrains.
Windows 11 -> Linux (or Mac)
While VS and Windows have gotten worse in recent years, other software like Jetbrains IDEs and Linux UX have gotten better.
I guess it's a tradeoff.. how much can a software degrade until you're willing to learn and deal with another set of problems. Unfortunalty, you kind of get used to UX quirks.
I have to say though, all in all Win 11 is not as bad as people make it out to be. After turning off a few things, it stops getting in the way.
I'm definitly going to have another look at Jetbrains though.
From what I've scrolled through so far, most examples people give of software that got worse is by Microsoft, though I wouldn't say it's limited to them. There seems to be a desperation for profit in commercial software right now like nothing I've seen in the past. There's usually alternatives worth a look though!
I grew up on Windows and only around XP did it begin to get okay. Before then it was mostly garbage, and after then it was Vista! I have my issues with modern MacOS, but it's generally pretty amazing. I feel like asking the same of these Jonathan Blow acolytes -- When exactly was this golden age? Are you sure it's not nostalgia?
If your poison is Linux, do you remember what the Linux desktop looked like in the early 2000s? On the server, it's ridiculously more resilient and polished.
FWIW I have tremendous respect for Jonathan Blow as a software engineer, but I think this has always been mostly a self aggrandizing pitch, from a craftsperson to people who like the idea of crafted things, that is -- if all the software in the world is getting worse, then there must be some priesthood of the worthy. When, in fact, the "bad" software Jonathan Blow sees is software produced simply under different constraints (expectation is software costs nothing, it must run everywhere/on the web, it's part of a distributed system, compatibility with earlier crappy software really matters, it's made by people who simply care less about the it being a perfect experience, because its not their game). Of course, some new software is actually bad, but I'm not certain software is actually getting worse.
One is the “things aint built like they used to be” bias — buildings from the past that are physically well built are the ones that don’t get torn down, so we associate the past with the sturdy stone buildings instead of the clapboard houses.
The other is that you are right. We keep pushing rendering engines originally designed to render hypertext into a de facto operating system, so even basic software like a real estate site or video player has to deal with a bunch of accidental complexity that the equivalent desktop software from 1999 didn’t have to. It’s worth noting that both your examples are browser-based apps, not desktop or systems software.
There's SO MUCH incredible software out these days...better than anything thats come before it...software is getting better - media harvesting is getting worse. So...support good companies, and make a point of not supporting the ones which do this. It comes at a cost - but - that's life.
for creators, particularly in music - we've never had it better...
PAID -Ableton blows my mind - every time i touch it. -So does FL studio
FREE -Surge XT - most incredible free software synthesizer going -Vital - a free version of Serum which sounds incredible. -Ardour - a free protools stand in. -Air Windows - tonnes of audio processing plugins -Variety of Sound - beautiful UIs, awesome sound. -Blender...holy shit...
i could go on..
Free, if you don't want the clever "neural engine" stuff or >4k timelines.
Oh, you do want that? That'll be 300 quid then, and it's yours for life. They have never even charged for the updates, either.
Of course, they make their money on cameras and control surfaces.
OBS Screen Recorder, Obsidian Mind Mapping Software, Mock Mechanic (free engineering sandbox), Ranstads Circuit Modelling JS site, Inkscape - getting better and better
The insane rendering time one is weird, but it only seems to show up in the Windows version. Apparently it's something to do with having one dodgy frame in the clip. I suspect it's something to do with sources encoded in h.264, but I'd expect that to affect the Mac port as well. Linux doesn't seem to be affected.
You can try doing "render in place" for the affected clip, which seems to help.
Re: render in place, I'll try your approach next time I run into it. Thanks.
Is that when using a plugin window or using the Ableton UI itself?
I can only recall plugins crashing for me... Always worth checking for updates with the vendors.
This inscrutability of modern software is one of my biggest pet peeves with it. There was a time when the resource-limitations of computers forced software to be much simpler - and the end result was that when things went wrong, someone with sufficient time and motivation could sift through the rubble, figure out what the problem is, and often lash up some kind of workaround. That's getting harder and harder to do these days.
Likewise, in the open-source world, the breadth of dependencies is getting out of hand - I've lost count of the number of times I've tried to build something and had to go on half a dozen side-quests to track down a particular version of a particular build tool because the version in my distro is either too new or too old.
I hate when a mostly static website is rendered completely client side, for example. Most of the time, I just want to read the text, maybe see some (non-marketing) images, and that's it. I don't want hundreds of kilobytes of JS executed on my machine just for that.
Even software I pay for seems to try to screw me at every turn. "You paid for me? Have some ads! I'll scan everything you do and sell it off to the highest bidder! No you can't copy and send this image to a friend, but here's a link to try and lure them into the walled garden so I can data rape them too. Stay in my eco system it's great. You love it here! Click click click keeping clicking. Moar data to sell! Give moar! Data breach! I'm soz (but no compensation for you."
Oh and when you live off grid with little power you learn to hate electron apps. They are such power wasters. Three things cause my inverter to spin up its cooling fans: games, windows updates and electron apps. (And of course if you have "AC" plugged in most apps seem to think its a damn free for all for power. So its more power efficient to charge powered down and only run using battery if possible).
No. Just, No.
With this one as with many others I think it's because a lot are worked on by multiple teams and a lot of bugs get stuck in a kind of "no man's land" between teams where nobody is really responsible.
It's absurd that a program should be so much slower on machines that are literally about 1000x faster.
And not network-related but still annoying is Mac OS' habit of always spinning up connected harddrives each time a "save file" dialog opens, which causes that dialog to be completely unresponsive until all drives are ready. Save a file and the most expensive Mac can be bottlenecked by a single external HDD. It's just so unnecessary.
That's basically the end of this thread.
As in, why isn't it better? (sound of cash machines)
That makes software harder. Just wait until you can't buy a new computer just like that.
Stick to vanilla Java/C+/HTML(5)/JSON/OpenGL/AL and make something great and you'll be fine.
Note + is NOT a typo: it means C++ compiler with mostly C syntax. I only use string, stream and namespaces. Classes very rarely.
Don't download things that are >1GB.
How do you figure that? Seems to me that things are still rapidly changing. Starlink, fusion, JWST, computer hardware, 3D printing etc...loads still happening.
Acceleration stopped 1968.
CPU improvements stalled around 2012.
GPU around 1030 so in 2017.
Energy is the master resource.
It is double actually. Also there are CPUs with 64 cores now. Also in 2012 there were CPUs with more than 4 cores.
that's all I can notice
What you can notice is not real information when speed, cores and energy use can be quantified.
BTW, for modern multitasking computers, the main jump in performance comes from going from a single processor to dual processor. Than Amdahl's law neglects the difference.
> What you can notice is not real information when speed, cores and energy use can be quantified.
Single-core performance is totally the same, the number of cores does not change anything visible and energy use seems like the only outcome of 10 years spent from 2012.
This is nonsense
Than Amdahl's law neglects the difference.
Then you don't understand "Amdahl's law". It is very basic and only about parts of software that aren't multithreaded becoming a bottleneck. This sounds like desperate pessimism.
Single-core performance is totally the same,
This is not true either and you could look at benchmarks to see it.
the number of cores does not change anything visible
Disable hyperthreading and all your cores in the bios, then run multithreaded software and say the same thing.
Core 2 duo Quad from 2007+ used to have 2 L2 cashes (not 4) and no L3 and task manager of Windows refused to see more than 2 cores, but for some rare tasks Quad was perfect such as playing GTA4. That is just my memories, feel free to correct me if you see me mistaken.
> Then you don't understand "Amdahl's law". It is very basic and only about parts of software that aren't multithreaded becoming a bottleneck.
Everything except of browser is not multithreaded in 2023, for example a garbage collecting of interpreted languages.
> This is not true either and you could look at benchmarks to see it.
I have a heavy single-threaded application which I need to run 24/7 and I still use Pentium 4 because no modern computer can make it 2x faster.
> Disable hyperthreading and all your cores in the bios, then run multithreaded software and say the same thing.
I mean starting from 2 cores the number of cores does not add anything visible.
This is software has nothing to do with your claims of hardware not advancing or four cores being 'unstable'. I don't know what it has to do with anything.
Everything except of browser is not multithreaded in 2023
This is a bizarre claim because it's so easy to disprove. Games, content creation video encoding and decoding and of course, your whole OS which is running multiple programs.
This also has nothing to do with amdahl's law, which is about how non-multithreaded parts of multithreaded software scales.
for example a garbage collecting of interpreted languages.
Who cares, an interpreted language is not meant to be fast in the first place. Even so you can still run multiple threads and multiple processes.
This is also software and has nothing to do with your claim that CPUs haven't changed since 2012.
I mean starting from 2 cores the number of cores does not add anything visible.
They do to everyone buying CPUs with more than 2 cores, which is basically everyone, since even phones and $35 rasberry pi boards have four or more cores.
Pretty much everything you said was not only wrong, it didn't even have anything to do with your point.
What is the most important feature of post-2012 CPU and except of energy consuming?
They are faster per clock cycle, run at higher frequencies, have more cores, more memory bandwidth, more pcie bandwidth, wider SIMD lanes, deeper out of order buffers, much more cache and more execution units.
This is called extensive progress, no intensive developing since 2012 as it was mentioned before I have joined discussion. You are completely wrong about frequency (no increase since Haswell's 4Ghz) and somewhat boring about other points so I will not answer here any more.
This is a word salad that means nothing. Where did you even get these ideas?
You are completely wrong about frequency (no increase since Haswell's 4Ghz)
Why would you say something that is so obviously wrong and easy to disprove? Most current AMD cpus have base clocks that are higher than 4ghz, let alone their boost clocks.
https://wccftech.com/amd-ryzen-9-7950x-cpu-5-85-ghz-peak-5-1...
I also believe the older stuff is better built in terms of longevity if you cool them properly.
I also know the new ones have more crap in them that will allow Intel/Microsoft to block things when they need money.
This thing enables me to have my complete production environment on my machine and develop faster. Apart from that programs in general run very fast. I don't want to go back to 2012.
ChatGPT, literally the biggest thing of the year, still has an incredibly amateurish website. Their auth UX is broken. They do not offer exporting conversations. You just see an infinite scroll list of previous conversations. It's a complete mess!
Yes, indeed, almost no one cares about UI/UX anymore at all, let alone polishing it towards perfection.
How did this happen? If yor product is "good enough", no one will care about the UI/UX. It's not an important distinguisher. Everyone keeps complaining about reddit, but everyone keeps using it. Same for ChatGPT.
So often have friends and family got lost wondering what to do. Oh you got to click on it? The visual clues are all gone. "Flat"... right.
Too many things are rushed out the door. Too much focus has been placed on "features" "features" and more "features" and no polish. Every release there are new features and yet the old 1s still have lots of bugs :(
I think that answers your question.
Alarm which can track someone seems like more advanced kind of alarm software from some points of view.