Web vs Native:
It Ain't Over 'Til It's Over

Michael Mahemoff, State of the Browser II

@mahemoff #lwsbrowser

http://bit.ly/stative

People are asking questions ..

People are making statements ..

People are taking photos ..

Meanwhile in 2011

Get Off My Lawn

http://instagr.am

Login for API?

No Signup?

Where the Web Excels ...

Frictionless

"24 – The number of web site visits the average smartphone user makes per day"

http://royal.pingdom.com/2011/12/07/the-mobile-web-in-numbers/

API Technology

Everyone Needs Web Presence

Portable

Developer Experience

  • Learning the basics. Friendly parsers FTW!
  • Improving. Thousands of tutorials FTW!
  • Setting Up. Open FTW!
  • Making a working app. HTML+CSS+JS FTW!
  • Deploying, Updating. No gatekeeper FTW!
  • Stealing Reusing. GitHub FTW.

But there are challenges

Challenge: User Interfaces

Desktop User Interfaces

MotherEffingAnimatedGIF

Mobile User Interfaces

User Interface

Long-Term Threat level: Low

Challenge: Offline

Native is Offline By Default

  • App Cache
  • Local Storage
  • Web SQL Database
  • Indexed DB
  • FileSystem
  • Developer Experience
  • Compatibility

Drowning in Choice?

Offline

Long-Term Threat level: Medium

Challenge: Device Integration

  • Single-Sign On
  • Sharing/Intents
  • Contacts
  • Camera
  • ...

Web Intents

WebRTC

WebAPI

Offline

Long-Term Threat level: Medium

Challenge: Background Processing

  • Notifications
  • Geo-fencing
  • Syncing content

Background Pages

Background Processing

Long-Term Threat level: High

Other Challenges

  • Monetisation
  • Competing Standards

Challenge Accepted

Concrete Advice for Developers

Guide through decisions

Tools and Libraries for Progressive Enhancement

Browsers vary. Deal with it.

Even less friction

  • Mobile browsers: Single-sign on
  • In-app payments → In-browser payments
  • Background processing and notifications, without installation

Embrace Open Standards

With new devices, the web's openness means it should be the platform for defining common APIs.

Embrace Open Standards

  • Talk to your friendly developer relations.
  • File bugs, document challenges.

Developers!

  • Make login easy. Remember cookies.
  • Unique URLs to support sharing.
  • Restore state when web app starts.

Betting against open standards: A risky proposition

Michael Mahemoff | http://mahemoff.com

http://bit.ly/stative