Mobile app development is a fast growing sector. With the increasing number of mobile devices and tablets, businesses are taking advantage of app market places by introducing new apps to approach their target audience.
A debate between native vs web has been going on long since. Many blogs and articles have been written about the comparison, advantages and disadvantages of both approaches. The need for building an app with the right blend of features, platform support and performance at a reasonable cost gave birth to hybrid approach.
The Rise of Hybrid Apps
The several concerns regarding time, costs and portability limitations of native mobile apps and conversely lack of performance and access to device features in web apps forced enterprises to determine a combined approach, widely known as a hybrid approach.
Why big companies abandonded html5 in favour of native
In the past Facebook app was designed as “write once, run everywhere” logic. Facebook basically wrapped its mobile website (m.facebook.com) within the device native container and built HTML5 cross platform app. But in September 2012, Facebook abandoned HTML5 app and released a pure native version of its iOS app, while criticizing that betting too much on HTML5 was the biggest mistake they made as a company. A Facebook developer describes the speed and efficiency as the obvious reasons for this move.
Within a year LinkedIn also discarded HTML5 in favor of native experience. LinkedIn’s senior director attributed this move to memory shortage and app crashing as more and more people started spending more time on the app. However, Prasad — LinkedIn head of mobile engineering doesn’t think that HTML5 is not ready but according to him not enough tools are available to diagnose and resolve issues quickly and test performance on runtime.
With these shifts many became uncertain about the performance and reliability of HTML5 based applications. Thinking HTML5 couldn’t really be the reason for Facebook’s mobile application being slow, Sencha, who provides frameworks and tools to build hybrid apps, took it as a challenge. They built a demo app called FastBook to showcase what can be achieved with HTML5 if developers use the right tools and frameworks. In the demo video they give side by side comparison of HTML5 FastBook and native Facebook apps features in terms of speed and functionality which clearly shows that HTML5 was not necessarily the problem.
But another accounting firm Xero switched back to native as the complexity of their app increases. Xero agreed that HTML5 technologies can deliver as-good-as native experiences and recognized the features of HTML5 demo app Sencha FastBook. But they believe that it needs a lot more to get an app to that level. According to Xero, building an HTML5 app to the native level requires same amount of time and efforts as building a native app from start.
However, just because html5 was not the right fit for some high-profile giants, it doesn’t mean it should be ignored and everyone should go native. It is true that the overall performance on native apps is still better. Native apps are faster and provide better user experience an security features are also stronger on native apps. But as web technology for mobile continues to improve, users will adopt more html5 app.
It seems that HTML5 is the way of compromise, which may not necessarily be a bad thing. A compromise can be made on the user experience if there is a significant cost benefit. But if you don’t wish to compromise on the user experience, the development cost may come closer to the cost of native.
Is hybrid approach still a viable option?
To test this Telerik team conducted a challenge and presented the two identical hybrid apps to a number of developers. A majority of them considered the one with better loading time as native but none of them identified that neither of app is native. This gives an indication that assumptions are not always based on realities.
The hybrid app model, although not suitable for all app development needs, provides a cost-effective solution for a wide range of apps. Every business is different and has unique requirements. It should be taken into account when choosing between native, web or hybrid. So the decision needs to be made on what type of application needs to be built with the given cost and time.
If the application is highly graphical or expected to process terabytes of data just like Facebook or LinkedIn then native approach is the best way to go. Big companies with big budget can easily afford to build and maintain apps for multiple platforms. But if the business just wants a presence in the public app store and wishes to utilize a different channel to target its customers then Hybrid may be the favored and most cost-effective solution.