In yesterday’s post, I said:
…if you’re running a public-facing server in your house, office, or anywhere except a datacenter, you’re doing it wrong.
Oliver Haslam takes issue with that on his home-hosted blog:
[Home-hosting] works fine because at the end of it all, this is here as a way of me learning things. It’s taught me more about virtual machines than I could have picked up from reading. It’s taught me how to configure Apache (well, I try!) and it’s taught me how to install Pelican as well as pick up some basic PHP skills to boot. And it’s cost me nothing except the electricity the host machine uses. But that’s on anyway because it’s where all my backups live, so there’s that.
I’m sure Marco meant to qualify his comment, and that he meant that people are doing it wrong if they’re running a business, or that they’re getting hundreds of thousands of hits a day.
Nope. I would have qualified it like that 10 years ago, and maybe even 5 years ago, although it’s less about daily pageviews and more about how much it matters to you if your site goes down for a few hours or days. I did run a home-hosted server for a while, and it was terrible — I always stressed out about my site being down whenever there was a power outage, ISP downtime, or a flaky hardware issue.
All of the learning benefits Oliver lists are identical to running a VPS. And when you can get a professionally hosted VPS for just $5 per month with most of the snapshotting and rollback conveniences of hosting it yourself, the argument for home-hosting even for tinkering and learning becomes pretty weak. That’s less expensive, in many places, than the electricity to host it in your house, and even less if you don’t actually use it for an entire month. And when writing to app developers, $5 per month is not a deal-breaking amount of money — that’s significantly less than the cost of listing an app in Apple’s store at all.
My fear is that people will read Marco’s comments and not try things out because they were told not to. I’ve nothing but respect for Marco - how many businesses have I built and sold? - but I do hope that his semi-elitest slant on things doesn’t stop someone from playing, someone from learning or someone from honing new skills because they can’t afford to get a host elsewhere. After all, VPSes etc can be daunting when starting out, too.
Calling my suggestions for app developers to use cheap VPSes “elitist” is baffling and completely off-base. And when did I tell people not to try things out? On the contrary, I’m encouraging developers to teach themselves Linux server administration because it’s easier than they think.
The easiest way to try it out isn’t to tell people to set up a home server (virtualized or not), find and download the right ISO for their distribution to run on it, install it, make the many decisions that the installer presents, figure out networking configuration, set up port forwarding… that’s too high of a barrier for many. That’s enough to make them say “Forget it, I’ll just run this on App Engine.”
It’s much more convincing, and much more productive to the goal of getting more people into this, to say, “You can start up a Linux VPS in five minutes by going here, paying a very small amount of money, and clicking three buttons.”