No modes

February 24th, 2020  |  Published in Uncategorized

Last week I saw several articles about the passing of human-computer interface expert Larry Tesler. Most of the headlines mentioned his invention of cut-copy-paste, but if you read more deeply one of the things he really emphasized was eliminating modal interfaces—he even got a vanity license plate that said “NO MODES”.

I realized this morning that this is exactly my gripe with the Workday timesheet application: it’s extremely modal, where the one we used to use with our in-house developed HRMS was almost completely modeless.

When you went to the HRMS timesheet page, you were immediately given a form with a table for inputing this week’s hours, with links to the previous and next week or a separate page that listed several weeks you could choose from. It had ten or twelve rows (I don’t remember the exact number) for entering different types of time. The three most common types, hours worked, vacation, and sick leave, were fixed in for the first three rows, with individual pull-down menus for the rest of the rows if you needed to enter a less common type. There was a text field after the table  where you could add comments, and finally buttons for saving what you’d entered or submitting a completed timesheet for approval. When you went to a week with incomplete information, whatever you’d already entered was filled into the form fields. When you submitted a timesheet, you were shown a page showing the hours you’d submitted along with the links to the previous and next week, and another button to withdraw the submission.

In other words, almost the entire interface was two pages, one for unsubmitted weeks and one for weeks you’d already submitted. Just about anything you’d want or need to do related to your timesheet was available right on one or the other of those two pages.

Now contrast the Workday timesheet app. The first page is just a “pick the week to work on” mode. (Annoyingly, it only provides this week and last week. Since the entire experience is so awful, I usually put off completing timesheets until I have to go back more than that.) Once you’re on the week you want it only displays the hours you’ve already entered (if any) with a pop-up menu at the bottom to select a mode for entering hours. The options are “Auto-fill from Prior Week”, “Enter Time by Type”, “Quick Add”, “Request Absence”, “Review Time by Week”, and “Run Calculations”. To be honest, I’ve never tried the bottom three options so I have no idea what they do. Auto-fill sounds like a good idea but my schedule is erratic enough (and I fill out my timesheet infrequently enough) that figuring out if it’s appropriate is more work than just filling out the time in most cases.

So suppose you decide to go with the so-called “Quick Add” option. What it really means is “only add one type of hours,” so now you’re shown a page where you get to pick which type of time you want to add. Fortunately “hours worked” is selected by default, so usually you can click a button and finally get to a form where you can input hours worked this week. Oh, but it doesn’t fill in any hours you’ve already entered, so if you’ve already entered hours for some days you have to remember which ones.

On the other hand, the “Enter Time by Type” is the one to go to if you need to enter, say, a few days a sick leave and a few days of work. This is the closest you’ll get to the HRMS interface, although even here you have to explicitly create a new row for each type of hours.

What do you have to do if you entered something incorrectly? Well, in this case you have to be back on the page that shows what you’ve entered. Then you can click on the erroneous entry, which pops up a new window where you can change or delete it.

OK, so now you’ve finally got your hours entered correctly and you’re ready to submit them. When you click the “Submit” button you get another page to enter notes or comments. Click the button here, and you’ve finally managed to submit your time sheet for that week. But before you can do anything else, you get a page that basically just has a link for finding out what will happen next to your time sheet and a “Done” button.

In summary, this interface is almost completely modal: each page only lets you do one thing, and you have to click through pages and pages to complete the full task.

This is why Larry Tesler fought against modal interfaces: they make it harder to get the job done. And he had this figured out back in the 1970s. Too bad big software companies like Workday still don’t understand this, or don’t care.

Leave a Response

Social Widgets powered by AB-WebLog.com.