This paper was prepared for two presentations, one for the Central State Linux User's Group (http://www.gilesorr.org/cslug/), and the other for the University System of Georgia annual computing conference at Rock Eagle. Both presentations were in October of 2003. I hope to update this paper after that date, but that may not happen.
I started using Linux in 1994: Slackware with a 1.0.13(?) kernel and (more importantly to this document) an old version of FVWM. I didn't like FVWM's look and feel back then. However, I fell in love with the multiple workspaces concept immediately. Having come from dual-booting Windows and OS/2, I knew of Marko Macek because of his fine editor FTE and I found soon enough that he had a rather good WM called icewm which I used for many years. I didn't use icewm because it emulated OS/2 (it can, to some extent), but because it's highly functional. I've spent the last year or so using CTWM.
I've always been fascinated by window managers, and that fascination has brought me to write this report for a presentation I'm doing for the annual University System of Georgia computing conference at Rock Eagle in October of 2003.
X (usually XFree86 on a Linux system) provides a graphical environment for applications to play in. But X doesn't care at all how stuff is displayed in that graphical space, and that's where the Window Manager comes into the picture: it controls how things will be displayed, and how they'll behave.
I tried to order the window managers to make some kind of sense. Since it's neither chronological or alphabetical, it begs the question "what kind of order is this anyway?" Many window managers are based (sometimes the code, sometimes the spirit) on other window managers. But the bloodlines are frequently quite obscure and mingle quite a bit. So my intention was to show the oldest and/or most influential first so that (should you choose to read straight through) you'll be able to see where the ideas and behaviours are coming from.