MC's Centre for Geek Pr0n

Every geek likes to brag about her setup. This is my attempt. The text is incomplete and a perhaps bit silly, but perhaps someone will still find it interesting.

Some of the photos below were taken by me and some come from other web sites. I have tried to follow the fair use policies of these sites.

Software

Almost all my computers run some version of the BSD Unix operating system, either FreeBSD or NetBSD.

If you don't have any idea what BSD is, a short description is that it is family of free Unix-like operating systems which includes many utilities. All current BSD distributions come with complete source code. A longer introduction to BSD can be found in Greg Lehey's article Explaining BSD.

I spend most of my tube time in GNU Emacs, an editing environment based on a version of the Lisp programming language. I got stuck with using Emacs in 1991 and seem to get more stuck as time passes.

Emacs is, as some people say in a ha ha only serious-way, really an operating system, cleverly disguised as a text editor. Imagine the bliss if Emacs (with a proper, incremental garbage collector, real processes and better scheduling) could run on top of the bare metal. The Lisp Machine back among the living!

An acquaintance, Taylor, once said that "Emacs is an artificial intelligence that has been parasitically masquerading as a text editor". I thought it was funny. Then I thought about it again...

Current Hardware

At home I usually sit either in front of my Thinkpad X60s laptop or an HP t5125 X terminal with a 17" Samsung TFT monitor. The HP terminal is fanless and absolutely quiet.

The keyboard on the HP terminal is a Logitech Ultra-X OEM keyboard. It's flat like a laptop keyboard, but full size. It's very cheap, but very nice.

The monitor is actually mounted on a pivot stand, but so far the rotating support of the X server is an ugly hack at best, and it's totally unusable for real work in pivot mode.

Here you can see the TFT monitor on top of an old Cisco 4000 router (mostly unused, but kept for experiments), the HP terminal right next to it behind the lamp and the Thinkpad to the right, in front of the stereo.

image

For quite some time, seven years or so, my main personal machine was a Thinkpad 570 laptop. It was both smaller and had more power than any computer I had ever had before. Now the same thing can be said about my Thinkpad X60s.

The X60s is a one-man timesharing mainframe, a very thin and very light box of about 1.3 kg with no unnecessary cruft like a CD player or even an internal floppy drive.

I have written a text about running FreeBSD on the Thinkpad X60s. The old Thinkpad 570 now belongs to my eldest son, Ludvig. My youngest, Gabriel, has a Thinkpad X30. All machines run FreeBSD.

For a while my work machine was a Dell Latitude D430, also running FreeBSD. I was a little annoyed that this machine only had two mouse buttons and used an external mouse, but it was an otherwise surprisingly good machine for that price. I was also amazed that we managed to get it delivered without a pre-installed operating system! My X60s, I'm sorry to say, came with some version of Windows re-installed. Of course, I never started it.

My home server is based on a very small (17x17 cm) Mini-ITX motherboard (VIA Epia CL10000) in an only slightly larger case. The motherboard is equipped with a VIA C3 Nehemiah CPU at 1 GHz, sporting additional instructions for gathering random data from noise around the CPU. It is also very nice on my electrical bill, unlike, for example, those Pentium 4 monsters. This server, tim, runs FreeBSD and is located in a server room or, well, uh... at least a closet in my flat.

The main server for hack.org is now a 1U Supermicro co-located very close to one of the largest Internet exchanges in the world. It runs FreeBSD and all the important services, such as mail, DNS, web, et cetera.

I used to have lots and lots of computer junk at home, but I have tried to give most of it away to better homes. I still keep some stuff, such as a DEC VT100 terminal I keep for sentimental reasons, a Sun Ultra 1, a SPARCstation 5, and a lot of of stuff in boxes, but it's mostly stuff like RAM chips, PCI and S-bus cards and, for some reason, lots of Sun Type 4 and Type 5 keyboards...

User... Uh... Hacker Interface

If you're interested in what I see on the screen, I'm using a rather minimalistic configuration of a really fast, absolutely free and overall very spiffing virtual window manager, the old CTWM we all know and love.

image

(Click on the image above for the real screenshot.)

On this screenshot taken in 2007 you don't see much of CTWM. Instead, you see a big Emacs frame to the left and a couple of xterms running shells and an FTP client to the right. In one xterm I'm running the CJC Jabber client.

The font used in the Emacs frame is the default MGR font, the old Gacha font that I have converted from MGR's font format to X11's PCF. The fonts in the xterms are Lucida Typewriter and the old 6x13 in the CJC window.

In the top right corner, you can see the dclock program showing date and time. At the bottom right, there is a small window showing how many unread mail messages I have on my home server. The window is on top of the CTWM workspace manager, showing me small windows corresponding to real windows on all the virtual workspaces I have.

As you see, I tend to use a CTWM configuration without title bars. The active window in which I just typed "import ctwm-work.png" is marked with a 1 pixel light border. Inactive windows are marked with a darker border.

What you don't see on the screenshot are the other workspaces, all available to me with a tap on a key, and any windows I may have 'iconified'. I have defined the function keys F1 to F10 to get to the other workspaces.

There are, of course, no real icons. Ever. I really dislike graphic icons and having to shuffle windows around to find things on the so called desktop. Instead, I have asked my window manager to keep the titles of iconified windows in a root menu.

However, nowadays I find that I'm usually not hiding windows anymore, but merely moving them to another workspace instead. In CTWM, you can choose to keep windows visible on any number of workspaces, not necessarily one or all, as most other window managers.

The matching .ctwmrc configuration file for this configuration of CTWM is available, if you're interested. Key bindings and mouse actions on the title bar (if enabled) are provided for the most common window operations. I have made an attempt to explain what I do in the file.

I have used CTWM in different configurations for quite a while now. For years, I was instead using its predecessor, the good old TWM in various configurations. Some people, however, also like to point out that I've been seen using and slightly changing the incredibly minimalistic 9wm as well.

Of course, I've tried numerous other window managers, like FVWM, AfterStep, WindowMaker, Blackbox, Fluxbox, Openbox et cetera ad nauseam. I was quite fond of Ratpoison, the window manager response to the wonderful GNU Screen program, but I found Ratpoison wastes screen space on most large screens. You might find it a better fit for notebooks, though. I use GNU Screen daily, however.

I also use a small utility called unclutter (I believe I found it in the X11R5 contrib directory or perhaps comp.sources.x) that hides the pointer after some inactivity. I find it very useful to get rid of the mouse pointer after a few seconds.

I used to run and develop the Bellcore MGR Window System on my workstations, but now I mainly use the X Window System, like, I guess, everyone else.

I guess I finally resigned. Perhaps I'm being more pragmatic these days? Besides, both the hardware and the previously bloated X servers are now actually much faster than before, even on the same hardware. The XFree86 and now X.org implementation of X11, for instance, is made up of modules, so you can decide for yourself which modules you need. How often do you use the PEX extension, for instance?

Once Upon a Time

image

I get along fine in front of an old character terminal, like my all time favourite, the green on black Facit 4431 from 1983 (the image above, if you can see images). Photo from Informatik-Sammlung Erlangen.

The only thing wrong with the Facit 4431 was that there wasn't more visible lines on the screen. The Facit Twist, a later model from the same company, however, had 72 visible lines when the screen was in portrait mode!

image

Photo from Lappeenranta University of Technology collection.

image

Photo from Informatik-Sammlung Erlangen.

I liked the Twist a lot too, but the keyboard insisted on breaking when I had used it for a while. As a comparison, you would have to go at the 4431 keyboard with a hammer to break it!

I spent an incredible amount of time in front of 4431 terminals, especially while sitting in PUL17, the underground room housing the Lysator Academic Computing Society in the early 1990s. I also had a 4431 terminal and a Twist terminal at home. Nowadays, however, the only real terminals I have at home is a DEC VT420 and a treasured original DEC VT100 I inherited when a friend died.

Sometimes, when the mood struck me, I used to stay in front of a Visual 102 (like the Facits, this was a VT100 clone) when I worked at Signum (now split into Cendio and Ingate) to get into the proper Hack Mode. Some people from a local Young Scientist's convention came by one evening and somehow couldn't resist taking this photo of my retro desk at work.

image

Yes, I confess; to the left of the retro desk there was a rather fast Digital Alpha workstation with an Eizo FlexScan 6600M, a truly marvellous 21" greyscale monitor, where I did most of my work. I sometimes miss that amazing monitor, even compared to modern day TFT LCDs.

image

Photo from Eizo.

I started out in computers with a Sinclair ZX81 belonging to my cousin. This must have been in 1981 or 1982. I used to come to my cousin's house and program the thing in BASIC.

image

Photo from Old Computers.

It wasn't until a few years later I got a computer of my own. I bought a Commodore Plus 4 for the price of a Commodore 1541 disk drive and got the disk drive as well.

It was a bargain, of course, but the reason was that the Plus 4 had fiascoed nearly everywhere. The reason for the fiasco was mainly that it wasn't compatible with the very popular C64.

image

Photo by Anders Bengtsson from the PC/M Computer Museum.

Anyway, having a fiascoed computer with virtually no available software meant I had to learn how to write my own software.

If you for some strange and bizarre reason want to experience the Plus 4 first hand, the people at VICE have added the Plus 4 ROMs to their 8 bit emulator software.

There's a semi-useful disassembler/machine code monitor in the Plus 4 ROMs. You get at it with the MONITOR keyword, but you're likely much better off with the offline tools the VICE people have done, if you actually want to get anything done...

I got rid of the Plus 4 after about six months in 1985 or 1986 and bought my first PC, a Commodore PC-10 PC/XT clone in mint condition that had been used as a demonstration item. I paid about 7000 SEK for this. I believe it had a whopping 768 kiB of RAM and two 360 kiB disk drives! I believe this was the first computer I hooked up to a modem and started to call bulletin boards.

image

Photo by Anders Bengtsson from the PC/M Computer Museum.

I actually leased the modem in question from the state owned telephone monopoly Televerket (now Telia) in Sweden, since it was illegal for individuals to own modems at the time. The modem was about the size of a shoe box and was worth about 3000 SEK at the time.

I also bought the only program I have ever paid for to that computer: Borland's Turbo Pascal.

I used the PC/XT clone for a couple of years and then bought my first Unix box, a used Luxor ABC 1600, for 5000 SEK. It ran a Unix version called ABCenix, sported 1 MiB of RAM and a hard disk with a total capacity of a whopping 12.5 MiB!

image

Photo by Anders Bengtsson from the PC/M Computer Museum.

The ABC1600 had a very nice monochrome twistable screen at a resolution of 1024x768. It even featured a window system, with every window being a graphical terminal emulator, much like my beloved MGR.

However, the machine was very slow (it had a MC68008 CPU) and, of course, 12.5 MiB worth of disk space was much too little. That, I guess, is the reason the ABC1600 fiascoed. The commercial fiasco was, of course, the reason I could afford to buy it in the first place.

The same year, 1988 (I think), I also bought a PC/AT clone with 1 MiB RAM, 20 MiB disk, Hercules monochrome graphics and an amber monitor for 16000 SEK. Later, I also purchased yet another used PC/XT clone and acquired a couple of old character terminals.

In 1991 I bought two used Sun 3/60 workstations. I paid 11,000 SEK for both. Their price as new in 1988 was ~100,000 SEK, more than $15,000, each. The Suns sported a nice 19" black and white (not greyscale) monitor, 16 MiB and 4 MiB of RAM, but no hard disks.

image

Photo from Juan Orlandini's blog but my guess is that it's taken from a Sun Microsystems brochure.

There wasn't enough room for any storage media in the pizza box style the Suns used for a case. Instead, I hooked a stripped PC box to a 210 MiB SCSI disk (which I bought for the incredible amount of 6,000 SEK or ~$1000) and connected that to one of the Suns.

I mostly used these Suns sitting at a character terminal, the Facit models mentioned above, so I could sit in another room and didn't have to hear the terrible fan noise. It was a waste of the 19" monitor, of course, but this was the sane choice, believe me.

I bought a more modern Sun SPARCstation ELC in 1993 or 1994, I think, and used that as my primary workstation at home. The ELC was a cheap diskless SPARC based workstation built into a monochrome 17" monitor. Here it is on a desk in my living room at the time:

image

It was meant to be used as a diskless workstation, but since I didn't have a server at the time, I used a shoebox-sized external hard disk. I think it was 200 megabyte.

Here's a screenshot of the MGR window system running on my ELC:

image

The ELC was given away after having spent some time in my attic, almost ten years after I bought it. Perhaps it will be of some use. It's OK as an X terminal, for instance, at least for Emacsen and xterms, if not for the likes of Netscape.

I think I gave up on the MGR window system in 1996 or 1997 and started using X on the ELC. By that time, I also had an NCD X terminal at home, so two people could run graphical programs on the ELC at the same time.

In 1994 or 1995, I also got my hands on a Diab DS90/20 server, the big brother of the ABC1600 I used so long ago and a computer and operating system I was used to from work. The DS90, closet (because it was running in a closet), ran Diab's own D-NIX and I had ported many programs to it both at work and at home. One of the programs I ported to D-NIX was SklaffKOM, a bulletin board system in the tradition of the KOM conference system.

The DS90 closet, with SklaffKOM, served as a dial-up public access Unix system in the 013 area code. Previosly, my Sun 3/60 had been the public access system for a short while, but this freed the workstation for my own purposes. From the beginning this system was known as The Hack Machine, but was later under sponsorship known as IBKOM.

By that time, closet the DS90, frobozz the ELC and the X terminal (and perhaps some other computers) were connected with a thin coax Ethernet. Several character terminals were also hanging off from closet.

I had a dial-up UUCP connection for mail through the DS90. The system was reachable through the Lysator academic computer society as lysator.liu.se!closet. I only had one modem, a clunky old 9600 b/s thing that was used both for people dialling in and for the UUCP connection.

In 1996 I placed the X terminal at a friend's collective. They had arranged a leased line connection to the Internet through the Swedish university network. I had a place to work there, which pleased me enormously. I later moved to this collective for a while in 1997 until we formed our own collective, the Area 41 Collective, in October 1998. Area 41 eventually had four adults, two kids, 18 computers and redundant Internet connections.

My next main home computer, in the Area 41 collective, was a Sun SPARCstation 5. This very machine was later turned into the main hack.org server.

After that, my main computer was an IBM Thinkpad 570 laptop. This was my first laptop ever. I used it almost daily for about seven years. At approximately the same time I also started using a Sun Ultra 1 I got very cheap.

I later donated almost all my old computers to other collectors. Hopefully, my collection has gone to better homes.

Retro-computing

I've been into retro-computing for quite some time, even though I'm less active now than I used to be. I still keep several user accounts on large, ancient machines such as PDP-10s and PDP-11s that are, believe it or not, still available on the networks. I have experienced first hand such operating systems as ITS, GCOS, RSX-11MPLUS, RT-11, TOPS-20, Unix Edition 7 and many others.

A few years ago, I got rid of most the ancient hardware I had collected. SWMBO was not very impressed or pleased with all the junk in the flat at the time. Anyway, I guess I'd rather have something really useful around than museum items, so I gave them away to (hopefully) better homes.

I still really enjoy reading and collecting technical manuals, especially really old manuals, just because they are there. It's like climbing mountains, really; you just have to know what it looks like on the top.

In my modest collection I have a set of 'handbooks' from DEC for the PDP-11 and the VAX, some of the manuals for the TOPS-20 operating system, the ITS 1.5 Reference Manual (I was actually the one who got MIT AI Lab's library to scan it in the first place.) and the only thing worth reading about the PC; The IBM PC Technical Reference.

I also keep the complete source code for many commonly used system programs and complete source code for some ancient operating systems. I find pleasure in collecting and reading source listings like these. These things are true wArEz, kids! I'm k00l now, right? Right?


Last updated: <2008-10-25 00:17:47 CEST>