The degradation of development
Two things broke on me within a few hours of each other this week, and neither of them should have.
First, I went to update my LinkedIn intro. Wrote the copy, hit save, watched a spinner turn for a beat too long, and got hit with a “Discard changes?” dialog – on my own profile, over an edit I’d just asked it to save. No dropped internet connection, not a typo on my part. A save flow that doesn’t reliably know whether it saved. It’s still not updated, I haven’t bothered trying again.
Second – more reluctantly than I’d like to admit, my daughter made a genuinely excellent case – I tried to get her set up on Messenger Kids. I filled in the details, worked through the steps, and the sign-up flow wouldn’t complete. Just a dead end. No clear error, no path forward, just friction until I gave up. As a developer this really frustrates me — I don’t like leaving things unfinished, especially when there’s an error involved.
Neither of these is a big deal on its own. ‘Save’ bugs and awkward onboarding flows have existed as long as software has. What stopped me was encountering two of them in the same afternoon, from two large, well-resourced companies, on two completely unrelated products. That’s not proof of anything by itself – two bad experiences in one sitting is exactly the kind of thing you notice more than you should. I had a hunch and I went looking for whether the pattern holds up beyond my own experience. Unsurpisingly it does - It’s not novel or a revolutionary take, but it’s concerning.
Not a vibe, a trend line
After only a short time in research a couple of surveys stuck out. Tricentis surveyed 2,501 (yes, they added one extra person) senior IT decision-makers and QA/DevOps professionals in April 2026 and found 60% of organisations are deploying untested code to production, with leadership pressure for speed and the sheer volume of AI-generated code cited as the two leading causes. A surpirising 81% of CEOs said they’re confident in their AI-driven systems; whereas only 56% of the QA and DevOps people actually responsible for shipping that software agreed. Hmmm.
SmartBear’s own quality survey, taken in January 2026 across 273 testing and quality leaders, found 93% have adopted AI coding tools, and 70% are already concerned application quality is suffering because of it. 60% said they’d personally experienced quality issues from development simply outpacing testing. Two-thirds believe decision-makers underestimate the risk.
The most interesting evidence isn’t about bugs at all – it’s about what’s quietly stopped happening. GitClear analysed 623 million code changes between 2023 and 2026 and found duplicated code up 81%, while genuine refactoring – moving and consolidating code rather than pasting a new version next to the old one – dropped from 21% of changes in 2022 to under 4% by 2026. Developers are now around five times more likely to copy-paste than to go back and tidy what’s there.
What happened to code hygiene? More code is harder to maintain, and more difficult and time-consuming to debug.
Apiiro’s research into AI-assisted development found engineers shipping three to four times more code, alongside a tenfold increase in security findings – including a 322% rise in privilege escalation paths. One of their product managers summed it up better than I could: “AI is fixing the typos but creating the timebombs.” Their write-up includes a case that reads uncomfortably close to my LinkedIn spinner: an authorisation change pushed across several services, with one downstream service left out of sync, silently breaking authentication for anyone caught in the gap. Different product, same root cause – nobody traced the full seam before it shipped. The worst bit here is that it was silent – a poor user experience through frustration and no-one notified to get it fixed.
A Well-Cut Suit
I don’t wear suits often. There’s one for weddings and (very) special occasions, but it’s good quality, tailored to fit and I can tell when I wear it that someone gave a damn when they altered it. It’s not expensive but there are certainly cheaper options – those are the ones where the seams aren’t quite right, the extra lenght of cotton hasn’t been trimmed and the fabric feels a bit off. I feel like development is heading that direction at a worrying pace.
A save button that doesn’t know if it saved, an onboarding flow with a dead end, an auth header that quietly stops matching downstream – these are all seam bugs. They live in the boundaries between one part of a system and another, the places you only catch by actually tracing what happens end to end, under real conditions, with someone deliberately trying to break it. That’s slow, unglamorous work, and it’s exactly the work that gets skipped when the incentive is churning out features. The tooling makes it enticingly quick to generate code for a feature before anyone’s finished checking the last one.
None of this is an argument against AI-assisted development. I use it daily, and used well it’s a genuine gain. The point I’m making is against unsupervised velocity – against mistaking “the AI wrote it quickly” for “someone understood it.” Those are different claims, and only one of them produces software you can trust. Slow down. Understand how code impacts people. After all, that’s what software is for.
This is a premise I aspire to with Format Digital. Code should be something to understand, not just generate – because the parts of the job that are easy to skip are usually the parts that decide whether the thing works when it matters. AI makes it faster to write a feature. It doesn’t make it faster to know it’s right. Pretending otherwise is how you end up with a “discard-changes” dialog when saving your own profile.
The pace of development has never been the problem. What’s degrading is the willingness to slow down at the seams – and that’s a choice, not an inevitability.
Sources: