A few readers have asked me about this one, so I thought I’d type up a short clarification along with some real-life examples. But to keep things simple, I’d just like to start by pointing out the differences between hosted applications and SaaS. (We’ll save the cloud for later in the article)
The most obvious biggest difference between “SaaS applications” and “Hosted applications” is that one is a “service” that you use, and the other is a “product” which you own.
When you rent a car, you are paying for the service of that vehicle. This is similar to Software-as-a-Service.
But when you buy a car, you are paying for possession of a product. This is similar to purchasing a software package and having it hosted on a rented server.
There is also some overlap between SaaS applications and hosted applications. You can reasonably say that all SaaS services are hosted, but it would not be accurate to say that all hosted applications are SaaS.
If you wanted to start a blog today, you could visit wordpress.org and download everything you need to start and manage your own blog. You simply upload the application to your web server and run the installation process.
In this instance, you are responsible for maintaining the web site and have the ability to modify the code in any way you wish. Also, you have exclusive control over all of the data in your database. Nobody can ever delete your account or block your access to it.
WordPress is effectively a software product that you own, and is hosted on your web server. This approach is more work, but you also have more control over the application and its hosting environment.
If you don’t have a web server, you can go to wordpress.com and access the SaaS version of WordPress.
In this instance, wordpress.com will host the application for you. However, they retain control over all of the information, and you can’t modify the source code or move it to another server. The software belongs to WordPress, and you are only taking advantage of the service that this software offers.
Although you lose some control over the application and your information, you gain a lot in terms of ease-of-use, convenience and Total Cost of Ownership.
If you wanted to start a message board, you could go one of 2 routes:
- Hosted: You could spend a lot of time setting up and running an open-source message board system on your web server. This is more work, and makes you a potential target for hackers. However, you get to control all of the information in your database, and you can set your own rules. (http://phpbb.com)
- SaaS: You could sign up for a SaaS message board system, and let someone else worry about maintenance. Although you lose control over your data and are bound by the rules of the message board host, you can manage your message board much more easily and securely than hosting it yourself. (http://www.proboards.com/)
Of course, that only leaves 2 major questions:
- What’s the difference between SaaS and Cloud?
- What’s the difference between Hosted and Cloud?
There are many different takes on this one, but here’s my personal opinion.
First of all, let me just start by saying that any remotely hosted application, service or data would qualify as “Cloud” in my opinion.
Let’s suppose that you run a web server on your laptop, and you code a custom PHP script that pulls raw data from Twitter, RSS feeds, and Google Analytics. Would this be SaaS or Hosted?
Since you wrote the software yourself, and are running it on your own web server, it certainly isn’t SaaS. And since you’re running the web server on your own computer, it certainly isn’t hosted.
But here’s where the controversy starts.
Since the data is being pulled from Google Analyitcs, Twitter and externally hosted RSS feeds, many would argue that this is still SaaS. I’d have to disagree with these people, since the application is simply integrating components of the remote applications without the benefit of direct services from the remote host.
In this instance, I would consider it a Cloud application. The application is pulling components from multiple sources in order to form a completely separate software product.
Let’s also consider a custom-written PHP shopping cart on your web site that allows people to log in using their Facebook logins. This would also be an example of a cloud application. It’s not SaaS since you’re not actually using Facebook. You’re simply asking Facebook to provide a service or a piece of data for your application.
At the same time, I would also consider all previous examples to be cloud products. Both the hosted wordpress.org and the SaaS wordpress.com accounts are hosted remotely and provide access to remotely stored resources.
Consider the metaphor of a man ordering a meal at a restaurant:
“I brought my own food, but my house is boring. I’ll give you $25 if you let me eat my meal here, with your lively atmosphere and decor.”
Software as a Service
“I like coming to this restaurant here because I can just eat the food without having to buy a kitchen, prepare the food or wash the dishes.”
The Cloud (And here’s where it gets wierd)
“I don’t want to buy the whole meal. I just want the taste of garlic and broccoli in my mouth, and the feeling of a full stomach.”
I know this article has gone on a bit longer than usual. But hopefully, this should help bring a bit of clarity to the debate between Cloud, SaaS and Hosted applications.