Presentation is loading. Please wait.

Presentation is loading. Please wait.

The great debate… We will have this as an ongoing theme!

Similar presentations


Presentation on theme: "The great debate… We will have this as an ongoing theme!"— Presentation transcript:

1 The great debate… We will have this as an ongoing theme!
An opening bid! HTML5 VS NATIVE: THE MOBILE APP DEBATE By Michael Mahemoff Published June 3, 2011

2 HTML5 VS NATIVE: THE MOBILE APP DEBATE
mobile apps and HTML5 plenty of overlap! web apps run in mobile browsers and can also be re-packaged as native apps on the various mobile platforms wide range of platforms to support! is HTML5 a "write one, run many" solution? compelling reasons to go native

3 FEATURE RICHNESS POINT: NATIVE CAN DO MORE
the experience of the app itself, and the way it hooks into the device's ecosystem swipe events, mutlitouch, GPS and camera access to the operating system full storage system full range of access to camera, battery levels, etc…

4 FEATURE RICHNESS COUNTERPOINT: HYBRIDS, AND THE WEB IS CATCHING UP
HTML5 app is stuck in a sandbox with a limited API, limited access to device specific features WHY?! frameworks for building hybrids (e.g., PhoneGap) exposes native features as web services, in a hybrid app can hook into platform adds complexity though! web standards are evolving modern mobile browsers are keeping pace with standards offline storage, geolocation, canvas graphics, and video/audio playback, device orientation detection…

5 PERFORMANCE POINT: NATIVE RUNS FASTER
native apps don't have the web runtime barrier to deal with this not a trivial topic! run close to the metal and can take advantage of performance boosters like GPU acceleration and multithreading this is REALLY not a trivial topic!

6 PERFORMANCE COUNTERPOINT: WEB RUNTIMES GETTING FASTER, AND MOST APPS DON'T NEED THE SPEED ANYWAY graphic rendering engines have also sped up the web multithreading is a possibility the majority of mobile apps aren't bleeding-edge 3D games but, for those that are… WebGL WebGL (Web Graphics Library) is a JavaSript API for 3D graphics that works with web browsers

7 DEVELOPER EXPERIENCE POINT: NATIVE IS EASIER TO DEVELOP
native apps use programming languages such as Java, Objective C, C++,… you KNOW your target device development faces a huge diversity no guarantee feature X will be available when you do a port

8 DEVELOPER EXPERIENCE COUNTERPOINT: WEB IS EASIER, AND TARGETS MULTIPLE DEVICES develop an Android app in Java, and you're faced with a full port to Objective C to support iOS develop a web app once and it will run in Android and iOS, not to mention BlackBerry, Windows Mobile and ... well, that's the theory anyway! "fragmentation" has always been this way on the web, and there are some well-known techniques to deal with it the principle of progressive enhancement target a basic device first, and add layers of platform-specific awesomeness where it's available.

9 LOOK-AND-FEEL POINT: NATIVE FITS PLATFORM
controls presented consistently and manipulated in the same way platforms have standard idioms for such things, and you can't satisfy them all with a single HTML5 app a lot of the expected look-and-feel "for free" just by using the native toolkit

10 LOOK-AND-FEEL COUNTERPOINT: THE WEB HAS ITS OWN LOOK-AND-FEEL
write a basic "one size fits all" version, and then progressively enhance it target those platforms you care about "browser detection” many apps don't care games twitter clients

11 DISCOVERABILITY POINT: NATIVE APPS ARE EASIER TO DISCOVER
App distribution mechanisms, like Android's Market and Apple's App Store, are popular! Any developer can submit their native app to the marketplace users discover it through a combination of browsing, searching, and getting recommendations. if you've done your job right, glowing ratings

12 DISCOVERABILITY COUNTERPOINT: ACTUALLY, WEB APPS ARE EASIER TO DISCOVER search engines any individual can share web apps with their friends just click on the link and launch the app in their device's browser users can rate and comment on apps, but that's changing too

13 MONETIZATION POINT: NATIVE CAN BE MONETIZED
"6 year-old makes app during lunch hour, sells a zillion copies at $3 each". mobile platforms offer several avenues for developers to directly charge for their apps one-time payment, to unlock the app for all eternity subscriptions allow developers to convert a smash-hit app into a long-term revenue stream. also monetize with traditional web models advertising and sponsorship

14 MONETIZATION COUNTERPOINT: THE OPPORTUNITIES ARE GROWING
subscription-based "software as a service” create a native "wrapper app" - for each platform you want to target, create an empty native app that simply contains a web view submit these apps to the various marketplaces (and hopefully watch the money roll in!) web services like PhoneGap Build and Apparatio point these websites to your code repository out pops an Android app, an iOS app, and so on...ready for you to submit to the respective stores No installing native SDKs on your machine; all you needed to build all these native apps was a a code editor and a web browser. Web store? Google introduced the Chrome Web Store last year for desktops

15 Winner? some apps are best suited for native and some are best suited for the web both are progressing at an amazing rate! hybrid apps web view where it's possible and platform-specific native components where it's not want to target the multitudes of devices and operating systems around?

16 Phonegap Easily create apps with the only free open source framework that supports 7 mobile platforms. Wrap your app with PhoneGap Deploy to multiple platforms!


Download ppt "The great debate… We will have this as an ongoing theme!"

Similar presentations


Ads by Google