Skip to main content

10 Benefits of Building Software as a Service (SaaS)

SaasDefinition: "Software as a service [...] is a model of software deployment where an application is hosted as a service provided to customers across the Internet." (Wikipedia)

Software as a Service (SaaS) can be a very attractive model for software vendors. Here, I share my experiences of transforming the desktop application FeedJournal to use the SaaS model.

FeedJournal was born into this world as a .NET desktop application; a fruit of Microsoft's Made In Express Contest that ran in 2006. After the contest (First Prize, thank you Microsoft!), I took some time off to learn ASP.NET and port the application to the web. The port itself wasn't too cumbersome; most of my time was spent learning the development platform and web development patterns. Today, FeedJournal Publisher employs the SaaS model throughout, and users can run it from their web browser, or by using a REST API. Below, I count 10 obvious benefits that came from this transition:

1. Fear the Hacker

"FeedJournal will not be reverse-engineered!"

My initial reason for turning to the web was purely technical. FeedJournal was (and still is) unique in the way it automatically orgainizes articles in a slick newspaper format. I was worried that someone would reverse-engineer, copy and rebrand my invention as a competing product. It is particularly easy to reverse-engineer .NET and Java applications, because they are distributed as intermediate byte-code and not as machine code. By providing a free demo download of FeedJournal, the stage was set for any evil hacker to play copycat.

By instead deploying the application to a web server, the binaries are never exposed to the end-user. This is a huge benefit for anyone who does not trust the power of utilities to obfuscate byte-code. Now, my build process is also simpler because I do need to run the application through an obfuscator on each build.     

2. Fear the Cracker

"FeedJournal's registration system cannot be cracked!"

Many people will never pay for software. And not because they opt to use free software, but rather because it is relatively simple to get hold of pirated copies. Sadly, it is often more simple to use pirated software than to hop through the loops of registering a product legally. 

Some people argue that pirated software is beneficial for the industry. They claim that pirated software gets exposure that will generate more sales. Be that as it may, I take my chances by eliminating the risk of anyone cracking my piece of software by using the SaaS approach. No cracks or keygens will work to gain illegal access to FeedJournal. And even if it such a crack would be possible, I can easily patch the security hole for all users at the same time. No old crackable versions would be available anywhere.

3. Finance

"The monthly sales are stable!"

Having users subscribe to use a product is very attractive from a financial point of view. The earnings become less erratic and it is also more attractive to users who only need to use the service for a shorter amount of time.

Charging subscription fees for locally installed software is not practical. Many software vendors instead charge a running support fee, which seems to be working quite well for larger companies. On the other hand, support still costs money for the organization and it doesn't fit in with the attractive software utopia where you build a product once and sell it forever.

But, by having the software hosted on your server, it suddenly becomes acceptable to charge a subscription fee for access. This is perhaps the most attractive aspect of SaaS from a business perspective!    

4. Usage Statistics

"I know how many users generate a newspaper each day, and which functions people use!"

For a desktop application, you know how many users have downloaded and registered your product. But it is more difficult to know how many people have installed it and actively use it. Ping-back solutions, where the application secretly sends a message to the author's web site, is frowned upon and can be disabled by users with a firewall.

For a hosted application you will get a huge amount of statistics at no cost at all. It doesn't matter if you host it on your own server farm/basement or use a hosting provider - you are guaranteed to have more data than you could shake a stick at. This data can of course be used to improve your marketing focus (where are my users from and from which sites did they arrive?) and product development (which features are most popular?).

5. Catching Bugs

"If something bad happens in the software, I'll be the first to know!"

Software is difficult to write. Sometimes things go wrong and the application throws an exception. If the user sees an exception, he will obviously think less of the software and perhaps stop to use it. When desktop applications crashes, the author will find out about it only if the user takes the trouble of submitting a bug report. Even if the user submits a report, it is likely to miss the detailed information the developers require to pinpoint and squash the bug.

A hosted application can easily catch and log all exceptions directly to the server. Additionally, you could send exceptions to an e-mail or instant messaging address to be notified right away. This ensures that you have a complete image of all problems in your software, and it will be easier to assess which bugs affect users the most.

6. Deployment

"Prospects can start to use the software within 20 seconds of landing on feedjournal.com!"

The barrier to entry for a web application is of course much smaller than that of an equivalent desktop application. No download and installation of the product are required. Simply register a new user account and you are set. Also, dependencies can cause problems in desktop applications, where different applications require different versions of the same DLL or framework. All of those headaches are gone in the SaaS world. Additionally, it is much easier to manage and deploy resources (fonts, images, etc.), because they only need to be installed on the web server.

And, as a big bonus, you don't need to worry about users running ancient versions of your product - the product is only installed on the server and the vendor updates it whenever he wants!

7. End-User Configurations

"Linux or Mac? No .NET/Java framework installed? I don't care!"

FeedJournal can be used by anyone with a modern browser and PDF reader. In short, basic software that is available on all desktops configurations.

FeedJournal was initially available as a Windows .NET application. It wasn't long until requests started to pour in for supporting Mac OSX, Linux and older Windows versions. It is difficult enough to develop software for one platform, who needs the headache of supporting a multi-platform product?

A web application still needs to pay attention to different web browsers on various operating systems, but these problems are tiny in comparison - especially when using cross-browser libraries such as JQuery or Yahoo UI.

8. License Registration

"The serial number will never again be caught by the spam filter!"

FeedJournal Publisher users don't have to worry about registration, because registration is automatic on payment approval.

Anyone who had to deal with the business end of product registration knows that as soon as registration keys need to be handled, the headaches grow. Users mistype the serial, they copy and paste the wrong section, or generally need someone to hold their hand while registering the software. Using SaaS, you eliminate the step where the user registers. Simply provide a PayPal link and set up some simple automatic or semi-automatic flow where the user's subscription expiry date changes accordingly.

9. The Multi-Computer User

"Users can generate their newspaper from any Internet café!"

It is more and more common that people use multiple computers during the day or week. Perhaps they have one or multiple computers at home and another at work. These users do not want to buy one end-user license for each computer, but they would still want to access the software from multiple workstations. Again, SaaS solves this problem that would require some hard thinking from the developer of the desktop application. 

10. Always Connected

"The end of 'Cannot connect to the Internet' problems!"

There is no longer any need to handle issues with end-users behind proxies or firewalls. As soon as they can access the web, they can use your web application. You know that your application will always be able to access online content.


In summary, the Software as a Service architecture and business models can be very attractive choices for people trying to make a living from building, maintaining and selling software. Saas is not a model that fits all applications, but you should keep it in mind for your next software product!

Comments

Post a Comment

Popular posts from this blog

HOWTO: GTD with Google Docs & PocketMod

Take control of your unwieldy to do-list by combining Google Docs and PocketMod. With the system described here you will always be ready to take notes, and never run the risk of losing an idea! Update (July 30, 2009): Now using a Google Docs template. I use a subset of GTD (" Getting Things Done ") by having a digital copy of my next actions, sorted by context (@Home, @Office, @Shopping, @Computer, etc.). This lets me easily look up what I need to do, depending on where I am. However, a digital copy is not very useful by itself, since it is not accessible when I am offline. Putting it in my PDA is not ideal either, since the overhead of adding a new note is too big (turning on the device, opening the right application, having it recognize my handwriting). That's why I print out my to-do list on paper once a week and carry it in my pocket. It's the ideal way of accessing and editing tasks. Before I print out a new list I spend a minute or two copying the edits from my

HOWTO: Fix a Broken Laptop Lid for $1

A few months ago my laptop lid's hinges gave up and my lid kept falling over. I will show you how I fixed the problem in five minutes by using materials for $1. But first some background info. At first, I assumed there would be a quick and simple fix to this common laptop problem. My laptop is an Evo N800v. HP has bought Compaq since I purchased the computer so that's where I'm supposed to turn for help. I was kind of startled to hear that HP support wanted $500 for fixing the broken hinges - presumably they intended to replace the entire lid. Obviously, shelling out $500 for fixing a 6 year old laptop is not the way to go, so I started to look for alternative solutions. First, I disassembled the laptop numerous times, trying to make the hinges more sturdy (that's spelled S-U-P-E-R-G-L-U-E). Anyway, that didn't help. Option number two was to do something similar to what user xrobevansx did on instructables.com . Basically he bought a lid support in a hardware store

Reading on Paper vs. on Screen

One of the basic premises behind FeedJournal is that it's better to read text on paper than on a screen. While it might not sound like a bold assumption, it still is an assumption and as such worth to examine deeper. Today, office workers and many other professionals are required to focus their eyes on a computer screen during most of their work day. Many of them continue to use the computer at home. FeedJournal was created with many goals in mind; one of them is to release you from the screen while enabling you to read the content you love. You shouldn't have to spend more time reading off a screen, just because you want to access fresh and relevant content. Recent research has found that reading a longer text on paper is 25% faster than reading the same text on a computer screen. At the same time, reading comprehension and article overview are improved. Although screen resolutions have increased and font rendering technologies such as ClearType make it much easier to rea