Console commander

Off the Beat: Bruce Byfield's Blog

May 22, 2009 GMT

Bruce Byfield

The increasing divide between the desktop and the command line disturbs me. I appreciate the fact that many users prefer the desktop; I use one myself for about 80% of my routine work. But GNU/Linux is all about taking control of your computing, and you can only take full control at the command line. That's why I'm always interested in efforts to bridge the divide like console commander,a promising but extremely rough-edged effort to help new users ease into using the shell.

Of course, the first thing new users need to do is download and install the software, which they may find intimidating all by itself. Fortunately, console commander only requires you to uncompress the download, then navigate to the directory to which you uncompressed and type ./concom to load. However, you might also want to install the FTE Editor, since console commander tends to use it by default.

The application is designed for Ubuntu, as numerous references show. However, it works fine on my Debian system and probably, I would guess, on any other .DEB based distribution.

Console commander opens on a main menu that you navigate with the Up and Down keys. The menu may be a bit confusing at first, because nothing distinguishes the menu items from their single-line help, but, after a moment, you realize that the application consists of How-Tos to solve common configuration problems, means of finding system information, a guide to package management, and a collection of basic command line tools such as the venerable Midnight Commander file manager, the FTE text editor, and a script to help you back up your data. I could think of other items to add, such as some basic information about navigating directories and copying files, but, in general, the selection is reasonably well-rounded for an application on its 0.1 release.

The How-Tos in console commander cover a variety of topics, ranging from how to set up an Internet connection or a Firewall to Ubuntu errors and problems (a section that, for the most part, could easily be made more generic). The How-Tos vary considerably in quality and proofreading, but new users should find most of them a welcome relief from the arcaneness of man pages and the brevity of info. Still, some could give more information about what files are being discussed, and use less geeky language; in documentation aimed at newbies, there really is no excuse for using "append" rather than "add."

Even more importantly, despite the main menu's suggestion that you "Follow the guides to fix your problem" -- most likely, with a second terminal open -- some of the guides actually start to lead you through solutions as soon as you select them. For this reason, it is easy to find yourself in the middle of a procedure that you simply wanted to read about, not actually perform. Admittedly, the need for a sudo password should prevent any unintended system changes, but some effort to warn users of what to expect would be useful, if only because backing out of these procedures is a nuisance. Nor am I entirely certain that some new users wouldn't provide their password anyway, on the mistaken assumption that the application wouldn't ask them to do anything not completely safe. In such ways, console commander could produce new stresses in its efforts to prevent old ones.

It is a different matter, of course, in the other parts of the menu, where the menu items clearly lead users to expect that actions will happen. However, in these sections, my main concern is that what commands are used to produce the information are not displayed. A menu system like console commander may be handy for those who use -- for example -- lspci so seldom that they can't remember every available option, but desktop-centered new users are not going to much better off using console commander than desktop applications for operations such as package management.

As for the tools that console commander comes with, I have nothing to say against Midnight Commander except that I would personally prefer some scripts that would help users learn such commands as ls and cp. Similarly, FTE Editor, while functional, is a bit idiosyncratic. I understand that the developers might not want to expose new users to emacs or vi, but perhaps nano would be a more mainstream choice. At the very least, it would be one that users might have a chance of finding on other systems if they ever need a command line text editor.

Possibly, the way that console commander is shipped is intended more as an example than as something to use fresh from the download. If you look at the directory to which you uncompressed the download, you will see that its guides and menus are all configured in text files and therefore easy to add and to change. To add some common command line tools is mostly a matter of editing a menu configuration file, and, in places where it is not, the scripts you have to write would be more likely a compilation of existing commands rather than original scripting.

Still, many of console commander's intended audience seem likely to use the application as it shipped. For this reason, I hope that the development team will polish a little more, and think a little bit more about whether console commander is meant as a front-end for a limited repertoire of BASH commands, or as a way to help new users ease into the shell.

As the application stands, it could go either way. Personally, I think it would be far more useful as a teaching tool than as another way of dodging the unadorned command line -- a kind of intermediary step that could help users learn their way around configuration and basic administrative tasks.