Senior Member
Join Date: Aug 2012
Posts: 432
|
Thanks, as always, Rob.
Chief Calendar Champion Chemlak Join the unofficial Realm Works IRC channel! Join #realm-works |
#21 |
Member
Join Date: Oct 2013
Posts: 87
|
Well said, Rob. I've been Systems Administrator/SRE for 16 years, working at several different companies with hundreds of colleagues. I completely concur with the "purple unicorn" theory - engineers typically write awful user-facing documentation (including error messages), if they write any at all. It's such a problem in the industry that there's an entirely different job description ("Technical Writer") for the people who translate "engineerese" into [natural language of your choice]. Unfortunately, tech writers are a luxury that most small companies cannot afford. Even in companies where there are tech writers, the process still requires a great deal of the engineers' time as well, as they describe their work to the tech writers for "translation".
Think about it, folks - if LWD could easily create perfect documentation, they definitely would. After all, at the very least it would cut down on the support burden of answering many of the users' questions. However, it's a much harder (and more expensive) problem than it seems from the outside. -Ian |
#22 |
Senior Member
Join Date: Mar 2014
Posts: 411
|
Purple Unicorns. The theoretical "spherical cow".
Well said, Rob, thank you. I appreciate your candor. I am in the middle of a multi-million-dollar multi-thousand-man-hour re-engineering of our entire support process, and pretty much the primary push is better user-friendly error reporting and user self-sufficiency through thorough documentation and self-guided support. So, not only am I primed to be going there, I'm also pretty tense about it. It's my entire life right now. I got tunnel vision. I know from experience the absolute worst thing a coder can deal with is a user who thinks they know better. I'm sorry for being that user. :-\ Carry on. Last edited by MaxSupernova; October 7th, 2015 at 07:05 AM. |
#23 |
Senior Member
Join Date: Mar 2014
Posts: 411
|
Quote:
It's more expensive (much more expensive) to deal with it afterwards than it is to alter the culture to create proper error reporting and documentation at code generation or testing time. Even putting documentation aside, it's cheaper, simpler and saves far more time to create your error reporting templates and messaging as user-friendly and plain english from the beginning than it is to just use "programmer codes" and change it later. It *never* gets changed later. Ever. It's a cultural shift that lots of people in the industry are trying to push for in training new coders, but established coders seem to have have a "thing" against documentation or error reporting. If you can convince your coders to document, even minimally, and at the very least report errors and exceptions in understandable terms, your product is head and shoulders above 99% of others in terms of supportability before you even release, at the cost of essentially nothing. Everyone can find 2% more time to do that, yet no one can find an entire new project's worth of budget to do it afterwards. Your code is easier to document, your code is easier to support, and your time spent harassing your coders to do tech support is reduced greatly because they aren't needed to interpret errors and exceptions. They get frustrated when they get called to answer questions, but if they had documented in the first place it would never have to happen. Last edited by MaxSupernova; October 7th, 2015 at 07:15 AM. |
|
#24 |
Senior Member
Join Date: Oct 2011
Posts: 6,793
|
Quote:
|
|
#25 |
Senior Member
|
Quote:
Plus, it was an industry standard program. I recall discussing it with a friend who worked in a smaller company to me (mine employed 90,000 staff) and they used it, too. She told me that she finally assumed that the program was created by some kind of evil mastermind, or Cthulhoid deity, and the way you made it work was to dance in a stone circle, having sacrificed ten chickens on an altar. And even then, it was a less than 50% chance. -- Lexin GM from Gwynedd, Wales - seriously old school - playing RPGs since 1980! Tools: Realm Works, HeroLab, Campaign Cartographer 3+ |
|
#26 |
Senior Member
Join Date: Mar 2014
Posts: 411
|
Quote:
I used to work with a program that returned all errors and system messages in German. |
|
#27 |
Member
Join Date: Oct 2013
Posts: 87
|
My favorite error messages come from the world of Linux/UNIX:
- The 'tar' command (used to create and manipulate archives of files): if you give 'tar' an invalid set of arguments, it will tell you that it is "Cowardly refusing to create an empty archive." - Linux/UNIX printer subsystems, given a certain set of error conditions, would report 'Printer on fire'! (https://en.wikipedia.org/wiki/Lp0_on_fire) |
#28 |
Senior Member
Lone Wolf Staff
Join Date: May 2005
Posts: 8,232
|
Quote:
I wholly agree that (a) and (b) have a profoundly positive effect on the overall product that results. Just ask the team here, and they'll confirm that I preach those two things with regularity. I contend that we're actually pretty decent at (b), since the actual behavior is reasonable - albeit not the messages themselves. The problem, for me, is you've lumped (c) into the mix. It's my view that (c) does not have nearly the same level of impact overall as the other two. I stand by my statements above regarding the level of importance for (c) within Realm Works. I must also direct your attention back to item #1 in my post above. In there, I clearly state that I'd already gotten on David's case regarding the error messages themselves. So this is definitely NOT something that we gloss over and don't care about. It just doesn't get policed as well as it could. Getting programmers to think and communicate like users is HARD. Their brains just aren't wired that way, which is what makes them excellent programmers in the first place! It's like teaching an adult who only knows English how to speak Mandarin. Is it possible? Definitely. But it requires a LOT of re-wiring of the brain, since it amounts to learning an entirely different way of thinking. That entails lots of time for the developer AND for whoever is coaching them in the process. It's incredibly expensive, and the payoff is limited. This raises the question of whether that huge cost is worth it when compared to all the other things that need to be done on a given project. For us, it's a work in progress, and it's something we try to balance against everything else on our todo list, keeping clearly in mind the priorities that have been voiced by our users. On this particular point, it seems we'll have to respectfully agree to disagree. |
|
#29 |
Junior Member
Join Date: Jun 2015
Posts: 27
|
@rob: Although I agree with you, writing short, clear and helpfull error messages does not come with zero cost, it usually pays out well, because it saves a lot of questions. And if you already do the work of implementing an error message, then you already do some of the work. I'm a programmer myself and I know what I'm talking about. Since I work with other people on the same piece of software, it makes a lot of sense to have meaningfull error messages (and log messages) in our code, so the others can easily find out what went wrong. And that saves a lot of time.
And for my case (just to show you my perspective/reaction), the message "login is not available" just describes a "cause", not the "reason". For me, it was obvious that there can be a couple of reasons for this. The most obvious ones where, that my computer had no internet connection (which I checked first). The second one was, that the Realm Works Login service would be down. But since I was able to login from my other, desktop PC, that wasn't the case either. To be fair, an error message telling me, that no connection could be established to the servers hadn't helped me any further. After I checked the two most obvious error sources, I opened this thread to get help. The only difference between both computers where, that one of them was a laptop connected via wlan and only updated once, the other beeing a desktop and updated twice in the period. But since the error doesn't occur currently, I can't give any more information and the priority for fixing also lowered. Quote:
So for example regarding the testing messages, you don't need to plan to "go through all the messages" to fix them up. You only need a process that collects ambivalent or bad error messages and fix thoose. Use the community for that. Example: this thread should result in a normal priority ticket to change the error message on the login form. Or even better, create a bug report forum section. That way, people can report bugs and see, if other people have already reported that bug (lowering the amount of support emails your dev's have to deal with). But ok, enough now, you are busy people. I also want to say, that the whole issue is not that important to me. I know, that people who are not into the developement usually don't make usefull comments because they lack the insight. My suggestions are just as long and explicit because I like your software and want to help, so feel free to completely ignore my proposal And have a nice day! Last edited by Decrayer; October 8th, 2015 at 01:19 AM. |
|
#30 |
|
|