The Battle Rages On: CLI vs. GUI
Every now and then, when surfing the blogosphere, I come across waves after waves of postings stating how “Linux needs to rely less on the CLI” or “Windows is perfect for basic users because everything can be done with the GUI”…blah, blah, blah. In fact it was this article that prompted this posting. It gets tiring reading the same things over and over again, but it hasn’t stopped me from adding my 2 cents.
First and foremost, I live by the command line and rarely do things from a graphical interface. Whether it be on a Linux-based operating system, UNIX or Windows, I always have one or two command line terminals open to make my life easier; so be warned that this posting may be a bit biased.
Second, I do not care what a Microsoft Windows user has to say. Even in a Windows operating system, there are those cases when things are accomplished a lot more efficiently on the command line. That is, dealing with network connections via ipconfig, managing storage devices via diskpart to even reconfiguring your power settings via powercfg and more. There are just some things that is much more easily accomplished from the command line in Windows than it is with their graphical interface.
This also includes automation via the traditional DOS-style batching or even with a higher level interpreter such as Python or Perl. When forced to use nothing but Windows in the corporate world, I would always have an installation of Cygwin on the system and prefer working out of that instead.
But a normal user will never have to deal with this in Windows and again that same user would never have to deal with it in Linux; but most of the people I have been hearing complain is the Windows IT administrator. They routinely ask: “Why should I have to open up the command line to do XYZ?” My first response to them has always been, “and you never opened up the command line to release/renew your IP settings with ipconfig?”
Let us stop playing games here and realize that the CLI is not what is hurting Linux’ advancement. The countless amount of graphical interfaces provide all of the general functionality that most basic users rely on. Do these same users use a CLI when configuring their routers, settings television programs to record on their DVRs, manage their applications on their Android products, etc.? Nope. Linux has already proven itself to be very useful without the CLI.
Now the question is, how do we move past these age-old stereotypes and move ahead? Is Google pioneering the way with the Android and what is the, soon to be available, Chrome OS? Is Canonical pioneering the way with Ubuntu? What can we do to defeat these stereotypes and bring Linux to the mainstream? Marketing (since none really exists outside of magazine and Internet advertisements)? I am just tired of reading the same complaints. The CLI is never going to disappear (even on Windows). The GUI is just going to get better but will always lack in the productivity and efficiency brought forth by the CLI. It is what it is, so let us now move on.