• Like
  • Save
DjangoSki
Upcoming SlideShare
Loading in...5
×
 

DjangoSki

on

  • 2,842 views

 

Statistics

Views

Total Views
2,842
Views on SlideShare
2,829
Embed Views
13

Actions

Likes
1
Downloads
17
Comments
0

3 Embeds 13

http://www.slideshare.net 8
http://www.linkedin.com 4
http://webcache.googleusercontent.com 1

Accessibility

Categories

Upload Details

Uploaded via as Apple Keynote

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment
  • <br />
  • <br />
  • <br />
  • <br />
  • <br />
  • <br />
  • <br />
  • <br />
  • <br />
  • <br />
  • <br />
  • <br />
  • <br />
  • <br />
  • <br />
  • <br />
  • <br />
  • <br />
  • <br />
  • <br />
  • <br />
  • <br />
  • <br />
  • <br />
  • <br />
  • <br />
  • <br />
  • <br />
  • <br />
  • <br />
  • <br />
  • <br />
  • <br />
  • <br />
  • <br />
  • <br />
  • <br />
  • <br />
  • <br />
  • <br />
  • <br />
  • <br />
  • <br />
  • <br />
  • <br />
  • <br />
  • <br />
  • <br />
  • <br />
  • <br />
  • <br />
  • <br />
  • <br />
  • <br />
  • <br />

DjangoSki DjangoSki Presentation Transcript

  • DjangoSki! DjangoSki
  • Brian LeRoux • Nitobi Software,Vancouver • Mostly JavaScript things
  • Welcome to the Hockey’s Golden city!
  • Don’t go farther north
  • Things I’m working on • PhoneGap • XUI • Lawnchair
  • WTF dude
  • BEER!
  • Also mobile
  • 6 billion people on the planet 1 billion television sets 3 billion web enabled mobile devices ...? profit!
  • Apps for that • Mobile Web Apps • Native Apps • Hybrid Apps
  • The Mobile Web • Growing stupid fast • Tech is also moving stupid fast • A whole new clusterfuck of browsers
  • Mobile Browsers • Many flavors of WebKit • Blackberry and IE Mobile • Fennic!
  • Not to mention • Fucked up screen sizes • Bizzare pixel density • ...and basically complete shit for cpus, memory and storage
  • Sweet.
  • Constraints === Focus • Know your demographic • Choose your target platforms • ...? • Profit!
  • DOM concerns • What does your target browser support? • Offline capable? storage / cache manifest
  • Backend Arch • RESTful JSON • favor parse to eval btw • Use local storage or device api for file i/o to cache data as much as possible • Update apps through the various stores
  • front end solutions • jqTouch • Dashcode • iUI • mobify.me
  • Native Apps Apple iPhone OS .............................. Obj C RIM Blackberry ................................. Java Google Android ................................ Java Symbian / Maemo (Nokia) ............. * Palm webOS ..................................... Web Windows Mobile ............................. .NET
  • Fuck. That.
  • PhoneGap • HTML, CSS and JavaScript • Device APIs • ...and one more thing
  • We got a pony too
  • two of em.
  • Typical Architecture • www folder • single index.html file that loads static assets • remoting via xhr/json-p • oh ya: icon, loading screen
  • Protip • The architecture of a hybrid app is strikingly similar to that of a W3C Widget
  • Device APIs • Geolocation • Accelerometer • Telephony • Media • Magnometer • Camera • Contacts
  • Protip #2 • Device APIs are being standardized by the W3C DAP Group and OTMP BONDI
  • API Examples • demo time nao
  • Geolocation
  • Accelerometer
  • Camera
  • Contacts
  • PhoneGap Futures • 1.0 is very soon • better tests in mobile-spec • build tooling • widget spec compliance
  • But! Web apps suck? • Yes. • But there are libs for that. • Or quit your bitching and just wait for better phones.
  • The DOM is broken But it is possibly a little better on mobile.
  • Desktop JavaScript Frameworks An embarrassing mess.
  • XUI • jQuery work-alike • simple api • 2-3kb • Admittedly a shitty name
  • Demo Time! • selectors • events • style • fx • xhr
  • XUI Future • 1.0 coming soon • Build tooling based on RequireJS • Support for ALL mobile browsers
  • Going offline • Web apps: Cache Manifest • Hybrid apps: Reachability API • DOM storage • SQLite
  • Cache Manifest Example
  • Reachability Example
  • DOM Storage Example
  • SQLite Example
  • Ghetto, actually • DOM Storage is key/value only. Slightly nicer than cookies but way lamer name. • SQLite seems like a bad idea: schemas, migrations, impedance mismatch, oh my.
  • How about a Lawnchair?
  • Lawnchair quickly • JSON document store (not key/value) • Designed for mobile; very light • Clean and simple async oo api • Adaptor pattern for store customization
  • Some code, eh • demoooo
  • Lawnchair Futures • 1.0 is REAL SOON I FUCKING PROMISE • Adaptors abstracted into a RequireJS build • Some actual benchmarks • PhoneGap File I/O adaptor
  • Closing rant • App stores are sanitized and walled gardens. The content is dictated. • 30% for the ability to sell is corporate greed at its worst. • Requiring provisioning to build code on a device you own is unethical. • This should not be tolerated by developers: speak out!
  • Also • wtfjs.com • but don’t worry about javascript, eh
  • Thanks, eh brian@nitobi.com http://westcoastlogic.com http://twitter.com/brianleroux http://brianleroux.github.com