The year end break finally gave me the time and motivation to take care of something that’s been nagging me for some time. For the past five or ten years, I’ve been hosting a dozen or so random little sites for friends and family. If you’re reading this, you might just be in the same situation: the friend whose theater production needed a site, your family member’s band, another friend’s pre-Flickr site for publishing kid pictures.
Each one of these sites was a quick little side project, and a great excuse to try out [insert neat new technology]. In my case I’ve accumlated a standalone Perl CGI site, a Gallery photo site, a Mason site for a band, not to mention my own WordPress blog. Of course web hosting has evolved quite a bit in the past decade, so each of these sites was originally built on a different host. MSEN back in Michigan, Aimnet here in the Bay Area, then stints on Lunarpages, Bluehost, and most recently MediaTemple’s GridService. Different sites on different servers, MX records pointing all over the place, a mix of registrars…it was ugly.
So to start off the new year, it’s time to start fresh. All the sites have been consolidated, refreshed, archived, backed-up, validated, and otherwise cleaned up. In the process, I replaced a number of services and tools that just weren’t working for me the way they used to. Here’s what’s in my toolbox at this point:
- GoDaddy – I can’t stand GoDaddy. Their DNS management UI was probably down literally 50% of the time I tried to access it. They’re relegated to registrar duties only at this point, but only because they’re cheap enough it’s not worth the time to transfer to someone marginally cheaper.
- linode – MediaTemple’s GridService was pretty slick, however for low traffic sites there always seems to be an initial lag that feels like they’re spinning the site up or something. I took a look at both linode and slicehost, both of which offer ~$20/mo packages with root access, your choice of Linux distributions, and nice management tools. Slicehost almost had my business, but their full-instance backup feature lost out in the end to linode’s DNS management and monitoring tool. Slicehosts’s DNS UI was particularly painful, requiring you to enter each record manually in an old-style web form vs. linode’s much more robust UI.
- jekyll – As I’ve described, I’m using git (with repositories hosted at github) and jekyll for revision control and site generation respectively. None of these small projects really requires a database back end or dynamically generated content, so a simple site generation tool like jekyll and the use of markdown/textile makes things easy.
- lighttpd – I’m a long time Apache user, lighttpd really does just feel lighter and cleaner, particularly for these small static sites.
- postfix – I suffered with sendmail long enough, editing one config file then converting it over into a format the app actually read. Sendmail is out, postfix is in. One config file, logical config options, and logs that seem slightly easier to monitor/mine.
- Ruby & Python – Perl and PHP are out. Ruby and Python are in. Life is better now.
OK, I’m old school. I was sold on straight LAMP, sendmail, RedHat derivatives (CentOS/Fedora), vi, etc. almost ten years ago, they’ve worked for me, and I had better things to do than reconsider those choices. But I was really just stuck in a rut. Times change, tools evolve, the web isn’t what it was 10 years ago, and now is as good a time as any to re-examine what’s in your tool box.