Magento and the question html5 vs. native app

Today @elena_a_leonova asked about the magento mobile app feature and why merchants use them or dont use them.

a bit later she tweeted about an article which thematised HTML5 vs native mobile apps. And, one the one side, it does not really target the usecase online shop, on the other side its not this objective it could be. So I now write some thoughts about this article and the whole mobile App thing.

Caution: I dont have real experience in this field, never wrote a HTML5 app and also never a native app.

I dont need to talk much about growing mobile device usage, Magento and eBay have there enough sources.
Lets talk about what people use most on their mobile devices. Because it says a lot if people use most times apps. Its like on the Desktop, after removing time spent in porn and gaming from the statistic we have usable data. Wait.... What does this have todo with shopping or mobile native Apps? Exactly, everything and nothing, depending on what you want to say with the statistic. People spend a lot of time in chats and messengers, which make absolutely sense to exist as native app. But Magento should sell goods, not be another messenger app.

This brings me to the first point I want do make. People will no magically prefer a native app, only because it exist. They maybe only want to take a fast look at your catalog, so there is no workaround to offer a mobile version of your website, which most times means a responsive one. Thats an investment need to be done, regardless of the existence of a native app, but it reduces a lot the gain you would have by providing one.

And, as described later, a website can easy get linked to the home screen. And trust me, nearly everyone will have either a browser or the Google search very easy accessible on his phone.

The fragmentation problem because of different mobile browsers may exist, but its sure not as strong as the fragmentations between mobile OS systems which in parts have strong differences between versions. ( For example Android 2 and 4 ) And the statistics are a bit outdated, mobile is a fast moving area, there are trends, but regarding software distribution 2 years can make a lot of difference. Oh, and dont trust that Android is always Android, manufacturers keep adding patches. (read the facebook link I mention later)

The point about HTML5 apps do not work offline is complete wrong, they do.

Now we come to the feature comparison. You do a simple Shop, what native Features could you need? By the way, the graphs are nice, but do you notice they lack of a question/answer relation?

Now the big examples of people and companies dumping html5. But not with reasons why. And really, for the use case of facebook no default native app framework would have done ok. They even hit core limitations in android itself and needed to partially hack parts of the core.

Now the buy discussion. You have a shop, you want to sell goods, In which crazy scenario someone would pay for an App to be able to buy something from you?

Now a nice point. Sure, you can put your html5 app into the webstore, you dont even need titanium for this. Sure, you will not be able to make use of all native APIs, but do you really need them?

Security... website with https only access, everything else is crazy and you probably are not able to pay someone to do a native app in a secure way. Dont try to reinvent something this complex.
Why do you thing there exist something specialized like Cryptographers? By the way, even if the article say "native apps still offer greater ease of access to advanced security features and encryption". This is not true, they still use https, too.

some conclusions:
Did you realize, that most of the graphs in this article are the source of a Titanium developers userbase? Look for the "source: Appcelerator"

And a word to hybrid Apps in general. They may be good for a first iteration, but you should not forget to keep the OS specific UI and UX standards and rules in mind. Its not a problem when your app looks different on Android and iOS, its actually a problem when they look the same. Thats because they partially have complete different concepts, and if you want to provide a good experience, you should keep near the System when you design.

So when do you really need an app with native features? If you are big enough for tracking your users by for example their geo position. For an html5 app this can get deactivated, but a native app can require the rights and the user cant deny them. The other features depend strong on what you sell and what concepts would be possible. But performance is not an issue, in most cases you only want to show some description, pictures or a list.

What more important is, Magento needs an more fast API here, which is able to feed the mobile device fast with the required products without much overhead. Add some local storage based caching for product data, and a way to put products into a local cart, so you can use this even with unstable internet.

So, maybe this sounds a bit incomplete, but I hope you had fun reading it.