Today was pretty amazing. Why? I ate a small mango after brushing my teeth and was not bothered by the nauseating spearmint infused citrus flavour.
Actually something big did happen for me today and it's something that I've been wanting to do for ages. I installed from scratch FreeBSD on several PCs and without looking at any of the documentation for the first time. I'm dangerous!
In a manner similar to how DarkMirror in Singapore talks about learning Japanese, my knowledge of FreeBSD didn't consciously happen, it evolved and eventually clicked. Like most people starting out in the FOSS world after living on Mac OS X and… heaven forbid… Windows, I was somewhat confused by the more intricate details of compiling kernels with optimisation flags and updating port trees with CVS; but after a week of informal study I pulled my old 200MHz Pentium MMX machine out and installed FreeBSD without looking at any documentation. Without realising it until after I finished, the process of installing and configuring has become second nature.
I really am impressed with the quality of the BSDs and the open source community's efforts. Xorg + KDE 3.5 or Xfce 4.2 on a FreeBSD 6.1 box with the correct optimisations works flawlessly even on hardware that would struggle with Windows 98! Suddenly all the old machines that litter my expat family's house have uses. Heck I'm even looking at my old Amiga in a funny way now…
I feel such an overwhelming sense of power now than I did before in a way that proprietary operating systems never really allow. Open source rocks! If I don't like my X window manager, my desktop environment, my CLI text editor, my shell, my file browsers, my titlebar widgets or even my daemon services that manage SQL or the web, I can just change them or swap them for something else. A company doesn't dictate what software has to be installed, I do. And if something doesn't exist or I need to do something mundane, a quick keyboard lashing session later I've got Perl doing it for me.
Now I could have continued my exploration of Linux or just continued to hack away at Mac OS X, but I really do appreciate the strict conventions that the BSDs follow and the unwritten mantra that "if something works it's good" should actually be "if it's good it will work". FreeBSD, NetBSD (and from what I can tell from my currently limited experience, OpenBSD) are elegant, fast, very well documented and extremely robust.
It's got to the stage now where I'm even considering dual booting my MacBook Pro with FreeBSD and Mac OS X just to be able to use this stuff more and more in my day to day life.
For posterity (and because I think they're cool) I've posted some screenshots of some of the boxes I have happily running now. You can see the Mac OS X influence in my thinking with both the KDE and Xfce panels set up to look like the Dock and the permanent menu bar ;).
Here's Haruhi happily living in KDE 3.5/FreeBSD on my old HP box, (with the cursor unfortunately positioned on her face!!):
And here she is again in Xfce/FreeBSD on my 200MHz (with MMX… wow!) 1997 Sim Lim Square box:
I've also configured an old 133MHz Pentium box I picked up for peanuts to run as a dedicated firewall and local intranet webserver to serve up the Schade family wiki, kinda like a digital refrigerator door! Of course I couldn't put Haruhi on this because I don't want or need X on this machine. Ah well, can't win them all!
My next weekend project is to create a Perl script to download portsnap updates so they're residing on a local hard drive, then configure portsnap on each machine to look up the local server instead of retrieving the same image from the interent four times! Unless anyone knows of a port that already does something similar to this?