Can Amazon ignite HTML5 apps?

Can Amazon ignite HTML5 apps?
Uncategorized

html5 amazon

Up until now, selling an HTML5 based application was a challenge:  Unless you were willing to package your code with a tool like PhoneGap and sell through the main stores (Apple, Google, Windows…), you basically had to either create enough of a following/SEO movement or rely on a series of third-party.

Amazon wants to change this and help sell more HTML5 apps.

Amazon’s Mobile App Distribution Program now allows HTML5 apps to be distributed not just on the Kindle Fire but also on most Android-based devices.

Of course Amazon wants to position itself as an end-to-end solution provider and is interested in the community leveraging some of Amazon’s technology into their HTML5 applications!  Developers will have the option to tap into certain Amazon’s API such as in-app purchases and virtual currency. Another enhancement brought forth by Amazon is the release of a series of tools to debug HTML5 apps. The Web App Tester, which offers an environment to test applications, is quite simple to use and can be loaded on most Android devices and Fire tablets. I also recommend reading the best practices documents.  These documents walk developers through the submission process and provide some very sound development suggestions, especially if you are planning on releasing a game.

Finally, Amazon claims it has optimized its Kindle Fire tablets so that HTML5 apps will run as smoothly as native apps.  This is a ground-breaking claim so expect to see some really intriguing debates (and test data) in the coming weeks.  Is this statement pure marketing hype or can the run-time environment be truly enhanced to the point of bringing HTML5 apps to the same performance level as native apps?

If, indeed, tablets can be tweaked so that there is no difference between native and html5 then we could see another flood of apps making their way to our devices soon as well as a potential leadership reshuffle in the hardware industry.

This topic should get quite heated and entertaining to follow!

Amazon is trying to move at the center of the eco-system. There was definitely a need for a centralized HTML5-store app, fueled by a major player, and it will be interesting to see how the competition reacts.  By making this move, Amazon may also have to ramp up its tablet offering to have the same level of functionality as other hardware that run HTML5 apps (here).

As to the benefits of being on the store or even only using some of the development support tools, we are in the midst of testing the Web App Tester for one of our applications and will report on our findings.

 

http://www.youtube.com/watch?feature=player_detailpage&v=HR0DcbG3k1M

3 Responses

  1. Avatar
    David Bruant

    I’m getting a bit tired of native vs HTML5 performance comparisons as most of the time they are non-sensical.

    “can the run-time environment be truly enhanced to the point of bringing HTML5 apps to the same performance level as native apps?”
    => That’s a non-question for 95% (99%?) of apps
    I’ll let Jonas Sicking (Mozilla engineer) answer better than I could (from [1]):
    “If you look at timing in an application, it generally isn’t the C++ logic. If you look at a high-end game, it’s often not the game engine that’s the most critical bottleneck – it’s things like rendering. If you look at productivity apps, such as an online office application, it’s not the logic that’s the major bottleneck, it’s things like IO, network and so on. JavaScript is getting very competitive. Certainly some things are hard to do, but a surprising number work just fine – it hasn’t been a limiting factor [for FirefoxOS apps performance]”

    Not too long after Mark Zuckerberg made its (misinterpreted!) quote about HTML5, Sencha released FastBook [2], showing to the world that the problem wasn’t HTML5, but rather that Facebook HTML5 mobile app was not designed at all with performance in mind.

    Recently, I contracted to build an HTML5 app. In the “native” versions of the apps (iOS, Android), they is a “splash screen” (the time the app loads). I gave myself the challenge to not have the splash screen and load instantaneously. Guess what: I obviously succeeded 🙂

    For the vast majority of apps, the performance problems are engineering problems, not language/platform problems. The only debate I’m open to having is that engineering for HTML5 performance is harder than engineering for native performance. Note that the Google Chrome team has been doing amazing work lately to help pin down performance bottlenecks and overall study application performance. I sometimes wonder if native platforms have tools of this quality (in terms of accuracy and especially usability)

    Remains 1-5% of application use cases where HTML5 may (!) not meet native. Things like massive game engines doing 3D graphics (where as Jonas says, the problem is in rendering and engineering for performance in this rendering) or really anything that requires heavy low-level computations.

    In any case, in a blog like RudeBaguette where HTML5 is not the heart of the blog but just a peripheral topic, no need to keep spreading the rumor that HTML5 perf does not meet native. That’s just misleading everyone.

    [1] http://www.techradar.com/us/news/phone-and-communications/mobile-phones/mozilla-on-firefox-os-what-we-re-doing-has-a-very-good-chance-of-working–1164433?src=rss&attr=all
    [2] http://www.sencha.com/blog/the-making-of-fastbook-an-html5-love-story

    • Avatar
      Gregory Menvielle

      David,
      First let me start with a disclaimer, I agree with you 100% in that for most applications HTML5 can perform about as well as a native one. I met some of the guys from Sencha last year when they showed their “facebook” like app and it definitely shown that HTML5 was not the problem. Then again Facebook probably had other drivers in mind (ads vs. performance!)
      Having said that there are also some good arguments coming out from the “other side” (aka native app) around performance issues (The Rude VC had an interesting link on that topic not long ago).

      The very interesting part, to me, is that the Amazon crew felt compelled to bring up the performance gap (and their narrowing of it) in their release. While it may be mostly PR oriented (need to show that their devices will be better at running HTML5 than the competition), it does highlight a common belief amongst end-users.

  2. Avatar
    David Bruant

    “Having said that there are also some good arguments coming out from the “other side” (aka native app) around performance issues (The Rude VC had an interesting link on that topic not long ago).”
    => Interesting. I haven’t been able to find the link yet, but I’ll keep digging. Can you share it here it if you find it somewhere?

    I’m aware of http://sealedabstract.com/rants/why-mobile-web-apps-are-slow/
    But once again, such a small niche of applications are actually affected that I don’t believe it’s worth talking about it.

    As a proof of how fast JS has become, Mozilla is rewriting some parts of its JavaScript engine in JavaScript (that’s called self-hosting):
    https://hg.mozilla.org/mozilla-central/rev/5593cd83590e
    And they’re only following Chrome’s lead who did that a long time ago.
    Think even massive game engines can’t run on a web browser? Mozilla’s got your back with asm.js https://blog.mozilla.org/blog/2013/03/27/mozilla-is-unlocking-the-power-of-the-web-as-a-platform-for-gaming/
    (granted this is not on people phones yet… wait… maybe it’s in Firefox for Android now… not sure)

    Engineers have a tendency to overthink about performance without really thinking about what they actually make of a technology and what the real bottlenecks are (for the vast majority of apps, it’s network, disk, rendering which no technology really does better than another except maybe rendering in some particular cases). Let’s not sidetrack the debate with use cases that are really a minority.

    “The very interesting part, to me, is that the Amazon crew felt compelled to bring up the performance gap (and their narrowing of it) in their release. While it may be mostly PR oriented (need to show that their devices will be better at running HTML5 than the competition), it does highlight a common belief amongst end-users.”
    => That’s what I think as well. Performance is commonly believed to be the main issue of HTML5 against “native” by CEOs and salesman… anyone in charge of making decisions but who don’t know deeply enough the topic (and I’m not blaming anyone here, no one can have expertise in everything). Amazon wants to talk to them and reassure them.

    On what they might be doing for perf, I imagine they’ll leverage what they already have already with the Amazon Silk browser; that is an Opera-mini-like architecture (most of the website is fetched and rendered in one of their server and a mostly static pre-rendered image is delivered to the mobile device). Details: http://www.youtube.com/watch?v=_u7F_56WhHk
    They might just be doing the exact same thing with HTML5 apps. That’s what I’d do if I were them because I’m lazy and that’s close to a no-work solution that enables holding a PR promise :-p

Leave a Reply

You must be logged in to post a comment.