My Ubuntu 11.10 computer lost its connection to the Internet and after a while a little red warning sign appeared on my “menu bar“. When I clicked it, an unusual menu appeared with a very long message as a disabled menu item saying:
The update information is outdated. This may be caused by network problems or by a repository that is no longer available. Please update manually by clicking on this icon and then selecting ‘Check for updates’ and check if some of the listed repositories fail.
Anyway, the message talks about Ubuntu’s inability to check if software update information is accurate OR if I’m not connected to the Internet! Two very different reasons but the latter can be checked with software and be removed from this message. In fact if I’m not connected to the Internet the update program should not even show this error message.
The message asks the user to click this icon and “Check for updates” but there is no such item in this menu!
First of all, the weird look of this menu screams that it should be implemented as a dialogue box. The long message needs to appear on a standard confirmation dialogue box with an OK/Cancel button. It can have an unchecked checkbox reading as “Don’t show again”. The “Preferences” menu item can be moved to the main Ubuntu software update application.
But the most important suggestion is to make sure that a dialogue box is absolutely necessary before showing it to the user. If the software knows that this problem can be caused by network problem OR outdated files, it should first check for the network problem before showing this message. Programmers may think one little extra dialogue box can be ignored but it just confuses the users besides taking their time.
I don’t agree with the claim that Linux users should be experts. At least Ubuntu promises an easy to use experience. Ordinary users don’t even know why there are “Outdated update files” in the system. Why should they care? All they want to do is to use their computer for their specific purposes. A good operating system is an invisible one. The users don’t need to be constantly reminded about internal algorithms of how certain utilities work in an operating system. Every application should do its best to be maintenance free. It should keep unnecessary user interaction to a minimum.