DIY as an Extreme Sport
Want to test your hacker prowess? Try to beat this scratch-built Web server
Photos: Bill Buzbee/homebrewcpu.com
FLASHBACK: The front panel of Bill Buzbee's handcrafted Web server [left] evokes the late 1960s or early '70s. Residing within it are some two hundred 74-series ICs, painstakingly wire-wrapped together [right].
Lots of people know that you can construct a Web server at home without great difficulty. Get a PC, load it with Apache, do some port forwarding on your router, and you're good to go. Or if you think that's too mundane, you could build a tiny Web server out of an Arduino microcontroller by adding an Ethernet accessory board. Thousands of people, I'm sure, have hacked systems like that together for various purposes. But I've recently discovered, much to my pleasure and amazement, that one home brewer has set up a DIY Web server that's far more impressive than any of those. Indeed, he's taken "do it yourself" to a whole other level.
Bill Buzbee, of Half Moon Bay, Calif., has built himself a Web server entirely from scratch. Scratch is, of course, a relative term. No, he didn't draw the copper into wires or slice the silicon into wafers. But he did construct his home-built CPU, called Magic-1, by meticulously wire-wrapping together some two hundred 74-series TTL chips. They reside on five printed-circuit boards, which are housed in a cabinet whose front panel is replete with dozens of LEDs and paddle switches. It thus has, as he intended, the distinctive look of the mini- and microcomputers of the late 1960s and early 1970s. Buzbee claims that it sports the performance of an Intel 8086 (a close cousin of the 8088, the CPU found in the original IBM PC) making it a decade or so ahead of its nonchronological time. It's a DIY masterpiece. But Buzbee is self-deprecating in advertising his creation: On his Web site, at http://homebrewcpu.com, which is served up, of course, by Magic-1, he says, "I'm continually amazed that the damn thing runs at all, much less runs as well as it does."
That one person could construct a Web server starting from little more than stone knives and bear skins—and doing it all in his spare time—is just stunning. But Buzbee's accomplishment doesn't end with putting together the hardware. "I've had to write an assembler and linker from scratch, retarget a C compiler, write and port the standard C libraries, write a simplified operating system, and then port a more sophisticated one," he says. It helps that Buzbee develops software for a living. "It also helps that as far as my wife knows, I'm actually doing paying work on the laptop and not just screwing around with my hobby projects."
Still, that somebody would take on such a challenge—and purely for the entertainment and educational value—must inspire anyone's admiration. And it warms the hearts of us middle-aged technophiles to see this tribute to the kind of technology that got us first acquainted with computers. I'd urge other geeks of the baby-boom generation who want a good soaking in nostalgia to drop in on Magic-1 over the Internet. If browsing Buzbee's Web site seems too modern for you, Telnet in and play the original Adventure game or perhaps have a soothing session of ELIZA. Consider it therapy for dealing with the frustrations of modern computing hardware. You can also take pleasure in knowing that the signals you're creating in the depths of Magic-1's circuitry will be flowing through wires lovingly connected by one pair of human hands.