When Apple launched the Mac, one of its supposed great advantages was that it was graphical. “Just point and click” – what could be easier? Certainly better than the awful DOS (or even UNIX) command line! The command line was thus condemned to be seen as symbolic of the old school. Arcane commands typed in a green or black screen – unfriendly, cold and unsympathetic.
Apple may not have intended this to be the case, but I have always thought the opprobrium of the command line to have been an over reaction exploited by clueless marketeers. It is in fact exactly the opposite of what its detractors have it to be, and I believe will become central to the way we use computers, just as computers become central to the way we live our lives. The arrival of the Internet, and specifically “Web 2.0”, means the CLUI’s time has come.
The main advantage of the command line is its efficiency. Imagine, for example, the sheer effort involved in designing a good GUI for doing something like the following, let alone using that GUI on a regular basis:
ffmpeg -i video.mkv -cropleft 198 -cropright 198 -vcodec xvid -sameq -acodec mp3 -ac 2 -async 50 -threads 2 video.avi
After a while, there is simply a limit (long since breached) to the number of icons, menus, check boxes and other visual devices that you can encrust an application with. As our use of computers becomes ever more complex, we are going to need a different way of doing things. Multi-touch is simply the mouse on steroids; voice control is dead in the water. The answer is the command line.
A command line can also operated anywhere where you have your attention. Commands can be invoked wherever and whenever you want them. Other than the act of invoking the CLUI, it also has no confusing or error-prone modes. Combine this with natural, or near-natural language and the possibilities are huge. Here’s a (mythological) example invoked while typing in a word processor:
leap to chapter 3 copy para 1,3,5 paste
or how about this in a graphics editor?
select image 'The Picture of Dorian Gray' resize -20%
No mouse, no menus, no eye-hand coordination required. Instead, we have extreme flexibility and ease of use, together with linguistic power and the ability to transcend the constraints of space and visual design.
It is extremely heartening, therefore, to see Aza Raskin demonstrating the power of the command line in Mozilla’s Ubiquity – an application that to my mind is far more important than the current buzz about gesture-based interfaces that (surprise!) has been set in motion by Apple and their iPhone.
It has usually been impossible for me to explain why the CLUI is a good thing for modern interface design – mainly because of the aforementioned baggage that Apple and others have given it, but perhaps Ubiquity will finally right Apple’s wrong and allow us to take the next step.