Regular people hate technology, both for how magical and how badly broken it is, but they've long learned they're powerless to change it - nobody listens to their complaints, and the whole market is supply-driven, i.e. you get to choose from what vendors graciously put on the market, not from what the space of possible devices.
They hate having to go through people that get them upset, in order to use their kit.
Not just tech (although it’s more prevalent). People who are “handy” can also be that way (but, for some reason, techies tend to be more abrasive).
I’ve learned the utility of being patient, and not showing the exasperation that is often boiling inside of me.
In general for the 40+ years I’ve been a programmer I have detested the practice of not surfacing diagnostic information to users when technology makes it possible to do so in a clear and unambiguous way.
"What did the error message say"
"I don't know."
'Segmentation fault. Core dumped.'
'Non-fatal error detected. Contact support.'
'An error occurred.'
'An illegal operation was performed.'
'Error 92: Insufficient marmalade.'
'Saving this image as a JPG will not preserve the transparency used in the image. Save anyway?'
'Saving as .docx is not recommended because blah-blah-blah never gonna give you up nor let you down.'
I can't blame any normal user from either not understanding nor giving a shit about any of these. If we'd given users actionable information from day 1, we'd be in a very different world. Even just 'Error 852: Couldn't reach the network. Check your connection to the internet.' does help those who haven't turned of their brains entirely yet.
"I don't understand, it says 'System Error Type 11', and no matter how many times I type 11, nothing happens!"
That one's a good example of why these things are hard. The user could have been running 5 different programs, any one of which caused this error, and MacOS can't point the finger at anyone. Not to mention that the problem could be MacOS itself, or the user being a dunce who misconfigured something. I'm not sure if that error can occur without 3rd party software being involved, but if it can, then that error message might need to be even more vague, helping the user even less. Not to mention it could just be faulty hardware.
A paper manual offering troubleshooting steps for each error would be really helpful. Just 'Error 11. Consult your manual.' and the manual actually telling you what the problem could be is also miles better than what we usually get.
It's still an example why it's worth giving your users a fighting chance. MacOS may not know enough to point the finger at anyone, but the user knows what they were doing at that moment, and even if they were not paying attention, they might start now. They'll realize if something is off. Or, after 10th time they get this error, they'll connect the dots and realize it's always happening when application X is running and they try to launch Y.
Or maybe sometimes they won't. Maybe they'll form a story and maybe it'll be all bullshit, or maybe good enough. Either way, the important part is, the user retains agency in the process. Giving people information is how they can become self-sufficient users and trust technology more.
++?????++ Out of Cheese Error. Redo From Start.
+++ Divide By Cucumber Error. Please Reinstall Universe And Reboot +++
+++Whoops! Here comes the cheese! +++
A modal dialog is supposed to be for something damn near irreversible--like about to blow away your application because of error. You are supposed to STOP and go get the guru or you are about to lose, badly.
Unfortunately, UI designers throw them up for everything and people get used to simply clicking "OK" to make them go away so that they can get back to doing their task. So, when the user gets an actual error, they've already blown away the dialog box with information.
Your 'Saving this image as a JPG will not preserve the transparency used in the image. Save anyway?' line is a horrifically excellent example. That is a standard "Save As..." response, and it should NEVER have been. That should have always been under "Export..." as saving should never throw away information and it would be perfectly fine to regenerate a JPG as long as you have the full information still available in the original file.
This is the stuff that infuriates me about the UI designers. Your job is about interactions, first, and pixels, second.
This is because error messages have historically been bad, unintelligible, un-actionable, and hard to separate from soft errors that don't actually matter.
And they've only got worse: "Something went wrong". Well no shit Sherlock, I can tell something went wrong because the thing I tried to do didn't work. Possibly the single most useless error message every created, and it's everywhere. Most of the worst-case error messages in the quoted response are still better than this one.If you ever run into a developer who thinks "something went wrong" is an appropriate error message, have them killed. Then kill their entire family and pets, burn their house down, and plough salt into the ground where it stood. Finally, put up a sign that says "The person who used to live here thought 'something went wrong' is an appropriate error message to display when something goes wrong. Take note of their current situation when you next add an error message to your software".
I'm an electrician.
People will notice some things. For example, with USB if they are using it for local backup they might notice, but with a lot of devices they will not. When they do notice, they will feel powerless.
Even if we had a wider choice, they are not well placed to pick products. There is no way they will know about details of things such as USB issues (a cable is slow, the device will not tell you if it is) at the time of purchase.
I implored him to try a different cable (after checking cables with the Treedix mentioned in TFA), and the copy went from taking over a minute to about 13s.
Its not just normal people confused.
Oh, and pointy jab: these folks are also, in my opinion/experience, the most eager to vibecode shit. Make of that what you will.
Swore blind it couldn't be improved.
By next morning's stand-up, I'd found it was doing something pointless, confirmed with the CTO that the thing it was doing was genuinely pointless and I'd not missed anything surprising, removed the pointless thing, and gotten the 10 minutes down to 200 milliseconds.
I'm not sure if you're right or wrong about the correlation with vibe-coding here, but I will say that co-workers's code was significantly worse than Claude on the one hand, and that on the other I have managed to convince Codex to recompute an Isochrone map of Berlin at 13 fps in a web browser.
But I know stories like yours from a decade past as well. A tale old as time, but compounding in recent years - IMHO.