During ICFPC 2020 last weekend, the keyboard for the desktop PC on which I was coding for the contest stopped working. This made me realize that the desktop PC, which I had named “Lucifer”, turned 20 years old in January this year. That is quite a long life for a PC by any standard. It has served me very well indeed over all these years, though these days I rarely use it for anything other than for recreational programming and for maintaining this web-site. It is the first and the only desktop PC that I have ever owned.
I purchased the components for the PC over a period of two months from December 1999 to January 2000. Some of the components, like the graphics-card and the sound-card, had to be purchased from the US and a couple of kind colleagues on a trip to the US at the time brought them back to India. The entire rig, including the compact table and the UPS, cost me about INR 85,000 at that time, which was quite a lot for a desktop PC (this is equivalent to roughly INR 295,000 now, with an average rate of inflation at 6.43% during this period). What I got for this money was a very good gaming PC that could play any 3D game of the time at full resolution and with superb sound.
I assembled the PC myself (I almost shorted the motherboard in the process and thankfully noticed the problem before I turned it on for the first time). When I finished assembling it in late January 2000, it had these components:
- An Asus P3B-F motherboard based on the Intel 440BX chipset that supported Slot 1 CPUs.
- An Intel Pentium II CPU running at 450 MHz.
- 128 MB of PC100 SDRAM with ECC.
- A 13 GB Quantum Fireball HDD.
- A Creative Riva TNT2 Ultra 3D-accelerator graphics-card.
- A Creative SoundBlaster Live! Value sound-card.
- A Creative 52x CD-ROM drive.
- A set of Creative Cambridge SoundWorks 2.1 speakers.
- A Samsung Samtron 75E 17” CRT monitor.
- A 3.5” floppy-drive.
- A TVS Champ keyboard (with a DIN connector that was obsolete even then and required a PS/2 port adapter – this is the keyboard that finally gave up the ghost last week).
- A Logitech three-button PS/2 mouse.
The form-factor of the enclosure was ATX. Because of the erratic power-supply in Bangalore, I had to buy an APC 500VA UPS to ensure uninterrupted and stabilized power for it. I also bought a compact computer-desk to house it. I named the newly-assembled PC “Lucifer”. This is how Lucifer looked a few days after its birth in January 2000:
By the end of year, Lucifer was able to connect to the Internet at a whopping 56 Kbps using a dial-up modem. I enjoyed playing many a game on this PC over the next few years. Over the next three years or so, I upgraded some of its core components:
- The CPU was upgraded to a Pentium III running at 750 MHz.
- The graphics-card was upgraded to an NVIDIA GeForce3 Ti 200.
- I added another 128 MB RAM at first, and later another 256 MB RAM, taking the total installed RAM to 512 MB.
- I added a 40 GB Seagate HDD.
- I switched to a Samsung RW combo-drive to let me read and write CDs & DVDs.
- I added a 100 Mbps Ethernet card and got ADSL broadband.
This has pretty much been the configuration ever since. A few years ago, the CRT monitor died and had to be replaced by a 17” Dell P190S LCD monitor, which was actually a downgrade in terms of color-reproduction. Similarly, the Logitech USB keyboard that I am temporarily using as a replacement for the TVS Champ keyboard also feels like a downgrade. These days I have a 250 Mbps fiber-based Internet-connection, which is most definitely an upgrade. (Given these upgrades since its birth, a question like that for the Ship of Theseus arises: is Lucifer still the same PC? I think so, as I believe the Asus P3B-F motherboard to be the core of the system.)
After these initial upgrades, I kept postponing further upgrades for a few years as it always seemed like something much better was just around the corner. More importantly, I had stopped playing 3D games and hacking on GCC – two activities that used to require a lot of resources – so the procrastination became easier. Of course, the web and most software have kept getting slower and slower over the years, which is quite frustrating.
These days I want to keep using this PC to see how bad things have become over time while providing the same or even worse features. (Of course, I mostly use either a laptop or a mobile-phone for the usual web-browsing, as the web has become just excruciatingly slow these days. Most web-sites feel sluggish even on a brand new laptop these days, so that is a different tragedy of its own.)
For recreational programming and for taking part in programming-contests like the ICFPC, Lucifer is still entirely sufficient. Even relatively new programming languages like Go support this decidedly ancient configuration in their latest releases, so that is good to know. Let us see how many more years Lucifer has still left in it. Till then, I am grateful for its service so far.