[ Pobierz całość w formacie PDF ]
."Nobody sets out to write annoying software.So where is the line? When does a heuristicstop being a really cool, helpful feature that saves time and start being an annoyance?Here's the thought process that goes into developing a typical heuristic:1.If the user types "teh," there's a 99% chance they meant "the."2.So we'll just change it to "the" for them.Then there's a 1% chance that we're wrong.3.If we're wrong, the user will have to undo the change we made.4.Ninety-nine out of one hundred times, we improved the user's life.One time out of onehundred, we made it worse.Net value to user: 98% improvement.This tends to get generalized as:1.If the user does x, there's an n% chance they meant y.2.So we'll just do y for them.Then there's a (100 n) chance that we're wrong.3.If we're wrong, the user will have to correct us.4.Net value to user: (100 2n)%, which is better than doing nothing for n>50.Aha! I think I've found the bug.It's in step 4, which does not logically follow.Happiness is notlinear.It doesn't really make a user that happy when they type "teh" and get "the." Andhappiness is not cumulative.The bottom line is that every single time you apply a heuristicincorrectly, you are making the user a lot more unhappy than you made them happy byapplying the heuristic correctly all the other times.Annoyances are annoyances, and peopledon't weigh annoyances against joy when deciding how happy to be.They just get annoyed.How annoyed? That depends on step 3: how hard it is to undo the heuristic if the programguessed wrong.In Word, it's supposed to be pretty easy: you can just hit Ctrl+Z, whichmeans Undo.But a lot of people, even people who know about the Undo command, don'trealize that Undo undoes the computer's actions as well as their own.And if you watchthem, they usually try to undo the error themselves by backspacing and retyping, and ofcourse, Word blindly applies the wrong heuristic again, and now they're getting reallyfrustrated and they don't know how to fix it.By now the annoyance factor is deep into thetriple digits, which has more than wiped out the minor satisfaction that the heuristic wasintended to cause in the first place.In general, I don't like heuristics because of the principle from Chapter 2:If your program model is nontrivial, it's probably not the same as the usermodel.This gets back to the "How Do It Know" factor.If users can't figure out why the program isapplying a heuristic, they will certainly be surprised by it, producing a classic example of "theuser model doesn't correspond to the (inscrutable) program model," and therefore, theprogram will be hard to use.To judge a heuristic, you have to decide if the rule for theheuristic is obvious enough, or if users are going to stare blankly at the screen and say,"how do it know?" Turning "teh" into "the" may be obvious, but changing three dashes into ahorizontal line is probably not what people expected, and they probably won't know why it'shappening.This makes it a bad heuristic because it leads people to say, "how do it know?"84The second way to judge a heuristic is by the difficulty of undoing it, and how obvious theundo procedure is.When you write a check in Intuit's Quicken program, and you start typingthe name of the payee, Quicken looks for other payees that start with the same letters as thepayee you're typing and pretypes that for you.So if you've paid someone named "Lucian theMeatball" in the past, and you type "Lu," Quicken will propose the full name "Lucian theMeatball." That's the heuristic part, and it's pretty obvious why it's happening nobody'sgoing to ask "how do it know?" But the brilliant part of Quicken is that the "cian the Meatball"part will be selected, so that if the heuristic was wrong, all you have to do was keep typingand it will effectively undo the heuristic right away.(This invention spread from Intuit'sQuicken to Microsoft Excel and eventually to Microsoft Windows).When a heuristic is reallyeasy to undo, and it's obvious how to undo it, people won't be so annoyed.The third way to judge a heuristic is, of course, by how likely it is to be correct.Changing"teh" to "the" is pretty likely to be correct (although it was wrong about ten times while I wastyping this chapter) [ Pobierz całość w formacie PDF ]
zanotowane.pl doc.pisz.pl pdf.pisz.pl matkasanepid.xlx.pl
."Nobody sets out to write annoying software.So where is the line? When does a heuristicstop being a really cool, helpful feature that saves time and start being an annoyance?Here's the thought process that goes into developing a typical heuristic:1.If the user types "teh," there's a 99% chance they meant "the."2.So we'll just change it to "the" for them.Then there's a 1% chance that we're wrong.3.If we're wrong, the user will have to undo the change we made.4.Ninety-nine out of one hundred times, we improved the user's life.One time out of onehundred, we made it worse.Net value to user: 98% improvement.This tends to get generalized as:1.If the user does x, there's an n% chance they meant y.2.So we'll just do y for them.Then there's a (100 n) chance that we're wrong.3.If we're wrong, the user will have to correct us.4.Net value to user: (100 2n)%, which is better than doing nothing for n>50.Aha! I think I've found the bug.It's in step 4, which does not logically follow.Happiness is notlinear.It doesn't really make a user that happy when they type "teh" and get "the." Andhappiness is not cumulative.The bottom line is that every single time you apply a heuristicincorrectly, you are making the user a lot more unhappy than you made them happy byapplying the heuristic correctly all the other times.Annoyances are annoyances, and peopledon't weigh annoyances against joy when deciding how happy to be.They just get annoyed.How annoyed? That depends on step 3: how hard it is to undo the heuristic if the programguessed wrong.In Word, it's supposed to be pretty easy: you can just hit Ctrl+Z, whichmeans Undo.But a lot of people, even people who know about the Undo command, don'trealize that Undo undoes the computer's actions as well as their own.And if you watchthem, they usually try to undo the error themselves by backspacing and retyping, and ofcourse, Word blindly applies the wrong heuristic again, and now they're getting reallyfrustrated and they don't know how to fix it.By now the annoyance factor is deep into thetriple digits, which has more than wiped out the minor satisfaction that the heuristic wasintended to cause in the first place.In general, I don't like heuristics because of the principle from Chapter 2:If your program model is nontrivial, it's probably not the same as the usermodel.This gets back to the "How Do It Know" factor.If users can't figure out why the program isapplying a heuristic, they will certainly be surprised by it, producing a classic example of "theuser model doesn't correspond to the (inscrutable) program model," and therefore, theprogram will be hard to use.To judge a heuristic, you have to decide if the rule for theheuristic is obvious enough, or if users are going to stare blankly at the screen and say,"how do it know?" Turning "teh" into "the" may be obvious, but changing three dashes into ahorizontal line is probably not what people expected, and they probably won't know why it'shappening.This makes it a bad heuristic because it leads people to say, "how do it know?"84The second way to judge a heuristic is by the difficulty of undoing it, and how obvious theundo procedure is.When you write a check in Intuit's Quicken program, and you start typingthe name of the payee, Quicken looks for other payees that start with the same letters as thepayee you're typing and pretypes that for you.So if you've paid someone named "Lucian theMeatball" in the past, and you type "Lu," Quicken will propose the full name "Lucian theMeatball." That's the heuristic part, and it's pretty obvious why it's happening nobody'sgoing to ask "how do it know?" But the brilliant part of Quicken is that the "cian the Meatball"part will be selected, so that if the heuristic was wrong, all you have to do was keep typingand it will effectively undo the heuristic right away.(This invention spread from Intuit'sQuicken to Microsoft Excel and eventually to Microsoft Windows).When a heuristic is reallyeasy to undo, and it's obvious how to undo it, people won't be so annoyed.The third way to judge a heuristic is, of course, by how likely it is to be correct.Changing"teh" to "the" is pretty likely to be correct (although it was wrong about ten times while I wastyping this chapter) [ Pobierz całość w formacie PDF ]