Canv as, video & A udio, geoloca tion, Orient a tion, CSS3, Transition, Anima tions, Transforms (2d+3d), Hardware accel, localstorage, offline support, SVG, History API, Media queries, Touch events. * Some of the features available in Mobile Safari. * New things
HTML & CSS. * Why aren't we building our mobile experiences in web technologies rather than Objective-C. * HTML/CSS very powerful * Cocoa/UIKit sucks for styling (esp. mixed content areas)
Maybe. * Maybe * You *need* a mobile web site/app * Customers will come with their devices, you don’t know what they are * iOS can’t be your only choice
1. Switch to the App Store 2. Click buy 3. Enter their p assword 4. Wait for it to download 5. La unch it You’re asking them to 1. Switch to the App Store 2. Click buy 3. Enter their password 4. Wait for it to download 5. Launch it
* Get your mitts on Ethan Marcotte's book "Responsive web design" * The right way: device and resolution agnostic * Problems: you’re reshaping content, if you want a different experience, you need a separate “app” * m.domain.com
– Steve jobs, wwdc 2007 “The full Safari engine is inside of iPhone. And so, you can write amazing Web 2.0 and Ajax apps that look exactly and behave exactly like apps on the iPhone. And these apps can integrate perfectly with iPhone services. They can make a call, they can send an email, they can look up a location on Google Maps.... ...And guess what? There’s no SDK that you need! You’ve got everything you need if you know how to write apps using the most modern web standards to write amazing apps for the iPhone today. So developers, we think we’ve got a very sweet story for you. You can begin building your iPhone apps today.” * MobileSafari is still the best mobile browser * iOS gives developers features that can make web apps feel at home * Surprise surprise: Apple’s focus is on their own platform
Ceci n'est p as une applica tion. * Ceci n’est pas une application * Using these apps in earnest, they break quickly * Gmail loses state a lot of the time, shows old data, refreshes poorly and logs out often. * It’s getting better * People expect their browser to function in a certain way
if(window.navigator.standalone) { // Do stuff } * Exposed as a JavaScript object * Web apps can have the same weight and presence on Springboard * I’m skeptical * How many of you use a web app that’s pinned to your homescreen? * I use one. That I built.
* The concept of the “Uncanny Valley” applies to any attempt to replicate the appearance or experience of something else. * If it looks like an native app, quacks like a native app, but doesn't move like a native app... * Break expectations * Users become frustrated, confused and afraid
* Writing Objective-C: Panic and run away. * Memory management, square brackets * Can never be as good as a native app * Icelab tried it, got burnt * How long will it take Titanium to support iCloud APIs?
* This is true: the App Store is full of rubbish, and the web is filled with rubbish * It doesn’t mean either platform is broken * Bridges are a half-baked approach * I don’t want to be “good enough”
* Save books to homescreen * Offline caching * All the features of a native reader * An ENORMOUS amount of work * Faster to build native apps for all platforms? * Business model means they can’t go native
* Financial Times * Readability * Basecamp * Netflix * Side-stepping the App Store is a great reason to choose the web * 37Signals do what they’re good at * Netflix consolidating their code and knowledge base * Make a *conscious* choice
The mobile web is ready . * Mobile browsers are catching up * iOS is not a stationary target * We’ll be waiting a while for iCloud access via JavaScript API * Accept the things your technology choice is good (and bad) at. * Your tools are your tools and that's fine, they’re not necessarily the right tools for every situation