Join the discussion
Write your take first — we'll ask for email only when you're ready to publish.
- Hacker News
- > Software may have been better back in the day, but that was mainly because it was much simpler. ... The bar for “user experience” has kept rising, but everything has become increasingly fragile.
It was simpler, better, more stable, _and_ had better UX.
Complexity does not equal quality. In fact, it usually points to poor design. Programs used to be seen as utilities, which enabled the same kind of mentality you have to any specialised machinery: "Here's a thing that can make your life easier. Learn how to use it". Now programs try to be all-singing-all-dancing-all-the-time-changing.
by ghusto - > It was simpler, better, more stable, _and_ had better UX.
It had less features too.
Now, I do agree doing more doesn't mean that something is necessarily better... but I think the UX difficulty increases exponentially as more features are added.
by pier25 - I agree with the author. I think everybody has strong or at least mixed feeling agent agentic coding and to me, the argument is always focused on the product itself.
I come from sciences, where the problem of AI is more linked to AI-generated papers rather than coding. Again, the real underlying problem is the pressure to publish at all cost and the ranking grant system which rewards number of publication rather than quality.
I'm sure you could say the same of AI-generated images, sound or video used in advetising, or any field where AI generation offers a shortcut. The problem is always that you need to produce as much results as fast as possible and quality is not the objective. The problem is always the KPI.
by Otterly99 - Reddit on iOS safari has been getting incrementally, nearly unusable worse. It had some sharp edges before but it seems they are moving faster now with the same or greater defect rate and shit is getting bad:
- URLs commonly auto-link to the things behind them, even including spaces and words.
- Pinch to zoom on the homepage causes the page to reload. Forcing you to lose your place/content.
- I sometimes cannot click to play videos on the feed. I can click through the comments and then click play on the player.
- Comments pasted from perfectly valid markdown render as whitespace deleted garbage
- Clicking "reply" then tapping in the box makes it disappear. I literally cannot see what I'm typing. I have to scroll to the bottom of the page to find it.
- After typing into the comment box the "comment" button to submit it is not visible
- Being a mod: The dropdown for selecting a removal rule will not let me scroll past what shows on the initial dropdown.
- Rare but critical interfaces like banning a user (or managing an existing ban). Essentially cannot be used on mobile.
- When typing responses to people as a mod, depending on the box sometimes I "lose" the comment button.
by schneems - I presume that's in addition to all the intentional enshittification.by inigyou
- My conspiracy theory is that Reddit intentionally makes the iOS Safari experience awful to drive people to download the app.
I’m sure it works.
But for me, it drove me to stop using Reddit on my phone.
by j_bum - And, I noticed yesterday, old.reddit.com now requires login. Which renders a blank page on my phone. Check and mate.by ssttoo
- The pinch to zoom issue is actually a WebKit bug (https://bugs.webkit.org/show_bug.cgi?id=305622), although technically the root cause is Reddit using a ton of memory
- With Reddit I think it's on purpose. They want to drive users to the mobile app. Maybe they aren't introducing bugs on purpose but not addressing them isn't a accident.by ajmurmann
- Software quality is tied to the market incentives and always has been. AI isn’t going to make someone care about writing robust software and that is why we don’t see better software all of a sudden. The market doesn’t rewards apps that don’t break on every update, it doesn’t reward cobbling together multiple independent solutions, as opposed to using Microsoft as a one stop shop. If people could have gotten away with this in the early days of computing they would have, but computers were too low powered, and the knowledge too scarce.
There is a saying
Any idiot can build a bridge that stands, but it takes an engineer to build a bridge that barely stands
We found the limits of what it takes to make software stand, and what software paper cuts people are willing to deal with
by Decabytes - So what's our (literal or metaphorical) breaking point here? How much more does things need to break before people just say "enough" and stop consuming into the declining quality?by johnnyanmac
- The problem is that the cost curve for completeness/correctness goes asymptotic at 90-99% so the cost up building complete/correct software is never worth it from a revenue perspective, and only happens if there is significant liability risk from defects.by metalspot
- But maybe that’s bad? Maybe keeping everyone just on the verge of leaving or getting hurt isn’t a good place for society to settle?
- "Software quality is tied to the market incentives and always has been."
Yes -- but. The market is irrational especially in a time of mania or panic. The AI phase we are in has mania, bubble aspects. There is no rational calculation about what is happening to software quality and is that good for customers or the industry (or individual businesses). We are too far into FOMO. It won't stop until it STOPS. Uh oh.
A friend of mine works in a niche software field at a small company. It was recently acquired and the whole technical team was laid off because the new director of engineering determined that they could replace the whole team with AI. All of the people who wrote the product were dumped as well as the whole cohort they had trained. Everyone.
by cleandreams - As a non-technical person compared to the rest of HN, I think this has always been the problem of software made for non-technical audiences. The design was driven by programmers’ heuristics and trends in technology stack (e.g. if a company can hire a lot of JS devs bc JS is trending, they will choose JS even regardless of whether JS is the best choice for the problem).
There was a brief stint of UX, ergonomics and HMI getting traction in enterprise, and, imo, the biggest technological achievements in consumer software has been in the realm of UX in twenty first century. But it lost its importance, I suppose, as you don’t need to make good software to make money off consumers.
Whatever capabilities AI gives to programmers in terms of speed of development, etc, doesn’t change the fundamental behavior —- commercial software is not developed for humans. It is developed for investors, markets, around operational needs, based on CEOs whims, developers’ personal itches, relying on approximation of human experience that gets regurgitated through layers of commercial processes of product managers, UX researchers (who, if present at all, often don’t get invited to the conversation until there are buttons to move in a GUI of an already existing product). Where human experience is considered, it’s from the perspective of our natural weaknesses with the goal to exploit them to maximize profits. Hence why 21st century tech gave us all the dark patterns, feeds, social media, LLM chatbots, etc.
Even when I talk to individual engineers who are committed to creating something good, wholesome, something that they can be proud of -— many think and reason about the problem in a way that sounds like they are trying to engineer human experience the same way one would engineer instructions for machines.
It will never get better, IMO. AI only exemplifies what already exists.
- people have been complaining about software going downhill ever since hand crafted assembler was replaced with C and a compiler. it's the classic "old man yells at clouds".by chasd00
- I think the UX and stability related quality will drop at such a bottom low, that some crazy companies will revive the arcane practice of UX and even study it with users.
I am not super optimistic that it happens fast, but we will end up in a situation that everything becomes tedious, annoying and broken. Companies who will do it right will inspire the whole ecosystem. It will be satirical to see the full circle happening, but it's inevitable if we want to keep going with digitalization, even if it means to bring back more hardware buttons.
by Yokohiii - Incentives.
People get promoted, get bonuses based on some shiny new tool they developed. Every year, they create something 'new', claim lots of features. Their managers/directors/VPs also encourage this because they need some 'winning' and 'automation' slides to brag about. Nothing gets solved. In fact, things get worse. The new tool and old tool and oldest tool all coexist with 20 other tools developed for the exact same thing in a different org. Each org (SVP reporting to CEO) is MASSIVE and everybody wants headcount and success stories. All these things will be happening at the same time. Those who are capable of making the biggest mess get the biggest pay and bonus, they get promoted and they move nearly year 1 - 2 years, within the same company or to another. Repeat. The ICs (individual contributors) who have values and explain why this is a bad idea are usually moved to Support or Ops roles or migration projects from old to new.
I've seen perfectly working systems continuously being replaced with worse and worse tools. Most of the new tools require a lot of people from several departments, just a guy who understands business and develops a perfectly working PHP/CRUD is a no-no. It has to be replaced with a complex monster with react, apis, mongo crap. And on kubernetes. Hybrid cloud.
- Coding has been solved, but for who? Only for those cowboys who create POCs and get big bonuses. The 'product' they make is largely irrelevant. Sure, they can make it faster and claim to be masters of AI. Again, bigly bonuses, because now the incentives are driven by mandates from C-suite/VPs who are desperate to claim successfully using AI. There is very very little that can be realistically solved with AI. People have tried and the first thing they do is replace perfectly working internal search tools with AI or AI chatbots. Think about something like your people portal, for a large company, this would be thousands of document. The AI driven search portals are a million times worse than the earlier full-text-search engines that are usually pretty accurate. After that, they will be lots of dashboards generated for executives. Its as if execs have any clue about the business, they know nothing about the business and now they get thousands of dashboards tracking millions of meaningless metrics.
AI is an enshittification accelerator. And the enshittifiers (individually as people and collectively as companies run by scumbags) are richly rewarded for this 'success'.
- You can build software fast, but the more time you take the more you can be confident about it being correct.
This was true already before AI code generation, but AI code generation means the definition of “fast” has shifted like crazy. An experienced engineer can now build in an hour what would have taken them a week.
But it (right now) does nothing for the confidence about being correct - you still have to put in the extra time to ensure the software is correct to your desired degree of confidence.
Unfortunately for people who like their software to be correct (stable, performant, bug free, etc), it seems like way too many software developers right now are happy to take the gains of the former but ignore the tradeoffs of the latter.
(at the same time software quality for mainstream consumer goods like the kind of thing OP complains about in their post has been down the drain for a long time now, and it seems likely many of the examples they give are pre-AI)
by gyomu - > You can build software fast, but the more time you take the more you can be confident about it being correct.
> ...
> But it (right now) does nothing for the confidence about being correct - you still have to put in the extra time to ensure the software is correct to your desired degree of confidence.
You're partially correct - what gives confidence is duration in the field. No matter how long you take to build something, seeing it work in the field for 3 months gives me more confidence.
You have to release, early and often.
by lelanthran - > An experienced engineer can now build in an hour what would have taken them a week.
From what I've seen, I don't think so if we're talking about like-for-like quality. Maybe as an absolute best case scenario, but more typically it's more like you can build in an hour with AI whereas without AI it might take you 2 or 3.
Even thats highly task dependant, and doesn't scale as you'd expect (eg 1 hour == 2 hours, but 1 month =/= 2 months), and at times even using AI can slow things down, at its worst case more severely than at it'd speed you up at it's best.
Now if you're willing to throw like-for-like out the window, that 1h==1w could be achieved easily, maybe even more. But then again, I feel like I could do a lot more in an hour if I didn't care about quality either, not as fast as AI but much faster than I am currently.
by bodge5000 - I agree that software becoming worse (in some sense) but I don't blame AI.
My experiences as a user haven't really changed. Streamers fail to cast to TVs. Browsers are devices which reliably and efficiently propagate red console text and 500s from companies to you. I still see bluescreens on public touchscreens.
Uncle Bob nailed one reason why the industry isn't getting better: the growth of programmers is exponential, such that half of all programmers have less than n years experience (5?).
I offer two additional reasons:
Firstly, you hone your skills doing individual algorithms on a single thread, where it's OK to get it wrong and change it as many times as you like.
When you get a job, you don't even realise you're in a distributed system and the getter/setter model you practiced on is woefully inadequate for interacting with partner systems, cqrs, event-sourcing, auditability, idempotency or whatever else is required.
In short, 10 years of practicing writing for-loops and data-structures will not translate into building a system that customers can access via their phone and multiple tabs of a browser, at the same time as a database schema is being updated.
Secondly, while I don't think there is any realistic alternative to agile development, it seems that nontechnical POs have captured the software lifecycle. 'Focus on happy path only, for the MVP' is how you build buggy software. Good developers can learn that this will guarantee the need for a rewrite in the future, but POs never will.
It seems like the languages have been increasingly targeting the beginner segment (C++ -> Java -> JS -> Python), while the tasks have been getting more complicated (b2b distributed systems, 24/7 uptime, millions of users, resistance to hackers, machine learning, etc.)
by mrkeen - I generally agree that software has been getting worse, and AI isn't the cause, necessarily, but certainly is accelerating the decay.
Maybe a corollary to the growth of programmers is that pride/artisanship in the work decreases. Bugs happen more when the engineers dgaf, or aren't as dedicated to the craft. Software was pretty solid when I was a teenager (I'm thinking Windows, MSN Messenger, Flash, CDs, general web usage), complaints about tech/bugs weren't as common (or when they did happen, they were major, like BSOD). But I could just be romanticizing the past... idk.
In any case, say we were master woodworkers and we took pride in handcrafting great beds, but now the machines can make beds 150% faster at a 70% defect rate. There's 3 new problems: 1 is obviously that 30% of beds are shit, 2 is that woodworking as an industry is on the decline (expertise vacuum), and 3 is that the master woodworkers are disillusioned, their motivation and utility is decreased.
I believe that in time, the beds will get better, sure (the machines will improve). But in the meantime, huge numbers of people get shit sleep.
by solaire_oa - > it seems that nontechnical POs have captured the software lifecycle
Yes, this dynamic has indeed been screwed up in many teams!
In my perspective, you can’t be a good product manager for a technical product without being somewhat technical yourself. You simply won’t understand your product well enough.
The only dynamic where that works is if the product manager acts more as a supporter and challenger to a team lead by an EM or technical lead, but then product manager is probably not the right title.
by mgrund - Uncle Bob has fully embraced AI and is risking becoming part of the problem these days.by timedude
- They made programming so simple any idiot could do it. So they do.by bregma
- > Secondly, while I don't think there is any realistic alternative to agile development, it seems that nontechnical POs have captured the software lifecycle. 'Focus on happy path only, for the MVP' is how you build buggy software. Good developers can learn that this will guarantee the need for a rewrite in the future, but POs never will.
100% agreed on ProductManager-ism/MVPitis is a cause of so much of this.
One can "do agile" a bit less literally & stupidly.
For a lot of software infra or even user facing apps, you really can plan out more than a sprint or two. This might be the MVP, but there is prior art in the space / competitors / devs with experience on the team. You probably should think about what the app should be capable of 3/6/12 months out.
When you follow a GPS for directions, you generally take a look at the overview first, make sure it's not driving into a lake or taking you to a similar address in another state. My car even shows me the next 3 steps on the path as I go, I like that.
Agile should not mean blindly "take 1 step and only then contemplate what step 2 to take once you complete that 1 step". And yet that is how MANY shops implement it in practice.
by steveBK123 - > 'Focus on happy path only, for the MVP' is how you build buggy software. Good developers can learn that this will guarantee the need for a rewrite in the future, but POs never will.
And then when the MVP is done, it magically becomes the shippable product. Then just when the team is getting to grips with how to improve the product, management does a reshuffle and moves teams around. "EXCITING NEWS GUYS, congratulation to Jimmy Whatevs for being promoted to SENIOR Director, he will now head-up the cross-functional-operations team which will be folded under the product-support division."
by willchis - > I opened Slack on macOS, the icon kept bouncing in the dock for a few seconds. I got impatient, switched to Ghostty, and started typing. Just then, the Slack window appeared, stole focus from Ghostty and the git pull command was sent to the group chat.
I still don't understand how a full focus stealability debounce is not the norm. If I am in the middle of writing, or interacting with one UI bit in any way, no other app should be able to steal focus, full stop. Add an annoying popup if you want, make angry computer noises, flash icons, I don't care. 99.9, if not 100% of the time, it's completely unrelated to what I'm doing and can absolutely wait. While some OSs have something along these lines, they also give the tools to bypass it (I'm looking at you, Cisco AnyConnect! Being connected after clicking on connect is not an emergency!)
Imagine you're working in a terminal and an app decides to steal STDIN. Why do we accept that for a GUI?
by fer