After jillmurray started a storm in the Forums with her question “Anyone LOVE their hosting company?” it got me thinking what features are important to me in a host. Every discussion about a favorite is clouded by personal preferences. If all you care about is price, then you’re going to disagree with someone who insists that their server runs on Solaris and has 24 hour phone support.
So, here’s a little discussion on what I expect from a host.
One thing to get clear first: like many people I’m pretty frugal. I think this trait comes out especially in the world of hosting because as soon as you start your search for a new host you get a bunch of advertising for FREE HOSTING NO ADS. So, this is really a basic set of requirements I expect from a budget host. Sure, you can go out and spend a ton of money and get something better, but I’m talking about hosts that are at or under $10/month for a basic hosting package.
For me I expect to be using Linux with Apache and PHP and either MySQL or PostgreSQL databases aka the LAMP stack. There are some blogging platforms that either work with any web server (e.g. CityDesk) or those that work on Windows (e.g. DotNetNuke). However, it’s important to me that I use the best in breed blogging applications. For blogging and community sites – most applications are based on LAMP. I also expect to have multiple domains in one account. I run several blogs and while some are reasonably popular others just don’t get as much traffic. Some are new and, sadly, some are zomblogs. It doesn’t make sense to me to have 5 accounts with a provider when the sites only use 2 accounts worth of resources.
Finally – and I’m going into a new paragraph here because it’s important to me – I want shell access. While this is probably not a huge deal for many people, it’s a deal breaker for me. Using a shell has made me far more efficient than when I just used FTP and Cpanel. I can install, upgrade, and tweak, a dozen blogs in the time that it used to take me to maintain just one of them. Combine that with subdomains and all of a sudden I’ve got my test and production environments on the same server and can easily move code into the live site.
I expect to be able to have lots of email accounts. I find that over time whether it’s for friends who are also blogging on the site or it’s for different generic email addresses it’s nice not to have a limit. I’d like the option of forwarders and the ability to access my email with IMAP. Spam and Virus filtering is a nice bonus but is not necessary. And some mailing lists would be a nice option.
Limits? Who likes them. Well, in the end we all need limits of some sort to keep from the server being a “tragedy of the commons”. Ideally it would be nice to have unlimited everything, but that’s not practical for the host. I do want certain things to either be unlimited or have very high limits: email addresses, domains and subdomains per account, disk space, bandwidth. This is all relative between hosts, but I want something powerful for my money.
Customer Service with a Smile
I don’t expect much from customer service and maybe that’s because my previous experiences with budget hosts. Submitting a ticket may give me temporary happiness that someone is dealing with a problem on my site, but it also makes me worry that the support folks are going to fire back a rude response. Ideally I shouldn’t have to submit a ticket: the services should just work. When I do submit a ticket, I expect a response within 24 hours and ideally within a few hours. I don’t expect a live support phone number, but a group chatroom is a nice middle-ground. For a budget host, that’s about all that’s reasonable.
Well, for a budget host I expect at least some of the services to go down once a month. Whether it’s HTTP or MySQL or IMAP – something is going to break for at least a few hours every now and then. When that happens, all that I really expect is knowing that my host is working on it, resolution within a few hours, and maybe something saying “we screwed up, sorry about that, now your site is fixed” when it’s all said and done.
I think that the growing GMail inbox was the first place that I saw this, but it’s obviously the right way to go. This past February, an old hosting account that I had on autopay I was still paying 1997 prices for 1997 levels of service: upwards of $40/month for 25MB of space. Ouch! I asked them to immediately upgrade my site to their current offering. Not possible they said – I would have to cancel the account and create a new one. I want a host that will constantly keep my plan at the same price and level of service as the best match of what they are currently offering unless it becomes a worse deal for me.
What I Don’t Want
I don’t want a site where I’m a sub-member. Maybe it’s because I fantasize about being a blog overlord or maybe it’s because I want full control over my site, but for whatever reason, services like Blogger or Typepad just don’t interest me.
I don’t want a site to constantly try to upsell me. I’ve got my hosting package – if I want more, I’ll buy it from you! But don’t call or email asking me to buy extra features.
Finally, I don’t want to be resold. If I go through a reseller I feel pretty confident that I’m not getting the best deal and that the people working on my site are only hosting a couple hundred sites. I really prefer to be dealing directly with the people who actually own and run the servers and I want them to have tens of thousands of active domains – just not all on my server!
So – what else? Is there anything else that you like? Anything else that you don’t want?
Once we nail down the list of features that are important we can really get into which host people love (and why).
I never found a hosting provider that really did everything I needed with the personal touch I would like. It’s too expensive to co-locate and getting a shared piece of a server can be a problem if some of the users on your server become very popular. Or when the provider thinks that he easily can host several thousand websites on one server.
That’s why I, since the broadband (ADSL) revolution, have my own servers at home. I can do everything I want from my own home, have all the domains and email-addresses I need and I can install everything I want. The capacity of the line can be very small if you are just starting and you can upgrade if demand asks for it. I’ve currently got a 1Mbit upload bandwith and haven’t reached any problems yet.
Lately I’ve switched from old SUN machines to the new Mac mini which is as small and silent as one would like. It’s located in a meter cupboard where the phone line comes into my house. I documented everything how I set it up on a blog at http://switch.richard5.net so others can enjoy the work I’ve done and start hosting for themselves. I hope you find the info usefull…
Duh… Silly me. I’ve done my share of shelling. Not extensively or regularly, clearly, but I’ve built more than one database through the shell… I can’t believe I forgot! Amazing what happens when you just change jobs for a couple of years. You go soft! I don’t know how my speed through the shell compared to any other method because that was my only option at the time. (I do know that no software = cheaper, however.)
Thanks for explaining all that, Markus. I can see how it would be faster. When you know your commands really well, software tends to just get in the way.
Greg, I still want to read “how I found shell and my life.” That’s a sooper title if ever I read one. I could probably warm back up to the command line given time and a decent set of instructions. I’m a source code kind of girl.
And re the RTFM issue– the day we start refering to Google as “The Manual”……..(!) well, I know I don’t even have to finish that sentence on this board. I’ve RTFPB&Fs enough to know what you’d think of that, Nick and Chris & co.
@Greg: That’s the reason why I did not use the word ‘cluster’ 🙂
Well, every professional ISP can offer you such a fallback solution. But the disadvantage is so far that they will charge you a lot of money monthly for it. I have no idea why the big players in the shared hosting branch don’t offer such a solution in their ‘professional’ packages.
What you can do is to do it all yourself. Get a DNS provider with a fallback feature, get a hosting solution at company A, get a hosting solution at company B and tie that all together through some backup/rsync/cron jobs. Maybe it will also work with ‘Unison File Synchronizer’ but the MySQL part is tricky.
@jillmurray: Every major Linux distribution comes with all the necessary packages to build these nice little workflows. But in nearly most cases you will need a dedicated server to have enough control about the the server daemons.
What a shell is? It’s a direct command line access to the machine itself. That empty ugly surface with a (in some cases) blinking prompt asking you for input and you have no idea what to type 🙂 If you are on Windows … the DOS box is a shell.
Why the shell is faster? Because all operations are done on the machine itself. To extract a zipped file or to copy a directory is light speeds ahead of FTP transactions and you only have to send some bytes like ‘cp * backup’ 🙂
To make a basic installation of a software like Textpattern it only needs three commands: wget to FTP-pull the archive, tar to extract it and cp to copy it into the destination folder. After that some vi (the editor) to get the configuration files right. Now you can start the browser based installation routine. If you compare that to the whole FTP process necessary without the SSH shell access, well, that takes literally hours. That’s 30 minutes compared to n hours the other way.
Testing software without SSH shell access takes days.
In the times of OSS and “the list archive is the documentation” I prefer UAGDSE to RTFM, but the use of UAGDSE is slow to catch on.
jillmurray – I’ll do my best to get a some articles on “how I found the shell and my life” soon. I’ve been meaning to do a shell vs. one-click vs. ftp/phpmyadmin screencast for a while to prove what I already know: the shell is fast and easier in the long run.
Im going to frame that.
With tech and semi-tech communities there is always a group of hardcore users that like to tell other users to RTFM (google it heh..) but we try very hard to avoid that here.
Greg, i think that’s a neat idea for an article, or small series — i’d love to say i’d cover it, but i’d just be breaking that promise before i even started
Obviously, I’m not a genius when it comes to web hosting.
It would be really super cool if someone could make a post about some of these more advanced server topics, in particular, what shell is, how it works, and exactly how it can make everything faster for me.
Don’t tell me to Google it. I’ll do that anyway, but I mainly want to read about it here, in the company of smart, bloggy Performancing people.
That’s why I use Google Sitemaps to help them index my Dreamhost site(s) quickly. I’ve found indexing has been fast for my own site.
Also, on shared IP’s it can take Google longer to properly index a domain. (fact, not fichtion — straight from google)
I have just got used to pointing domains at my IP and them working without going through control panels, asking the sysadmin or the worst; paying! I’m not a big user of SSL but that has traditionally been a good reason for a dedicated IP. The benefits of a single IP are mostly worked around by many hosts, using host-header detection and the like.
Chris – What are the benefits of a static IP that you like?
I agree with most of the rest of your requirements except for the one-step install. If anything I’d prefer Drupal 😉 And installations never seemed hard enough that they warranted a one click – but I’m a bit out of touch with the “my mom” level of sysadmin.
Markus – I’ve been on a host that had a clustered system where 10,000 active sites were sitting on a cluster of machines. While it seemed like a good idea, the end result was when they had problems with the cluster instead of it affecting a few hundred sites it affected 10,000! And yes, they had problems with the cluster as often as any other host. Your idea for failover is a little different than that and it’s an interesting one. Do you know any hosts that have such a setup?
First I have to second Chris with the external MySQL access. I understand the security reasons for NOT offering it by default. But it is really useful to use external MySQL admin applications. A secure SSH remote channel to the MySQL server should be opened on demand of the customer.
Second I would like some fallback option instead of showing ugly error pages. I’d like to have an DNS server which is either able to show a nice error fallback page or even the possibility to switch automatically to a second redundant machine. It would be great if the main presence runs on a nice server but in case something is wrong it will be switched to some other server. The fallback server could be less performant but still the site is not going down completely.
In a shared hosting environment where the MySQL server is a separate machine it would be nice to have a fallback MySQL server.
I think you hit on the majority of my requirements. I do worry about the “unlimited”, anyone who promises that is asking for trouble, I just need sensible and very clear policies on what bandwidth etc you are allowed and what happens if you go over. I have had accounts locked down for exceeding bandwidth or processor and usually it couldn’t come at a worse time in the sites life.
To add to your list I usually recommend LAMP hosting that has
– affiliate scheme; because I am asked to recommend so much as well as the warm fuzzy feeling I would like an additional incentive please
– one-click install of WP; If I am going to recommend a host it will not necessarily be to someone who has the funds to pay me a days consultancy to set up a blog for them
– give me ssh without requiring me to send my passport some far off country; I worry about identity theft, I don’t see why some $10/month account warrants my photo ID just to get command-line access
– MySQL access from outside the host; not a biggy but I like to control my database with the most appropriate tools, not just phpMyAdmin
– dedicated IP; not something I have yet to have in PHP land but I got used to having dedicated IP and not having to pay any time I wanted to add a domain
– low fee for transferring; many cheapo hosts have headline low prices but hidden costs, such as domain transfers out, look at the smallprint
“unlimited or very high disk space & bandwidth” = OVERselling and server overloads.