Neutral Quality is too much to ask for, shitty software is the norm.
As a testing community, we have failed to make software better. And let me be clear, developers have also failed. We are in the same boat here. I firmly believe that most people working in software development teams are trying their best to create a better software product, write readable and maintainable code, test it in all sorts of manners and ways. However, it doesn't matter. We are not the ones making the decisions that really matter for a neutral quality experience.
In case you're like, "wtf is neutral quality", it's a term I coined a few years ago. It started as a meme, but these days I think there's merit in my idea.
Basically, with "neutral quality" I'm referring to a concept of not wanting to feel strong emotions either way while using software. Most software is just a utility, there's no need to wow me at all. I want to reach my goal, without the software making it more difficult than it needs to be.
These days, most software is purposefully in my way, by design. And these designs are implemented by us, the developers and testers, who say they are trying to make software better. I have also been involved in making software worse, while telling myself I was trying to make software better (because I was testing it as well as I could).
Two examples on how I have been involved in making software worse
It started on my first project as a freshly certified software tester, back in 2012. The "cookie law" had just come in effect in the EU, so naturally, leadership didn't want to get rid of the elaborate user tracking we had going on. No, we would have to design a cookie banner that gently steered users into choosing the option that would allow us to continue tracking them. The UX designers diligently started working on a design that confused users, but they told themselves that this was the clearest cookie banner they could make with the best user experience. The developers wrote code to create a pop-up on the page, and I wrote an automated UI test with awfully hacky code to be able to access the pop-up in an iframe.
I don't know anyone who loves figuring out how to quickly reject the omnipresent cookie pop-ups that plague almost every website these days. Most of them are designed to confuse you, on purpose. To make it hard to reject the cookies. Neutral quality? Hell no.
I'm quite sure that no one in my team in 2012 even realized that we could have advocated to avoid having to set cookies that would require the users' permission, although I think we would have been unsuccessful. We only tried to make the best of the hand we were dealt, while telling ourselves that we were striving for a quality product. The copium was real.
A couple of years later, I found myself in a situation where my team tried to advocate for not having to implement something awful, and we got overruled by management. This somehow felt worse compared to the 2012 situation because this made painfully clear the team is not the owner of the software, despite the agile coaches telling us to grab autonomy by the balls, or some shit. (As a side note, agile coaches and scrum masters are usually the ones that are the highest on copium, as they always spin bullshit that happens at work into something that the team should be able to solve or feel glad about solving. Everything is a challenge or an opportunity for these people.)
Management wanted us to integrate the Facebook SDK in our mobile app, and all the developers were reaching for their bucket to puke in. Mind you, we already had the Google Analytics SDK integrated, which is puke worthy on its own. Somehow, the developers wanted to make a stand against the Facebook SDK. Their reasoning had something to do with it being crappy code, so maybe they were not even angry about it for the same reason as I was. I was angry because I didn't want to piss away our users privacy anymore than we were already doing, in case that wasn't clear. In the end, there was nothing we could do. Management paid us, they mandated we integrate the SDK, end of story. Autonomy for the team, my ass. The autonomy stopped at "you are allowed to juggle around of some of the user stories on a JIRA board that you have to build anyway, and because we are generous, feel free to give it 8 or 13 points".
Software I have to use for work also gets worse
These are just two examples I have when I was an active collaborator on making software shittier. Over the years, the software that I had to use to do my job has also gotten worse.
Who, in their right mind, thinks the Azure DevOps web apps are a good user experience? I had to use it starting in 2022, and I could never find anything I was looking for. I mean, look at this crap!
Neutral Quality? More like, No Quality. Microsoft doesn't need to make this a quality experience for devs and testers because every company on earth is moving to the cloud and there are only a few options. The options all suck! Good luck getting anything done in these shitty tools if you have not spent a ton of time learning to use them. Silly me for expecting software to help me understand what it can do, and enabling me to get done what I want quickly. The only emotion I felt using these tools was rage.
Right now, I'm in an even bigger world of pain because I am forced to work in the cloud, on a virtual machine with Windows 11. My local machine set-up is faster, is non-Windows, doesn't drop connection if I don't jiggle the mouse every minute, and my 5k display actually displays all pixels instead of the pixelated representation I'm seeing in this Virtual Desktop environment. I could do the same things on my local machine, but now my employer has to pay Microsoft a pretty penny because I have a cloud connection open at all times. This is madness. Why did they choose this?
It's hard for me to imagine anyone whose user experience has improved by having to use the cloud to do their work. The only purpose I'm seeing for this move to the cloud is to make Microsoft et al. more money.
Oh yeah, I was also delighted to see "AI" in each and every web app I have to use for work. Atlassian has gone all in on this trend, offering to summarize Confluence pages for me, and help me write. I can write just fine on my own, thank you! All this AI crap is IN MY WAY. It's distracting, it enrages me, it makes my work experience worse.
Maybe we should stop sniffing the copium
Meanwhile, on every tech conference, where normal people like you and me visit and present talks, we are high on the copium. We tell others how we made our teams function better, what we did to make this code base amazing, how we improved quality on that product. We sell courses on how to become a better tester, how to use this new development framework, how to be a good team player.
But if I look around me, software as a whole is not improving at all. Most software doesn't reach the bar for Neutral Quality, enshittification in the name of profit is the norm. Software is purposefully made confusing, so you have to spend more time using it and somewhere, some engagement metric goes up and a manager gets a bonus. And there is nothing we, the devs and testers, can do about it. Some of us are building this! Testing this! That is absolutely crazy to me!
Prediction: I will get people in the comments telling me that they made a positive difference. I believe you! I believe that you believe that you did! But you have to zoom out. Stop sniffing the copium, and look at the trends in tech on a larger scale. The trend is firmly pointing towards things getting worse and worse because companies get away with it. People are forced to use Microsoft products at work. Everyone has a smartphone that they have to use, or else you cannot keep up with the demands of modern society. Analog options are less and less available, humans are being automated away everywhere you look. You have to use and interact with apps and tech, even if you don't want to. The only option you have is to minimize your use, but you can no longer choose to completely avoid tech. People moaning about their precious freedoms should especially take notice.
For the longest time I also was a believer in that we, tech people, shared a common goal of wanting to make the best quality product we could. I was sniffing the copium, and preaching the gospel. But over the past few years, I started looking back at what I have had to build and test, which I summarized with two examples above (I have more where that came from). Even before the LLM and cloud bullshit got mainstream, I have been forced to build things that are decidedly not neutral quality.
That's why I say we have failed, as testers and devs, to make software better. Even Neutral Quality is beyond our reach because it's simply not up to us! We are not the ones deciding what gets made. You may be the one with the compiler, but you are not the one with the money.
I guess you can keep sniffing the copium, or maybe you are able to find genuine happiness at work in making things less shitty on a small scale. However, when you take some time to reflect, and you zoom out, you will not like what you see. To me, seeing reality on a larger scale is preferable over pretending everything is fine. The copium of making things better at a small scale is no longer working for me. I think we, testers and devs, should be way more critical about the impact we have on software as a whole. I think we should be honest towards ourselves, that our impact is not as great as we think.
What can we do to rectify this? To change this? The word "revolution" pops up in my mind because in our current tech setup, big tech has its claws in everything. I put my money on a federated version of the internet, where not one company can have a monopoly over something important. A girl can dream.
Comments ()