Sample of BASH through a shell in GNOME. Screenshot taken in Arch Linux (Photo credit: Wikipedia) |
May 4, 2015 Deadline
June 2015 Issue
Personal computer and device operating systems are the personalities of the machines. The choices we make when selecting an operating system, or the choices we have made for us, determine how we interact with the digital world.
Regardless of whether you prefer (or need to use) Windows, OS X, Linux or BSD, the operating systems do the same basic work. Click a mouse button, tap a touchscreen or type a letter and the operating system converts your action into something applications understand. The operating system determines how to manage software tasks and communicates with the hardware of a device to send or receive data. Operating systems accept commands or actions from users and software (input) and then display, print or otherwise communicate the results of these commands (output) to other software or the human user.
When describing operating systems we generally include the command line shell, graphical user interface and supplemental software included with the core installation of the OS. Most users don’t think of these as separate things, and neither do the companies and volunteers developing operating systems.
Stereotypes about OS X, Windows and Linux users exist for a reason. These three desktop operating systems reflect the values of their designers and users.
Microsoft reflects the need of businesses, governments and other large organizations to upgrade hardware and software cautiously. Major changes to the Windows operating system risks upsetting these clients with millions of computers. Microsoft’s Windows evolved from an awkward shell on top of the Disk Operating System (DOS) that had to balance support for old applications and hardware with new ways of interacting with computers.
When Microsoft has updated the visual design of Windows, users have responded with some confusion. When updating Windows results in older hardware no longer functioning, users express their frustrations. The ability to mix old and new is one of the reasons users select Windows. You can try the latest video card, a new solid-state drive and still run a ten-year-old application in Windows.
Apple’s operating systems and computers shifted from hobbyist-friendly designs to computers for “the rest of us” when the first Macintosh was unveiled in 1984. The Apple II series, like their PC-cousins, allowed users to experiment with lots of third-party hardware while older applications often continued to function. Through System 9.2, the Apple operating systems were highly customizable. With OS X and the iMac, Apple reduced customization to keep the user experience consistent.
Apple, unlike Microsoft, seems almost eager to abandon support for old hardware and software. Supporting old technology requires maintaining old code and drivers in the operating system, which Apple would rather not do.
The Apple computer user base has long included creative artists and designers. These individuals want the best possible typography, color matching, printer output and other features for media production. Tying text in the Zapfino typeface in the OS X TextEdit application reveals just how powerful OS X font technology is. Experiment with the Format, Font, Ligatures settings and watch the magic. Remember, this is the simple text editor in OS X, not a layout program.
Sometimes, Apple makes choices that annoy even its most loyal users, like dropping floppy disks and DVDs from its computers. However, the operating system’s graphical user interface remains consistent and predictable.
Linux and BSD operating systems are for tech-savvy users and hobbyists. These operating systems, developed as open source alternatives to proprietary (and expensive) Unix systems, support more hardware than Windows and OS X combined, several times over. The customization of Linux and BSD is unparalleled, too. The downside of the open source world is that software choices are limited. Unless you are a programmer or server administrator, Linux and BSD are unlikely to run the software you’re accustomed to using.
With OS X, you get the Finder graphical user interface, which includes the desktop folder. Windows features the oddly-named Windows Explorer (or File Explorer, depending on the version of Windows) accessed via the Window Desktop. These desktop environments and file browsers are familiar to most people and we’d be confused if Windows or OS X suddenly used another set of tools.
Linux and BSD users argue over which desktop environment is best for their operating systems. Common choices include KDE, Gnome, Unity (based on Gnome) and Xfce. Each of these desktops, and their utilities like the file browser, are also highly customizable. You can use Linux on two computers and it might feel like two different operating systems.
Maybe you recall the days before point-and-click file management. In the distant past, we typed commands to rename files or create new directory folders. The command line interface (CLI) is where serious computer users took control of their systems.
DOS and Windows use the “command.com” shell to interact with the command line, better known as the “DOS prompt.” 4DOS by JP Software could replace the default shell with a feature-rich prompt, but as Windows replaced DOS, few users sought out a different way to interact with their computers.
Launching the OS X Terminal starts a command shell, similar to a DOS prompt. Though most OS X users I know seldom use command shells, more technical users appreciate that OS X is a full-featured Unix operating system. This means that the command shell choices available to Linux users generally exist on OS X systems. Apple currently sets “bash,” the Bourne-Again Shell, as the default command shell. Stephen Bourne wrote a command shell for Unix in the 1970s, leading programmer Brian Fox to name an open-source shell in honor of Bourne. I prefer zsh (z shell) and fish, the friendly interactive shell, on Linux and OS X.
Shell commands and utilities function like their DOS counterparts. Instead of requesting a “DIRectory,” the user enters “ls” for a list of directory contents. The two-letter “cp” copies files and “mv” moves them. Unix shells were designed to reduce the amount of typing required to accomplish tasks. Most modern shells also autocomplete commands and file names as the user types, which makes navigating a file system even faster.
Understanding the design choices and philosophy of the operating systems we use helps users appreciate why we interact with data they way we do. Personally, I’m an OS X user because I appreciate the consistency of the desktop, while enjoying the speed I achieve with Unix command shells and utilities.
Comments
Post a Comment