9 ms·
Haha, yeah go ahead and try to fight this battle. You'll lose. I'm constantly baffled by bug reports I receive. From other people who work at my company. A tec
by drblast 9y ago
Haha, yeah go ahead and try to fight this battle. You'll lose.
I'm constantly baffled by bug reports I receive. From other people who work at my company. A tech company. A large one. You've heard of it.
We log every operation in our API. I cache errors, and the API returns a JSON formatted error with a GUID that correlates to the operation that failed, so if I have a GUID I can look at exactly what happened every step of the way, and what went wrong, in the logs.
Most of the time, all I need to fix a bug or tell you why you're having a problem is the GUID from the error message. You don't even need to ASK a question. I log stack traces of any exceptions that occur so our logs are almost as good as running the software through a debugger.
The bug reports I'd expect and want?
"Hey, I got this error message that I copy/pasted below...can you tell me what's going on?"
<two line error message>
I have NEVER gotten that bug report. The bug reports I get?
"Hey I think your system is down."
"Is something wrong with your system?"
"I tried to do something and got an error. Is something wrong? No, I don't know what the error was."
"We're getting this weird error when we try X. I dunno, it was just weird. It works now though."
"I think the data you're returning is wrong."
Or my favorite:
"Hey, we've been discussing this issue we've had with <upstream system> that depends on your system. We assumed your system has been down for the last couple of days and have been blaming your team in email threads you're not on because <upstream system> isn't working. Nobody told you or your team. When is your system going to be fixed? No we don't have any examples or any record of error messages from your system."
(Resolution: problem is bug in <upstream system>)
- tambourine_man 9y agoOh god yes. I don't understand why it's so hard for people to report a bug. I don't think other fields suffer from this as much. No one goes to the doctor and says: - I don't feel good - What are your symptoms? - I don't know, I just feel bad. It's usually in the form of: "I have a sore throats and running a fever, it began x days ago", etc What is it about computers that makes people throw their hands in air and say, I don't know, I just doesn't work. They are smart people, and yet it's beyond them to think that, in order to fix it, the other person must at least know what's wrong in the first place.
- aetherson 9y agoMy father is a doctor. I assure you, you are overestimating the ability of (some) people to report specific symptoms.
- tambourine_man 9y agoIt may very well be that I'm biased since it's my field. But what looks like the exception in other areas seems to be the rule in IT.
- csours 9y agoI'm sure there's a name for this phenomenon, but every field is like this. It looks easy and clear-cut to you, because you know what is going on. You look at an HTTPS connection issue, and you can soon discern that the crypto-suites do not match, so the connection cannot be negotiated. You go to a mechanic (assuming you are not knowledgeable about cars), and you can at best partially describe a symptom and when it occurs and your best guess as to why it might occur. That is better than a non-technical person, its true, but a mechanic may be able to speak to you at the same level about computer problems. As a counterpoint, look around your office at all the people who would not be able to help the mechanic diagnose a problem - they may have domain specific knowledge, but not a troubleshooting mindset.
- tambourine_man 9y agoI think you're onto something regarding the troubleshooting mindset. I know very little of cars, but I used to arrive at the mechanic with a clear problem: overheating, noise while turning the wheel, flashing light on the dashboard, etc. No need to know the solution, just articulate the problem. I fell like computers occupy almost the realm of magic in most people's mind. When it works, it's great, when it doesn't, why bother, it's beyond comprehension.
- Noughmad 9y agoI don't know, I'm sure mechanics deal with a lot of "my car has a strange sound". Or people not admiting that there's anything wrong with it. It's probably more that there aren't many things except computers and cars which are both ubiquitous and breakable.
- logicallee 9y agoChange the first line of your error message to, "Important: Please mention the following error number when contacting support." you told us that is what you need - but did you tell the user?
- drblast 9y agoDoesn't matter what the error message is. It's very unlikely they're reading the error message at all. And yes, I've tried what you mentioned. I did fib a bit though. There is one error we get emailed to us regularly. It's a 403: {"code": "Forbidden", "message": "You do not have access to this API feature because you need to be a member of role [ROLE]. To get access, follow this link to our role request page here: https://linkToRoleRequestPageWithDeadSimpleHTMLForm?role=ROLE"} THAT error reliably gets copy/pasted in an email to us with the questions "Why am I getting this error?" or "How do I get access to this?" EDIT: I'm also talking about the JSON output of an internal API whose target audience is developers and people writing scripts. This means that we are all the problem. If the target customer were average Joe user I'd completely understand.
- logicallee 9y agoSo you need to lie in your error messages and come up with a message that will get emailed to you. How about. "Forbidden. Please request access by following this link: http://internal/?requestguid=GUID&custn=CUSTNAME http://internal/?requestguid=GUID&custn=CUSTNAME Your request will be handled within 24 hours." That link? If they click the link - which they will - you have all the information they should email you (but don't.) Because you told us all you need is the GUID. Remember: Error messages are literally an API between you and the human. If the human isn't doing what you want, you need to debug your API code until the human is doing what you want. The human is like a device! It might be flaky, but you're stuck with it. So debug your API code (the error message) until you work around the flaky humans.
- fencepost 9y agoYou forgot the important extra part: "If you ignore that link and instead email this to us, we'll try to get back to you within 5 business days."
- scintill76 9y agoAh, I love "weird errors." I'm not sure there's any other adjective that's ever used, they're always weird.
- lostlogin 9y agoYour workplace is much more polite than my ones have been. Dropping the odd F-bomb equated to a low level error, with appropriate scaling from there.
- ben_jones 9y agoI remember back in high school seeing two dominant attitudes when it came to issues like this. You would have one group of very intelligent people who were very confident in their decisions and on the odd occasion where they made a mistake would often blame something or someone else. Worse they would frequently scoff at the mere suggestion they were wrong. Then, you had a large group of people who had some degree of imposter syndrome and felt inferior to the first group, partly because the first group seemed so confident. They would avoid situations where they might get called out or blamed. Often their insecurity would lead to more mistakes or poor explanations once they did occur. I wonder if this same phenomenon might be occurring in your situation? I imagine in corporate environments people want to seem favorable to their bosses for bonuses and what have you. Also, and especially at large tech companies, you would have procedure, process, and tooling, that was relied on heavily and whenever something out of the ordinary cropped up that the tooling did not hand hold them through, would put them in a loop.
- arcosdev 9y agoI get bug reports like that from our QA team! The people whose specialized job it is to report bugs write one line bug reports like "<Feature> doesn't work". No stack traces, no environment information, no steps to reproduce.
- Markoff 9y agoare they hiring? :-) can't imagine those QA people are not fired, I always at least try to provide steps to reproduce and expected result if possible, and of course it should be accompanied by some system log there seem to be some serious issue with your QA training. soon I will be looking for job in QA, I can only hope there are more companies like yours giving me better chances :)
- js2 9y agoNothing new under the Sun. When I was getting my C.S. degree in the mid-90's I worked at the same time for the C.S. department as an SA. (Actually, they called us sysops at the time.) Anyway, I saw all the help requests that came in from students and faculty. These are C.S. students and faculty mind you. It seemed the further along someone was in their C.S. education the worse the help requests would get. My favorite, which was particular to a certain nationality, was this one (which we got quite often): "The Internet is down. Please do the needful."
- DoofusOfDeath 9y ago> "The Internet is down. Please do the needful." You're complaining about such a message??? It's pure poetry!
- lloeki 9y ago> certain nationality Sounds like a word to word translation from french "Merci de faire le nécessaire".
- Markoff 9y agocould be also any slavic language, they use it in same way
- deleted 9y ago[deleted]
- jwilk 9y ago"do the needful" is en-IN-ism: http://travel.cnn.com/mumbai/life/10-indianisms-652344/ http://travel.cnn.com/mumbai/life/10-indianisms-652344/
- YeGoblynQueenne 9y agoHah. You think most techies want to get informative error reporting from their users? This is the email I sent to my hosting company a couple of years ago when WHM (a component of cPanel) started doing something silly that broke my SSHD: sshd and ip whitelisting - there's a bug it seems If I go to whitelist my current ip in whm, it asks me to restart sshd to make the changes stick. If I do that, sshd fails to restart with an error like this: Directive 'UseDNS' is not allowed within a Match block [FAILED] I presume what's actually causing this is some script in whm that goes and adds something like this bit in sshd_config: Match User [my user name] PasswordAuthentication yes UseDNS no The "UseDNS no" should be _before_ the "Match user ... "etc (that's the match block from the error message). I've no idea what part of whm is doing this but it's doing it wrong- get someone who knows perl to fix it, it should be dead easy. My doctor has advised me to stay away from perl for life That was after I spent an hour or so chatting with their tech support to try and unscrew my SSHD after it suddendly stopped authenticating me (probably because they updated to a borked version of whm). So yeah, they knew what I was talking about alright (and, yes, I sent that to the right people, check). I never heard back from them. I think that's an informative message, isn't it? I (a) relayed the error message (b) pointed at the cause of the error message (c) explained how to fix it But they didn't even write back to say that yeah, they knew and were going to fix it. Isn't that a shame?
- arjie 9y ago"Should be easy" is a bozo bit phrase. Whether it should be that way or not, you're going into the slow bucket at that point.
- stevekemp 9y agoIndeed I had a discussion on reddit recently, trying to help somebody. Their exact words; "It should take somebody 20 minutes to fix this if they know python" At that point I was done with the conversation, though I was tempted to ask what their bug-fixing-budget was..
- khedoros1 9y ago
- lloeki 9y ago> Haha, yeah go ahead and try to fight this battle. You'll lose This battle is indeed being fought since forever [0], of which this blog post is basically the nth dupe of. [0]: http://catb.org/~esr/faqs/smart-questions.html http://catb.org/~esr/faqs/smart-questions.html
- BlackLotus89 9y agoYeah I came here just to post this link since this was one of the first guides I literally printed out and had on my desk per request of an old friend.
- BaronSamedi 9y agoWell, you can try to make people smarter (good luck with that!) or you could focus on something you can actually control such as delivering better software. Three things we as software developers normally do poorly that could help a lot: 1. Write decent documentation, i.e. actual user guides instead of reference manuals. Most software is under-documented by an order of magnitude and the documentation is simply terrible. 2. Write log messages that are meaningful to the intended users (end-users, sys admins, etc.) instead of "Error 3023: 0xFFFF flux capacitor initialization exception". 3. Make the software interactively help the user overcome the problem. Put some smarts into it. Showing an error popup and then crashing is lazy. Or worse, crash silently and then write a log message that the user can neither find nor understand. Yes, people are dumb but we do a lot dumb things too. We should look at ourselves first.
- masklinn 9y ago> I have NEVER gotten that bug report. That's interesting, at my job we almost get these: we tend to dump tracebacks to the user, and it's common for them to screenshot the traceback (despite the "copy this error" button). Maybe you should have some sort of inline reporting interface à la Apple where the user can tell you what they were doing and provide contact info?
- wolfgang42 9y agoI get the same thing--or worse, screen shot pasted into a Word document that's attached to the email, so their two monitors are squished into 8.5 inches and any text is scaled down to illegibility. I also get a lot of near-misses, where they almost get it right: for example, copying the bit that says "there was an error, please include the information below when you report it" without actually copying the stack trace underneath the message, or copying the first line of the error which says "cannot read property id of undefined" without the stack trace that would tell me what it was trying to do at the time. Also, users who paraphrase the error message instead of copying it (Them: "When I try to view a Thingie, I get an error that it couldn't be read." Me: "Can you copy the exact error message please? There are several different reasons that a Thingie might not be readable, the error should tell me what I need to fix.") It doesn't help matters that some of the software I inherited uses this antipattern: try { // Long and complex operation } catch (Exception e) { Alert("There was an error. Please contact IT."); quit(); } The first time I got a report for this software was rather confusing. "It says there was an error." "Can you tell me what the error message says?" "Yes, it says 'there was an error.'" "I know, but what was the error message?" "'There was an error!'"
- upvotinglurker 9y ago>I get the same thing--or worse, screen shot pasted into a Word document that's attached to the email, so their two monitors are squished into 8.5 inches and any text is scaled down to illegibility. Got this from the "IT person" at a small satellite campus of the college I work for. That is how I knew they were not actually an IT person.
- 9y ago