The expression “web app” has already been around for some time now and not only inside web development companies. We hear and use it so often we don’t even care to remember where it came from. Yet a debate remains on how web apps are different from websites and where the line should be drawn.
So where should we draw the line?
Before the era of apps came, “applications” meant only websites build by a web development company which provided some advanced user interactions with capabilities that people could have been using formerly only in installable software. Some of the early examples of such web apps are Webmail, Google Docs and Google Maps. If compare these to some classic web things like news sites and blogs, web apps offered a greater user experience and advanced browser capabilities. While today’s single page websites are sometimes called web apps, the name reflects the task focus more than the technology as such. This focus on the task is easier to see by the example of smartphones and tablets where every app’s purpose is to complete some specific task like checking the email, making a call, finding a taxi, etc. Some also argue that we should simply classify web apps as requiring reading and writing from users whereas websites – only reading. This perception is certainly pretty persuasive as websites are viewed as things for consumption and web apps are more about creation. From the perspective of technical distinctions, as more appropriate for developers, drawing the line between the two terms is even easier as web apps normally have certain defining attributes bringing them closer to native counterparts such as:
- self-contained nature
- interactive user interface, sometimes mimicking the device’s native UI
- utilizing advanced device capabilities such as geolocation, camera integration, etc. that are developed by the W3C
- action-oriented over information oriented nature
- no heavy reliance on the browser Chrome
- working off-line using HTML5 ApplicationCache, indexed database, localStorage, etc.
Are we crazy about apps?
Whatever of the two products you prefer to develop, today we can see a growing number of mobile development specialists targeting web apps. Given the increasing browser support for multiple device APIs, increasing number of programmers getting direct to native using Icenium, PhoneGap, or Appcelerator, as well as Firefox OS launched not so long ago, it’s obvious for now that the web is moving the “appification” way.