Interview With Tom LaStrange (The T In twm)
VSarkiss writes "A very nice (and rare) interview with Tom LaStrange, the developer of twm, is on Linuxplanet. Fascinating how some of the most useful programs are developed by one person, just because they wanted something better. In this case, Tom wanted something better than the truly-awful uwm, rumored to be an abbreviation for 'ugly window manager.'"
Amen to the DOS comment. I started using computers with CP/M and DOS. DOS was light-years ahead of CP/M, but it was a horrible command-line interface. I never realized it until I installed Linux and learned how to use bash. It was wonderful! DOS batch files are a joke. I would hate command line interfaces too if all I ever used was the COMMAND.COM that came with DOS.
Make sure you release it under GPL though.
The jury is still out on that one. Release it as open source by all means, but choose whichever license fits you best. I use the Artistic License myself. Other's will dissagree with it, but thats their choice.
GNOME and KDE are not window managers. They are "Desktop Environments". They include a window manager, but they are more.
For the record, GNOME has used Enlightenment, while KDE writes their own window manager.
cheers,
sklein
I never said they were.
errr... I do not imply that KDE nor Gnome were Window managers.... where did you get that from???
Hmmm... two posts have said this, perhaps I can't read my own post...
*confused*
Well, it certainly a lot lighter than Gnome or KDE.
Has anyone ever seen a GUI based ".twmrc" creator? I have spent years writing ".twmrc" files and have been constantly editing them every time I've installed a new system or application on a system. It's the kind of thing where I think - why don't I just keep a good one on a floppy... I never seem to get round to it.
An annoying thing is that in it's default state there isn't a way to start an xterm. This can be quite daunting for newbies. The default colors are pretty god damn awful too.
Still - I've tried KDE, then I tried Gnome, but now I'm back with twm. Neat, nice and lovely.
It's interesting how they renamed it from Tom's Window Manager to Tab Window Manager.
I always thought of it as Tom's Window Manager, but couldn't for the life of me figure out who Tom was.
One TWM I've not seen mentioned here is CTWM, which is a TWM I used for quite a while after TWM.
It actually stands for "Claude's Tab Window Manager", which is rather funny given how they took out "Tom" The two things I liked most were the virtual screens (I think one of the first, but I'm not sure about that), and the color support...
It had great support for customizing the look of the WM with pixmaps and various colors, and I think more options that TWM had - I remember having nice gradient shaded menus. I think it also had the easiest to use virtual room support of anything I've ever tried since, but I haven't used that feature in the newer VM's much and have been too lazy to really customize my WM as much as I used to.
I like to think of TWM as the "VI" of WM's, as no matter what machine you connect to you know TWM will be there and it's easy to use (OK, in one way it's like VI...). I use TWM all the time when connecting to various machines around the company if I'm using a lightweight X server like WierdX on an NT box.
"There is more worth loving than we have strength to love." - Brian Jay Stanley
Here's some real info for those of you who couldn't figure out what was true in and among all of the conflicting info posted here.
1. uwm did have icons of a sort. You could iconify a window, and it would place a small text box where the window had been with the name of the window in it. The great part was you could edit the name on the fly!
2. No decorations, a window had what it was born with. All actions performed on a window were done with key-mouse combinations.
3. uwm was not the first X window manager, that would be wm.
4. The timeline is something like this:
wm
uwm
twm
olwm, mwm
fvwm, gwm, tvwm, olvwm
fvwm2, windowmaker
enlightenment, icewm
sawmill (later sawfish)
There are many others, but those are the ones I can think of.
Hope this helps folks out. I started using X around the tail end of X10. uwm was the only window manager that shipped with X as far as I could tell, but it was enough for me at the time.
Now I wonder how I ever got along without at least fvwm2's "sloppy focus" (which everyone supports in one way or another, now).
It's 10 PM. Do you know if you're un-American?
If you want the twm look and feel, but with GNOME compliance, you can achieve it with sawfish. There are two twm themes at sawfish.themes.org. Take a look at the screenshots and try one or both of them out.
--
The scalloped tatters of the King in Yellow must cover
Yhtill forever. (R. W. Chambers, the King in Yellow)
The scalloped tatters of the King in Yellow must cover
Yhtill forever. (R. W. Chambers, the King in Yellow
More important: the look&feel of twm is light. There are no large borders, no 3D effects, no taskbars, menues, icons everywhere taking up valuable space on your screen.
I use twm 6-8 hours a day, I tried many (all) other window manager the last 12 years but I always come back to twm. It is the ideal window manager that does exactly what a window manager has to do: manage windows, no more and no less.
Using keybindings (if you want) you can work very fast and switch between windows etc. Btw., should you give it a try, then don't forget the icon manager! It replaces the need for icons (disable icons) and you get a kind of taskbar (but better) where you can open/iconize apps and switch the input focus between them. Once you're used to it, you won't settle for less. In fact the lack of a similar icon manager in any other window manager has been the reason for me to return to twm each time.
If something is broke, code it yourself...you gain valuble experience with everything you do and it makes you feel great once you're done
Unfortunately it's such a big job writing a half-decent piece of software that if you try and write it alone, you'll still be struggling 2 years later on version 0.1 *grin*
Worthy statement though, and I agree the insight and experience you gain is well worth trying it out in the first place. If nothing else it teaches you that useful applications are big & complex and you don't try and write them yourself!
Academics have spent years devising the correct way to design software:
:-), they are capable of having a naive view of the business world, where 99% of software is destined to be developed and delivered.
1. Research the problem.
2. Design the software.
3. Implement the software, according to the design.
4. Test software, adjust design if necessary, return to 3.
Not wishing to be unfair, this disregard for the rules of programming really manifests itself in the poor performance of twm.
I have to take some issue with your methodology:
Design is the single most important factor of the product, and the lifecycle should reflect that the design should only be modified during the coding process.
If we take point 4 in your article to mean the actual system test of the product, then we should not be modifying the design at this stage. If the design has not held, then you have to start compromising the development in order to now make the software perform the task it was allegedly designed to do.
Software has been struggling for years to take some ideas from manufacturing industry, and it has still not achieved it. Honda can design a car, and then procede to end-manufacture without a single change being made to the original design: they went through the due process required to test the design before committing to the actual manufacturing (i.e. development) process.
This is why most software projects run massively over budget, and a large percentage are eventually abandoned because the original design work was worthless.
With all due respect to academia (I went to Uni myself, and it never done me any harm
As someone who was lucky enough to be hanging around at the time, let me add a little bit to the twm history. (I'm sure Keith will correct me if I get some of this wrong. :-)
The change from Tom's Window Manager to the Tabbed Window Manager was Keith Packard's doing, actually. He had just written the Shape extension to X, to allow non-rectangular windows, and used it to implement xeyes and oclock. Keith used twm exclusively at that point, so tabbing the title bars was a natural next step. Much of the ICCM compliance was due to Keith, as well, during the period the ICCCM was being developed.
I've tried a number of window managers since then: I still use twm...
Redundant comment: TWM _was_ ugly as hell by contemporary standards. On the other hand, if I remember correctly, I switched from whatever non-X windowing system Sun was using (can't remember the name) directly to X with TWM sometime in the late 80's. I hated Sun's system and, comparatively, TWM and X seemed wonderful, elegant, versatile and aesthetically inspired. FVWM was another huge leap forward. Oddly enough, although I like KDE and Gnome and currently use KDE, they haven't made as big a difference as TWM and FVWM have to me. I can't even imagine anything as horrible as UWM sounds; so maybe even the old Sun's had a comparatively nice interface.
For those who want to knock Unix for horrible interfaces and design-by-committee, remember that most non-Unix types were using DOS at this time and later they were using pre-95 versions of Windows. DOS was (and is) a shockingly bad and difficult to use command line interface despite its simplicity and early versions of Windows IMO claim the title for worst graphical interface of all time. VMS generally meant a command line over a text terminal.
Macs may have been ahead of most other commercial offerings, but Unix not being at least reasonably competitive on the user interface front is a relatively recent thing (from 1995 on); and of course, just a few short years later, without much help from vendors, we have competitive interfaces again. Unix hasn't done as badly in this area as many seem to think. Unix has either been ahead of MS (mid 80's to 95) or quickly catching up.
Of course this is intended to address only the windowing system. Unix people still like apps that send most Windows people running and crying to mommy.
"I sat down at my monochrome Sun 3/50 and typed vi twm.c and then opened the X11 documentation"
Leaving aside vi/EMACS flamewars for the moment, I think this shows a complete disregard of correct software design practice. No-one in their right mind could advocate starting to code a program first, then reading the relevant documentation, then designing the program whilst coding it.
Academics have spent years devising the correct way to design software:
1. Research the problem.
2. Design the software.
3. Implement the software, according to the design.
4. Test software, adjust design if necessary, return to 3.
Not wishing to be unfair, this disregard for the rules of programming really manifests itself in the poor performance of twm.
Considering the relatively large scale of twm, he should also have considered using an object orientated language, such as C++. Although C++ objects carry a lot of overhead, the benefits of a better OO software design can help to balance out these performance issues.
And finally, what the hell was he trying to achieve by coding the whole of twm in just one file, twm.c? Surely he learned during Computer Science class that it's a good idea to split your code up over several files, so that if one file gets corrupted you don't lose the whole project? Then again, with his obvious dislike of correct design procedures, he probably coded the entire program with just one function, main().
I know that some people within the open source community don't like to do things by the rule book, but by trying to cheat the rules you only end up with poor software. The rules were invented for a reason!
--
--
Donald "Don Juan" Kerr
You can get a similar look with the Sawfish "nanoGUI" theme.
It's hard to see how uwm could be considered "ugly" since it largely just left your windows alone. In fact, I think "twm" looked worse, but it ended up being more usable for new X11 users because they could just grab title bars, without using any keys.
There's something uglier than twm? I'd hardly credit it.
Doing a quick google search, I turned up the Unix Desktop Environment's window manager, which looks rather nice, but hunting a bit more I found the uwm source code at, surprise surprise, the PLiG window manager page.
Unfortunately it doesn't compile immediately here on RedHat 6.0, (conflicting definitions of wchar_t in glibc and XFree86, of all things), so I can't post screenshots. If someone *does* manage to get it to compile and work (any experts on porting from X10 here?) why not post a reply and keep us all informed? :)
I went looking for some screenshots of TWM as I had never used it (went from CLI to Enlightenment.. :). I found this page with lots of screenshots.
Of particular interest was this. Is it just me, or does this stike you as vaguely reminiscent of BeOS?
Rami
--
rJames.org - illustration
A huge advantage that TWM has over the others WM is his lightness : ;-)
You can use TWM/X-VGA server with no problem on any old laptop. It is damn' stable and especially saved many computosaurus from the dust-bin, here.
(when someone visits our firewall rooms, he actually think he is in a computer museum
--
Trolling using another account since 2005.