Partner Sites


Jotron Amplifiers - Creating Beats Inside You
Hi-Fi Public Address Power Amplifiers

Nov 11, 2015

Five Engineers, 42 Days: How Flipkart Built an 'App' for the Mobile Web

Flipkart's new mobile web experience Flipkart Lite, which launched on Monday, brings an app-like experience to the mobile Web.
Amar Nagaram, Director - Engineering at Flipkart gave Gadgets 360 a behind the scenes look at how Flipkart Lite was built, including an account of the low-level APIs used to create the advanced Web app, which enables instant access, offline functionality, push notifications, and a rendering performance of 60 fps, in standard test conditions.
"We know a thing or two about Web technologies," says Nagaram, explaining how Flipkart managed to pull off what's being seen as a global exclusive, at least in terms of scale.
"It was all done by five engineers in a matter of 42 days," he says. "There was a lot of learning in the process. It was not like we discovered the silver bullet, and it was all hunky dory from there. There was a lot of back and forth, the Google team was very helpful. We gave a lot of suggestions, they were very quick in turning things around for us,"
"What we did, along with Chrome was to bring these technologies to the mobile, to the browser, and we showed what that can do to a mobile site," Nagaram adds. "We want to bring whatever is on the native app onto Lite. The idea is that Flipkart Lite will drop its Lite tag at some point in the future."
"In terms of feature parity, not in terms of its lightness in terms of memory footprint," he quickly clarifies.
flipkart_lite_feature_install.jpg
One of the many strengths of Flipkart Lite, Nagaram says, is that its behaviour is network strength agnostic; it was designed to work consistently and reliably on all networks. "If you see Flipkart Lite on a 2G network, there's not much of a difference in its performance," he claims.
Nagaram goes into the details of some of the tools used in Flipkart Lite in a blog post - Service Workers, a scriptable network proxy, can be used to serve a response from the cache when the user is offline. Web Push API was used to enable Push Notifications even when the browser is closed. He also provides links to specific features like Add to Home Screen, detailing GPU friendly animations used to keep rendering performance at 60 frames per second.
flipkart_lite_feature_homescreen.jpg
"Native apps use splash screen to hide the slow loading of home screen. Web never had this luxury and there was a blank page staring at the user before home screen could load up. Good news is the latest version of Chrome supports generation of a splash screen that radically improves the launch experience and perceived performance of the Web app," the blog post explains.
"We are 60 frames per second on many devices, but due to Android fragmentation we cannot say it out loud on all devices. That is something we are striving continuously to work towards," Nagaram later told Gadgets 360.
Flipkart's future roadmap includes bringing features like Ping and visual search on the mobile Web. "What we've done so far is just the beginning. There's a list of about five or six things that we wanted from browser vendors," says Nagaram. "The idea is to get as close as we can to the native app. So we want much richer and much deeper access to hardware which can make search and Ping possible. We want much richer and contextual permissions from the user, unlike Android, where you take a blanket set of permissions."
flipkart_lite_feature_offline.jpg
"What we are proposing to the Web community, to the browser community - we want to take contextual permissions so the user knows why he's giving the permission," he adds, hoping browsers will one day have access to the same kind of device information and resources that a native app does today. "The user has an option to say no if he doesn't want it."
And there are some definite advantages to this approach. Unlike apps that need to be updated, Web experiences carry a lesser security burden, and bear a smaller memory footprint. The question is whether such functionality can be extended to other browsers as well, or whether it will be locked to Google's Chrome.
According to data provided by Statcounter, which tracks usage share for browsers, UC Browser has a dominating marketshare of 54.4 percent in India, Opera has a 20.21 percent marketshare, Chrome comes third, with 13.46 percent marketshare, while Android's default browser comes fourth, with 5.21 percent marketshare. With Flipkart Lite's technology dependent on the Chromium engine, the user experience is currently limited to only a small subsection of people who use Opera, Chrome, or Android's default browser. It's also worth noting that Chrome on iOS does not support Flipkart Lite. All things considered, Flipkart Lite will benefit less than half of India's mobile browsers right now, though Flipkart insists "it will be extended to other browsers as well in future."
Nagaram didn't want to comment on whether the Flipkart-owned Myntra, which is currently app only, would follow suit and return to the Web. "I head the technology team on Flipkart [and can't speak for Myntra], but there's no reason why not," he says. "We are hoping many app-only companies will follow. There is no reason for Uber to be only on your app."

No comments:

Post a Comment

Note: Only a member of this blog may post a comment.