throbber
CHAPTER 11 ORCHEsTRATION AND FLOW
`
`135
`
`When
`
`the craft of the writer becomes invisible and the
`novelist writes well
`clarity undisturbed by the technique
`sees the story and characters with
`reader
`of the writer Likewise when
`user the interac
`program interacts well with
`face-to-face with his objectives
`the user
`precipitate out leaving
`tion mechanics
`visible writer and
`unaware of the intervening software The poor writer
`interface designer looms with
`visible presence in his software eyes
`poor user
`wild hair rumpled and Jolt on his breath
`
`is
`
`Good user interfaces are invisible
`
`To
`
`novelist
`
`there is no such thing as good sentence There are no con
`on what the
`sentences It all depends
`rules that guarantee transparent
`the author wants to create The writer knows
`is doing or the effect
`protagonist
`particularly quiet and sensitive passage
`to not insert an obscure word in
`string quartet The same goes for software The
`it sound like
`sour note in
`of
`designer musttrain his ears to hear sour notes in the orchestration
`interaction
`
`struction
`
`software
`
`software
`
`lest
`
`When
`programs
`becomes invisible
`
`communication with the
`
`user
`
`is well orchestrated
`
`it
`
`Possibility versus probability
`dialog box
`There are many cases where interaction usually in the form of
`frequent source for such clinkers
`interface unnecessarily
`slips into
`user
`choice Thats because programmers tend to
`when
`program is faced with
`design To
`resolve choices mathematically and it carries over to their software
`times out of million and
`proposition is true 999999
`mathematician if
`false one time the proposition is falsethats the way math works However
`true
`to the rest of us the proposition is not only not false it is overwhelmingly
`the probability of it being
`possibility of being false but
`The proposition has
`false is minuscule to the point of irrelevancy
`
`is
`
`as being the same
`and programmers tend to view possibilities
`Mathematicians
`the choice of ending the program and
`as probabilities For example
`user has
`saving his work or ending the program and throwing away the document
`he has
`
`0149
`
`
`
`IBG 1022 2 of 4
`CBM of U.S. Patent No. 7,693,768
`
`

`
`136
`
`PART III THE BEHAVIOR
`
`UJucC\Lr
`
`th-JJ4
`
`been working on for the last six hours Mathematically
`the probability of the user discarding his work
`
`is equally possible Conversely
`
`either of these choices
`
`is at least
`
`thousand to one against yet
`the typical program always includes
`like the one shown
`dialog box asking the user if he wants to save his changes
`in Figure 11-3
`
`Do you want
`
`to save changes to ORCHESTILDOC
`
`Yes
`
`No
`
`Cancel
`
`/7
`
`/7
`
`/7
`
`/PFigure 11-3
`dialog box in the world of GUI Of course
`This is easily the silliest and most unnecessary
`to save my work It is the normal course of events Not saving it would be some
`want
`by some dusty dialog box This single
`thing out of the ordinary that should be handled
`the useless and
`box does more to force the user into knowing and understanding
`dialog
`confusing facts about RAM and disk storage
`than almost anything else in his entire interac
`tion with his computer This dialog box should never be used
`
`The dialog box in Figure 11-3 is completely inappropriate and should not exist
`wouldnt have bothered
`to ORCHESTR.DOC
`Yes want to save the changes
`name the file if hadnt wanted to keep it In the rare case where
`change my
`and revert back to the original the pro
`mind and want to discard my changes
`gram should provide tools to do so But these tools shouldnt be waved in my
`document
`end
`couple of hundred documents every
`face every time
`edit
`month and
`have to abandon my changes only about once
`
`year
`
`to
`
`Whoever designed this program confused probability with possibility and they
`burden me with this irrelevancy
`end the program This is tanta
`every time
`mount
`to pour your soup on your shirt every time
`
`to my telling you not
`
`you eat
`
`It is possible to argue that users have come to expect
`absence would cause experienced users to fret
`that changes were being mistak
`enly discarded when the program ends This rationale
`beaten dog expects to be beaten again so we should beat
`is now
`The time to make our programs better
`
`is like saying that
`it to make it happy
`
`this behavior that
`
`its
`
`0150
`
`

`
`CHAPTER 11 ORCHESTRATION AND FLOW
`
`137
`
`to offer just the function and not all of
`dont want
`
`If
`program offers
`it ought
`function
`its permutations For example when
`ask to print something
`dialog box that allows me to configure the print function
`just want
`simple
`printout of the current document On the rare occasions when want some
`or sideways printing then
`few pages or seven copies
`like just
`thing special
`should have to ask for the Custom Print Dialog or some such If there is
`that should
`
`possibility that
`
`the user might set the parameters of the function
`secondary characteristic of the function itself rather
`ffian intruding on the
`act of invoking the function
`
`be
`
`more probable
`
`The print button on the Word toolbar offers immediate printing without
`log box This is perfect
`for many users but
`for those with multiple printers or
`too little information The user may
`it may be offering
`printers on
`is selected before he either presses the button or sum
`want to see which printer
`it first This is
`good candidate
`for some simple
`mons the dialog to change
`
`network
`
`dia
`
`modeless output placed on
`
`toolbar or status bar
`
`could be found in Microsoft Excels
`Another good example of this confusion
`older Version 4.0 When you select one or more cells and press the DELete key
`small dialog box pops up asking what you want
`to delete
`to clear the field
`
`The flexible little dialog box shown in Figure 11-4 conveniently allowed you
`the option of clearing the formats formulas or notes from the selected
`This dialog drove me crazy with its obtrusive uselessness It is true that
`are three types of deletion operations format formula and notes However
`have never
`formulas with great
`delete
`is also true that although
`frequency
`formats or notes So why does the
`in all of my spreadsheeting
`fact and insist on asking me through this
`program ignore this self-evident
`mindless little dialog Just because something is possible doesnt mean that
`
`cells
`
`there
`
`it
`
`it
`
`desired
`
`to delete
`
`is probable
`
`bus but you probably will drive safely to work this
`You might get hit by
`morning Dont stay home out of fear of the killer bus Dont
`let what might
`say Dont put might on
`happen alter the way you treat what will happen
`to load up parts of program that will get used with
`to remind myself not
`will
`lots of stuff that might get used
`
`Programmers are judged by their ability to create software that handles the
`conditions that crop up inside complex logical
`many possible but
`improbable
`systems This doesnt mean however
`they should render that
`that
`readiness
`to
`handle offbeat possibilities in the user interface The presence of might-on-will
`
`0151
`
`

`
`138
`
`PART III THE BEHAVIOR
`
`Clear
`
`All
`
`Formats
`
`Ffl1UkIS
`
`Notes
`
`0KJV
`______
`cancel
`
`iHpi
`
`Figure 11-4
`In Excel Version 4.0 this dialog box popped up every time you pressed the DEL key This
`human it means that you have
`is quite reasonable if you are
`computer but
`if you are
`every time you try to do the high-proba
`to deal with the remote possibilities of deletion
`bility clearing of the formula Using Excel with this dialog was
`like listening to the sym
`phony pause every time the conductor had to turn
`page on the score Thankfully
`this little gem in Excel 5.1
`Microsoft obliterated
`
`Dont put might on will
`
`is
`
`for user
`
`interfaces designed by programmers Dialogs con
`dead giveaway
`hundred times
`day sit side-by-side with
`trols and options that are used
`year or never One of the
`and options that are used once
`dialogs controls
`most potent methods for better orchestrating your user
`interfaces
`ing the possible from the probable
`
`is segregat
`
`that conform to prob
`The remedy to this situation is to create user interfaces
`can easily see Excel having an advanced delete
`abilities and not to possibilities
`command available from menu item that gives me access
`to the dialog box we
`just condemned
`rare cases where want to
`could use it for those exceedingly
`notes or formats instead of just the formula The program could then
`doing the obvious delet
`leave the DELete key for quickly and unobtrusively
`interface would
`ing the contents of the field the formula In this case the user
`would notice it less and it would be bet
`become quieter and less obtrusive
`taking away from the power of the program
`
`ter without
`
`delete
`
`0152
`
`

`
`CHAPTER 11 ORCHESTRATION AND FLOW
`
`139
`
`Quantitative information
`
`The way that
`
`it can
`
`information is another way that
`program represents
`users consciousness One area frequently abused
`obtrude noisily into
`representation of quantitative or numeric information If an application
`the Microsoft
`it can do what
`to show the amount
`free space on disk
`of
`Windows 3.x File Manager program does and come right out and give you the
`number of free bytes as shown in Figure 11-5
`
`is the
`
`needs
`
`j-Juidvue
`F- winfax
`Lejwinword
`
`IC 231 728KB free
`
`047248KB total
`
`ITotal
`
`files 2j67473 bytes
`
`Figure 11-5
`
`This is the bottom inch or so of the Windows
`3.x File Manager program It takes
`pains to tell me how much of my disk is used and how much is free down to the billionth
`on my disk
`help me understand whether
`need
`to clear out space
`Does this precision
`the disks status to me
`number
`the best way to indicate
`Certainly not Furthermore is
`representation that showed the space usage in
`proportional manner
`Wouldnt
`graphical
`like gas gauge be more meaningful The way this information is rendered guarantees
`to know it
`need
`that my concentration will be broken
`
`great
`
`if
`
`disk storage it ceases
`
`In the lower left corner of the program it tells me the number of free bytes and
`find these numbers very hard to read
`the total number of bytes on the disk
`thousand million bytes of
`and extremely hard to interpret With more than
`to me just how many hundreds are left
`to be important
`shows me down to the kilobyte
`how many are used
`the display rigorously
`yet
`and how many are left Even while the program is telling me the state of my
`really need
`disk with exaggerated precision it is failing to communicate What
`can add
`to know is whether or not my disk is getting full or whether
`new
`20 MB program and still have sufficient breathing room Instead
`concentrating on those numbers like they were Egyptian
`hieroglyphics trying
`to make sense of them It isnt easy because the numbers dont help me to visu
`
`find myself
`
`alize the problem
`
`good numeric presentation
`Visual presentation expert Edward Tufte says
`that 231728 KB
`the question compared to what Knowing
`should answer
`it is 22 percent of the
`than knowing that
`are free on my hard disk is less useful
`disks total capacity Another Tufte dictum is show the data as opposed to
`small bar or pie chart showing the used and unused portions
`telling about it
`
`0153
`
`

`
`140
`
`PART III THE BEHAVIOR
`
`the scale and pro
`in different colors would make it much easier to comprehend
`portion of hard disk use It would show me what 231728 KB really means
`shown The
`This bar could easily be displayed where the numbers are currently
`numbers shouldnt go away but they should be relegated to the status of cap
`tions on the data and not be the data itself They should also be displayed with
`precision The meaning of the information
`more reasonable and consistent
`would be shown visually while the numbers would merely add support
`
`right hand giveth while their left hand taketh away
`In Windows 95 Microsofts
`The File Manager with the numbers shown in Figure 11-5 is dead replaced
`by the Explorer dialog box shown in Figure 11-6 This replacement
`is the prop
`hard disk The Used space is shown in blue
`erties dialog associated with
`read
`and the Free space is shown in magenta making the pie chart an easy
`glance the sad truth that GRANFROMAGE is packed
`Now
`
`can see at
`
`to
`
`the gills
`
`isnt built
`into the Explorers
`that
`interface
`pie chart
`nice
`Unfortunately
`have to seek it out with menu item To see how full my disk is
`Instead
`smoking halt bring up modal dialog box
`must first bring the program to
`that although it gives me the information want
`takes me away from the place
`where want to know it The Explorer is where
`can see copy move and delete
`its not where
`can see if things need to be deleted That nice blue
`files but
`
`into the face of the Explorer
`and magenta pie chart should have been built
`Besides what if didnt know how to find that nice pie chart dialog box What
`have had that GRANFROMAGE was full
`warning would
`
`Graphical
`
`input
`
`information in
`
`Software frequently fails to present numerical
`graphical way
`Even rarer than this though is the ability of software to enable graphical
`input
`lot of software lets users enter numbers and then on command converts
`graph Few products
`those numbers into
`graph and on
`the user enter
`vector of numbers By contrast most mod
`command convert
`that graph into
`ern word processors let you set tabs and indentations by dragging
`marker on
`ruler The user can say in effect Here is where want the paragraph to start
`and let
`1.347 inches in from the left
`the program calculate that
`it is precisely
`to enter 1.347
`the user
`margin instead of forcing
`
`let
`
`0154
`
`

`
`CHAPTER 11 ORCHESTRATION AND FLOW
`
`141
`
`rerie.ral
`
`Tools
`
`Sharinq
`
`Label
`
`_____________
`
`Type
`
`Local Disk
`
`Used space
`
`507.265.024
`
`bytes
`
`483MB
`
`Free space
`
`32.374.784
`
`bytes
`
`30.8MB
`
`Capacity
`
`53863S..808
`
`bytes
`
`514MB
`
`Drive
`
`OK
`
`Cancel
`
`Figure 11-6
`
`injection Instead of
`95 Microsoft has replaced the electric chair with lethal
`In Windows
`numbers at the bottom of the File Manager
`you can request
`long inscrutable
`properties
`see how your disk is
`dialog box from the Explorer The good news is that you can finally
`graphic way with the pie chart The bad news is that you have
`to
`doing in meaningful
`information that should
`stop what youre doing and open
`dialog box to see fundamental
`be readily available
`
`The new category of intelligent drawing programs like Shapewares Visio are
`at this Each polygon that
`on screen is rep
`the user manipulates
`getting better
`small spreadsheet with
`row for each point
`
`resented behind the scenes by
`and
`
`and
`
`column each for the
`
`coordinates Dragging
`
`polygons vertex
`
`on screen causes
`
`the values
`
`resented by the
`
`and
`
`point in the spreadsheet
`in the corresponding
`rep
`to change The user can access
`the shape either
`
`values
`
`graphically or through its spreadsheet
`
`representation
`
`This principle applies in variety of situations When items in
`them ordered
`the user may want
`them in order of personal preference
`
`reordered
`
`want
`
`alphabetically
`
`but he may also
`something no algorithm can offer
`
`list need to be
`
`0155
`
`

`
`142
`
`PART III THE BEHAVIOR
`
`The user should be able to drag the items into the desired order directly with
`out an algorithm interfering with this fundamental
`
`operation
`
`Reflect
`
`the status of the program
`When somone is asleep heusualIy lopks asleep When someone is awake he
`looks awake When someone is busy he looks bisy his eyes
`are glued to his
`work and his body language is closed and preoccupied When someone is unoc
`his body is open and moving his eyes are quest
`cupied he looks unoccupied
`this kind of subtle
`ing and willing to make
`People not only expect
`contact
`from each other they depend on it for maintaining social order
`feedback
`
`Our programs should work the same way When
`program is asleep it should
`program is awake it should look awake and when its busy
`look asleep When
`it should look busy When the computer
`is engaged in some significant
`diskette we should see some significant external action
`action like formatting
`from black to
`diameter image of
`one-inch
`such as
`white When the computer
`to the bands sent If
`the fax changing colors in horizontal
`lines corresponding
`response from remote database it should visu
`the program is waiting for
`ally change to reflect its somnambulant
`
`internal
`
`is off sending
`
`diskette siowly changing
`fax we should see
`
`small image of
`
`state
`
`got was
`
`Lead follow or get Out of the way
`program that generated tables When
`table what
`once used
`requested
`didnt ask for
`dialog box asking me lots of questions but no table
`the piogiam Just give me
`table Whydint
`asked for
`big dialog
`If it wasnt the table wanted Id at
`had to do
`to see what
`least be motivated
`it because the program clearly was willing to work with me If it gave
`to change
`ito change its properties it would be
`table fit then let me manipulate
`much more effective solution
`
`tble
`
`Usersnot
`
`with
`
`but normal peopleare very uncomfortable
`power-users
`program what they want Users would much rather
`see what the
`explaining to
`to make it really right In most
`program thinks is right and then manipulate
`cases your program can make
`fairly correct
`
`that
`
`assumption
`
`based
`
`on past
`
`experience
`
`used the word think in conjunction
`Dont misunderstand me Just because
`the software should actually
`be intelligent
`program doesnt mean that
`with
`thing to do by reasoning Instead it should
`and try to determine
`the right
`
`0156
`
`

`
`CHAPTER 11 ORCHESTRATION AND FLOW
`
`143
`
`simply do something
`
`that has
`
`statistically
`
`tools for shaping that
`provide the user with powerful
`first attempt
`blank slate and challenging him to have at it This way
`merely giving the user
`the program isnt asking for permission to act but rather asking for forgiveness
`the fact
`
`after
`
`good chance of being correct
`instead of
`
`then
`
`Ask forgiveness not permission
`
`blank shte is
`
`difficult
`
`starting point
`
`It is so muchasier to
`
`left off
`
`To most pcople
`an approx
`begin where someone has already
`user can easily fine-tune
`by the program into precisely what he desires with less risk of
`imation provided
`it from nothing
`exposure and mental effort than he would have from drafting
`good memo
`As we will discuss in Chapter 14 endowing your program with
`this
`
`ry is the best way to accomplish
`
`Reporting to the user
`
`to know what is happening This goes along
`For programmers it is important
`with being able to control all of the details of the process For users it is dis
`concerting to know all of the details of what
`is happening Many people are
`the database has been updated for example It is bet
`frightened to know that
`ter for the program to just do what has to be done issue reassuring clues when
`a1l is well and not burden the user with the trivia of how it was accomplished
`any programs are quick to keep users apprised of the programs progress even
`asked nor wants to know Programs pop up dialog
`though the user has neither
`have been made that records have been post
`boxes telling us that connections
`and other
`ed that users have logged on that 274 transactions were recorded
`To software engineers
`are equivalent
`these messages
`humming of the machinery the babbling of the brook
`is well To the user however
`on the beach they tell us that all
`
`useless factoids
`
`waves crashing
`
`to the
`
`the white noise of the
`
`these reports
`night like unattended
`
`can be like eerie lights beyond the horizon like screams in the
`the room
`
`objects
`
`flying about
`
`As
`
`said before the program should make clear that
`can be offered in more subtle way In particular
`detailed feedback
`
`it is working hard but the
`
`reporting
`
`0157
`
`

`
`144
`
`PART III THE BEHAVIOR
`
`information like this with
`
`modal dialog box brings the interaction
`to
`stop
`forces me to
`In Figure 11-6 we saw how Microsoft
`for no particular benefit
`stop other things when want to know how much space is left on my hard disk
`The answer
`to this common question should never be relegated
`to modal dia
`log box but should be constantly visible whenever
`the Explorer
`
`is running
`
`to report normalcy When
`that we not stop the proceedings
`It is important
`some event has transpired
`that was supposed to have transpired never report
`for events that are out of the normal
`dialog box Save dialogs
`
`this fact with
`
`course of events
`
`Design tip Dont use dialogs to report normalcy
`
`By the same token dont stop the proceedings
`lems that are not serious If the program is having trouble getting through
`busy signal dont put up
`dialog box to report it Instead build
`status indi
`into the program so the problem is clear to the interested user but
`cator
`obtrusive to the user who is busy elsewhere
`
`and bother
`
`the user with prob
`
`is not
`
`The key
`the user
`to orchestrating
`approach You must ask yourself whether
`particular
`user rapidly and directly to his goal Contemporary
`programs are often reluc
`it in advance But
`to take any forward motion without
`the user directing
`see the program take some good enough first step and
`users would rather
`is desired This way the program has moved the user
`it to what
`
`interaction
`
`is
`
`to take
`
`goal-directed
`
`interaction
`
`moves the
`
`tant
`
`then adjust
`
`closer
`
`to his goal
`
`Where were you on the night of the sixteenth
`Jjjjjjj
`
`for shifting into what
`Programs have
`proclivity
`where they begin demanding answers from the user
`
`call
`
`that
`
`They enter interrogation mode for two reasons Sometimes they seem to feel
`it is their right to demand answers from the user
`In this respect
`they are
`totally mistaken The program should instead offer choices to the user There is
`choices and demanding answers The second
`between offering
`big difference
`reason is that many programs cant just do what they are told but must instead
`demand that you micro-manage their job
`
`These two reasons are often combined resulting in obnoxious dialog boxes
`You ask
`the program to perform function
`and it takes
`the opportunity
`
`to
`
`0158
`
`

`
`CHAPTER 11 ORCHESTRATION AND FLOW
`
`145
`
`demand that you explain to it in exacting detail precisely how you want it to do
`The program should not use your request as an excuse to enter
`the function
`interrogation mode
`
`Dialog boxes have very little right to demand information from humans They
`of the user and
`are merely digital scum and they exist only at the sufferance
`the program should
`program to perform function
`not vice versa If you ask
`you about your precise
`and not begin to interrogate
`perform that
`demands to the program you
`demands If you wanted to express your precise
`would have requested the precision dialog instead
`
`function
`
`document
`For example when
`they respond by
`ask most programs to print
`specify how many copies to
`complex dialog box demanding that
`putting up
`is what paper feeder to use what margins to
`print what the paper orientation
`set whether the output should be in monochrome or color what scale to print
`to print the cur
`fonts whether
`fonts or native
`it at whether
`to use Postscript
`rent page the current selection or the entire document and whether
`file and if so what name should it get Whew All of those options sure are
`is what
`wanted was to print the document and that
`thought
`neat but all
`
`to print
`
`to
`
`asked for
`
`command
`design would be to have
`much more reasonable
`to CONFIGURE THE PRINT The PRINT
`command
`another
`issue any dialog but would just go ahead and print either using previous set
`function would
`vanilla settings The CONFIGURE THE PRINT
`tings or standard
`offer up all of those choices about paper and copies and fonts It would also be
`very reasonable to be able to go directly from the configure dialog to printing
`
`command would not
`
`to PRINT and
`
`There is
`
`between configuring and invoking
`big difference
`include the former In
`the latter shouldnt
`mer may include the latter but
`ten times for every one time
`command
`to invoke
`general any user will want
`to make the user ask explicitly for the con
`he wants to configure it It is better
`figurator one time in ten than it is to make the user reject the configurator nine
`times in ten
`
`function The for
`
`be presented is an
`
`The idea that if you have available choices
`they should
`than the more user-centered probabil
`expression of possibility thinking rather
`it doesnt nec
`ity thinking Just because it is possible to fine-tune
`high probability that
`there is
`
`essarily
`
`follow that
`
`function
`
`the user will want to
`
`0159
`
`

`
`146
`
`PART III THE BEHAVIOR
`
`Earlier versions of Word were notorious for this problem would finish edit
`from the menu then get up from my chair
`document
`request PRINT
`ing
`cup of coffee When
`stretch and walk down the hall for
`returned expect
`ing to find my printed document
`neatly stacked in the output
`tray of my printer
`would be frustrated
`just mindless dialog idling peace
`to find no piintout
`for me to con
`
`fully in the middle of the screen waiting patiently till doomsday
`firm that yes merely wanted one copy
`would pull my hair and press the
`redundant mocking OK button then stare disgustedly at
`the screen while the
`slowly printed The interrogation-mode
`dialog box wasnt usually
`document
`it was wrong The latest ver
`it was not expected therefore
`needed therefore
`sion of Word still works this way but the PRINT button on the toolbar immedi
`single copy without presenting an intervening
`unexpected
`ately prints
`boxprecisely what
`
`expect
`
`dialog
`
`Microsofts
`
`solution is
`
`reasonable
`
`rule of thumb Put
`
`immediate
`
`to function-con
`
`dialogs
`
`are better
`
`printing
`to functions on buttons in the toolbar and put access
`access
`figuration dialog boxes on menu items The configuration
`tools while the buttons provide immediate action
`
`pedagogic
`
`Sensible interaction
`
`One of the essential parts of orchestrating
`good user interface
`is interacting
`sensible manner This deceptively simple statement
`with the user in
`
`seems
`
`obvious yet programs violate it constantly
`
`reason than habit or pro
`Many programs put dialog boxes up for no better
`gramming ease For example in the File Manager program in Windows 3.x
`file the program puts up the dialog box shown in
`to rename
`ask
`
`if
`
`Figure 11-7
`
`fields but entering text in the top
`The two outlined boxes are normal text-edit
`to this dialog box is to di
`one has no effect on the file My natural
`reaction
`rectly edit the file name the program offers me in the top edit box That is if
`want to change WUIDABS.DOC
`to WUIDABS1 .DOC would simply position
`the mouse between the
`and the dot click to get an edit caret and then enter
`the number
`from the keyboard followed by an ENTER to close the dialog box
`The tragic part of this story is that
`to take such
`it is perfectly
`legal
`sequence
`of actions However
`The
`do take those actions nothing sensible happens
`dialog box closes and the program continues blithely on its merry way with no
`that no change was made to the files name
`acknowledgment of the fact
`
`if
`
`0160
`
`

`
`CHAPTER 11 ORCHESTRATION AND FLOW
`
`147
`
`Current Directory
`
`\MSOFFICEWINWORD
`
`From
`
`DOC1DOC
`
`LietJ
`
`Figure 11-7
`
`dialog box from the Windows
`3.x File Manager program It
`This is the File Rename
`with the user in numerous ways
`good interaction
`the rule of orchestrating
`violates
`95 Are there
`got rid of it in Windows
`including its very existence Microsoft
`like this one in your software
`dialogs
`
`finally
`
`second
`
`the name of the file must enter the entire new file name in the
`To change
`from the key
`would have to enter WUIDABS1.DOC
`text edit box
`from the pro
`the change The reaction
`board and then press ENTER to accept
`this time File
`from the first set of actions
`
`gram is identical
`
`to that
`
`except
`
`renames the file Lets examine the several significant
`Manager actually
`of the design of this dialog box
`
`failings
`
`The first field is an edit box that doesnt edit
`
`If entering text
`
`make the field
`
`useful action why did Microsoft
`into the topmost field is not
`text-entry field The field should be for text output only sim
`ilar to the Current Directory fieldjust above it Because the field allows
`
`text
`
`to the user that
`
`text manipulation
`
`is
`
`the message
`manipulation it conveys
`and effective action If this is not true the field should not offer
`The program should not
`
`meaningful
`
`such affordances
`
`lie to the user
`
`that entering something into this field actually
`effect but an effect
`and unwanted
`nonsensical
`effect
`to me
`nonetheless My technical
`editor Neil Rubenking pointed it out
`even he cant understand what possible use it has This is the way he
`although
`explained it to me If you edit
`in the top line to the name of another
`the text
`that file For example say you
`existing file the rename command will affect
`file FOO and choose FileiRename Change FOO to BAR in the
`top box fill in SNAFU in the bottom and youve renamed BAR to SNAFU
`leaving FOO unchanged Weird Sure This begs
`the question was this
`
`must confess
`
`It is
`
`undiscoverable
`
`does have an
`
`highlight
`
`0161
`
`

`
`148
`
`PART III THE BEHAVIOR
`
`intentional
`
`or an accidental
`
`side effect of using an edit gizmo where an output-
`only text gizmo was required Hey Neil wanna bet it was an accident Actually
`this begs another question How did Neil discover this behavior
`
`The program doesnt fill in the second field for you
`Now lets look at
`
`user
`
`the top
`
`the second text-edit gizmo If the lower text-edit gizmo is the
`the new filename why doesnt
`the program give the
`proper place to construct
`head start by filling the field in with the current name of the file The
`is what often tricks me into trying to edit
`lack of this obvious offering
`field The program should be saying here is the field as it currently
`exists edit
`it to what you desire Instead it is saying tell me exactly what you want and
`dont really care if it takes extra work on your part
`
`file like the word processing
`Frequently when want
`previous example will only be thinking about
`the eight-character
`
`to rename
`
`file in the
`
`of the three-character
`
`file name
`of
`file extension to the discretion
`
`leaving management
`the program When
`to add the file
`key in the new name will naturally forget
`extension the .Doc Of course the dialog box will merrily rename the file to
`something that my word processor will no longer
`Adding insult to
`recognize
`itself will now not know what
`to do when
`injury File Manager
`on the new file namewithout
`
`double-click
`
`any memory the File Manager
`depends utterly
`to do So this sequence
`extension to know what
`on the three-character
`occurs to me rename
`file omitting the extension then try to launch it with
`for my trouble My
`double-click and get an error message from File Manager
`friend Richard Schwartz
`at Borland has
`this type of soft
`ware interaction He says Ask me if Im fish dutifully reply Are you
`fish and he snaps out No Why do you ask Arrrrgh
`
`often
`
`riddle that
`
`illustrates
`
`Regardless of how
`use this dialog box will always end up with some file
`name in the second box otherwise nothing will happen Although the range
`that will enter some
`of possible entries is infinite it is undeniably
`probable
`thing in the second gizmo If the program was better prepared for the proba
`ble case it would be bigger help to the poor user
`
`rqbab
`
`The appropriate way to handle this second field would be to fill it in with
`copy
`of the current
`file name and then completely select
`the entire field By the
`standard rules of behavior
`
`for selection any single keystroke will replace
`
`the
`
`0162
`
`

`
`CHAPTER 11 ORCHESTRATION AND FLOW
`
`149
`
`different all
`
`the name to something completely
`selected portion so if wanted to change
`would have to do would be begin typing The old name would
`and be replaced by the newly typed name On
`instantly blink out of existence
`between
`single location
`could easily point with the mouse to
`the other hand
`any two characters and the selection would become
`The net effect would be better
`tion or correction
`for either choice might make
`
`text-entry caret
`than it is now with support
`
`for inser
`
`field that
`
`is pointless
`
`in
`
`The program doesnt alert you to failure
`When the program leads me down the garden path teasing me with an edit
`fall for it the program doesnt even have the
`to edit and
`to tell me First it doesnt say Hey you cant enter text there
`decency
`Second it doesnt say Hey you made some changes
`place where their
`is meaningless On two counts the dialog box fails to remain aware of
`effect
`this kind of
`what is happening The standard dialog box code doesnt support
`this type of failure to
`consider
`programmer must supply it
`awarenessthe
`one of the more frustrating aspects of poorly
`folder and asking him to
`designed software It is like handing your secretary
`it he says Okay and then awhile later you notice the folder spilled
`thoughtlessly on the floor When you ask him about it he doesnt apologize
`tells you to pick it all up and hand it to him again It is very aggravating
`but
`cant do that but
`it seems like the program isnt saying Sorry
`because
`dont care about your stupid problems
`
`maintain situational
`
`awareness
`
`file
`
`rather saying
`
`like
`
`need
`
`capabilities
`
`The dialog isolates the function from context
`file really mean something less specific
`When
`ask to rename
`can keep track of it better There are sev
`to do something with this file so
`rename This dia
`this but only one of them is an actual
`eral ways to accomplish
`file from the context of managing
`log box removes the function of renaming
`will con
`my file system which is the purpose of the File Manager Often
`to move the file to another direc
`file and then decide instead
`sider
`r

This document is available on Docket Alarm but you must sign up to view it.


Or .

Accessing this document will incur an additional charge of $.

After purchase, you can access this document again without charge.

Accept $ Charge
throbber

Still Working On It

This document is taking longer than usual to download. This can happen if we need to contact the court directly to obtain the document and their servers are running slowly.

Give it another minute or two to complete, and then try the refresh button.

throbber

A few More Minutes ... Still Working

It can take up to 5 minutes for us to download a document if the court servers are running slowly.

Thank you for your continued patience.

This document could not be displayed.

We could not find this document within its docket. Please go back to the docket page and check the link. If that does not work, go back to the docket and refresh it to pull the newest information.

Your account does not support viewing this document.

You need a Paid Account to view this document. Click here to change your account type.

Your account does not support viewing this document.

Set your membership status to view this document.

With a Docket Alarm membership, you'll get a whole lot more, including:

  • Up-to-date information for this case.
  • Email alerts whenever there is an update.
  • Full text search for other cases.
  • Get email alerts whenever a new case matches your search.

Become a Member

One Moment Please

The filing “” is large (MB) and is being downloaded.

Please refresh this page in a few minutes to see if the filing has been downloaded. The filing will also be emailed to you when the download completes.

Your document is on its way!

If you do not receive the document in five minutes, contact support at support@docketalarm.com.

Sealed Document

We are unable to display this document, it may be under a court ordered seal.

If you have proper credentials to access the file, you may proceed directly to the court's system using your government issued username and password.


Access Government Site

We are redirecting you
to a mobile optimized page.





Document Unreadable or Corrupt

Refresh this Document
Go to the Docket

We are unable to display this document.

Refresh this Document
Go to the Docket