Author Topic: Microsoft Error Messages  (Read 2458 times)

Offline BlackBox

  • Administrator
  • Hero Member
  • *****
  • Posts: 3093
Microsoft Error Messages
« on: May 09, 2006, 04:44:02 PM »
Well, I was looking through the MSDN Library docs that came with MSVC++ 6 today, and found a section which was about writing 'good error messages.'

Microsoft seems to give many different rules regarding writing error messages, but they seem to be hypocrites as they don't even follow their own rules.

I'll post a few highlights from this section, and mention why I think these rules are wrong.

Quote
Do not anthropomorphize. Do not imply that programs or hardware can think or feel. For example, avoid a message such as the following:
Code: [Select]
[node name] node does not speak any of our protocols

Instead, write a message such as:

Code: [Select]
Node [node name] cannot use Windows NT protocols

Many, many pieces of software written for Unix based systems do this. I think it might make the user feel more at ease with the computer hardware, perhaps giving the errors feeling, like they were written by a real person rather than just being another string of text spit out by the machine.

Quote
Use full sentences. For example, use "Binding is too long" instead of "Binding too long."

Microsoft is hypocritical here. For an example, go to Start>Run, press browse and enter an invalid filename. When you try to hit enter or click OK, it gives a message that reads 'File not found'. I wouldn't call that a complete sentence.

Quote
Place a searchable word at the start of each message. Avoid starting a message with an article. (the, a, or an). Never put a placeholder variable, such as %1 or %2, at the beginning of a message, since this makes it very difficult for a user to look up the message in our Help File. Instead, write the message so that a searchable word is at the beginning and the placeholder is embedded in the message. For example:
Code: [Select]
Log file %1 is full.
   NOT:  %1 log file is full.

First of all, doesn't that contradict the 'complete sentences' rule? Also, I didn't know an error message from MY program could be looked up in THEIR help file. For example, "Map redrawing failed" in the mapper isn't going to find me anything in Windows help.

Quote
Users almost always prefer simple sentences that use simple present or past tense and active voice. For example:

Code: [Select]
Registry Editor cannot create the subkey.
   NOT:  ...could not create...

Code: [Select]
Setup cannot start Program Manager.
   NOT:  Setup was unable to activate Program Manager.

... I never cared whether it said "cannot" or "could not." Besides, in a program, you have to try the action before you can display the error message if it failed, so that would be the attempted action occurred BEFORE the error was displayed.

Quote
Event logging in Microsoft Windows NT provides a standard, centralized way for applications and the operating system to record important software and hardware events. It also provides a standard user interface for viewing the logs and a programming interface for examining the logs. Event logging provides a means to merge events from various sources into a single informative story.

I highly doubt the average windows user even knows how to access the event log.

Quote
Do Use the Following Good Words

click
Do not use click on.

disk
Do not use diskette.

hard disk, or hard disk drive
Do not use hard drive, internal drive, fixed drive, or hard disk system.

MS-DOS
Do not use just DOS.

"Click the button" versus "Click on the button"? Don't see much difference there.

Diskette? if the user doesn't know what 'diskette' means, I'd be really surprised.

Hard drive? again, what's the difference?

MS-DOS? Of course, we cannot acknowledge that there are flavors of DOS other than those made by Microsoft (such as PC-DOS by IBM, and the opensource FreeDOS)

Quote
quit
You quit a program (not close, end, exit, leave, stop, or terminate).

Registry
Registry always has a capital "R".

stop
You stop a hardware program. For example, you "stop a print job."

Quit? well, right click the title bar of the main window of any program. You'll see the word, "Close." 'Nuff said.

Registry? I don't have enough respect for that hunk of junk to write it with a capital r.

stop? In the printers and faxes window, when you right click a print job, it gives you "Cancel" as one of the choices, not stop.

---

Anyway, just more examples of Microsoft's vast profits, but not much to do with them.

Offline lordly_dragon

  • Sr. Member
  • ****
  • Posts: 389
Microsoft Error Messages
« Reply #1 on: May 10, 2006, 06:40:42 AM »
dude you are right 100% on that one.... MS is dumb :)

Running, scrambling, flying
Rolling, turning, diving, going in again
Run, live to fly, fly to live, do or die
Run, live to fly, fly to live. Aces high.

Offline Eddy-B

  • Hero Member
  • *****
  • Posts: 1186
    • http://www.eddy-b.com
Microsoft Error Messages
« Reply #2 on: May 10, 2006, 11:17:20 AM »
Well.. what can i say...?


would "DUH" surprise anyone ?
MicroCrap not following their own set of rules.. this may be a hint towards figuring out what wrong with windows..
Rule #1:  Eddy is always right
Rule #2: If you think he's wrong, see rule #1
--------------------

Outpost : Renegades - Eddy-B.com - Electronics Pit[/siz

Offline Sirbomber

  • Hero Member
  • *****
  • Posts: 3238
Microsoft Error Messages
« Reply #3 on: May 10, 2006, 08:45:33 PM »
I'm actually going to stick up for Microsoft, because, well, why not?
It could be fun...

1) Those come from something called Basic Guidelines you say? Guidelines aren't rules.

2) Anybody who writes error messages like that is probably writing for their ninety year old Grandmother. Or just doesn't know how to write good error messages...

3) If my computer was pretending to be human, I'd call the police and have it arrested and thrown into an ocean. Preferably an ocean on the moon.

4) Nobody uses complete sentences anyways. Think about all those roadway signs that say "Slow Children" instead of "Move Slowly for Children". Unless it actually IS warning you about slow children in the street.
"As usual, colonist opinion is split between those who think the plague is a good idea, and those who are dying from it." - Outpost Evening Star

Outpost 2 Coding 101 Tutorials

Offline lordly_dragon

  • Sr. Member
  • ****
  • Posts: 389
Microsoft Error Messages
« Reply #4 on: May 11, 2006, 12:16:54 PM »
Quote
Unless it actually IS warning you about slow children in the street.
.... the odds for such a things are very small because children are always runing instead of walking :)

to eddy-b: yup the word DUH would be quite appropriate for Microsoft. but better than dhu ------ obviously


only reason microsoft deserve my respect: halo3 ...wait it is bungie that do it. screw you microsoft.

 

Running, scrambling, flying
Rolling, turning, diving, going in again
Run, live to fly, fly to live, do or die
Run, live to fly, fly to live. Aces high.

Offline BlackBox

  • Administrator
  • Hero Member
  • *****
  • Posts: 3093
Microsoft Error Messages
« Reply #5 on: May 11, 2006, 02:29:57 PM »
Yeah, Microsoft just distributes the games (because they 'own' the Xbox / Xbox 360 consoles).

Even then I give them very little credit for the Xbox:

-- They don't make the system hardware (apart from the 'X' logo, which really could be better).

-- In the original Xbox (not 360) they buried 512 bytes of the bootloader on some ROM *inside* the Southbridge. I think it may have been encrypted as well.. But this 'security' is laughable as you can connect a probe between the Southbridge and the CPU and get the data, after it's been decrypted.

-- They didn't even write the bootloader. Believe it or not, Pipeworks (yes, the company that employs{still?} Dan Duncalf, yes the lead programmer of OP2) wrote the loader.


Anyway, even if they are 'Guidelines', shouldn't the person or company that writes them follow them?