Are Web Apps The Future?
There has been a lot of discussion on native vs hybrid app but what is really the future of apps. I think web app is the future.
Probably some of the giants like Microsoft already understand that and know that the platform independence of web browser will be significant in the future. Project spartan and integrated approach for hardware and software is more prominent now in Microsoft strategy as well. Windows 10 will be unifying various devices in terms of OS.
With HTML 5, jquery, angularJS, the gap in native and hybrid app is minimal so really is the specialized knowledge of the phone platform necessary? Not only that it also requires licensing cost etc.
What are the problems
- Not every app is on every platform
- Apps are quite large in size
- Apps require frequent updates so frequent downloads
- Apps take the device ROM space
Native apps are essentially solving the problem that they are on the device and available offline. While this may be true but most if not all apps require internet for content or some functions.
Web apps don’t need any market, they are essentially a URL and downloading them is just saving them as your favorite or bookmark.
- Easy to update
- Takes no space
- One version with some tweaks can support all platforms
- SOA architecture and cloud support enables high scalability
- Offline performance is challenging, however using offline-first architecture can help
- Local caching and data availability- is limited in web, however approach using pouchDB as one example that can alleviate the issue
- No easy solution for notifications and background tasks
- While Google chrome has added capability for notifications in the browser as first step, essentially others may support it soon
- Likely Microsoft Spartan will include notification that will be on browser and may integrate well with windows 10 notifications
- Web apps have still a lot of ground to make when compared to native apps but there are tools available now to close the gap
Look at the following tools / libraries that can help
- Hoodie – provides for offline first architecture (http://hood.ie/)
- Offline.js – to sync up while u were offline (http://github.hubspot.com/offline/docs/welcome/)
- Tero – for offline storage (https://github.com/treojs/treo)
- Famo – for building native like UI (http://famo.us/)
- Intel XDK – HTML5 based framework for developing apps (https://software.intel.com/en-us/html5/tools)
References: With help from various sites on the internet, was looking at it for sometime thought it will be great to share