We’re living in one of those moments in Tech History when everyone agrees on the upcoming standard but, at the same time, disagrees on how to handle the present.
The first MercadoLibre’s mobile app was launched last October. As explained in the Investor Day, it took us a long time to build a common layer of APIs, serving the desktop web, mobile apps, 3rd party apps, etc. The bright side of being late is that (if you’re still alive) you can leapfrog. We’re delighted by the fact we’ve reached 2,5MM downloads in just five months.
The app is 100% native, available for iOS, Android, Blackberry and Symbian. Although we’re enjoying the benefits of the native-apps world (better with slower data connections, great UI), we’re paying the price for it (lower deployment frequency, writing the same thing 4 times).
Why don’t we turn our apps into “native shells” for HTML5 applications? Last year Facebook did just that and they’re arguably the largest mobile app in the world. One simple answer: Native User Experience is still superior. I strongly emphasize “speed” as an integral part of the User Experience. At least in LatAm, where data connections are slower, this is a major issue. The second factor is that HTML5 doesn’t work that well on older mobile browsers, and we have a large installed base of those in LatAm.
Wouldn’t have been easier to just copy Facebook’s approach? IMHO, despite Facebook took the right long term approach, they may have made the move a bit too soon, at least in Latin America. Delivering a suboptimal User Experience is very cost-effective but it makes room for “beautiful” apps to emerge. The growth of Path might be a consequence of this. Ok, maybe uploading users’ address books without premission helped as well, but that’s a different story.
What about the mobile web? Mobile is not just about apps. The mobile web is also growing, and is quite relevant for e-commerce. We’re currently working on a web version of MELI, using the Progressive Enhancement approach. As soon as we achieve a good enough UX, we’ll start embedding the web into the native app. Here are a few screenshots of the Work-In-Progress MercadoLibre web version: