SlideShare a Scribd company logo
Brian LeRoux, Nitobi
The Road to PhoneGap 1.0

phonegap.com
nitobi.com

brian@nitobi.com

twitter.com/brianleroux
brianleroux.github.com
westcoastlogic.com
etc.
Nitobi Software
 ‣   Founded in 1998
 ‣   15 employees
 ‣   Based in Vancouver, BC (Gastown)
 ‣   ^---Canada, eh.
 ‣   Early player in JavaScript, Ajax, AIR,
     Mobile web



                          Brian LeRoux / Nitobi Software / PhoneGap
<3 JavaScript Esp.<3 FOSS
 ‣   CompleteUI
 ‣   PhoneGap




                  Brian LeRoux / Nitobi Software / PhoneGap
Here’s the thing...
    Platform          Language                  Awesome
     iPhone          Objective C             Not so much.
    Android        Java (Dalvik VM)                  Ok.
   Blackberry     Java (Who knows.)             Bad scene.

 Windows Mobile   .NET and/or C++                Nuff said.

     Nokia         C++, Java, Flash        Sorta cool right?
                    Lite, Web tech
      Palm           HTML. CSS.                   Exactly.
                      JavaScript.


                              Brian LeRoux / Nitobi Software / PhoneGap
We’ve seen this before...
 ‣   History is repeating itself.
 ‣   Platforms causing fragmentation.
 ‣   Who will save us?!




                           Brian LeRoux / Nitobi Software / PhoneGap
Stand back! I know javascript.




                                 Brian LeRoux / Nitobi Software / PhoneGap
PhoneGap is Web Dev
 ‣   with native api access
 ‣   web technology: html, css and
     javascript




                         Brian LeRoux / Nitobi Software / PhoneGap
Our philosophy
 ‣   The purpose of PhoneGap is for
     PhoneGap to cease to exist.




                         Brian LeRoux / Nitobi Software / PhoneGap
In plain english

  Problem: too many devices, platforms and stores.
  Solution: enable web developers.


   • Cross Platform
   • Open Standards
   • Open Source

                            Brian LeRoux / Nitobi Software / PhoneGap
Why?




       Brian LeRoux / Nitobi Software / PhoneGap
One last time
 ‣   We are here to bring the web to native
     devices not the other way around
 ‣   We are going to adhere to open
     standards whenever possible
 ‣   The entire project stack is to remain
     completely open source




                          Brian LeRoux / Nitobi Software / PhoneGap
PhoneGap Risks
 ‣   API still evolving and the Roadmap is unclear.
 ‣   Documentation is terrible and divisive.
 ‣   Competition?
 ‣   App store rejection FUD.
 ‣   Which webkit?
 ‣   Tooling is not consolidated.
 ‣   No fucking tests!
 ‣   No plugin architecture.
 ‣   The source tree is a mess.
 ‣   No defined roles, incentives, timelines for contributers.




                                               Brian LeRoux / Nitobi Software / PhoneGap
API
 ‣   users do not easily know what is going
     on on which device
 ‣   a hourly test page output would fix this
 ‣   whats next for phonegap?
 ‣   how do we plan features?
 ‣   (hint: not implmented)



                          Brian LeRoux / Nitobi Software / PhoneGap
Docs
 ‣   complete fail
 ‣   we need: examples, quickstarts,
     advanced usage, official blog, api docs
     and how to contribute tutorials




                          Brian LeRoux / Nitobi Software / PhoneGap
PhoneGap “Competition”

    bigfive         iphone               web                gpl2

  liquidgear       iphone               web?                mit

   corona          iphone                lua          proprietary
                                                      proprietary/
 appcelerator   iphone/android          web?
                                                        apache
   rhodes       iphone/android          ruby               gpl3

  nimblekit        iphone               web?          proprietary


                             Brian LeRoux / Nitobi Software / PhoneGap
Don’t be fooled

 ‣   Lockin is not a goal of phonegap.




                         Brian LeRoux / Nitobi Software / PhoneGap
Rejection Letters
 ‣   the drama was nice
 ‣   but it was a symptom of our own
     failure not Apple’s
 ‣   need to have a unified build process
     across devices that performs project
     naming and obfuscation built in




                          Brian LeRoux / Nitobi Software / PhoneGap
Which Webkit?
 ‣   we need to document the differences
     between our platforms
 ‣   needs to be accessible to all users
     quickly
 ‣   should give warnings during unified
     build process
 ‣   sounds a whole lot like CI


                          Brian LeRoux / Nitobi Software / PhoneGap
Tooling not consolidated
 ‣   You need to download Palm, Android,
     iPhone, BlackBerry SDK's...
 ‣   Then you need to learn how to build
     for each on individually...
 ‣   Then resolve each x-platform issue...
 ‣   Repeat?!
 ‣   automation FAIL

                         Brian LeRoux / Nitobi Software / PhoneGap
Testing
 ‣   the JavaScript API needs tests
 ‣   (src for impls too but thats not as
     important b/c thats not our
     abstraction remember)
 ‣   I wrote the basis for this months ago ;)
 ‣   We need a continuous integration
     server showing the results online all
     the time

                          Brian LeRoux / Nitobi Software / PhoneGap
Plugins
 ‣   native apis that don't fit our web-iful
     world view
 ‣   so simple to do!
 ‣   we need a leader for this
 ‣   Possibly an official 3rd party site?




                           Brian LeRoux / Nitobi Software / PhoneGap
Source is a mess
 ‣   lots to say about it but suffice to say
     first time user is going to be FUCKED
     trying to navigate this
 ‣   needs to be solved TODAY by us all
 ‣   later.




                           Brian LeRoux / Nitobi Software / PhoneGap
Roles
 ‣   We’re serious about recognizing
     contribution.
 ‣   Projects concerned with problem
     areas/risks instead of specific tech.




                          Brian LeRoux / Nitobi Software / PhoneGap
PhoneGap Projects
 ‣   Everyone: source tree organization review w/ team
 ‣   mobile-spec
 ‣   phonegap-doc
 ‣   phonegap-dev
 ‣   phonegap-install
 ‣   Plugin Project




                               Brian LeRoux / Nitobi Software / PhoneGap
How do we organize?
 ‣   Separate projects.
 ‣   Separate source.
 ‣   Separate issue trackers.




                          Brian LeRoux / Nitobi Software / PhoneGap
Timing
 ‣   Starts immediately.
 ‣   Friday Afternoon PhoneGap Hackdays
     2pm - ?
 ‣   Its ready when its ready!




                           Brian LeRoux / Nitobi Software / PhoneGap
PhoneGap 1.0 (proposed)
 ‣   Installer/Updater of SDK
 ‣   New Docs Online
 ‣   CI Running
 ‣   Unified Build Process in place
 ‣   Plugin Website




                          Brian LeRoux / Nitobi Software / PhoneGap
Installer Project
 ‣   Single click install
 ‣   Everything a dev needs in one package
     including SDK’s
 ‣   Updating




                            Brian LeRoux / Nitobi Software / PhoneGap
Docs Project
 ‣   One simple example app
 ‣   Quickstarts for each feature
 ‣   Advanced Usage tutorial w/ XUI
 ‣   Searchable and styled API docs
 ‣   Offline API doc in PDF form
 ‣   How to Contribute tutorial
 ‣   Official Blog w/ one post a week
                         Brian LeRoux / Nitobi Software / PhoneGap
Continuous Integration
 ‣   Single suite of tests for the JS API
 ‣   Runs hourly and online
 ‣   Packaged w/ the SDK
 ‣   Separate project will be useful for our
     ‘competition’




                           Brian LeRoux / Nitobi Software / PhoneGap
Unified Build Process
 ‣   One click and I get three binaries:
     iPhone, Android, BB from one www
     folder.
 ‣   Thats it! So simple! ;)




                           Brian LeRoux / Nitobi Software / PhoneGap
Plugins
 ‣   Need to define an API for this
 ‣   Would be nice if it was mirrored in JS
     so plugins could be 100% web
 ‣   More important than any other Android
     or iPhone feature.
 ‣   Need a repo and separate site for
     listing plugins.


                          Brian LeRoux / Nitobi Software / PhoneGap
On the Horizon
 ‣   Palm, WRT and WinMo
 ‣   Bondi and Widgets




                         Brian LeRoux / Nitobi Software / PhoneGap
PhoneGap Touring
 ‣   OSCON
 ‣   FITC
 ‣   Ajax Experience
 ‣   Adobe Max




                       Brian LeRoux / Nitobi Software / PhoneGap
one last thing

 ‣   Browsers are already making PhoneGap
     obsolete.
 ‣   Which means we're winning.
 ‣   Real artists ship. Here’s to 1.0!




                           Brian LeRoux / Nitobi Software / PhoneGap

More Related Content

What's hot

What's hot (20)

Beyond QA
Beyond QABeyond QA
Beyond QA
 
Phonegap
PhonegapPhonegap
Phonegap
 
Building Hybrid Applications using PhoneGap
Building Hybrid Applications using PhoneGapBuilding Hybrid Applications using PhoneGap
Building Hybrid Applications using PhoneGap
 
Code analysis for a better future
Code analysis for a better futureCode analysis for a better future
Code analysis for a better future
 
Building mobile apps using Phonegap
Building mobile apps using PhonegapBuilding mobile apps using Phonegap
Building mobile apps using Phonegap
 
Introduction to PhoneGap
Introduction to PhoneGapIntroduction to PhoneGap
Introduction to PhoneGap
 
Introduction to PhoneGap
Introduction to PhoneGapIntroduction to PhoneGap
Introduction to PhoneGap
 
How to Choose a Programming Language
How to Choose a Programming LanguageHow to Choose a Programming Language
How to Choose a Programming Language
 
PhoneGap - Now and the Future
PhoneGap - Now and the FuturePhoneGap - Now and the Future
PhoneGap - Now and the Future
 
From DevOps to GitOps with GitLab
From DevOps to GitOps with GitLabFrom DevOps to GitOps with GitLab
From DevOps to GitOps with GitLab
 
A New Era for Animators
A New Era for AnimatorsA New Era for Animators
A New Era for Animators
 
Phonegap
PhonegapPhonegap
Phonegap
 
Samsung Indonesia: Tizen Native App
Samsung Indonesia: Tizen Native AppSamsung Indonesia: Tizen Native App
Samsung Indonesia: Tizen Native App
 
Hybrid HTML5 Apps
Hybrid HTML5 AppsHybrid HTML5 Apps
Hybrid HTML5 Apps
 
DEVIntersection 2014 iOS and Android Development for C# Developers
DEVIntersection 2014 iOS and Android Development for C# DevelopersDEVIntersection 2014 iOS and Android Development for C# Developers
DEVIntersection 2014 iOS and Android Development for C# Developers
 
Open Sourcing the Secret Sauce
Open Sourcing the Secret SauceOpen Sourcing the Secret Sauce
Open Sourcing the Secret Sauce
 
Me interessei por Xamarin, e agora?
Me interessei por Xamarin, e agora?Me interessei por Xamarin, e agora?
Me interessei por Xamarin, e agora?
 
iOSDevUK Conference- DevOps for iOS Apps
iOSDevUK Conference- DevOps for iOS AppsiOSDevUK Conference- DevOps for iOS Apps
iOSDevUK Conference- DevOps for iOS Apps
 
Full Matrix Auto Test Framework for WebRTC
Full Matrix Auto Test Framework for WebRTCFull Matrix Auto Test Framework for WebRTC
Full Matrix Auto Test Framework for WebRTC
 
Modernisation of Legacy PHP Applications to Symfony2 - Symfony Live Berlin 2012
Modernisation of Legacy PHP Applications to Symfony2 - Symfony Live Berlin 2012Modernisation of Legacy PHP Applications to Symfony2 - Symfony Live Berlin 2012
Modernisation of Legacy PHP Applications to Symfony2 - Symfony Live Berlin 2012
 

Viewers also liked

Music of the 20th century tivoli
Music of the 20th century tivoliMusic of the 20th century tivoli
Music of the 20th century tivoli
Sauyo High School
 
Introduction to SQL Server Security
Introduction to SQL Server SecurityIntroduction to SQL Server Security
Introduction to SQL Server Security
Jason Strate
 
Building Mobile Cross-Platform Apps with HTML5, jQuery Mobile & PhoneGap
Building Mobile Cross-Platform Apps with HTML5, jQuery Mobile & PhoneGapBuilding Mobile Cross-Platform Apps with HTML5, jQuery Mobile & PhoneGap
Building Mobile Cross-Platform Apps with HTML5, jQuery Mobile & PhoneGap
Nick Landry
 
TOT دورة تدريب مدربين
TOT دورة  تدريب مدربينTOT دورة  تدريب مدربين
TOT دورة تدريب مدربين
Ahmed Al-Shamy
 
HTML5 is the Future of Mobile, PhoneGap Takes You There Today
HTML5 is the Future of Mobile, PhoneGap Takes You There TodayHTML5 is the Future of Mobile, PhoneGap Takes You There Today
HTML5 is the Future of Mobile, PhoneGap Takes You There Today
davyjones
 

Viewers also liked (20)

Music of the 20th century tivoli
Music of the 20th century tivoliMusic of the 20th century tivoli
Music of the 20th century tivoli
 
Creating and Distributing Mobile Web Applications with PhoneGap
Creating and Distributing Mobile Web Applications with PhoneGapCreating and Distributing Mobile Web Applications with PhoneGap
Creating and Distributing Mobile Web Applications with PhoneGap
 
Ingredients for a succesful marriage copy
Ingredients for a succesful marriage   copyIngredients for a succesful marriage   copy
Ingredients for a succesful marriage copy
 
كيفية الاستيراد من الصين
كيفية الاستيراد من الصين كيفية الاستيراد من الصين
كيفية الاستيراد من الصين
 
Sql Server Security Best Practices
Sql Server Security Best PracticesSql Server Security Best Practices
Sql Server Security Best Practices
 
Introduction to SQL Server Security
Introduction to SQL Server SecurityIntroduction to SQL Server Security
Introduction to SQL Server Security
 
Building Mobile Cross-Platform Apps with HTML5, jQuery Mobile & PhoneGap
Building Mobile Cross-Platform Apps with HTML5, jQuery Mobile & PhoneGapBuilding Mobile Cross-Platform Apps with HTML5, jQuery Mobile & PhoneGap
Building Mobile Cross-Platform Apps with HTML5, jQuery Mobile & PhoneGap
 
Intro to rubric
Intro to rubricIntro to rubric
Intro to rubric
 
Smart home presentation
Smart home presentationSmart home presentation
Smart home presentation
 
App程式上架google play流程
App程式上架google play流程App程式上架google play流程
App程式上架google play流程
 
Ensuring Quality in Education
Ensuring Quality in EducationEnsuring Quality in Education
Ensuring Quality in Education
 
Introduction to Apache Cordova (Phonegap)
Introduction to Apache Cordova (Phonegap)Introduction to Apache Cordova (Phonegap)
Introduction to Apache Cordova (Phonegap)
 
Smart Home Automation System ALAYOUBI TECHNOLOGIES
Smart Home Automation System ALAYOUBI TECHNOLOGIESSmart Home Automation System ALAYOUBI TECHNOLOGIES
Smart Home Automation System ALAYOUBI TECHNOLOGIES
 
Smart Home Tech Short
Smart Home Tech ShortSmart Home Tech Short
Smart Home Tech Short
 
TOT دورة تدريب مدربين
TOT دورة  تدريب مدربينTOT دورة  تدريب مدربين
TOT دورة تدريب مدربين
 
Rubric
RubricRubric
Rubric
 
PhoneGap: Building Mobile Applications with HTML/JS
PhoneGap: Building Mobile Applications with HTML/JSPhoneGap: Building Mobile Applications with HTML/JS
PhoneGap: Building Mobile Applications with HTML/JS
 
HTML5 is the Future of Mobile, PhoneGap Takes You There Today
HTML5 is the Future of Mobile, PhoneGap Takes You There TodayHTML5 is the Future of Mobile, PhoneGap Takes You There Today
HTML5 is the Future of Mobile, PhoneGap Takes You There Today
 
Smart Home technologies
Smart Home technologiesSmart Home technologies
Smart Home technologies
 
Smart homes
Smart homesSmart homes
Smart homes
 

Similar to Phonegap 1.0

PhoneGap/PhoneGap Build - Amsterdam Adobe Camp
PhoneGap/PhoneGap Build - Amsterdam Adobe CampPhoneGap/PhoneGap Build - Amsterdam Adobe Camp
PhoneGap/PhoneGap Build - Amsterdam Adobe Camp
Mihai Corlan
 
Georges Chitiga - Introduction to Phonegap - HTML5 & JS to native mobile app
Georges Chitiga - Introduction to Phonegap - HTML5 & JS to native mobile appGeorges Chitiga - Introduction to Phonegap - HTML5 & JS to native mobile app
Georges Chitiga - Introduction to Phonegap - HTML5 & JS to native mobile app
Codecamp Romania
 
Getting started with PhoneGap
Getting started with PhoneGapGetting started with PhoneGap
Getting started with PhoneGap
Mihai Corlan
 
Developing cross platform mobile applications with phone gap for windows phone
Developing cross platform mobile applications with phone gap for windows phoneDeveloping cross platform mobile applications with phone gap for windows phone
Developing cross platform mobile applications with phone gap for windows phone
Colin Eberhardt
 

Similar to Phonegap 1.0 (20)

PhoneGap at JSConf
PhoneGap at JSConfPhoneGap at JSConf
PhoneGap at JSConf
 
Introduction to PhoneGap
Introduction to PhoneGapIntroduction to PhoneGap
Introduction to PhoneGap
 
Phonegap
PhonegapPhonegap
Phonegap
 
PhoneGap
PhoneGapPhoneGap
PhoneGap
 
Introduction to PhoneGap
Introduction to PhoneGapIntroduction to PhoneGap
Introduction to PhoneGap
 
PhoneGap/PhoneGap Build - Amsterdam Adobe Camp
PhoneGap/PhoneGap Build - Amsterdam Adobe CampPhoneGap/PhoneGap Build - Amsterdam Adobe Camp
PhoneGap/PhoneGap Build - Amsterdam Adobe Camp
 
Georges Chitiga - Introduction to Phonegap - HTML5 & JS to native mobile app
Georges Chitiga - Introduction to Phonegap - HTML5 & JS to native mobile appGeorges Chitiga - Introduction to Phonegap - HTML5 & JS to native mobile app
Georges Chitiga - Introduction to Phonegap - HTML5 & JS to native mobile app
 
Mobile for PHP developers
Mobile for PHP developersMobile for PHP developers
Mobile for PHP developers
 
Intro to PhoneGap
Intro to PhoneGapIntro to PhoneGap
Intro to PhoneGap
 
Apache Cordova, Hybrid Application Development
Apache Cordova, Hybrid Application DevelopmentApache Cordova, Hybrid Application Development
Apache Cordova, Hybrid Application Development
 
Getting Acquainted with PhoneGap
Getting Acquainted with PhoneGapGetting Acquainted with PhoneGap
Getting Acquainted with PhoneGap
 
What is PhoneGap?
What is PhoneGap?What is PhoneGap?
What is PhoneGap?
 
The future is hybrid
The future is hybridThe future is hybrid
The future is hybrid
 
Phone gap in android technology
Phone gap in android technologyPhone gap in android technology
Phone gap in android technology
 
Future of Mobile
Future of MobileFuture of Mobile
Future of Mobile
 
Webapi
WebapiWebapi
Webapi
 
Progressive Web App
Progressive Web AppProgressive Web App
Progressive Web App
 
Getting started with PhoneGap
Getting started with PhoneGapGetting started with PhoneGap
Getting started with PhoneGap
 
Developing cross platform mobile applications with phone gap for windows phone
Developing cross platform mobile applications with phone gap for windows phoneDeveloping cross platform mobile applications with phone gap for windows phone
Developing cross platform mobile applications with phone gap for windows phone
 
Intro to PhoneGap
Intro to PhoneGapIntro to PhoneGap
Intro to PhoneGap
 

More from Brian LeRoux (14)

Mobeers waterloo-2011
Mobeers waterloo-2011Mobeers waterloo-2011
Mobeers waterloo-2011
 
Phonegap 2.x
Phonegap 2.xPhonegap 2.x
Phonegap 2.x
 
TxJS 2011
TxJS 2011TxJS 2011
TxJS 2011
 
Falsy Values - Warsaw 2011
Falsy Values - Warsaw 2011Falsy Values - Warsaw 2011
Falsy Values - Warsaw 2011
 
After HTML5 Mobilism 2011
After HTML5 Mobilism 2011After HTML5 Mobilism 2011
After HTML5 Mobilism 2011
 
Mobile Knife Fighting at JSConf US
Mobile Knife Fighting at JSConf US Mobile Knife Fighting at JSConf US
Mobile Knife Fighting at JSConf US
 
Phonegap for Engineers
Phonegap for EngineersPhonegap for Engineers
Phonegap for Engineers
 
Fullfrontal 2010
Fullfrontal 2010Fullfrontal 2010
Fullfrontal 2010
 
Txjs
TxjsTxjs
Txjs
 
Palm Developer Day PhoneGap
Palm Developer Day PhoneGap Palm Developer Day PhoneGap
Palm Developer Day PhoneGap
 
Scurvyconf
ScurvyconfScurvyconf
Scurvyconf
 
DjangoSki
DjangoSkiDjangoSki
DjangoSki
 
Mobile Web App Development
Mobile Web App DevelopmentMobile Web App Development
Mobile Web App Development
 
Mobile JavaScript
Mobile JavaScriptMobile JavaScript
Mobile JavaScript
 

Recently uploaded

Future Visions: Predictions to Guide and Time Tech Innovation, Peter Udo Diehl
Future Visions: Predictions to Guide and Time Tech Innovation, Peter Udo DiehlFuture Visions: Predictions to Guide and Time Tech Innovation, Peter Udo Diehl
Future Visions: Predictions to Guide and Time Tech Innovation, Peter Udo Diehl
Peter Udo Diehl
 

Recently uploaded (20)

Integrating Telephony Systems with Salesforce: Insights and Considerations, B...
Integrating Telephony Systems with Salesforce: Insights and Considerations, B...Integrating Telephony Systems with Salesforce: Insights and Considerations, B...
Integrating Telephony Systems with Salesforce: Insights and Considerations, B...
 
Slack (or Teams) Automation for Bonterra Impact Management (fka Social Soluti...
Slack (or Teams) Automation for Bonterra Impact Management (fka Social Soluti...Slack (or Teams) Automation for Bonterra Impact Management (fka Social Soluti...
Slack (or Teams) Automation for Bonterra Impact Management (fka Social Soluti...
 
Software Delivery At the Speed of AI: Inflectra Invests In AI-Powered Quality
Software Delivery At the Speed of AI: Inflectra Invests In AI-Powered QualitySoftware Delivery At the Speed of AI: Inflectra Invests In AI-Powered Quality
Software Delivery At the Speed of AI: Inflectra Invests In AI-Powered Quality
 
UiPath Test Automation using UiPath Test Suite series, part 3
UiPath Test Automation using UiPath Test Suite series, part 3UiPath Test Automation using UiPath Test Suite series, part 3
UiPath Test Automation using UiPath Test Suite series, part 3
 
Kubernetes & AI - Beauty and the Beast !?! @KCD Istanbul 2024
Kubernetes & AI - Beauty and the Beast !?! @KCD Istanbul 2024Kubernetes & AI - Beauty and the Beast !?! @KCD Istanbul 2024
Kubernetes & AI - Beauty and the Beast !?! @KCD Istanbul 2024
 
How world-class product teams are winning in the AI era by CEO and Founder, P...
How world-class product teams are winning in the AI era by CEO and Founder, P...How world-class product teams are winning in the AI era by CEO and Founder, P...
How world-class product teams are winning in the AI era by CEO and Founder, P...
 
Key Trends Shaping the Future of Infrastructure.pdf
Key Trends Shaping the Future of Infrastructure.pdfKey Trends Shaping the Future of Infrastructure.pdf
Key Trends Shaping the Future of Infrastructure.pdf
 
Assuring Contact Center Experiences for Your Customers With ThousandEyes
Assuring Contact Center Experiences for Your Customers With ThousandEyesAssuring Contact Center Experiences for Your Customers With ThousandEyes
Assuring Contact Center Experiences for Your Customers With ThousandEyes
 
To Graph or Not to Graph Knowledge Graph Architectures and LLMs
To Graph or Not to Graph Knowledge Graph Architectures and LLMsTo Graph or Not to Graph Knowledge Graph Architectures and LLMs
To Graph or Not to Graph Knowledge Graph Architectures and LLMs
 
Speed Wins: From Kafka to APIs in Minutes
Speed Wins: From Kafka to APIs in MinutesSpeed Wins: From Kafka to APIs in Minutes
Speed Wins: From Kafka to APIs in Minutes
 
De-mystifying Zero to One: Design Informed Techniques for Greenfield Innovati...
De-mystifying Zero to One: Design Informed Techniques for Greenfield Innovati...De-mystifying Zero to One: Design Informed Techniques for Greenfield Innovati...
De-mystifying Zero to One: Design Informed Techniques for Greenfield Innovati...
 
Future Visions: Predictions to Guide and Time Tech Innovation, Peter Udo Diehl
Future Visions: Predictions to Guide and Time Tech Innovation, Peter Udo DiehlFuture Visions: Predictions to Guide and Time Tech Innovation, Peter Udo Diehl
Future Visions: Predictions to Guide and Time Tech Innovation, Peter Udo Diehl
 
GenAISummit 2024 May 28 Sri Ambati Keynote: AGI Belongs to The Community in O...
GenAISummit 2024 May 28 Sri Ambati Keynote: AGI Belongs to The Community in O...GenAISummit 2024 May 28 Sri Ambati Keynote: AGI Belongs to The Community in O...
GenAISummit 2024 May 28 Sri Ambati Keynote: AGI Belongs to The Community in O...
 
Knowledge engineering: from people to machines and back
Knowledge engineering: from people to machines and backKnowledge engineering: from people to machines and back
Knowledge engineering: from people to machines and back
 
Mission to Decommission: Importance of Decommissioning Products to Increase E...
Mission to Decommission: Importance of Decommissioning Products to Increase E...Mission to Decommission: Importance of Decommissioning Products to Increase E...
Mission to Decommission: Importance of Decommissioning Products to Increase E...
 
Optimizing NoSQL Performance Through Observability
Optimizing NoSQL Performance Through ObservabilityOptimizing NoSQL Performance Through Observability
Optimizing NoSQL Performance Through Observability
 
From Daily Decisions to Bottom Line: Connecting Product Work to Revenue by VP...
From Daily Decisions to Bottom Line: Connecting Product Work to Revenue by VP...From Daily Decisions to Bottom Line: Connecting Product Work to Revenue by VP...
From Daily Decisions to Bottom Line: Connecting Product Work to Revenue by VP...
 
Demystifying gRPC in .Net by John Staveley
Demystifying gRPC in .Net by John StaveleyDemystifying gRPC in .Net by John Staveley
Demystifying gRPC in .Net by John Staveley
 
Connector Corner: Automate dynamic content and events by pushing a button
Connector Corner: Automate dynamic content and events by pushing a buttonConnector Corner: Automate dynamic content and events by pushing a button
Connector Corner: Automate dynamic content and events by pushing a button
 
From Siloed Products to Connected Ecosystem: Building a Sustainable and Scala...
From Siloed Products to Connected Ecosystem: Building a Sustainable and Scala...From Siloed Products to Connected Ecosystem: Building a Sustainable and Scala...
From Siloed Products to Connected Ecosystem: Building a Sustainable and Scala...
 

Phonegap 1.0

  • 1. Brian LeRoux, Nitobi The Road to PhoneGap 1.0 phonegap.com nitobi.com brian@nitobi.com twitter.com/brianleroux brianleroux.github.com westcoastlogic.com etc.
  • 2. Nitobi Software ‣ Founded in 1998 ‣ 15 employees ‣ Based in Vancouver, BC (Gastown) ‣ ^---Canada, eh. ‣ Early player in JavaScript, Ajax, AIR, Mobile web Brian LeRoux / Nitobi Software / PhoneGap
  • 3. <3 JavaScript Esp.<3 FOSS ‣ CompleteUI ‣ PhoneGap Brian LeRoux / Nitobi Software / PhoneGap
  • 4. Here’s the thing... Platform Language Awesome iPhone Objective C Not so much. Android Java (Dalvik VM) Ok. Blackberry Java (Who knows.) Bad scene. Windows Mobile .NET and/or C++ Nuff said. Nokia C++, Java, Flash Sorta cool right? Lite, Web tech Palm HTML. CSS. Exactly. JavaScript. Brian LeRoux / Nitobi Software / PhoneGap
  • 5. We’ve seen this before... ‣ History is repeating itself. ‣ Platforms causing fragmentation. ‣ Who will save us?! Brian LeRoux / Nitobi Software / PhoneGap
  • 6. Stand back! I know javascript. Brian LeRoux / Nitobi Software / PhoneGap
  • 7. PhoneGap is Web Dev ‣ with native api access ‣ web technology: html, css and javascript Brian LeRoux / Nitobi Software / PhoneGap
  • 8. Our philosophy ‣ The purpose of PhoneGap is for PhoneGap to cease to exist. Brian LeRoux / Nitobi Software / PhoneGap
  • 9. In plain english Problem: too many devices, platforms and stores. Solution: enable web developers. • Cross Platform • Open Standards • Open Source Brian LeRoux / Nitobi Software / PhoneGap
  • 10. Why? Brian LeRoux / Nitobi Software / PhoneGap
  • 11. One last time ‣ We are here to bring the web to native devices not the other way around ‣ We are going to adhere to open standards whenever possible ‣ The entire project stack is to remain completely open source Brian LeRoux / Nitobi Software / PhoneGap
  • 12. PhoneGap Risks ‣ API still evolving and the Roadmap is unclear. ‣ Documentation is terrible and divisive. ‣ Competition? ‣ App store rejection FUD. ‣ Which webkit? ‣ Tooling is not consolidated. ‣ No fucking tests! ‣ No plugin architecture. ‣ The source tree is a mess. ‣ No defined roles, incentives, timelines for contributers. Brian LeRoux / Nitobi Software / PhoneGap
  • 13. API ‣ users do not easily know what is going on on which device ‣ a hourly test page output would fix this ‣ whats next for phonegap? ‣ how do we plan features? ‣ (hint: not implmented) Brian LeRoux / Nitobi Software / PhoneGap
  • 14. Docs ‣ complete fail ‣ we need: examples, quickstarts, advanced usage, official blog, api docs and how to contribute tutorials Brian LeRoux / Nitobi Software / PhoneGap
  • 15. PhoneGap “Competition” bigfive iphone web gpl2 liquidgear iphone web? mit corona iphone lua proprietary proprietary/ appcelerator iphone/android web? apache rhodes iphone/android ruby gpl3 nimblekit iphone web? proprietary Brian LeRoux / Nitobi Software / PhoneGap
  • 16. Don’t be fooled ‣ Lockin is not a goal of phonegap. Brian LeRoux / Nitobi Software / PhoneGap
  • 17. Rejection Letters ‣ the drama was nice ‣ but it was a symptom of our own failure not Apple’s ‣ need to have a unified build process across devices that performs project naming and obfuscation built in Brian LeRoux / Nitobi Software / PhoneGap
  • 18. Which Webkit? ‣ we need to document the differences between our platforms ‣ needs to be accessible to all users quickly ‣ should give warnings during unified build process ‣ sounds a whole lot like CI Brian LeRoux / Nitobi Software / PhoneGap
  • 19. Tooling not consolidated ‣ You need to download Palm, Android, iPhone, BlackBerry SDK's... ‣ Then you need to learn how to build for each on individually... ‣ Then resolve each x-platform issue... ‣ Repeat?! ‣ automation FAIL Brian LeRoux / Nitobi Software / PhoneGap
  • 20. Testing ‣ the JavaScript API needs tests ‣ (src for impls too but thats not as important b/c thats not our abstraction remember) ‣ I wrote the basis for this months ago ;) ‣ We need a continuous integration server showing the results online all the time Brian LeRoux / Nitobi Software / PhoneGap
  • 21. Plugins ‣ native apis that don't fit our web-iful world view ‣ so simple to do! ‣ we need a leader for this ‣ Possibly an official 3rd party site? Brian LeRoux / Nitobi Software / PhoneGap
  • 22. Source is a mess ‣ lots to say about it but suffice to say first time user is going to be FUCKED trying to navigate this ‣ needs to be solved TODAY by us all ‣ later. Brian LeRoux / Nitobi Software / PhoneGap
  • 23. Roles ‣ We’re serious about recognizing contribution. ‣ Projects concerned with problem areas/risks instead of specific tech. Brian LeRoux / Nitobi Software / PhoneGap
  • 24. PhoneGap Projects ‣ Everyone: source tree organization review w/ team ‣ mobile-spec ‣ phonegap-doc ‣ phonegap-dev ‣ phonegap-install ‣ Plugin Project Brian LeRoux / Nitobi Software / PhoneGap
  • 25. How do we organize? ‣ Separate projects. ‣ Separate source. ‣ Separate issue trackers. Brian LeRoux / Nitobi Software / PhoneGap
  • 26. Timing ‣ Starts immediately. ‣ Friday Afternoon PhoneGap Hackdays 2pm - ? ‣ Its ready when its ready! Brian LeRoux / Nitobi Software / PhoneGap
  • 27. PhoneGap 1.0 (proposed) ‣ Installer/Updater of SDK ‣ New Docs Online ‣ CI Running ‣ Unified Build Process in place ‣ Plugin Website Brian LeRoux / Nitobi Software / PhoneGap
  • 28. Installer Project ‣ Single click install ‣ Everything a dev needs in one package including SDK’s ‣ Updating Brian LeRoux / Nitobi Software / PhoneGap
  • 29. Docs Project ‣ One simple example app ‣ Quickstarts for each feature ‣ Advanced Usage tutorial w/ XUI ‣ Searchable and styled API docs ‣ Offline API doc in PDF form ‣ How to Contribute tutorial ‣ Official Blog w/ one post a week Brian LeRoux / Nitobi Software / PhoneGap
  • 30. Continuous Integration ‣ Single suite of tests for the JS API ‣ Runs hourly and online ‣ Packaged w/ the SDK ‣ Separate project will be useful for our ‘competition’ Brian LeRoux / Nitobi Software / PhoneGap
  • 31. Unified Build Process ‣ One click and I get three binaries: iPhone, Android, BB from one www folder. ‣ Thats it! So simple! ;) Brian LeRoux / Nitobi Software / PhoneGap
  • 32. Plugins ‣ Need to define an API for this ‣ Would be nice if it was mirrored in JS so plugins could be 100% web ‣ More important than any other Android or iPhone feature. ‣ Need a repo and separate site for listing plugins. Brian LeRoux / Nitobi Software / PhoneGap
  • 33. On the Horizon ‣ Palm, WRT and WinMo ‣ Bondi and Widgets Brian LeRoux / Nitobi Software / PhoneGap
  • 34. PhoneGap Touring ‣ OSCON ‣ FITC ‣ Ajax Experience ‣ Adobe Max Brian LeRoux / Nitobi Software / PhoneGap
  • 35. one last thing ‣ Browsers are already making PhoneGap obsolete. ‣ Which means we're winning. ‣ Real artists ship. Here’s to 1.0! Brian LeRoux / Nitobi Software / PhoneGap