In 2003 I started seriously playing with the GNU/Linux operating system, it was a matter of months to make the switch from Windows XP to almost running Slackware 9.1 only. That choice was a good one, it brought along a learning tidal that I’ve been enjoying since then.
One year or so passed and in July of 2004 I already felt very comfortable working in the shell, coding in Emacs and even playing my mp3 music collection and DVDs, things weren’t so smooth and fancy as today, there wasn’t transparent borders, or shadows, Ubuntu was in diapers and setting up the graphic desktop was a pain in the ass in your lucky day. But I learnt a lot about my hardware and the inner workings of the operating systems, not only Linux based ones.
I got an old IBM Pentium 100MHz with 48MB RAM and 20G Hard Drive along with an USRobotics 56k modem, the modem was intended to provide Internet connectivity for my main PC that ran Slackware, the internal modem of the later didn’t played well with Linux. Thinking about what to do with the Pentium machine I stumbled upon some on-line article about Hotmail. I thought of learning about servers by running my own web, email, ftp and any kind of server on the venerable IBM hardware, which proved to be a fine workhorse running by several months almost unatended with no downtime (actually the server ran several years, but I upgraded the hardware very soon), unless lack of power of the like. I wasn’t bound to dialup too much time, very soon in mid 2004 I leased a 256Kbps DSL connection which made perfect fit with the server project.
I started researching about pre-Microsoft, Hotmail’s original infrastructure, trying to emulate it if possible, it turned out that FreeBSD was the operating system used by Hotmail and qmail was the MTA. I already knew about the BSD family of unices, but never touched one of such beasts before. Again the task of learning was daunting at times, but very joyful overall. This time gained a lot of knowledge about the workings of the Internet, web servers and the way http requests/responses are handled (really helpful for my career as web apps developer), qmail and how the protocols SMTP, IMAP and POP work togheter, I used to host my own domain, both web and email and my own Subversion server. FreeBSD 4.1 was the operating system choice, also great for learning about true unix which is not the same as GNU/Linux.
In ten years I’ve seen the raise (meaning widespread use) of virtualization technologies which I started using in 2005 with Xen and VMware, later clouds came and I was also interested in learning about it, good old cfe.homeunix.org (which was the domain name of my server) then left the physical layer and went to heaven, well only to the cloud in the form of an AWS AMI.
And the learning path does not seem to end soon, today I got my first server on IPv6 (you need to be on IPv6 in order to be able to reach the website). Thanks to Hurricane Electric and their IPv6 Tunnelbroker service, I know a bit about IPv6 (I should know, I did the CCNA course) and the difference between v4 and v6 is more than 2 :-)