I am fucking sick and tired of pop-up computer error messages designed by computer geeks who are able to understand that normal people do not speak their cyberbabble.
If these people can design computers that do everything but wash the floor, why can’t one of them find a way to communicate in plain language to normal people who do not have plastic pocket protectors in the pockets of their plaid shirts and high-water pants with the hems stapled in, who do not have glasses taped in the middle, and who DO get laid once in a while.
Case in point. Just today when I went to print a message in my email, I get the following Pop-up message (I have Windows 98). It reads: **Error starting Program.
The SHLWAPI.DLL file is linked to missing export MSVCRT.DLL:_wtol ** The box also offers me an “OK” button to click on???
What the fuck is this??? :mad:
Error starting which program??? :dubious: What in the Hell am I saying “OK” to if I click on the button? :dubious:
Now, I restarted my computer and the pop-up box did not reappear when I performed the same operation.
But what I want to know is, where in outer space is the computer geek who sat down and designed a pop-up box that can appear on millions of computers, and that contains a message that is totally incomprehensible to 99% of the people before whom it will appear?
And there are many of these pop-up messages, all equally confusing.
Do these computer geeks have shit for brains or what is their problem? :mad: :mad: :mad:
That’s one part of the job I hate most. And it isn’t just in reporting it to the users, but to myself. I’ve devised all sorts of message tables, log files, error classes, and whatnot. But seldom is anything I’ve designed both handy and informative. The more meat there is to it, the more difficult it is to implement, integrate, and interpret later in maintenance.
But I think the OP makes a valid point. Maybe we should report friendlier messages to the user, and more technical messages to the support staff. (The message really is for the benefit of support people.) Maybe a “More Detail” button, or something. Meanwhile, just tell the user something like: “A problem has occurred in the program that controls your printer.”
There is one purpose to those messages, and I do agree they are annoying: you can copy down the technogibberish and relay it to some tech support guy, who can figure out what you need to do from their contents. In your example, he now knows he needs to figure out why you’re missing MSVCRT.DLL:_wtol and recover it for you from somewhere.
Even more annoying are the error messages that don’t inform you what’s wrong in enough detail to fix it, even if you speak Old High Technobabble (which like most people I understand only as a pidgin: “Computer no work right. Missing ARCANE.WTF file. Need find file and put back. All your _.BASs are belong to us.”
For example, Windows ME will not run MSN Messenger. Period. (Yeah, two Microsoft products are mutually incompatible. Does this surprise anybody?) But the error message is that “Error: MSNMSGR.EXE is calling an invalid DLL file.” Yay! I have now reduced my problem to the fact that MSN Messenger needs to find one of the ten billion freaking DLL files created by Windows programmers over the years – but not which one. And not even a clue where to look or what for to refine that search.
I’m beginning to get the impression that the story about the guys in a helicopter in the fog and the programmer with the cardboard sign is not a joke but factual.
There is a LOT of room for improvement in that area. For example, a friend of mine got a game for Christmas, that installed fine. But when he went to run it, it just gave an error something like “This program requires Pixel Shader 1.1”. And that’s it.
The goddamn install program should have checked for pre-requisites, and stopped before installation.
That error message is inadequate to help the average user. What percentage of computer users know that’s even a feature of the graphics card? It would have been simplicity itself to use more descriptive text like “This game requires Pixel Shader 1.1, a feature which is not supported by your current graphics card. You will have to upgrade your graphics card to one that supports that feature to play this game.”
The problem is that making nice, informative, and understandable messages isn’t something that will be done just by being more considerate to laypeople. Useful and informative error messages are sort of the Holy Grail for a lot of programmers, and I’d say that a lot of serious projects spend as much (if not more) of their time trying to architect a way to handle all of the millions of things that go wrong in a way that allows them to report something useful to the user as they do developing the actual features in the first place.
The problem is that programmers can’t anticipate all of the millions of potential problems. This means at a certain point, you have to report errors that just tell you what low level operation failed. I’m sure in the OP’s case, something very basic failed and the error handler says “show the user what files are missing”. The reason is that they probably have no idea why or even how such a thing could happen. I’d be willing to bet that somewhere around that exception in the source code there’s a comment like:
// if that didn't work, something is very wrong, but I have no idea what
else {
....
}
I’d also like to point out that if you try too hard to make errors “user friendly” you end up with the equivalent of an idiot light. “Something is broken, press OK to continue.” I’m not sure if that’s better or worse, but then I’m one of the poindexters mentioned in the OP.
It’s definitely something that needs improvement, but it’s one of the Big Problems in programming.
It’s a good rant, but I’d like to point out a couple things in the defense of us programmers:
Unless you’re dealing with a very small company, the programmers didn’t write the text. It came from some combination of a technical writer, product manager, UI designer, lawyer, and whatever other groups need to review it. We just copy and paste it into the program.
The error message in the OP is a Windows error message, and not something anyone outside of Microsoft has control over. It’s actually a pretty good error message if you know what it means, but I can definitely see where a non-programmer would be confused.
Ed makes a good point, too. This is a true story, I swear…
Way back, when programming with VB for Windows 3.x, I was helping a guy find a problem in his (goddawful stringy hard-to-read) code. It was the Case (c.f., switch) statement from hell. I pointed out that he had no Case Else clause, and asked what would happen if none of his tests applied. “Oh, that’s impossible,” he insisted. “There’s no possible way the code would ever execute a Case Else.”
So just for shits and giggles, I added a Case Else, and put in a Message Box saying something like, “What the hell happened?”. We compiled it and delivered to the customer — our biggest account. Sure enough, only a couple of days later, the intercom on my phone beeped. It was the receptionist. “Libby at DraCo says there’s a message on her screen asking her what the hell happened.”
Of course, that meant we then had the ultimate shit-task of programming — finding a logic error in spaghetti code.
What would you like it to say? How much computer savvy should be assumed? Should the “Check engine” light on your car dashboard say something like “use a 10mm socket wrench to remove the oxygen sensor located on the rear driver side of the exhaust manifold and replace it with part #702933849 which can be ordered by calling 800-555-1234 M-F 8-8 ET” plus all relevant diagrams? Not everyone is a computer technician. Not everyone needs to be. Isn’t the message you’re getting better than a check CPU light? At least you can give a mechanic a clue where to look for the problem.
My personal favorite was crica 1999 trying to boot a new compaq with no keyboard:
“No keyboard found, press F6 to continue.”
Ok fuckers, why can’t I boot with just a mouse? I see no reason I should have to if I don’t want to. Sure, you could disable this message in bios. But to get to BIOS, I need a keyboard… What the fuck do you want me to do then?!!!?!
You can Google most error messages and find a solution for your problem quickly.
The error messages I hate the most are those that say “Contact your administrator” and nothing else more useful. Especially when they occur on my home computer!
The message makes perfect sense to me. Then again, I’m one of those “computer geeks who never get laid”.
Your problem is probably caused by electron sludge. As with the pipes in your house, electron sludge can build up in the circuits of your computer, reducing its efficiency and causing errors. The easiest way to solve this problem is to break loose the electron sludge with mechanical shock. Unplug your computer and drop it onto a concrete surface from a height of ten meters. Do this several times. You will no longer be bothered by cryptic error messages.
I’ve mentioned this elsewhere, but inanely hostile “error” messages trump incomprehensible ones.
In one form, it’s the dire warnings that my computer has performed an ILLEGAL OPERATION and no doubt black-clad cyberswat teams will be descending on my home to haul me away. Whatever happened is “illegal” only in your fuzzy little logic-impaired brains.
Or if, god forbid, I am using medical report software and scroll down to the end, inevitably to be greeted with the message “Attempt to scroll past end of document”. I must be reminded that I am a bad boy who ATTEMPTED to immorally run past the end so that I could…what? Is it sort of like peeking under the bathroom door? What illegal sight could I possibly see? Is it the same one I’d potentially see if I committed an “Attempt to scroll past beginning of document” at the other end?
There are some really prissy, controlling little farts who write these sorts of messages, is all.
No its not better , for most things I would dearly like a link to a FAQ starting with the original vendor .
This Faq would either be a hyperlink from the little box that pops up or an input form that I could transcribe the original error message, should a net connection no longer be possible from the computer and I have to use a second computer.
If after the relavent information has been disclosed via the frequently asked questions and it says essentially , bring it in to be serviced, then fine.
Basically until then I have to use a combination of google and several computer forums to see what might solve the various problems.
Well the check engine light is backed up by stored fault code, that when looked up in the car makers diagnostic system will yield a result like what you ask.
Why doesn’t my computer generate a fault code that can be looked up? All I get are these fuck off and die messages (contact admin, illegal operation etc)
The programmer probably wrote a generic error message that handles a big chunk of the millions of possible problems. The generic {blanks} get filled in appropriately at the time the error occurs:
The {FileA} file is linked to missing export {FileB}:{Function}.
The programmer is not expecting non-technical people to know what to do with that. It’s not his job to make every computer user into a technician capable of repairing every problem that could conceivably come up. Would knowing that certain DLL functions were missing really be a help to you? Would you know what to do in every likely case that might cause that? Would a more English-like translation be a help to you? He would have to write a specific error message for every possible combination of things that shouldn’t go wrong but might:
The SHLWAPI dynamic link library is not able to access the MSVCRT dynamic link library to use its _wtol function that converts 16-bit unicode characters into 32-bit long integers. The program requesting SHLWAPI to do this will not be able to continue.
Or even more simply as:
One collection of small bits of programming (SHLWAPI.DLL) expected another collection of small bits of programming (MSVCRT.DLL) to be making available a small bit of programming that converts certain representations of letters into certain other representations of numbers (_wtol) but it wasn’t available. Therefore, I can’t do what you asked me to do.
While his program is running, the programmer is counting on numerous other resources being there and working properly. If he had to stop and check for that at each stop, your software would run so slow it would be unusable. But since it would be too expensive to afford such software, that wouldn’t be a problem.
While I cuss out those stupid error messages as much as you do, I would like to offer a word or two of explanation.
No matter what language you write code in, if an error happens deep in the language interpreter, compiler or run-time package, not your code, it’s up to the language developer to provide the error message. This is something that most application developers have no control over, or gloss over the options where they might. Example: if something in the computer (maybe a memory error) causes a glitch in a Basic internal routine, you will typically get an Basic error message, not one from the application developer. These tend to be even more arcane. System and BIOS messages are even worse.
Testing for unusual error conditions is not a high priority for most development teams. Getting the product out the door and worrying about it later is. Let the customer do the debugging. He paid for the privilege. :dubious:
Some programmers aren’t very good, like the one that didn’t put an else clause in his case statements. I spend a lot of time writing error handlers and debugging tools; many do not.
Are you serious? You think the application is implying you broke a law? And I thought stories about people taking error messages personally were just that.