Click here to monitor SSC

Tony Davis is an Editor with Red Gate Software, based in Cambridge (UK), specializing in databases, and especially SQL Server. He edits articles and writes editorials for both the Simple-talk.com and SQLServerCentral.com websites and newsletters, with a combined audience of over 1.5 million subscribers. You can sample his short-form writing at either his Simple-Talk.com blog or his SQLServerCentral.com author page. As the editor behind most of the SQL Server books published by Red Gate, he spends much of his time helping others express what they know about SQL Server. He is also the lead author of the book, SQL Server Transaction Log Management. In his spare time, he enjoys running, football, contemporary fiction and real ale.

Application Usability and the JFDI Button

Published 2 September 2008 9:14 am

It is strange how we, as software developers, get caught up in using conventions in applications that seem to be designed merely to irritate the users. Why do we do it? I think that it is because we tend to think that whatever Microsoft does is best practice.

One of the worst habits is to have unnecessary pop-ups and dialog-boxes. Vista is horrible in pursuing this vice. Even in response to the seemingly most straightforward of request for action, it apparently cannot resist subjecting the user to an onslaught of silly, nannying dialog boxes. “Are you sure you want to do xxx?” Yes…Click. “This requires your authority to yyy?” YES, I know…Click. “You are about to zzzz, click OK to Confirm” Yes, Yes, YES!!! For goodness sake.

 

The worst of these dialog boxes pop up after a short delay, usually at the beginning of a long copying job, and just after one has nipped off to the pub for lunchtime refreshment. One returns an hour later only to find that the process hasn’t even started and instead the dreaded “Are you sure you wish to overwrite xxxx?” dialog box is gazing limply at you from the screen.

 

Phil Factor suggested to me that every application or operating system should have a JFDI button next to the ‘OK’ and ‘Cancel’ button, meaning ‘Just Flaming Do It!’…or words to that effect. This button can be clicked aggressively, and would force Windows to bypass any further wearying questions that it might have liked to ask you before actually doing the FO (Flamingly Obvious). The forceful punching of the JFDI button should be accompanied by a new Windows sound; perhaps a sharp slap followed by a squeak would be appropriate.

 

Probably the most ubiquitous and grisly example of this excessive nannying is the “cute” help feature. It is bad enough to have a ‘Welcome to xxxxx’ message from an inanimate box. Surely there is no-one out there who actively enjoys being given unhelpful advice by an animated paper-clip or cartoon dog? Mercifully its influence seems to be diminished slightly nowadays, but there are still numerous third-party applications that can’t seem to resist the allure of the playful animation. They are great for presentations (well, actually, great is overstating it) but awful in software one has to use as part of one’s everyday work, where their appeal rating reaches zero after about day 2 of use.

 

I loathe familiarity from a machine. I’m faintly irritated by talk of ‘My this’ or ‘My that’. I openly flinch when my operating system tries to engage me in conversation. Just do what it is I’m asking you to do….now!

 

Perversely, of course, at times when you actually could do with a hint or pointer, the nannying application that seconds earlier was testing your patience to its very limit with inane, pointless questions, suddenly becomes resolutely tight-lipped. This practice is chiefly exemplified by the “options” screens in many applications. Half the options are grayed out including, inevitably, the option that you want to set. Why? Who knows? There is usually no help text, or tooltips. The application isn’t going to give up the secret of why those options are grayed out, or what you have to do in order to get to the option.

 

Amnesia is another Microsoft affliction that seems to have caught on. If you always store your documents in a particular path, why continue to insist on defaulting to ‘My Documents’. If you always change the ‘open’ dialog box to reveal details, why always revert to icons?

 

Usability isn’t a new science. The man-machine interface has been studied since the creation of the first Visual Display Unit. Why then are such elementary mistakes made? Why are there so many applications that, far from helping the user, seem intent on actively inducing bad temper?

 

We propose to compile a list if the very worst irritations and quirks that Simple-Talk readers have discovered in Microsoft or third party software. Our hope is that this list of shame gets pinned up on company notice-boards around the world. It will certainly be going up on ours, and we’d love to hear your nominations!

 

There will be a $50 Amazon gift voucher for the best nomination and three runners-up prizes of the much-coveted Simple-Talk gift bag, so add your suggestions as a comment to this blog (you will need to be signed in)!

 

Cheers,

 

Tony.

34 Responses to “Application Usability and the JFDI Button”

  1. Saggi Neumann says:

    SQL wise, one of the most irritating messageboxes in SSMS is the one you get when you (mostly accidently) click “Diagrams” in the object explorer1 and you get the annoying message “This database does not have one or more of the support objects required to use database diagramming. Do you wish to create them?”

    Wouldn’t it be simpler not to show any diagrams when the tables aren’t there (which is obvious) and only create the tables when I try to create a diagram?!

  2. mfhobbs says:

    Number #1 is that single-clicking twice (e.g. in Windows Explorer) for some insane reason means ‘Rename File’. You know some PM back in the day insisted that: a) two single-clicks has meaning; and b) “Rename” is important enough to warrant assignment to this combination. Woe was the day that this ended up in Windows and this person should be brught to justice before an international jury. As a result millions of hours are wasted all around the world every day and civilization is the lesser for it.

    Number #2 in is Microsoft Excel’s File/New spreadsheet which defaults to having 3 tabs so your first action is to delete the 2 you don’t need – but worst is when someone emails you a spreadsheet and there are always those three tabs and you feel obliged to click on them all just to make sure you’re not missing anything…

    How about those lovely non-sizeable selection dialogs where you spend minutes valiantly trying to multi-select items from a tiny listbox only to miss-click the horizontal or vertical scrollbar and lose your selection… the perfmon on XP gets on my wick and the Vista one is even more annoying because you’d think if someone went to the trouble of redesigning the UI that they’d do it properly.

    Cheers,
    -Mat

  3. lorne says:

    Another problem is the inability to make setting effective globally. Each tool has it’s own options dialog to set anything and there’s no way to take the data from one to another – even within Office, which is supposed to be so integrated. Coming from a UNIX background, where I can set environment variables that are read by all applications or use OpenOffice where settings apply to all the programs in the suite, makes it much more complicated in Windows

  4. gsuttie says:

    Installation of a IE 7 on a new machine and you crak open IE to get the runonce aspx page with IE 7 that allows you to select all of the crappy options and then once you close it down go for a coffee come back and yip you guessed it runonce.aspx page has re-appeared – I know the registry fix is simple enough but its bliddy annoying if you swap from pc to pc a fair few times during the week.

  5. pinkyjong says:

    The usability, the matter that all the developers should drive in a pefect way but this doesn’t happen.

    You mention something important “The best practices” is hard to undestand this concept because the software have a social dimension, this means that the best for somebody could be the worst for somebody else, in the case of the programs like windows is software designed for any kind of user, so I want to believe that microsoft make the interface according the best for the most users (democratic systems hehe).

    But what happen with our applications, we really take the time to undestand the needs of the user? the way that they use the machine? I guess not and that is the reason we found in the application a lot of question before to can do something, the programmer ask during run time the questions didn’t during desing time.

    -J

    ps. Sorry by the english I still practicing.

  6. Ryushin says:

    Most anoying usability issue?
    Context help that states the obvious, eg “Enable XYZ”, find that ? icon in the top right, choose it to get help to find out what “XYZ” is, only to be greeted by a little box that states “Checking this box enables XYZ” … yes, I gathered that.

    Also, I’ve just found that in Vista when I try to use that ? icon in outlook XP, I get:
    “The Help for this program was created in Windows Help format, which depends on a feature that is not included in Windows Vista.”

    So I’ve got to go back to a Microsoft website to download and install a utility to get help that is installed and viewable on every other version of windows …

  7. Alek Kirstein says:

    Sure would have helped to have the “blue screen of death” actually return usable information more than random clues to what has obviously taken priority as the most important event on the computer – its utter failure. I mean anything is better than a memory dump for 99.999999999% of the world, even a short “you are SOOO flamed up!” gives a more direct communication to the would-be troubleshooter… i.e. “display is wack” or “irq conflict dummy!”, even a simple “i’m not telling you why your machine just died” is better than a memory dump, which personally leaves me wondering aimlessly why I can’t read memory dumps…a wasted thought process for sure…

  8. rodandy says:

    My biggest gripe is not being able to accomplish simple tasks by using the keyboard instead of a mouse. Sometimes there is no keyboard shortcut, or perhaps the tab sequence to move the focus to the desired button is in an illogical order or skips the button or field you need entirely. Finally, sometimes the keyboard shortcuts exist, but are not documented or are buried so deeply in the documentation that you never find them.

  9. TheBear says:

    My first and foremost biggest irritation is having a message box pop up on my screen with information (about an error or something) and have absolutely no way to copy the text to the clipboard. Who thought up the label control anyway? If there is text on the screen I should be able to select it.

    My second complaint is the dreaded non-sizing dialog box. I realize in the beginning it was a little difficult to re-size all the controls, but with today’s development software, there is no excuse not to have resizing on every window. It is just laziness on the side of the programmers. And it is so inconvenient (especially in the Event Viewer) as you are looking through the details of the errors and every one of them you have to scroll down to see some critical information (only to find out it wasn’t critical) and on to the next one.

  10. Karma says:

    @mfhobbs

    Excel–>Tools–>Options–>General–>Sheets in new workbook: Set to 1

    Enjoy :)

  11. timothyawiseman@gmail.com says:

    Some people like the animated helpers, namely my 2 year old. He runs up and shouts “PUPPY” every time he sees the dog helper in the search function. And….well….I can’t think of any examples that are much older than 2.

  12. Dan G says:

    How about those annoying ‘…There has been a problem, contact your Network Administrator’? Where is the ‘Hello… McFly…. I am the Network Administrator.. Now what do I do?’ button?

  13. klocklo says:

    My biggest annoyance is that every developer thinks their piece of software is the most important software I use. This annoys me in many ways.

    1) Just about everything thinks it is so important that it tries to load at least part of itself when I first boot or log onto my computer.

    2) Every application thinks that it is so important that any message box needs to pop up over everything else and tell me something. There is a reason I minimized it or have it behind other windows. If you want my attention, start flashing in my taskbar.

    3) If I launch an application and bring up another application to do some work while I wait for the new one to finish loading, don’t steal my focus for every little window you bring up while loading. The worst offender I can think of for this behavior is GoToMeeting v4. I think the software itself is wonderful, but if you attempt to do anything else between the time you launch the meeting and the time it finishes loading, you will end up pulling your hair out. It will take back the focus about as quickly as you take it.

    So, if you develop applications, please remember that yours is not the most important one for most of your users, and even if it is the most important for some, they will sometimes still want to work in another app without being disturbed by your popup.

  14. GilaMonster says:

    My pet peeve is meaningless error messages. Sharepoint takes several prizes here. It should not take half an hour to figure out that “A severe error has occurred” actually means that the sharepoint service account doesn’t have create database rights.

    Or things like “An error has occurred. Contact your system administrator”. Assuming I have a system administrator to contact, what do I tell that person?

    Friendly errors are all well and good, but have an obvious way to get the details of exactly what went wrong

  15. Lee says:

    For whatever reason, apps on my workstation tend to lock up on a not infrequent basis. The problem, though, is that either Windows is reluctant to shut down an unresponsive process. Either it is unable to do so, in which case it simply does not have sufficient control over its domain; or else it is unwilling to do so, in which case it is fair to suggest that it sees the user, not the rogue process, as the problem. You right-click and select Exit — nothing. You do it again — nothing. You right-click the grey bar and select Task Manager — nothing. You do it again — nothing. Finally, it appears. You select the rogue process and click ‘End Task’ — nothing. You do it again — nothing. You do it again, and a box appears warning of dire consequences should you terminate the task, now are you sure you really want to do this? Think about it — you could be dooming those processes to an untimely death. Is there no compassion? Do you not hear the suffering of all those stack pointers and bitwise ANDs? All they ever asked was to be able to serve you, and do you hear their cries as you blythely decide to consign them to oblivion?

    I’m trying to get a process shut down, but the OS wants a debate.

    Back in my Unix days, it was easy. You use the ‘kill -9′ command. ‘Kill’ by itself is nothing more than a polite request; but ‘-9′ is the “dammit” option. You could kill anything, even your own terminal session; when you use -9, Unix assumes you know what you want. But this is Windows, and the last thing Windows assumes is that you know what you want, and so it brushes aside your requests as so much impertinence.

  16. kbearhome says:

    We use the worst application ever. It is a time/expense reporting app. (1)Every time you make a change, click Save, click Close. No window will close on its own. (2)Click on the Setup tab, drill down to the user account you want to look at. Go to another tab to look at the user’s timesheet entries then back to the user’s account. You have to click Organization, user, and then search for that user. Moving from tab to tab, it never takes you back to what you were looking at. For the administrator, it means having multiple instances of the app open. (3) Getting off track maybe, but timesheets save any entries, expense reports do not. There is no nagging reminder about losing entries if you don’t save expense reports before closing out.

  17. kbearhome says:

    Forgot one:(4) The enter key doesn’t do anything; need to click the search icon. But out of habit I hit enter and some screens wipe out all the search info I put in, others just sit there.

  18. zenon says:

    When I worked for MS back in the 90s, I wrote a fun little program that did nothing but ask you if you really wanted to quit.

    I wrote it because even back then MS had the hideous and evil habit of hiring kids newly released from college who thought good programming was exemplified by the universally irritating popup boxes they found on Windows. Monkey see, monkey do.

    No one listened to me so i quit. Their loss.

  19. MichaelElf says:

    I hate programs and websites with poor validation, especially when registering. How hard is it to validate all fields at once and tell the user that these 3 fields need values, istead of having to click the submit button 3 times to get 3 different validation errors! Whats worse is when (for websites mostly) they don’t give you a back button or send you back to your registration page, I had this with an MS site once, and when you hit the back button you loose your registration information. Probably the worst field is the username field, and these days the password field is catching up, with companies insisting passwords be of a certain lenght, alpha-numeric and have capitals in them.

  20. paschott says:

    rodandy – sounds like you’re talking about trying to set permissions or just about anything using SSMS or BIDS. Ugh. Bring back the keyboard controls. I long for the older days of being able to do a GUI-equivalent of “GRANT ALL” on everything. Same for setting properties for some control.

    SQL-related, how about the need to say that you don’t want to save all of the ad-hoc queries you’ve been writing all day long in SSMS? You could do that in QA, but it’s now apparently an MS guideline that they won’t allow that. (Won’t fix in Connect)

    I think my all-time favorite for SQL Server has to be the way it generates a script if you re-organize columns in a table (or do something it thinks will re-organize columns). It generates a whole new table, attempts to insert the data into that table, then drops the old table and renames the new one. No check on whether or not data was actually inserted into the new table. So easy to be hit by this one when making some column Not NULL and finding that all of your data just got wiped because you forgot to update the column first or missed some record or ….

    As more of a self-inflicted configuration experience – how about setting passwords to expire after 30 days with a 2 week warning period? Our users were changing passwords every 2 weeks and constantly forgetting them because we wouldn’t allow reuse of the last 10 or so passwords and they couldn’t be changed for at least 3 days. Even worse that most of the time the “change password” reminders typically started popping on a Friday, leaving a whole weekend to forget the new password. Changing that policy dropped support tickets by something like 30-40%. :)

    For some truly great examples and just generally entertaining reading, load up thedailywtf dot com (not sure if I can include URLs). I know that the stories are exaggerated to some extent, but I see a lot of truth in some of them. I subscribe through the RSS link and marvel at what some people think is a good idea at the time. (Still waiting to see some of my early code appear – I’m sure it’s just a matter of time.)

  21. mfhobbs says:

    klocklo – this is brilliant – and don’t forget those ‘stay on top’ startup splash screens that take up the whole middle of the screen.

    Karma – sweet, now just to get this done on the machines of everyone who sends me a spreadsheet…!

  22. fatherjack says:

    SQL Server:
    I have forgotten the exact message and my log files dont have and example in them but it goes along the lines of:
    An error occurred that crashed your job. Error number: 2. Error description: No error. — Genius!

    Word:
    (where to begin)
    Right click on any word in a document and the popup menu allows you to select Synonyms and then see alternatives and the Thesaurus – UNLESS THE WORD IS IN A TABLE. Having text in a table doesnt get the synonym option. WTF?

    Styles – just hideous. can explain any more as my doctor told me to keep calm so my blood pressure stays down.

    normal.dot, heaven help you if you try to make a change to that baby.

    opening a word document that was an email attachment and closing it, having made no changes whatsoever and you get a message box – Do you want to save your changes. There were no changes, what could i possibly want to save?

    Outlook:
    What do you need to do to change the dictionary if it gets set to US English rather than UK English? I have tried setting up the PC on the lay-lines on the summer solstice and chanting incantations as a last resort. still no joy, every once in a while i get told that neighbour, or colour, or stabilise are wrong. Microsoft, please get all of your applications to take the single local settings value for the whole PC, give us an option to disregard it maybe but default to all being the same. Please.

    Contacting the Exchange server is taking longer than usual. Check this box to hide this message in the future. Great. how about Check THIS box to make it work better?

    CAPTCHA
    a good idea but when you produce random strings of letters dont obscure them so much that X’s and K’s, B’s and 8′s, l’s and 1′s are so similar that you have to submit the form 5 times (i did this today i kid you not) before you get a string that has letters you can get correct. Each time, having to re-input the password, password confirmation, email and CAPTCHA string.

    Online help
    OK, your software is great but please dont leave out the help files on the install CD. Leaving them on a website and linking from your software is a bad idea. Some of us live in rural areas where the internet is only just obtainable via broadband. This means that when i get a problem an 8Mb pdf file full of help doesnt get downloaded – your software gets uninstalled.

    OK, i need the camomile tea now nurse…

  23. qwerty says:

    Only in Excel does CUT mean “put moving lines around my selection until I press a key”. PASTE also only pastes until you press a different key. Then the clip board is cleared.

    I’m used to it now.

  24. Stephen Chambers says:

    What about the windows update? Two of the most irritating things ever (one of which is quite dangerous):

    1. The constant “You must restart your computer for updates to be applied” (or words to that effect). So I click Restart Later so it will stop bugging me but without fail after every ‘N’ minutes it’s there back again annoying me beyond belief.

    2. The above can only be bettered by the same message this time with a count down timer! Have you entered a room and noticed that a dialog has popped up in your screen. As you move closer you notice some of the words on the dialog: “Windows will restart your computer automatically in 3…. 2…..1″

    Who on earth thought that was ever a good idea? A child would know that couldn’t be a good thing to do. Point number 1 I can put up with if i have to because I can at least leave it open on a second monitor out of the way with the button set to remind later in case it accidentally gets focus. Number 2 however requires constant monitoring, makes me worry about needing a loo break and it usually ends in forcing me to shut down and restart my computer when i really (really) didn’t want to. Worse of course is to come back to find you missed the timer and lost everything.

    Add to this the Adobe updater from hell which i can’t even muster the words to describe because it’s so bad and those i can muster aren’t fit for print.

    I may also need that camomile tea…

  25. Andrew Clarke says:

    (posted on behalf of David SmolikHagen)
    I nominate Vista’s annoying “welcome center” (or whatever that thing is) that pops up every time I start up Vista asking me “where I want to go today” (… or maybe that was some prior operating system’s lingo? ;-D ). (I’m HOPING there is a way to default it “off” that I just haven’t discovered yet …)
    Thanks,
    Dave

  26. Bart Read says:

    Oh boy… where to begin:

    1. That ****ing stupid ****** piece of **** Adobe updater thing. It’s rubbish in every way that it’s possible to be rubbish. And how often do you actually *need* to release patches?!? Microsoft do this great thing: they chuck out patches in an organised and coordinated fashion once a month. Adobe seem to bung ‘em out willy nilly at any random time they fancy. Just once I’d like Adobe Reader to just open the ****ing PDF that I want to read without popping anything up. Just once. Once, before say the next Olympics? Is that too much to ask?

    2. Deleting/moving/renaming files in protected locations such as Program Files, when you’re already logged in as administrator. I have to use Vista with UAC turned on. I have to, not because I particularly want to, but because I need to know our software works on Vista when UAC is enabled. Recently I had to monkey around with manifest files on Vista with ANTS Profiler 4 to ensure it could be forced to always run as administrator if needs be. This necessitated a fair amount of experimentation and testing in the installation directory in Program Files. Now I’m not especially bothered about the popup that tells me I have to elevate, but when I’ve gone to the trouble of saying, yes it was me, yes I really want to do this, please don’t pop up again asking me if I really want to delete the file. I’d already have cancelled at the previous stage if I didn’t.

    3. The “You already have a dialog box open in Outlook, please close it before continuing” popup. Words fail me on this one, it’s so ridiculous.

    No doubt I’ll shut my computer down and then think of a whole host of others.

  27. Phil Factor says:

    Tony was being optimistic if he thought that cuteness was on the decline at Microsoft. How’s this…

    ‘Hey there! I’m a public folder, and I’ve got some great news for you. In Exchange 2007 Service Pack 1 (SP1), I got my own graphical user interface (GUI)! It’s a roomy three-paned management console…and it’s all mine. I call it the Public Folder Management Console. It’s a mouthful, but you can call it PFMC for short. And it is truly in some prime real estate—the Exchange Toolbox. I can’t believe I got into this neighborhood. Only the best and most widely-used tools get in there. Yep, growing up and moving out. But it’s hard living on my own. I’ve got to cook my own meals and MOM doesn’t do my laundry anymore. But you know MOM…still trying to manage my events.’

    This is indeed grim. In case you think I’m making it up, it is on http://technet.microsoft.com/en-us/library/bb851487(EXCHG.80).aspx , which you need to look at to see Mr Public Folder. If anyone ever comes up to me, grinning like a halfwit, and says ‘Hey there! I’m a public folder’, he will get short shrift.

    All right, it is not in a user interface, but I felt you ought to know about it.

  28. ASdanz says:

    I have two pet peeves right now:

    1. Vista will throw up a messge that is is rebooting in xx minutes to install updates. The problem is if you are a non-privileged user, you don’t even get the option to defer the reboot to a more convenient time. Your only choice is to “reboot now”. You don’t even have the option of going through the dreaded dialog stream of giving more privileged credentials to continue using the machine. So, when my kids come to me to ask for help (which I’ve finally trained them to do whenever there si a popup they don;t understand) all I can say is sorry, you’ll have to save what you’re doing and come back later…

    2. Our company has implementd some form of “MySite” SharePoint feature that I naively browsed into and it created a site for me based upon my domain account. Unfortunately, Outlook can’t quite figure out how to connect to “MySite”, so I get a login dialog about every 15 minutes. No matter what credentials I put in there, it apparently fails to connect, because it asks 2 more times before going away for anotehr 15 minutes. The real frustration is when the login pops “under” everything else I’m doing, and when I try to switch to Outlook to do something, it’s dutifully waiting for this dialog that I can’t see. If an application is waiting on a modal dialog, it should always display it on top of it’s other windows. (Just not on top of other applications.)

  29. Patrick Index says:

    How about an option when you boot up Windows to Just Flaming Load Windows Quickly and of course the normal option when you go and do your weekly shop while you wait for your pc to boot up zzzzzzzz………

  30. randyvol says:

    I propose as another one of the very irritating features …
    Explorer’s fascination with always expanding the C drive folders until it focuses on the one MSFT just assumes you should use. Never mind that I have a ‘HOME’ folder set up on a share on our file server where I file all my work. Taking me there when Explorer opens up would mean that I, the user, control where I think my work should be filed.

    I’ve spent a few hours trying to figure a way to configure Explorder to point elsewhere when it starts – alas, I have not as yet found the answer – although there is probably a reg hack I could do.

  31. Anonymous says:

    Thyroid Questions and Articles Can sleeping problems sometimes be an effect of Hypothyroidism? …

Leave a Reply