"I'm Embarrassed on Behalf of the Tech Industry"(blog.jim-nielsen.com) |
"I'm Embarrassed on Behalf of the Tech Industry"(blog.jim-nielsen.com) |
We built tools of mass communication, art, creativity, passion, and sharing, and then allowed the pursuit of advertising revenue to pervert them all into toxic cesspools of vitriol and incomprehensible UI/UX rife with dark patterns for maximum extraction of resources and rent.
You know what I still love about tech? The IRC server daemon chugging along without complaint and enabling pseudonymous communication without signups. The Jellyfin server hosting media to friends and family on Docker. The Caddy container handling certificates and reverse proxies for everything.
I love the things I build that just work, frozen how I like them, patched only when vulnerabilities become an issue or new features are something I find value in. The way tech was meant to be, I believe.
Most of my IRC users hate the persistent records of modern chat systems and their persistent “always-online” functional designs. They want to be able to log off on their terms and not have a session follow them around, which IRC respects. For those who want rich rendering for media, they can choose a client that does that rather than have it forced upon them by default in Discord or Slack.
Same deal with sharing images: why shoehorn it into IRC when we have copyparty right there? It’s faster, easier, and entirely ephemeral - just like IRC is configured on the server side.
The point isn’t a “do everything” software or platform so much as a “do what we need so we can go live life doing what we want” setup.
Fundamentally, tech companies are user-hostile because their growth, revenue, stock price, (and for some of them now, political power) depend on a shitty experience. Every tech company wants to automate other companies's products, but will use every tool available (including legal ones) to stop you, the user, from automating and controlling their product.
The examples are endless: Roblox creates a kids casino, but if you as the parent want a safer, saner experience for your kid you have to navigate endless settings and there's still tons of shit that falls through the cracks, so you have to manually oversee what they do and manually ban bad games. However, if you try to use automate this process for yourself, there's no API, or you'll get banned for screen scraping or atypical behaviour that triggers some automated system. Facebook aggregates other websites, becomes a centre of social life, then they'll shove endless slop at you, but if you try to use your own app or agent to create your own experience so you're not exposed to that, you get banned.
A while back I vibe-coded a little parental control for my kid's YouTube because I wanted to give him autonomy to choose his own stuff, but also make sure he's not watching crap. I took his YouTube history then had Gemini automatically watch, rank, categorize and flag things for me (https://github.com/drashkov/slopstopper), and the analysis was pretty great. But taking actual action (banning channels, automated runs) is a major pain, because YouTube fundamentally does not want me to be in control of my kids's experience, they guard their turf jealously.
IMHO, the tech arms race is doomed, things will keep getting worse until enough people are pissed off to demand political changes.
Today I have a lot of options and things work well enough. I have Reddit where I post comments on my local things. I have LinkedIn, WhatsApp.
I can get almost anything I want and understand how to do anything.
People are always surprised when they hear me say I hate tech. I don’t want your app, I don’t want to scan your QR code, yes I really do just want to speak to a person and no I don’t want to automate or make “smart” anything in my home.
It’s not really that I hate tech. It’s that I hate what most tech products are.
The promised land never came and I highly doubt the AI era is going to make it magically better.
I will however keep doing my best to improve the systems I work on and pushing product and engineering do better.
IMO, something like home assistant is a good example of what tech can be. No nagware, open ecosystem, no subscription, self-hosted (with optional hosting/support if you want it), etc.
That is user-centric design, but the are not exactly be rewarded commercially for it. Until we can better align commercial incentives and technical excellence, you're going to keep having the same shit experience with a lot of tech products.
Work on changing the incentives, it is the only thing that matters in the long run and is, to steal a phrase, "scalable".
In other words, there can't be any commercial incentives that "align" with providing a perfect user experience.
The weird thing in my opinion: why is open source software such a pain to use? They don't have commercial interests?
Usability and simplicity have been cornerstones of my work, since the early 1980s.
Simple is hard. Like, really hard. People think that it's just about removing UI elements. In my experience, it's about adding the right ones.
One common piece of advise for having a happy life is to eliminate things that don't delight you (or at least, eliminate things that constantly annoy you). Very little of modern computer/internet technology falls into the "delight" category.
With retirement nearing the horizon, I plan to minimize the amount of technology in my life after that to the greatest extent that I can. I sometimes wonder if people in other professions grow to hate the products they produce in the same way.
most products aren't made for every one of us; i think i've only ever truly made things for myself when i was not being paid
While, to me this feels like edging towards IoT, it's not something the layman home automation enthusiast understands (their eyes gloss over when I talk about it).
> It’s not really that I hate tech. It’s that I hate what most tech products are.
I'm the same way. I think there a couple of different reasons for it:
1. Many "tech products" aren't there to serve you, the user. They're there to serve someone else (usually a group of investors). Customer support chatbots are a great example. You're "subjected" to this tech, and it exists deliberately to make your life worse.
2. The internet, specifically, is a technology that removed a lot of the constraints that held some lazy and malign aspects of human psychology in check. Constraints (aka friction) are not bad things. For instance:
The friction of shipping updates on floppy disks (or not at all), meant people actually needed to QA the heck out of their shit. Now you can cut that QA because you can "just push a patch later" (or some other buggy feature, or intentionally cripple the software, etc.).
The friction of two-way communication being expensive gave you privacy, now your computer, car, and TV can spy on you to provide monetization opportunities to the manufacturer.
And, in general, it's made it practically impossible for everyone, even really savvy consumers, to evaluate the products they're buying. Do I have any way to figure out if this car will spy on me? Do I know if it will have this feature I like next year, after the annual unnecessary UI redesign? No, I do not. It's all out of my control.
Of course it helps reduce costs and increase profit for corporations, but it solves nothing for end users. Every new "tech thing" also feels like a stupid charade for a manufactured "need".
Everyone I know thinks I'm weird when I get mad that a restaurant doesn't have a physical menu. I don't want to scan a QR code and scroll a menu on my phone, it's a worse experience than reading a paper menu in every single way
Maybe next time I’ll just walk out and let the restaurant know why I’m walking out.
Yeah, handing control of the entire tech industry over to a couple of proprietary, black box products built & owned by like four hyper-capitalist sociopaths is definitely not going to go well.
Same. But it's not really that I hate tech: I hate that inferior, mediocre, device that the smartphone is. It's a spying device. It's got a minuscule pathetic screen (I rock an ultra-wide monitor at home).
I drive more than most: I was finding my way across Europe before smartphones and I can still find my way without constantly needing a smartphone. My car's navi system (from 2013) does the job totally fine: just a map and GPS receiver and that's it.
I very often don't take my phone with me: when I see people glued on their phone, endlessly doom-scrolling and taking selfies I just pitty them.
But I'm not luddite: I've got a "homelab" which I uses daily (it serves family pictures, movies, files/backups, it hosts VMs, I use it to isolate AI agents etc.).
A smartphone is not "tech": it's a mediocre piece of crap that spies on people. Worse: many have a smartphone but aren't comfortable speaking on the phone.
It'd be a tragedy if it wasn't pathetically funny.
And at home I keep hammering to my kid that smartphone are poison: opium for the unsuspecting masses.
And as she sees me doing just fine without my smartphone, the point is getting across.
Screw smartphones: just screw those mediocre turds.
sorry. only you guys can understand.
if chatgpt is so good at breaking into hugging face, i wonder if astra can just break into this place and sign these documents for me :) (fbi: i'm joking!!!!)
it is hard to type in your pin code because it misses touch events, I always get my pin wrong
every time I use it I contemplate how did we end up here, how can we have software running on supercomputers in our hands missing touch events
the sad truth is vibe coded programs are better than most programs I use
Once I tried writing an app in early windows style: inside the mouse down handler redraw the button as pressed, etc. Not setting the button state to pressed and triggering a redraw, but actually changing the pixels inside the handler. It's a huge layering violation but it's actually refreshing to cut through all the BS and make the computer just do the right thing, and it actually worked better most of the time than a modern framework app.
Dislike of ai is because of societal reasons. we should embrace it in our products.
It's actually not really difficult (in theory) to engineer good UX, you simply have to look at the decision tree representing the application's state space and re-balance it according to actual usage intents.
Meaning, you make the most frequent goals need fewest clicks.
Clearly, practically nobody does that. Why?
Result? When you have an intent in mind, it's hard to find the right button! In office 2003, you could click on the "insert" menu and every item there was something that would go into your document. If you're thinking "I want to add a picture" you can click on "insert" and scan through for picture-related items. (Blender does this too). In the 2007 ribbon model it would - well that one would probably be on the default visible ribbon because it's a frequent action - but what if you want to insert a table of contents? Who knows where that button is.
Then I told her to try a different browser instead of Safari and it worked immediately. So the function isn’t temporary disabled, it’s just their generic something went wrong error message. Tell me that’s not insanely user hostile.
There may have been pockets of quality, but in general I'd say that the tech industry has produced pretty low quality user experiences if viewed holistically. I think the main causes are speed of innovation (on the positive) and unrelenting capitalistic need for profit (on the negative), maybe a lot of hubris and incompetency thrown in too.
I have suspicions about what could be the cause - shifts in privileges, user-amnesia, or maybe the automation had no events in the last 2 weeks and I just need to provide some reassurance that everything is working as expected. Odds are I'll have to reconfigure his dashboard or "shudder" add an email to the process. Whatever, he'll probably message me in another 3 months with a new observation.
Somewhat unrelated to this most recent feedback, I think tech has built great frameworks and underlying technology, but few people are mindful of the "final mile" that puts things in front of people's faces. Tailor-made AI solutions feel like the antithesis of this challenge to me; what has worked is withered technology like the interfaces that people trust.
That's the nuance.
We can't just one click do something anymore in a simple easy way, because bad humans ruined it for the rest of us. Every time something comes along as a disruptor to do things without friction, bad actors find a way to exploit it. Soon, it becomes this multi step flow to accomplish your task. So then of course, blog posts like this pop up and hit the front page about how it all sucks. Nah, it doesn't suck, what sucks is bad humans ruining things for the rest of us, and it's prevalent everywhere in society, not just tech.
Fix the root cause of people behaving badly, and we fix these issues.
I feel the klunkiness of bad design as much as the next grumpy gen-Xer, but you don't really notice all the rough edges that disappeared in the last 30 years.
Now, why the hell can I not conveniently disable autoplay video in Firefox or Chrome here a quarter of the way into the 21st Century!? (Sound of angry muttering fades away...)
Because Google doesn't want you to since they make money from autoplay, and they control both Chrome and Firefox (the former directly, the latter indirectly).
Maybe AI and voice interaction a la Star Trek's computer is the end for most computer interactions in the future.
On the business side it has always been a series of perverse incentives that go counter to needs of the customer.
I get that someone has to justify their wage, but design people are absolutely guilty of turning perfectly functional software into unusable, convoluted, Rube-Goldbergesque abominations.
You ad that to all the dark patterns we keep allowing airlines and social media companies and you have an internet that is barely functional to the normal human being.
we all can only do so much. do the best you can and be proud of that. there's no need to take on the embarrassment or shame of a whole industry.
> do the best you can and be proud of that
https://www.nytimes.com/2026/09/19/business/draftkings-ai.ht...i didn't make, consult, or otherwise have any input on that site. i do not use the site. i do not make money from the site. so i am not going to be embarrassed about it.
i think what they are doing is awful. but again, embarrassment implies some form of guilt, shame, mistake, or self-consciousness.
i dont like a lot of stuff going on in tech. but it is not healthy to feel personally embarrassed about stuff i had literally no input and no control over, and receive no benefit from.
1. The US economic regulation regime allows one or a few companies to hold an amount/quality of power, beyond which the FTC is supposed to get involved and break up the companies so that power isn't concentrated. This exists because pure capitalism quickly results in one winner, which makes for zero incentive for it to compete/improve/lower prices/increase quality. The fear of anti-monopolistic action by the FTC is low enough and actual action is rare enough that lots of power is unchecked.
2. Humans like bright lights/shiny objects (gambling), feeling tribal/us-vs-them (rage bait wins, negativity drives engagement), are easily exhausted by or ignore options (overwhelming acceptance of defaults), etc.
The above, either in combination or separately, combine to drive low quality computer experiences. Marketing/advertising alone drives an incredible multiple profit compared to actual quality of product/service.
Imagine if every few months when go to your faucet, someone decides to switch which side cold and hot are. Or perhaps the acceleration and brake pedals in a car get swapped because "our testing showed x".
Software is a tool for people and they build up muscle and spatial memory, so changing the interface can be a user hostile act.
That's not to say there shouldn't be improvements, but we should be scrutinizing these changes instead of frivolously treating the interface as this year's latest fashion.
As part of the rental process I had to give my phone number. At some point the employee says something like "You should get a text message with a link in a couple seconds, click the link and fill out the form and you'll be good to go."
To which I responded 'I don't have a smartphone, I can't click a link. How else can I fill out the form?'
Apparently there was no other way. He thought about it for a minute, then just took a picture of my license and handed me the keys. It's been 3 years and I never heard anything about it, so I figure I got lucky. I just know that if I ever find myself in that situation again karma will catch up with me and it will be a big issue.
What happened to the days of signing some papers on a clipboard?
Oh not to mention UPS and inability to enter entry code to their system as they did not pass my phone number or email to them. I did have tracking number, but that clearly is not enough when you can no clearly contact customer. So only option to give the code to them that was to call them...
Like utterly broken flows. Often it feels that no one considers the extremely common corner cases.
Gave up. Just left the old phone plugged in and added the iPhone as a companion device.
40 years of software development, this is the worst piece of dogshit software I've ever encountered.
I'm so curious about this; it is nearly universal that software engineers threaten this. I constantly tell my colleagues that I am quitting to start woodworking in a cabin in British Columbia.
My theory is that we are comprised of people who love building and making things, yet at the end of the day we don't have anything tangible to show. Like, my parents (nearing 80 years old) barely understand what I do or how software engineering works, though they are computer-literate. Going back 2 generations and it is incomprehensible magic. But, if I built a cabin or a cabinet or a wooden spoon, I could have a meaningful conversation about it with someone from the last Ice Age (language barriers aside). Maybe it is just staring at a screen 8 hours+ per day leaves the ancient part of the brain wanting.
Software engineers get lost and subsumed into the virtual world, so I don't think it's surprising we look for and pine for ways to exit.
One of these days I'll do it! I'll never open another JIRA ticket again!
The "leave tech and find some pastoral life" is a very tempting dream.
I know a lot of technologists who do something physical with their hobby time. Woodworking is top of the list... I know a blacksmith. There are quite a few who do painting (and the entire subset of spending that excess disposable income on plastic to paint).
Its to have something that has permanence when the lights are turned off.
Wait. What? There are dozens of threads posted here daily about the new AI model, laying off huge swaths of junior engineering roles, and vibe coding as engineering, dev-ops, and quality control.
Amtrak is a perfect example too. An American monopoly, an established near-ancient technology, and tech bolted on that make something simple worse and complicated. Trains have been figured out for 150 years, welcome to the age of AI.
Exactly how much of what has been billed as "innovation" couldn't simply have been done on a mainframe with 3270 terminals? I'd say the entirely of the "web 2.0" and "mobile app" trends could have fit into that.
The actual hard tech problems that have been solved consist of like virtual machines, miniaturized computers, search engines, and LLMs. Which are great, for sure. But the majority of the user-facing software on top has been noise, outright trash even.
While command prompts and programming languages have always been generally poor (ie obtusely machine focused), I'd say they were at least honest. As if you put in the effort to learn something, you would actually get something out of it - not just the ground shifting under your feet. Otherwise you could just not engage, not put in the effort, and that was fine, too
Now you're basically forced to engage, and when you do end up engaging it's always the lowest common denominator surveillance industry entitled-to-your-data tripe. And while you can engage a little harder to run up the hill of self-actualization, the industry is even working on plugging that "hole" with captchas, remote attestation, and their ilk.
I know you weren’t being quite so literal but it is worth mentioning Google until 2019 or so did, even as SEO and ad considerations nibbled at it for years. Eventually it broke though so here we are
Bad for tech, but good for equity.
but i think taking on personal embarrassment for things you had zero involvement and get zero benefit from is not good.
What they do wrong is, how they partition the "state space" in the first place. They employ utterly absurd abstractions that fly in the face of rational usage. Then that "ribbon" nonsense observes the user stumbling though that mess and changes the arrangement on the fly, maximizing the confusion.
In other words, they have never conceptualized what it is their users actually want to do and why. Now they're "stuck" with "what users are habituated to" and each "optimization" makes things even more worse in other places.
To get a "fluid" interface right, you need to know that it makes sense only when there are distinct use cases. You then have to detect (or perhaps better: let the user decide) what use case you're in and shape the interface according to that. Making the user chase buttons certainly isn't the right way.
When you have a good tool, it has a clear purpose, a well-defined domain of applicability it is optimized for. Software tends to be "multi-tool"-like and that poses problems obviously.
When you let the user choose what his purpose is and adapt the interface accordingly, that's not "different every time you use it", it acts as expected for that present use case.
It's maybe like a workbench, where you have multiple tools available in their appropriate and known positions. Each tool has its place and native interface, optimized for the narrow job it does.
Office is like a workbench that gets rearranged randomly and each tool is weird with unclear purpose and scope.
Disagree, this is an unreasonable framing. We just need to exchange goods/services for money, not optimize every transaction on a curve by some measure of "extract everything"
There are many incentives apart from $ -- general fame, specific, niche credibility, love of the thing, internal projects (eg a phd/masters/capstone project), etc. Looking at everything from a $-incentive only will lead you to actions and incentives that don't make any sense. Look at the linux kernel or something like sqlite -- more deployed than almost any piece of "commercial" closed-source software, huge community, signifigant resources, but tiny, tiny slice of revenue by any metric of popularity.
In other words, you want the market to restrain itself, which of course never works.
You then observe people to have other motivations beyond greed. Yes! I emphatically agree. Only, those aren't subject to market logic other than being potential subjects of exploitation.
My guess is its a combination of 1) lack of resources and 2) being developed for the developers themselves (who are weird users).
Most of the best open source software (e.g. Linux) is that way because commercial interests have incentive to pour some of their vast resources into it (and if copyright was ever abolished, expect it to start sucking, because the main reason we get to seee the commercially-funded improvements is the genius of the GPL).
Even the GPL isn't needed anymore when you can reverse engineer nearly anything.
Clearly, open source software with a good interface becomes more popular. I suspect, being popular isn't really a good experience for the developer, who then gets inundated with unreasonable requests etc.
When they put their individual egos above the actual outcome of their efforts, well, that's a programmed disaster of course.