Unfortunately, still another assumption is that the command line is outdated and unsuitable for the average user. In Windows, that is definitely the case. However, in GNU/Linux, the relationship between the desktop and the command line remains a close one. Often, desktop applications are built directly on top of commands. Beneath digiKam, for instance, you'll find gphoto2. Should you find -- as I did recently -- that digiKam is no longer working after an upgrade, you can open a terminal and use gphoto2 instead. Even in heavily graphical programs such as OpenOffice.org or Firefox, if you have a problem, the solution is often to add an option to the basic command behind the menu item or icon.

With this close connection, learning about the command line makes more sense in GNU/Linux than in many operating systems. You do not need to be full of command line macho, believing that the only real computing goes on at a command prompt, to appreciate the connection. While the command line is in many ways the opposite of the desktop, in that it is thorough and encourages the gaining of expertise, the two interfaces are complementary. For simple, routine tasks, the desktop is often preferable, especially if you are viewing graphics. If you want to administer your system or fine-tune performance, then the command line is the interface you need.

What bothers me about free software interface design is that, like similar work proprietary operating systems, it encourages the use of the desktop at the expense of the command line. Few desktop applications bother to indicate the commands for which they front, or to provide the same range of functionality as those commands. They keep users ignorant and unable to advance beyond a certain level of knowledge, even if they want to.

By contrast, a command may take longer to learn, and be more intimidating at first, but at least it provides no greater barriers to learning. The command line is all about hands-on exploration -- after all, the main reason that most GNU/Linux configuration files are in plain text is so that they can be edited by command line editors like vim or emacs.

In borrowing the assumptions of other operating systems, interface on GNU/Linux may be replacing the self-sufficiency traditional to Unix and GNU/Linux with the learned helplessness of those operating systems. Although those who are just migrating to GNU/Linux may not know what is happening, they are missing a tradition that could empower them.

Missing the main chance

From a philosophical perspective, this seems a missed opportunity. If you profess any ethical standards at all, informed consumers are always preferable to ignorant ones.

Not only that, but if all that GNU/Linux can offer is more of the same, then users have less incentive to switch to it. Even though desktops like GNOME and KDE are now the equal of Windows, the point is that Windows got to market first and is more familiar.

By contrast, by making the connections between the desktop and the command line clearer, or by attempting to reproduce the thoroughness and the accessibility of the command line in graphical form, GNU/Linux applications could offer a clear alternative -- nothing less, in fact, than an entirely different relation between user and computer than the one assumed by Windows or OS X.

This alternative is especially important if you believe in the goals of free software. If your goal is to allow users complete control over their computing, then you need to encourage them to explore and understand their systems. Hiding complexity may help less experienced users get up and running, but it also tends to stall their knowledge at a basic level. Certainly, the habits you learn will leave them badly equipped to exercise any control.

Don't get me wrong: The interface improvements of the last decade were necessary for GNU/Linux, and I am not suggesting they were irrelevant or useless. But I also worry that they risk moving too far away from the root assumptions of the operating system, and may be borrowing opposing and incompatible ones. In other words, as welcome as some of the improvements have been, I suspect that we could do even better.