One student has asked:
I’m in the process of looking for a webhost and am seemingly overwhelmed with options…
I’ll be hosting a small … portfolio site and am hoping to create custom email accounts. Pretty standard stuff…
Do you have any suggestions for companies that are reliable yet affordable, preferably local?
When looking for hosting there are a few factors to bear in mind:
Any massively very cheap option will suck to a degree. Sites like Dreamhost with millions of subscribers will definitely have at least a few tens of thousands of irate customers, by virtue of raw statistics, but also by virtue of being a bit lame.
THAT said, most commodity webhosting sucks, even if you pay a little more. For real. DO take the time to explore options. Preferable go with personal recommendations from people with similar needs to your own. I’d be wary of skimping now even for a simple site. If what you are hosting gradually grows and you wish to move it you will discover that migrating hosting is a horrible pain and can waste days of your time. If you to host only a small amount of content now, just make sure that it’s on a host that has several incremental plans that allow you to gradually increase your quotas over time. (Dreamhost, for example, used to have the $10/month plan, and the next step up was a $395 plan – I’m still in the process of extricating some enormous websites off there, a year after I started switching. They have some intermediate priced plans now too, but there’s enough stigma attached to them now that I will never host anything on them that will reflect on my professionalism)
As for going local – that’s a laudable option. Its greener, friendlier, there’s a good chance the support will be better… However, I don’t do it, because there are problems too. The economies of scale aren’t here in Australia, and even if they were, Australia is still a nation with an awful network infrastructure by the standard of your more future-focussed economies. Hosting here is, and will be for a long time to come, much more expensive. For most start-ups, prohibitively expensive.
Other random tips that you didn’t ask, but I might suggest anyway:
- Never sign on to a host that guarantees you so so-many megabytes of data transfer, but does not guarantee you a certain amount of server memory, or a certain number of CPU cycles. The modern internet (at least in hosts in places with good infrastructure like the US) is not limited by bandwidth, but by CPU and memory. (by contrast, in Australia it can be both)
- Never sign on to a plan that offers FTP access but not SSH or SFTP access. Very unprofessional. FTP is so monstrously insecure that any plan that offers it and not the more secure alternatives clearly is only appropriate for data you don’t mind losing and sites you don’t mind getting hacked. Moreover, SSH offers you the ability to do many very flexible and sophisticated things with your site that FTP does not, and if you end up doing any server-side development later on you will want it. I have banged on about this before, and I will again.
- Who do I host with? My personal sites is on my fifth host now, and so far they have been the best by a long shot. They are http://www.webfaction.com – UK-based company, with servers in the States. For local hosting for clients who are prepared to pay a premium, I use http://pps.com.au. Much more expensive, but similarly excellent support and mere metres from UTS. There are, of course, many others – I just dont’ have any others that I can recommend as both responsive and full-featured at the moment.
disclaimer: I don’t know the legal terms to express this but… just because I’ve had good experiences with them, doesn’t mean you will… My views in no way reflect those of the UTS. Etc. Choose your host at your own risk, and whomever you go with, remember that your choice will reflect a lot about your professionalism to clients and the wider world. Take care, and get multiple opinions.
Now, the other thing to consider here is whether you want to even have classic hosting.
All the discussion so far has assumed that you want to go with the “classic” model of hosting. Let’s pick apart steps in that:
- you give an ISP money
- they give you a user account on a shared computer somewhere (or maybe, if you give them lots of money, they plug in a whole computer just for you)
- That computer is running some set of open-source tools: Linux, Apache, MySQL and PHP (or for my sites, usually something a bit more fashionable such as nginx, MongoDB and python, or maybe Ruby on Rails… but same general principle)
- you upload some files to it, maybe your wordpress blog software, or a wiki, or some kind of community forum written using the aforementioned software.
- Users can sign up to your site, get passwords emailed out to them and post comments to the site.
There are permutations here involving hosting on windows or mac os (if you like paying lots of money for essentially the same product) or hosting on virtual machines, but let’s put those ideas in the same box – basically, it boils down to us, as site maintainers, getting to know one machine very well as it has some files and software on it that makes our self-contained little site site go.
Now, let’s consider this in the light of the tools that we’ve been looking at in the course. Every one of those 5 steps is subject to revision. Facebook, google, yahoo, twitter, amazon… Is this how they do things, with some geeky-lookin’ sysadmin somewhere plugging in stuff for us to play with somewhere? Does the entire world run on webfaction (or even dreamhost?)
Not so much. There’s a key buzzword here that you can take home: cloud computing. Like most buzzwords involved in this course, it’s being used to sell so much stuff that there is no longer any real fixed definition left… but the gist of it is that it marks the new wave of web hosting and web services which de-emphasise the role of your particular piece of hardware somewhere, and concentrate on getting your stuff out there. I like Jason Scott’s definition:
By the cloud, of course, I mean this idea that you have a local machine, a box running some OS, and a vital, distinct part of what you do and what you’re about or what you consider important to you is on other machines that you don’t run, don’t control, don’t buy, don’t administrate, and don’t really understand. These machines are connected via the internet, and if you have a company then these other machines are not machines run by your company, and if you’re a person they are giving it to you without you signing anything accompanied by cash or payment that says “and I mean it“.
At the lowest level, companies like google and amazon lease out their infrastructure in products called, respectively Google App Engine, Force.com and Amazon Web Services. You can’t run classic applications such as wordpress on these, but instead must write custom applications that use the unique quirks of the system they are built with (although not always – see rackspace cloud for a different approach.) Consider also Eucalyptus, an open-source solution that allows you to build your own “cloud” – sadly probably below the budgets of most of us here.)
A level “up”, some cloud providers provide more specialised tools than basic data storing. Talis Platform and Freebase’s Acre, for example, provide “semantic” web applications that can query data in human-comprehensible ways, provides particular tools for customer relation-ship management.
Another level up… there are applications out there that provide services that you would once have had to build your own application for… Why copy your photos onto a web host and code your own photo gallery when there is Yahoo’s Flickr or Google’s Picasa web, or Adobe’s Photoshop.com? Who has built their own map server rather than just using google maps, Bing Maps or even stodgy old MapQuest? For that matter, why even bother installing the slow, expensive and bloated Microsoft office when you can use google docs or Zoho office? Or taking it still further – who here accesses that most primordial of internet services, email, using someone else’s web app? Google mail? Yahoo Mail? Windows Live? Anyone? Who, even, uses weird services that only make sense on the internet, such as Yahoo pipes, freebase and YQL?
And if you want to host comments on your site, why woudl you run your own blog comment engine if there are systems that allow people to comment on your site and share their comments across blogs, such as DISQUS Comments and IntenseDebate? Why manage users and give people yet another bloody password if you can leave the data in the hands of your users using OpenID, Yahoo IDs, Google Accounts, Facebook accounts (or all at once using RPX?) Why build your own social networks in general if there are hosted ones such as ning, or if you can integrate with Facebook or Google Friend Connect?
Here’s some advantages to think about with these services:
- in some cases… built in crowdsourcing (how good is gmail’s spam filter?)
- some cloud services have great viral/social media implications (consider if your site posts updates to your friends newsfeeds in facebook)
- built-in scalability (if your site goes up on digg.com and you suddenly have ten thousand people trying to view it at once, what happens?)
- economies of scale (a lot of this stuff is just plain cheaper than even buying your own computer and keeping it under your desk, because you don’t have the buying power of google.)
Now, some disadvantages:
- some of these systems don’t run traditional web software (although traditional web software may suck – and, as I keep saying, you should consider any data you post to dreamhost’s cheap arse accounts to have been donated to the world at large anyway)
- The privacy implications of some services are unknown but dubious: (e.g. Google Privacy Blunder Shares Your Docs Without Permission, Does what happens in facebook stay in facebook?, Lifehacker’s take, New York Times’ take)
- You are at the whim of someone else’s opinion of whether your activity is ok (e.g Facebook email censorship, 13 reasons your facebook account will be disabled, Yahoo rats out Chinese reporter to Beijing, writer gets 10 years jail)
- You are at the mercy of someone else’s data centres and backup regimes
- It despite some people touting its sustainability it may be an econological disaster (although is that just laziness?)
- Sundry other issues
So, to roll your own, or to host in the cloud?
Personally, I take it on a case by case basis. Possessing infrastructure that circumvents pervasive corporate surveillance is probably necessary for a health democracy, but it is time spent rolling my own everything a worthwhile investment? This is a critical question, and we’ll return to it in the final lecture.
Points to consider:
- is wordpress.com a cloud service?
- How much do each of these services cost? (Does someone want to calculate the comparative cost of hosting on Amazon EC2 and Dreamhost? How about comparing with the costs of a local Australian host?)
Further reading? Sure. Try:
- Electric Duncan: After the Cloud
- Richard Stallman warns Cloud Computing is a trap
- Tim O’Reilly’s take on the definitions and economics at stake
- The Open Cloud Manifesto
- The Belgian Beer Lovers Guide to Cloud Security
- if all this talk of self-hosted versus cloud hosting doesn’t make much sense yet, perhaps you can get nitty gritty. Compare the lifecycle of a classic PHP page view with a google app engine page view.
Get a slice of history! Geocities closed in the course of the week of this lecture. What does this say about the transitory nature of things hosted online?