38
PhoneGap jfokus 2011 - Valentines Edition!

PhoneGap - jfokus.se · native vs web • - its a silly argument • is native when you think about it • scrolling is not a business requirement • PhoneGap/BlackBerry

  • Upload
    others

  • View
    2

  • Download
    0

Embed Size (px)

Citation preview

Page 1: PhoneGap - jfokus.se · native vs web • - its a silly argument •  is native when you think about it • scrolling is not a business requirement • PhoneGap/BlackBerry

PhoneGap

jfokus 2011 - Valentines Edition!

Page 2: PhoneGap - jfokus.se · native vs web • - its a silly argument •  is native when you think about it • scrolling is not a business requirement • PhoneGap/BlackBerry

Our attempt at an agenda... but lets be agile. ;)

1:30 - 2:00 ... PhoneGap: a quick intro2:00 - 3:00 ... Platform Quickstarts3:00 - 3:15 ... Building Apps3:15 - 3:45 ... coffee break3:45 - ?:?? ... QA

PLEASE DO NOT DOWNLOAD ANY SDKS!

I have them on a thumb drive for you. <3

Page 3: PhoneGap - jfokus.se · native vs web • - its a silly argument •  is native when you think about it • scrolling is not a business requirement • PhoneGap/BlackBerry

intro

• me

• nitobi

• phonegap

Page 4: PhoneGap - jfokus.se · native vs web • - its a silly argument •  is native when you think about it • scrolling is not a business requirement • PhoneGap/BlackBerry

@brianleroux

• web / free software geek

• SPACELORD!1!! @nitobi

• http://westcoastlogic.com

• http://mobile.minutewith.com

Page 5: PhoneGap - jfokus.se · native vs web • - its a silly argument •  is native when you think about it • scrolling is not a business requirement • PhoneGap/BlackBerry

@nitobi

• tiny consultancy in Vancouver, Canada

• user experience focus

• free software creators maintainers

• training, support and dev services/strategy

Page 6: PhoneGap - jfokus.se · native vs web • - its a silly argument •  is native when you think about it • scrolling is not a business requirement • PhoneGap/BlackBerry

@phonegap

• cross platform mobile dev w/ web tech

• html, css & js

• device apis

Page 7: PhoneGap - jfokus.se · native vs web • - its a silly argument •  is native when you think about it • scrolling is not a business requirement • PhoneGap/BlackBerry

PhoneGap Project

• Philosophy

• Platforms

• Device APIs

• Getting Help

Page 8: PhoneGap - jfokus.se · native vs web • - its a silly argument •  is native when you think about it • scrolling is not a business requirement • PhoneGap/BlackBerry

problem iOS ............... Objective C Android ........... Java "Harmony" Dalvik BlackBerry ........ Java J2ME JVM Symbian ........... * MeeGo ............. ? Windows Mobile .... C variants Windows Phone 7 ... .NET C variants webOS ............. HTML, CSS & JS Bada .............. C++

Page 9: PhoneGap - jfokus.se · native vs web • - its a silly argument •  is native when you think about it • scrolling is not a business requirement • PhoneGap/BlackBerry

solution: internet

Page 10: PhoneGap - jfokus.se · native vs web • - its a silly argument •  is native when you think about it • scrolling is not a business requirement • PhoneGap/BlackBerry

HTML, CSS and JS

Page 11: PhoneGap - jfokus.se · native vs web • - its a silly argument •  is native when you think about it • scrolling is not a business requirement • PhoneGap/BlackBerry

(I think this guy is Swedish btw.)

Page 12: PhoneGap - jfokus.se · native vs web • - its a silly argument •  is native when you think about it • scrolling is not a business requirement • PhoneGap/BlackBerry

our “solution”

• was iOS only

• instantiate a webview (but it can only call JS methods)

• intercept url calls and delegate to Obj C

• known as the "PhoneGap Technique"

• - its a hack; moreso a social observation than a technical achievement

Page 13: PhoneGap - jfokus.se · native vs web • - its a silly argument •  is native when you think about it • scrolling is not a business requirement • PhoneGap/BlackBerry

nobody cared

Page 14: PhoneGap - jfokus.se · native vs web • - its a silly argument •  is native when you think about it • scrolling is not a business requirement • PhoneGap/BlackBerry

then..

• Android

• BlackBerry

• etc.

Page 15: PhoneGap - jfokus.se · native vs web • - its a silly argument •  is native when you think about it • scrolling is not a business requirement • PhoneGap/BlackBerry

Back to Philosophy

• simplest thing that could possibly work

• implementation > spec

• the future is web apps

• standards are a community process and should be informed by implementation

• the purpose of the project is to provide an implementation example for browsers

Page 16: PhoneGap - jfokus.se · native vs web • - its a silly argument •  is native when you think about it • scrolling is not a business requirement • PhoneGap/BlackBerry

the history lesson

2008, August ...... iPhone 2008, November .... Android 2008, November .... Blackberry (4.2!) 2009, August ...... Windows Mobile 2009, September ... Symbian 2009, November .... webOS

* work under way for Qt, Windows Phone 7 and Bada

Page 17: PhoneGap - jfokus.se · native vs web • - its a silly argument •  is native when you think about it • scrolling is not a business requirement • PhoneGap/BlackBerry

testing

• mobile-spec

• how we do it

• more techniques being prototyped: weinre, selenium, etc

Page 18: PhoneGap - jfokus.se · native vs web • - its a silly argument •  is native when you think about it • scrolling is not a business requirement • PhoneGap/BlackBerry

The Future

• api overload negation

• more platforms

• plugin focused

• more automation and tooling

Page 19: PhoneGap - jfokus.se · native vs web • - its a silly argument •  is native when you think about it • scrolling is not a business requirement • PhoneGap/BlackBerry

post 1.0

• menu element

• webgl

• notifications

• background services with js

Page 20: PhoneGap - jfokus.se · native vs web • - its a silly argument •  is native when you think about it • scrolling is not a business requirement • PhoneGap/BlackBerry

PhoneGap Q’s

• governance and licensing

• by the numbers

• rejection fud

• native vs web debate

Page 21: PhoneGap - jfokus.se · native vs web • - its a silly argument •  is native when you think about it • scrolling is not a business requirement • PhoneGap/BlackBerry

governance

• meritocrazy (not a meritocracy)

• IBM and Nitobi

• MANY outside itch scratchers

• http://groups.google.com/group/phonegap-dev

• plugins plugins plugins

Page 22: PhoneGap - jfokus.se · native vs web • - its a silly argument •  is native when you think about it • scrolling is not a business requirement • PhoneGap/BlackBerry

licensing

• inbound apache

• outbound mit/bsd

Page 23: PhoneGap - jfokus.se · native vs web • - its a silly argument •  is native when you think about it • scrolling is not a business requirement • PhoneGap/BlackBerry

numbers for your boss

• 300k uniques / month to http://phonegap.com

• 11k downloads a month

• thousands of apps

• 4300 members on the mailing list

• 50+ libs/tools/whatever

• 100s of contributors

Page 24: PhoneGap - jfokus.se · native vs web • - its a silly argument •  is native when you think about it • scrolling is not a business requirement • PhoneGap/BlackBerry

Rejection FUD

• Apple does NOT reject PhoneGap

• PhoneGap only uses public apis

• PhoneGap does not recompile: just a wrapper. Its like a condom. Except not gross and feels great.

Page 25: PhoneGap - jfokus.se · native vs web • - its a silly argument •  is native when you think about it • scrolling is not a business requirement • PhoneGap/BlackBerry

native vs web

• - its a silly argument

• <button> is native when you think about it

• scrolling is not a business requirement

• PhoneGap/BlackBerry apps are better even!

• if you want native: go for it

• if you want portability: go webif you want to help shape the future: implement it

Page 26: PhoneGap - jfokus.se · native vs web • - its a silly argument •  is native when you think about it • scrolling is not a business requirement • PhoneGap/BlackBerry

Alternatives?

• Appcelerator

• Rhodes

• There are many others.

Page 27: PhoneGap - jfokus.se · native vs web • - its a silly argument •  is native when you think about it • scrolling is not a business requirement • PhoneGap/BlackBerry

Competition?

• Licensing

• Adoption

• Platforms

• Tool chain integration

• Standards

Page 28: PhoneGap - jfokus.se · native vs web • - its a silly argument •  is native when you think about it • scrolling is not a business requirement • PhoneGap/BlackBerry

Complementary Tools

• XUI

• Lawnchair

• jQuery / jQuery Mobile / jqTouch

• Sencha

• Zepto

• insert your favorite $ here

Page 29: PhoneGap - jfokus.se · native vs web • - its a silly argument •  is native when you think about it • scrolling is not a business requirement • PhoneGap/BlackBerry

Also

• weinre

• Ripple

• http://build.phonegap.com

Page 30: PhoneGap - jfokus.se · native vs web • - its a silly argument •  is native when you think about it • scrolling is not a business requirement • PhoneGap/BlackBerry

challenges

Page 31: PhoneGap - jfokus.se · native vs web • - its a silly argument •  is native when you think about it • scrolling is not a business requirement • PhoneGap/BlackBerry

opportunities!

Page 32: PhoneGap - jfokus.se · native vs web • - its a silly argument •  is native when you think about it • scrolling is not a business requirement • PhoneGap/BlackBerry

You probably only own one phone

Page 33: PhoneGap - jfokus.se · native vs web • - its a silly argument •  is native when you think about it • scrolling is not a business requirement • PhoneGap/BlackBerry

this is what SDK installation is like

Page 34: PhoneGap - jfokus.se · native vs web • - its a silly argument •  is native when you think about it • scrolling is not a business requirement • PhoneGap/BlackBerry

your boss/client/whoever seems to think they need to replicate their

entire site as an app

Page 35: PhoneGap - jfokus.se · native vs web • - its a silly argument •  is native when you think about it • scrolling is not a business requirement • PhoneGap/BlackBerry

dealing w/ the madness

• start with ONE thing that you can ship in TWO weeks MAX

• You MUST HAVE automated builds from revision control

• aim for a web app, iOS and Android to start

Page 36: PhoneGap - jfokus.se · native vs web • - its a silly argument •  is native when you think about it • scrolling is not a business requirement • PhoneGap/BlackBerry

more red flags

• settings screen

• single sentence description contains the word "and"

• no build chain

• no rcs

• no adhoc distribution

• no time!

Page 37: PhoneGap - jfokus.se · native vs web • - its a silly argument •  is native when you think about it • scrolling is not a business requirement • PhoneGap/BlackBerry

lets build some apps!

Page 38: PhoneGap - jfokus.se · native vs web • - its a silly argument •  is native when you think about it • scrolling is not a business requirement • PhoneGap/BlackBerry

email me:

[email protected]

for build.phonegap.com access