by zgk7iqea on 4/12/23, 9:59 AM with 104 comments
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?
by negative_zero on 4/12/23, 11:03 AM
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).
by codingdave on 4/12/23, 10:38 AM
by imgabe on 4/12/23, 11:10 AM
It's absurd that a program should be so much slower on machines that are literally about 1000x faster.
by dzek69 on 4/12/23, 11:28 AM
This results in poor UX, apps spying you constantly, useless features and easy to fix bugfixes that aren't fixed in years.
As a software developer I'm disappointed in this approach. If I can I try my best to produce the best experience for the end user, but in the end I can only get satisfaction in open source...
But open source is sometimes hell too!
Just recently I found super popular open source library that earns $200k each years from donations, but the its Github is filled with issues and PRs. Author doesn't care, the money flows anyway. It hurts to see most major issues are already fixed by PRs, but the author doesn't even bother to merge & release.
Sad.
by paulgb on 4/12/23, 10:55 AM
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.
by transcriptase on 4/12/23, 11:34 AM
Discord and MS Teams still take 30 seconds to open.
by cameronh90 on 4/12/23, 11:41 AM
Twenty years ago, applications crashed all the time and there was no thought given to data recovery. For example, whilst writing this post, I accidentally clicked a link, then pressed back and Chrome hadn't lost my post. Back in the day, a mistimed backspace would irretrievably destroy your input. Video games frequently wouldn't work without messing with driver settings - how do I know if want to use glide or DX?
Playing a video involved messing around with codecs and if you were unlucky, the video was actually just a virus that would completely own your computer.
There is one major exception, which is websites. After the age of popups, but before the age of privacy warnings, there was this short window where you could just open a web page and it didn't have a whole bunch of crap you had to dismiss before you could access the content.
by an_aparallel on 4/12/23, 10:55 AM
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..
by s1k3s on 4/12/23, 10:43 AM
So overall I don't think it's getting worse but it's always been bad on mobile for whatever reason.
by wilde on 4/12/23, 11:29 AM
So over time, you aren’t just subject to bugs in feature A. You’re subject to bugs in feature A and library B and framework C and injected monitoring D and so on for the same user action.
by loxdalen on 4/12/23, 10:49 AM
by re-thc on 4/12/23, 11:23 AM
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 :(
by Traubenfuchs on 4/12/23, 11:21 AM
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.
by rco8786 on 4/12/23, 10:46 AM
No, you just have a skewed memory of some time when software was "good". Remember Windows ME?
by hxelk1 on 4/12/23, 10:59 AM
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.
by bullen on 4/12/23, 11:13 AM
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.
by laichzeit0 on 4/12/23, 11:20 AM
by Havoc on 4/12/23, 11:36 AM
Web in general seems to be getting worse yes. Partly due to dark pattern-y BS but also because it's a hard problem. There are just so many combinations of configurations that it's hard to cover it all. See also those fingerprinting sites showing you're unique (your configuration)...that's effectively a measure of that diversity.
I don't mind the latter. There is certainly a movement towards intentional user hostile designs though which is annoying
by d23 on 4/12/23, 11:32 AM
In that vein and as a counterpoint: I remember thinking software like VLC and irfanview were great back in the day. Now, I find them both to be incredibly frustrating. I wonder if the bar for quality software has actually gone up.
That being said, I never remember basic websites of the 90s being as buggy as the ones I run into on a regular basis today, so who knows.
by sjadoinqwoeihad on 4/12/23, 10:59 AM
by helmsb on 4/12/23, 3:03 PM
A lot of software today is built to drive a specific user behavior to generate revenue instead of being designed from the start to provide customer value.
User-hostile behavior, dark patterns, etc. are all a symptom of this. Additionally time-to-market and marketing bullet points are often more important than user experience of bug-free software because many companies have found they can make the same revenue without having to focus on the customer experience.
Classic software was not as big-free as people like to think. There was lots of BAD software. The difference was that with higher prices and the inability to push updates (aside from mailing floppies) meant that the incentive was to produce software that had fewer bugs.
by the_third_wave on 4/12/23, 1:50 PM
Blame the enormous amount of churn in the web tool world, the chase after the latest fads, the fact that many 'web programmers' entered this field not so much because they like the intellectual challenge of solving puzzles but because it pays well, the fact that project targets keep on moving or whatever.
Commercial software is getting 'worse' in that the distinction between customer and product is disappearing. A product is that what is made by a company in order to sell it to a customer so the company gets to make money. A customer is he who buys a product from a company because he deems it fit for some purpose.
That was then but now things have changed. Final sales are making way for rental agreements, products are turning into advertising and data mining applications to be used by companies to herd and milk their customers. Customers are thus productised and sold to other companies who target them with directed advertising based on what was harvested earlier.
Free software is still mostly freed from this plague - although even there it sometimes shows up, e.g. the Shopping lens [1] which appeared in Ubuntu 12.04 and only recently disappeared was an unwelcome reminder of this phenomenon - so there is a way out.
by ergonaught on 4/12/23, 11:30 AM
1) If you haven't actually lived through the arc you can't really spot this so you invite "okay boomer" sniping if you point it out.
2) Knowledge does not update the genome, therefore knowledge transmission is A Hard Problem, therefore because "developing software" is not a small and formal discipline the lessons learned by experience are not reliably/effectively/efficiently/at-all transmitted to the newer "generation" of "developers". This gives the appearance of "not learning from mistakes" or "things degrading" but the reality is simply that everyone is always reinventing things they don't understand as a result.
3) There are too many people engaging in the act of producing software who shouldn't actually be doing it. This is true of all fields where demand outstrips supply. LLMs are going to solve this problem in a most unfortunate manner.
4) The reality that cannot be discussed is that "stupid" is a much larger problem than anyone realizes, it extends well into areas that people normally think of as "requiring high intelligence", and it exacerbates all of the above.
5) We incentivize and, for reasons already given, actually justify behaviors that also tend to produce this. Ex: I assure you that somewhere out there is a product manager with a drug habit desperate to find a way to turn hammers into smart devices with a subscription service, NOT because this will help people who use hammers, but because this will increase profits for a company that produces hammers. This is an objectively bad and harmful practice that we encourage daily.
Soooooo, again, yep.
by dusted on 4/12/23, 10:58 AM
by andyish on 4/12/23, 11:05 AM
by nextlevelwizard on 4/12/23, 11:39 AM
by lonelyasacloud on 4/12/23, 12:00 PM
For most software all of that has changed and it comes with a cost.
by Geenirvana on 4/12/23, 11:39 AM
I literally had to google how to restart my phone the other day.
by pydry on 4/12/23, 11:10 AM
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.
by emu7652 on 4/12/23, 10:54 AM
by alpaca128 on 4/12/23, 11:51 AM
I especially find it frustrating how software gets more sluggish while at the same time we're making 500Hz screens, VR etc which should actually encourage the opposite.
by throwaway4good on 4/12/23, 11:34 AM
It is just that the goal the developers had is not what you assume (to let you view video as easily as possible) but instead onboard you as an active user of the app.
If you try and use Facebook without being logged in you will have a similar experience.
by WirelessGigabit on 4/12/23, 9:27 PM
For example, I have a BlackVue camera. App used to work great.
Now I get a prompt to subscribe to their paid system. Why? I Paid for a webcam, and knew that the online service was paid, but then it was my choice.
Now they are coercing me.
by dogleash on 4/12/23, 2:37 PM
by chrismcb on 4/12/23, 9:57 PM
by hammyhavoc on 4/12/23, 11:03 AM
by tm-guimaraes on 4/12/23, 11:38 AM
Basically our current capitalism system incentivises not "value creation" as an utopian version of capitalism would incentivise, but actually "rent seeking" aka "build a moat, capture users". Everyone is after guaranteed recurring revenue, and it is done by shackling you to the service being provided, check "right to repair" issues, check compatibility in software ecosystems.
Someone builds a very good product, people migrate to it, they pay you money, maybe even pay you to keep using it (subscription), but how to you guarantee that they are not switching to something else? Add as much lock in as possible, or make it free so you can sell user data/put adds. All of these are not connected to the quality or "value" you are providing to customers, but rather into ways of keeping your moat / stop competition from rising.
tragedy of the commons (and similiar issues) means that we can never have the utopian capitalist/free market world. Regulation is always needed to avoid such issues, but at the same time regulation can also backfire and instead create these moats/rent. The utopian Capitalist world, just like the utopian Communism cannot exist. And the end of the day, there can never be purity, and systems need continuous engineering/maintenance effort.
In your example, TikTok want you to use the app, website is not a priority, they can't gather as much info there, it just exists so that someone using the app could send a video to someone without it. Also, it still needs a ton of bloat to still get as much info from you as they can. So, with less resources and with still wanting to spy on you as much as they can, it's normal that the video player might not work in all browser/OS/device combinations.
Same shit across every product, now add things like speed of delivery of new features or new ways to spy being more important that performance/quality, and you get trash software.
by johlits on 4/12/23, 11:34 AM
by ModernMech on 4/12/23, 11:28 AM
I think that answers your question.
by quanticle on 4/12/23, 11:46 AM
When was the last time you had an application blue-screen/bugcheck/kernel panic your machine? Yes, Windows still blue-screens from time to time, but over the past decade, I've found that 100% of my blue-screens have been caused by faulty drivers, rather than application code or bugs in the OS itself. This wasn't always the case. I remember, on Windows 98, there was one particular game that my brother had (I think it was Reader Rabbit), which would repeatedly and reliably blue-screen the machine when we got to a certain level. I haven't seen any errors like that in more than decade. And even the driver blue-screens are getting better. I remember not too long ago, my Windows PC's monitor blinked off, then came back. When I looked in Event Viewer, I saw that the GPU driver had crashed and had been automatically restarted. This is something that still causes kernel panics on Linux and MacOS, but Windows just shrugs it off and keeps on chugging.
With regards to Linux, when was the last time you had to mess with xorg.conf? Wifi drivers? WPA supplicant? I remember when I had to download the Windows drivers for my wireless card, extract the binary blobs, compile NDISWrapper, and then pray that I'd set everything up correctly, before unplugging the Ethernet cable to test whether my wifi was working. Now? I browse Hacker News while Linux is installing, because wifi drivers have been part of the kernel for years.
As for programming tools, they're more stable, robust, and widely available than ever. When was the last time you had to pay for a compiler, interpreter or language runtime? When was the last time GCC or LLVM crashed? Today one can write code in C, C++, Java, Python, Go, Rust, and a plethora of other languages... all for free, even on Windows! This is a huge improvement from the bad old days when your choices were to either pay for Borland or pay for Visual Studio. And as for web programming, do you really pine for the days when your only option for a backend language was a collection of perl scripts in `cgi-bin`?
The one regression, in my opinion, is with communication software. We used to have open (or "open-enough" i.e. reverse engineered) protocols that enabled multi-protocol, multi-platform clients such as Pidgin. That world is gone. Our communications are now siloed into proprietary, hostile software stacks, such as Slack, Google Meet and Teams. And our personal communications are siloed between Discord, WhatsApp, and the multifarious other messenger apps that we have to install in order to communicate with that one person who refuses to use anything else.
But other than comms, has software improved? I have a hard time arguing otherwise.
by eimrine on 4/12/23, 10:40 AM
by adverbly on 4/12/23, 11:00 AM
by mantas on 4/12/23, 10:51 AM
by p0w3n3d on 4/12/23, 12:36 PM
by nathias on 4/12/23, 11:21 AM