As personal IT systems take on more responsibility for self-maintenance, we need to make sure that common workplace courtesies are part of application and Web services design.
Sitting there on my desk, apparently doing nothing useful but getting awfully hot in the process, my Windows 2000 laptops CPU was running at 90 percent. Spyware? A virus? None could be found.
With its icon bouncing away in the dock of my Mac OS X desktop, a file decompression utility seemed unable to start. Id never had this problem before, but suddenly it took forever to open an archive file.
In each case, it took too long to figure out what was going on.
On the Win2K machine, Task Manager revealed a real-time virus scanner as the CPU hog. It turned out, upon Googling through several user forum threads, that theres a known-to-users problem with that utilitys attempts to monitor Lotus Notes. I renamed some .dll files to make them invisible and regained my machines attention.
I didnt figure out the problem on my OS X machine until after Id downloaded an update that I probably didnt need. The new and improved file expander also took too long to start. I looked through its Preferences settings and noticed that the programs automatic look-up of further available updates was turned on by default. Turning off that option made startup almost immediate. I suspect that the vendors server had formerly been responding more quickly.
In both of these cases, an application was doing what it thought it was supposed to do, but not telling me where its time was going. Youd fire an employee who ignored you because he thought he knew what you wanted and wasnt going to do anything else until that job was done. We expect a worker to be open to interruption for a higher-priority task and to tell us if a routine process that should be easy becomes more difficult and time-consuming than expected.
As personal IT systems take on more responsibility for self-maintenance, or as we start to assign more tasks to autonomous software agents, we need to make sure that the same workplace courtesies are part of application and Web services design.
Applications can be unobtrusive but clear about their background housekeeping tasks and other activities that arent in direct response to user input. Adobes Photoshop Elements, for example, puts up a notification box on startup if its automatic update process wants to check for update files. It even has the courtesy to assure the user that no personal information is being sent in the process.
I appreciate such manners, especially when they come with a Cancel button that lets me say, "Dont do that just now."
Perhaps whats needed, though, is better integration of these options into the operating system shell and the application installation process. Back in the mid-1980s, Digital Equipments Pro 300 series had a unified software environment that integrated all application help resources into a single system and, in other ways, made all applications seem like modules of a single work space.
Windows users have some of that functionality now in the Add/Remove Programs utility; Mac OS X users fare somewhat better with that environments uniform interfaces for Help, Preferences and other settings. Most Linux users have integrated package management systems that meet the mix-and-match, update-friendly attitude of that community. But theres still room for improvement in getting our systems back under our own control.
For example, what about a shared interface for all "phone home" interactions between applications and remote sites? A newly installed application could inherit system settingswith visible override optionsfor checking updates and other information at certain times of the day or when the network connection had been idle for a certain number of minutes. An application could add its verbose task logging to a console window shared by all tasks, or it could give less detail if a user so preferred.
Our PCs offer a lot of power for the kinds of voluntary interaction (such as data cut and paste) that we ourselves command. Theyre too covert, though, about resource-consuming tasks that they perform because they think its what wed want them to do if we knew enough to ask.
In an always-online environment, users need good ways to see and change those behaviors.
Technology Editor Peter Coffee can be reached at firstname.lastname@example.org.
Peter Coffee is Director of Platform Research at salesforce.com, where he serves as a liaison with the developer community to define the opportunity and clarify developers' technical requirements on the company's evolving Apex Platform. Peter previously spent 18 years with eWEEK (formerly PC Week), the national news magazine of enterprise technology practice, where he reviewed software development tools and methods and wrote regular columns on emerging technologies and professional community issues.Before he began writing full-time in 1989, Peter spent eleven years in technical and management positions at Exxon and The Aerospace Corporation, including management of the latter company's first desktop computing planning team and applied research in applications of artificial intelligence techniques. He holds an engineering degree from MIT and an MBA from Pepperdine University, he has held teaching appointments in computer science, business analytics and information systems management at Pepperdine, UCLA, and Chapman College.