I've made a number of substantial changes to the way I host skippy.net through the years. I started out hosting on an old server in my bedroom, attached to my DSL line. I eventually got tired of dealing with hardware, and moved to a virtual private server at Tektonic. I was reasonably happy with that arrangement: it gave me full root access on my own server, and freed me from having to worry about hardware maintenance. Tektonic was, in fact, my second choice for VPS hosting. My first choice was Slicehost, but at the time there was a waitlist for new customers.
Eventually I got to the head of the line at Slicehost, created my Slice, and moved my sites over to a VPS hosted there. I was more than happy: the service was extremely reliable and the pricing was perfectly fair. I've enjoyed using -- and recommending -- Slicehost for about a year now.
In the decade that I've been running skippy.net, I've added and removed a bunch of other non-web services. I started out hosting all my own email, and managing my own anti-spam configurations. Almost two years ago I migrated to Google for Domains, and have been extremely happy to be out of the email management business. I ran a number of mailing lists via GNU Mailman at various times, but have moved many of those over to Google Groups. I currently run a private Subversion repository to track some of the side projects on which I work, but have been committing changes less and less frequently.
Currently, the only things I regularly use are web applications: this blog, and blogs for friends and family. This leads me to ask the question: why am I paying for -- and maintaining -- a complete virtual private server? I'm certainly not getting my money's worth these days.
So yesterday I began looking in earnest at shared hosting. Rather than manage my own complete server, my little websites would be just that many more sites hosted on some big server farm somewhere. It's a somewhat daunting process to find a reputable shared host. Everyone's needs are a little different, and the service offerings are all just a little different from one another, so there's few real apples-to-apples comparisons available. I have a pretty good idea of how much disk space I need, and how much bandwidth I'll consume on a monthly basis, so that's an easy metric to use when comparing shared hosting plans. I'll have to make do with whatever control panel is offered to me. I'm not thrilled about using CPanel, or any other control panel, but I realize that's the nature of the game when I switch to shared hosting.
I'd love shell access, which I'm told is offered by some shared hosting companies if you simply ask for it. I suspect it's a chargeable add-on from other hosts. If I have shell, I'd really like access to the Subversion client tools, so that I can check out the latest versions of Habari directly to the server, rather than to my laptop, then upload the files from my laptop to the server.
Aside: I wrote "my server" instead of "the server" several times in the preceding paragraph. That shows how deeply ingrained my sense of ownership in my hosts has been over the years. It will, no doubt, take some time to get used to using a shared host.
I keep looking at the option to pay extra for a dedicated IP address, so that I can install an SSL certificate. I like the idea of HTTPS, especially when accessing the admin side of this blog from an untrusted network, but really -- it's just a blog. I'm not doing e-commerce, so HTTPS is probably one of those things to which I've grown accustomed without really having a need.
I've heard as many complaints as I have praises for Dreamhost. The same holds true for MediaTemple. Given the number of complaints generated by people I know personally, I think I can safely discard these two as options. I've heard a limited number of complaints against A Small Orange over the years, and a great many positive things. Given their longevity and the ratio of praise to complaint, I'm reasonably comfortable selecting them as one of my top candidates.
And at the end of the day, the process of switching from one shared hosting provider to another is substantially easier than switching from one VPS to another, so it's not like I'm committed for all of eternity to whatever host I select. In the latter instance, I need to build up the server and tweak its configuration to my standards. This takes time, but it ensures that I get exactly what I want, every time. In the case of shared hosting, I get what the host offers me, which may or may not be what I want. Case in point: A Small Orange runs CentOS for their servers, which means I'm stuck with PHP version 5.2.11. I've been used to PHP 5.3 on Debian for some time now. It's a small point to quibble, but a number of small points can slowly add up to become a very big problem on the whole.
I'm still looking at hosting providers. If you use one, and are happy with it, please tell me so in the comments. I'm not in any particular rush to move things around, so I'd like to take my time to make sure I find a host with which I'll be happy.