Debunking Some Myths About Native And HTML5 Hybrid Apps
An elegant iPad app is like a fine yacht. Built the right way, the app can have a sense of elegance that provides the customer with an optimal experience. The Google+ iPad app has that beauty and usability. Flipboard provides a similar experience. But even more so, an iPad app moves the work experience from the desktop to the mobile arena.
According to Wall Street & Technology, that apparently also includes retail trading, where iPads are fast replacing the desktop. Several companies have abandoned HTML5 for pure native app development. LinkedIn made the switch to native apps, as did Xero, the successful online accounting SaaS provider. But the move toward HTML5 with iOS wrappers is certainly growing.
For the uninitiated, a hybrid is written with web technologies that run inside a native app container. For example, a hybrid iPad app would be written in HTML5 with Javascript and CSS. Developer frameworks to build these new types of apps include PhoneGap and appMobi, now part of Intel. Icenium is another example of this new kind of framework. Salesforce.com has its own offering. Conduit have morphed into a framework provider from its roots in providing community toolbars.
tradeMonster is an HTML5 app that is contained in an iOS wrapper, which does two things: It gives the app the status and usefulness of being on the iPad and the practicality of having the code on the server. The goal is to make the iPad as powerful as its desktop counterpart with the security and easy access that comes with having access to the code.
TradeMonster shows how hybrid mobile apps can be viable in the most demanding of environments. It’s really not about one being better than the other. TradeMonster illustrates how leveraging both iOS and HTML5 can make for a first-rate app experience and can serve as a model for replacing the desktop.
For TradeMonster, standard frameworks were not sufficient for its needs. The leading retail trader needed an app that can stream 8 billion stock quotes and a host of features such as watch lists and options strategies. It had to suit the heavy trader who needs to handle multiple orders on the app itself. The app can handle up to four accounts simultaneously, the layout can be changed, and the customer’s balance and portfolio can be seen in real time.
But due to the performance requirements of retail trading, the TradeMonster platform is designed to stream across its own proprietary architecture. For example, that allows the customer to view trades anywhere on any device where the app is running.
It’s true that HTML5 works across different platforms, but getting an app to function properly across such a fragmented landscape is a different story. TradeMonster addressed several issues in HTML5 in order to have a universal footprint across any device:
Scrolling: TradeMonster developers wrote their own components to deal with the rendering issues inherent in browser scrolling. They also wrote their own home-grown slider.
Requests: To optimize the pulling of the data, TradeMonster used a combination of methods to detect a user’s bandwidth and latency.
Animation: To make the transition between screens fluid, TradeMonster wrote its own menu component and combined them with some intelligent loading of screens, optimized to the user’s bandwidth and other factors.
Memory footprint: With a hybrid approach, the memory footprint is higher. To remedy this, TradeMonster had to write some optimization code for memory usage.
Event handling: Several events are fired for updates. For example, market data or an order might come in. In that case, the screen should update or request for updated data. Also, when someone does a trade or action on the desktop, it is also delivered for the iPad to update, as well.
CTO Sanjib Sahoo will be the first to tell you that the approach they have taken with TradeMonster was done to fit their own needs. What they have is not a universal answer for enterprise mobile developers. Their method is complicated by the custom code requirements that they have which are necessary to serve retail traders. They also have the advantage of their own proprietary streaming architecture, also needed for its retail trading customer base.
But regardless, their experience shows the viability of hybrid apps. If an HTML5 app can excel in retail trading, then it’s clear its uses are fairly broad across the market.