Attention Must Be Earned
There might be good reasons to set a submarket price for a specific good at a specific time. For example, a store might draw in new customers with a half-price sale on a popular item, hoping to make up its resulting loss with additional revenue on other items or to gain new long-term customers. When a price is kept artificially low for a long time, though, ugly consequences arise.
For example, when real-world factors limit the supply of gasoline, prices will naturally rise until only those with least flexible demand are willing to pay; that higher price also makes it economic to activate higher-cost sources such as older and less efficient refineries. Artificial price controls will merely lead to long and angry lines at the pumps because demand and supply are being forced out of balance.
The price that IT systems pay for their users time, it seems to me, is an even more pervasive example of a price thats set below what it ought to beresulting in users time being overconsumed.
If you start to think of your time as an economically scarce good, you may notice behaviors that you previously had never thought to question. Youll notice that many systems:
Offer no estimate at all or make absurd estimates of remaining time to completion of a taskgiving you no useful sense of what else you might be able to get done while youre waiting;
Ask you a question, work on the answer for a while, ask you another question and so on, instead of collecting as much of your input as possible with minimal interruption of your work; and
Assume youre sitting there waiting for their response instead of alerting you when theyre ready to proceed.
We have multitasking operating systems, but theyre mostly running applications that fail to maximize the efficiency of multitasking users. Application developers treat our time as if it were free, and that needs to stop.
My list above implies some things that applications should do: provide useful estimates of task completion times, alert the user through eyes-free techniques when results are ready and minimize the number of times that a user has to interrupt other tasks to tell an application what to do next. There are other things that developers could do as well.
For example, Id like to see "cancel" buttons that dont just abort an operation but that offer me appropriate choices, such as "Retain partial results" or "Complete operation in background." My time is worth somethingsystems should not casually discard what theyve already used my time to produce.
Applications also can take advantage of predictable patterns of user behavior. For example, a document editing tool can anticipate that the four most likely places where a user might want to go from any point in the text are the preceding page, the subsequent page, the first page and the last page of the document. This technique first arrived on my desk, I believe, in Microsoft Word 3.0 for the Macintoshwhich means almost 20 years ago. Preloading Web content and offering accessible links to likely targets should be done along similar lines.
Applications should also show some deeper sense of whats likely to deserve our attention. Amazon.com already identifies uncommon phrases in books, and I think it might be useful for word processors to do the same in my documents. Id like to have a subpane on my display that shows me the most uncommon phrases in my document and lets me navigate quickly to themthe less common the phrase, the more likely the document is to be something other than a generic piece of work. Id also like to have a pane of links to other documents available to me in which those phrases appear.
Nanotechnology or cold fusion may someday yield economic abundance, but time will never cease to be scarce. Applications should respect that fact.
Peter Coffee can be reached at firstname.lastname@example.org.
Check out eWEEK.coms for the latest news, reviews and analysis in programming environments and developer tools.