Thursday, February 28, 2013

Oh dark hundred

I've been fighting a cold since Wednesday, and took most of yesterday off to get some rest, after failing (despite the NyQuil)  to get much sleep in the wee hours of Thursday morning. Last night, I was feeling a lot better, so I went to bed without taking anything.

...

Now here it is, the wee hours of Friday morning, and I'm back to square one.

Having taken the medication I should have taken last night, and needing something to do while I wait for it to kick in, I thought, "Hey, I'll get back to work on the Rails tutorial I am working through." Plus type out a blog post! You're welcome.

I had been working on the tutorial in my Ubuntu environment (I dual-boot using Wubi), but constantly having to restart my laptop to switch between Linux and Windows was getting old. So I decided to use VirtualBox to set up a virtual Debian machine and avoid that particular headache.

As I was doing that, I realized how far things had come since I first started working with Linux. Obviously the software itself is better, but the very fact that I could decide, on a whim, to set up a Linux machine and, through the magic of virtualization, have it basically appear out of thin air in a matter of an hour or so was pretty freakin' cool to me. The first few times I tinkered with Linux, it required a dedicated machine, or at least a dedicated partition on a hard drive, and lots and lots of trial and error to get it to work. (This was, of course, back when my PC had a hard drive with about half the storage that I now have as RAM.) If nothing else, knowing at all times that I could just blow the VM away and start again was very liberating, compared to worrying that I was going to bork the only computer in the house and have to spend hours recovering from backups, if I even had them.

Hard-core techies may be blasé about this stuff; as an occasional dabbler I know I am late to the party on just about everything tech. Having said that, maybe I have more of a sense of wonder about these things precisely because I am not immersed in it day-to-day. When you use something, then go away for a while and come back, you really experience the scope of the improvements in a way that you might miss if you're constantly absorbing incremental changes.

That so much of this stuff is free-as-in-beer (and often as-in-speech as well) is just icing on the cake. It just keeps getting easier and easier to get the tools needed to become a developer in a particular area. When I started out back in the late 90's, FOSS was growing rapidly, but it still seemed to me that you had to spend a good bit of money (at least, a good bit given my income at the time), and time as well, to even dip your toe in the pool. Now, I feel like I can get away with spending almost nothing and still learn first-class tools and technologies. Once I had my (free!) copy of Debian running in a (free!) VirtualBox VM, I was able to use (free!) git to pull my tutorial code down from my (free!) GitHub repository and have it up and running in a matter of minutes. Of course, I then realized the code in GitHub was about a chapter in the (free!) tutorial behind where I had actually gotten, but that was easily rectified.

I know that nothing is really free, and the ride may come to a stop one day. From where I stand, though, it's a great time to be a geek!