Getting to Know the X Window System
Open source operating systems like Linux, BSD, and Open Solaris take the Unix philosophy of integrating parts into a whole. The design idea is always to break things down into their basic forms, so that if a new way of doing things is made, it can be easily fitted in with the rest of the framework without disrupting the other parts. This philosophy of design is most keenly felt in the graphical user interface (GUI), which is most commonly the X Window System.
But you won't see X itself. Instead, the X Window system is a kind of client/server model. It's purpose is to provide an interface between the GUI - the thing you click your mouse and make programs open in - and the rest of the operating system. This allows a multitude of clients to "plug in" to the server, enabling an astounding variety of desktop interfaces to all share common functions. Newcomers to open source systems are bewildered with the huge number of options at first, but over time you get to like having choices in your interface customized to your needs.
The "front-ends" to the X window system can be divided into window managers and desktop environments. Desktop environments go beyond window managers, in that they provide a whole suite of extra programs to unite the desktop into a whole system. Window managers are less capable, but are also much faster and more geared to special uses. A desktop environment can even run a window manager as a client.
KDE is one such environment; it not only manages your X window session, but provides everything from utilities to games as part of the KDE environment. The KDE suite is practically an operating system in itself. It strives to present a whole and consistent environment, so that you never have to worry about what's going on behind the scenes. KDE, made by TrollTech, is probably the most popular desktop.
Gnome is the runner-up. It is similar to KDE, but is scaled down and simplified. Where KDE may present five programs for a given function, Gnome picks one solution to each problem and sticks with it. Gnome is the desktop of choice for the popular Ubuntu system. Xfce is another desktop environment, similar to Gnome but with a focus on being light-weight; it is much faster and has a MacIntosh feel to it. Other desktop environments include the Enlightenment system, which is all glitz and flash and knocks itself out giving you all the pretty widgets you could ask for.
Beyond desktop environments are the window managers. There are hundreds of them, ranging from the fairly decorative Fluxbox/Blackbox family to the bare-bones TWM class and the minimalist - but functional - IceWM. Window Maker, a born-again clone of NeXt-Step systems, is included here as well. For those who can't make up their minds, there's FVWM, which is dedicated to mimicking any environment you could name, from CDE to Windows XP! For those who prefer the keyboard only, either by preference or for accessibility reasons, there are framing and tiling window managers such as RatPoison (they call the mouse "the rat"!).
A whole book could be written on the variety of X desktops alone. Which one to choose? It's best to experiment and find out. If you aren't that picky, you can probably settle for KDE or Gnome and not miss too much. Most distributions come with a handful of desktop choices, and frequently come with six to eight. Switching between them is as easy as picking a different one off the menu when you log in. High-performance users will probably head for a light-weight window manager, preferring to have a speedy, responsive environment and save the extra memory for their heavy-duty tools. But you may be sure, no matter how specific you are, there is an environment just for you!