Web app vs Cloud app: What are the differences between web apps and cloud apps?
They are similar but the terms are not interchangeable.
A lot of us tend to use the terms web apps / cloud apps interchangeably in our conversations. I do too, although I try to keep the usage as informed as possible.
What I find is that the confusion stems from the fact that all applications in effect run on the web, therefore they must all be web apps. In one way this is true. Yet the “web” in web apps actually refers to the dependency of web apps on web browsers. They need web browsers to run.
In this post, I’ll try and extend the discussion on this subject and list out the distinctions between the two. To begin at the beginning, however, let’s first understand what is meant by cloud app and web app.
The “cloud” in cloud apps refers to the computing architecture which involves storing and accessing data and software over the Internet instead of using your computer’s hard drive for this purpose.
In fact, the cloud is just another name for the Internet. According to this article that I found on the online version of PC Magazine, the origin of the word cloud as a metaphor for the Internet dates back to the time when the Internet was represented as a fluffy white cloud in flowcharts and presentations.
If you are accessing data and programs over the Internet, then it is considered cloud computing. Most individual users, however, may never know just how much data processing happens at the other side of the connection. Cloud computing can be done anywhere and at anytime with an online connection. Clouds can be public or private.
Cloud applications are not housed locally and are supported by a sophisticated set of systems that ensure security, uptime and the integration with other systems. The major features of cloud apps include:
- The data for these apps is stored in a cloud
- This data can be cached locally and accessed offline
- Can be used from either
- Web browser
- Custom built apps for internet-connected devices like mobile phones
- Can be used to access
- On-Demand computing cycle
- Application development platforms
- Different user requirements are supported
Examples of Cloud Apps
Email, which probably never comes to the mind, is a pretty straightforward example of a cloud app. It was always designed to be that way.
We have been using Outlook and other applications like Mail.app to access emails stored somewhere on the internet – Gmail, for example (Yahoo, Hotmail as well). Access information and storage somewhere in the cloud through any interface whether web based or otherwise. What’s more, email is available offline if users configure it so.
The other usual suspects are DropBox, Sugar Sync, ShareFile, Salesforce, NetSuite, Mozy, Zoho.com and Evernote. I found this interesting piece on CTO Informer where Joseph Janecka makes a case for Twitter as a Cloud App.
Janecka says Twitter can be accessed via smartphones even without the web browser interface. But the app is not fully on the phone either. The phone is simply the interface to access the data and application that is out there on the cloud.
The Web Apps
The major distinctive feature of web apps is that they are designed to be used on web browsers. The architecture is quite straightforward. It is generally a combination of server-side scripting and client-side scripting where the client is dependent on the web server components to talk to the infrastructure that provides the core functional services.
Take online banking for example. The client, which is the bank’s website that the customer accesses on the web browser talks to the core functional servers via the web server. The client does not store any information, relying on the bank’s data servers to retrieve and verify information. The information isn’t just anywhere, it’s exclusively on the bank’s servers.
The other differentiating point on web apps like WebEx, online shopping applications, even Facebook is that consumer customization options are quite limited. If you are buying software that is labeled as cloud app you may want to ensure that the functionality and customization features are true to the cloud app characteristics.
Web apps also do not generally have the ability of multi-tenancy, that is, they are not designed to support varying requirements of consumers. A cloud app for data backup would support different requirements like security, backup schedule, data compression and more.
The biggest difference is the access. Web apps are almost exclusively accessed through web browsers and if a web app wants to evolve as a cloud app, it must become accessible from anywhere even without the web interface.
In spite of these distinctions, there are different ideas about what truly is a cloud app and what is a web app. Janecka writes that web apps are ultimately a sub set of cloud apps and perhaps instead of trying to distinguish the two apps, they should simply be viewed in terms of service – “cloud service” and “web service”.
Yet others feel that web apps can evolve into cloud apps through the use of the rich development platforms and frameworks that are available now. According to this line of thought everyone and everything should ideally be on the cloud.
Web app developers should take advantage of the cost effectiveness and quick time to market of the latest cloud app development programs in order to move to the cloud.
Some examples of cloud app development platforms include Microsoft Azure, AppFrog and Google Apps Engine. While there is no single school of thought about the separation of web apps and cloud apps, I think we can agree on the following differences amongst these two types of apps:
- Nature of access and storage
- Levels of customization possible
- Ability to support various types of requirements or multi-tenancy
Whether you need a cloud app or a web app for your business depends on the type of functionality and scalability that your require. An application development specialist can help you decide what suits your needs best.