It’s rare that I chat to other software developers without someone asking me when I am going to do a web version of my seating planner software. Because the market for desktop is dead, right? SAAS apps is where all the action is!
I think the web is a great platform for some products, not so much for others. Let’s look at the advantages of web apps over desktop apps.
Web advantage 1: No installation
You can access a web app from any device that has a browser. No need to install. There is no doubt this is a major convenience. However most desktop utilities can be downloaded and installed in 1-2 minutes with a decent broadband connection. Also you don’t have to keep logging in to most desktop apps, once they are installed.
Web advantage 2: No upgrades
End-users are always using the latest version. This is definitely an advantage for technical support. But it does take away some choice from the user. Perhaps they weren’t ready to upgrade or preferred the old version?
Web advantage 3: Better user insights
You can analyse how users are using your software. This allows you to improve usability and send out tailored lifecycle emails. It is possible to gather similar information for desktop software, but it involves a lot of extra work.
Web advantage 4: Distributed architecture
If you are writing web apps, you get a distributed architecture for free. No need to do socket programming.
Web advantage 5: Less piracy
Cracks and keygens are a fact of life for desktop software vendors. It is easier to protect against piracy with a web app.
Web advantage 6: Cross platform
In theory web apps are cross-platform. Write them once and they can run on any device with a browser. But browser compatibility issues mean it isn’t that easy in practice, especially if you are still forced to support the dreaded IE6. Also there are solutions (such as Qt) that allow you to deploy to multiple desktop devices from a single code base.
Web advantage 7: Subscriptions
Web apps lend themselves to subscription based payment. This is great because you get a more predictable monthly income and potentially get more money from each customer over the lifetime of the product.
So what about the advantages of desktop apps over web apps?
Desktop advantage 1: Responsiveness
Desktop advantage 2: Reduced hosting costs
The costs of hosting a website for a desktop app is minimal. Typically you just need to serve a few pages and a download file to each visitor. They then won’t need to come back until there is an upgrade. But hosting costs can be significant for a web app, particularly if the app requires large amounts of bandwidth or compute power.
Desktop advantage 3: Better access to hardware
Desktop apps can make better use of the hardware available. For example, you can generally do printing a lot better from a desktop app.
Desktop advantage 4: Better development tools
Desktop advantage 5: Psychological
Many people feel that anything web-based should be free. Psychologically customers seem more ready to pay for desktop software. Perhaps they feel a greater sense of ownership. This perception is gradually changing for B2B, but I think it is still prevalent for B2C.
Desktop advantage 6: Privacy
Many customers don’t feel confident storing important and confidential information on third-party servers.
Desktop advantage 7: Availability
You can’t use a web app unless the server is up and you have an Internet connection. A desktop app installed on your local machine is always available. You can continue to use it, even if the vendor goes out of business.
Desktop advantage 8: Up-front payment
Desktop apps lend themselves to a single, up-front payment. This is great because you get all the money straight away, improving your cash flow.
So I have come up with similar number of advantages for web apps and for desktop apps. Which is better? It depends, of course. For my particular application, I think a desktop app still has significant advantages:
- My software can render and zoom in and out of large floor plans better than my web based competitors.
- I can do printing better than my web-based competitors.
- Most of my web-based competitors seem very feature-poor. I am sure that is at least partly due to poor tooling for web development compared to desktop development.
- Most of my web-based competitors give their product away for free in the hope of making some money back on ads. I charge for mine.
- Seating plans can contain sensitive information, particularly for events with celebrities, royalty and heads of state. Some of my customers don’t want this information transmitted to and stored on third-party servers.
- If my server goes down then I lose sales. But my customers can continue to use my software. Imagine if they were dependent on my server and it went down (or I went out of business) the day before their big event. It brings me out in a cold sweat to think about it.
But other products are a better fit for the web. If I was writing a collaborative CRUD app, I would almost certainly do it as a web app. I have recently been working on a couple of new products. One is a web app and the other is a desktop app. Horses for courses.
A lot of the money I have spent on software over the last few years has been for desktop software. When I had to choose bookkeeping software, I chose a desktop package because I didn’t want to:
- pay every month
- store sensitive financial information on a third-party server
- risk losing all my data if the vendor went out of business
If I look through the list of useful tools and services on this site I see that 51 of them are web-based and 35 are desktop based. Peldi of Balsamiq reported in 2009 that 77% of their revenue comes from the desktop versions of their software. I asked him if that had changed much and he was kind enough to send me the following graph (myBalsamiq is the web version). You can see that it is still nearly 70% 4 years later.
The line between desktop and web apps is also becoming more blurred. Many desktop apps now use web protocols and embed web browsers. For example, the Qt toolkit allows you to easily create applications that are hybrids of desktop and web. It is also possible to sell a web app that companies host on their own servers. This adds some of the advantages and disadvantages of a desktop app compared to a web app installed on the vendor’s server (SAAS). Perhaps desktop and web apps will converge to the point where there the whole desktop vs web debate becomes meaningless.
So I think reports of the death of desktop software have been greatly exaggerated. There is no doubt that long-term trends ( e.g. increasing bandwidth and attitude to paying for web apps, for B2B at least) have been changing the balance in favour of web apps for some types of product. Particular those where collaboration is more important than graphics or computer power. But I think there will continue to be plenty of markets where a desktop app is a better choice than a web app for the foreseeable future. In the final analysis, customers care a lot more about how well your software solves their problem, than how it happens to be deployed (if they even understand the difference).
One problem with desktop apps is that nobody has only one computer/mobile anymore. With iCloud we have seen how really really complicated sharing of data between computers is. My app may generate many GBs of data. Do I want – as a one-woman-shop – to develop a full cloud app? Not so much. But can I expect from my clients to install a simple server? I don’t know. Except for “start installer” or “copy app to applications” customers expect software to magically install themselves.
DropBox and similar cloud sync apps can be a useful ‘quick and dirty’ way to add multi-device synchronisation to desktop apps.
Nice balanced post, Andy. I, for one, hope that desktop apps will be around for a long time, both because I just like them (grew up on them) and for many of the reasons you mention. Web apps are good too. Both have their place, as you say.
I think desktop apps have another advantage in that you, the developer, don’t need to take on the responsibility of hosting your customers’ data on your server. The customer sees improved privacy by storing their data on their own computer, I see reduced liability on my part.
I have been thinking about this issue for a while. Thanks to mobile, it seems native is making a comeback. Performance aside, Its hard to develop a single rich interface that is supposed to work well on computers with a keyboard and mouse and those with touch. But this is expected of the “ubiquitous” web — all platforms are created equal. Hence writing a native app excuses you from having to worry about supporting the multitude of devices and browsers.
1) Balsamiq is called out as a major point of evidence. This is a business product, and you have to differentiate between business users and consumers. I must agree that business users like to use private versions of apps right now due to corporate policies and such. There may be a huge shift going on at the moment, however.
2) Web apps do not necessarily have an advantage in terms of subscription pricing. MS office and Adobe have brazenly offered subscription pricing on desktop apps and made it a great experience.
Do your customers care about the same things as you? How many young newly engaged couples will get to the checkout page at your competitor’s web sites, and stop there, realizing, “Gosh, will this site be around in a year? I’d better look for a desktop version, even if it makes it horribly inconvenient to collaborate with my mom and fiance!”
Anyway, desktop vs. web is a moot point. Desktop won, and the desktop is now on a slab of glass.
1) On the contrary, I think businesses are generally more ready to pay for web apps than consumers.
2) Things are changing. But currently I think MS office and Adobe are the exception, not the rule.
3) I am touched by your concern. But bear in mind there might be other factors at play that I don’t care to expand on here.
I am seeing a trend away from free on Web apps.
The top reason to go Web based its to be on the iPad without paying the Apple tax.
Does QT support ios?
I believe Qt 5 supports iOS and Android. But I haven’t tried it myself.
Yes,QT support ios
Since now everyone believes that SAAS app have a better future,do you think there will be more competition in SAAS than desktop software?
Yes, I think so. In many markets there are more web apps to choose from than desktop apps.
Thanks, for the great post. Although I think the most of the advantages/disadvantages are very subjective.
The key point is: It’s not Desktop vs. Web.
Modern software company in order to succeed must use the following formula:
Desktop AND Web AND Mobile.
You must provide all 3 solutions and let customer to choose the best one for current time term.
Pingback: Desktop software is not dead | Business And Process