Presentation given by Jeff Haynie, CEO of Appcelerator, at Open Source World 2009 in San Francisco, CA on August 13, 2009.
Jeff talks about the state of the mobile smart phone application marketplace and how you can build native iPhone and Android applications using the open source platform, Appcelerator Titanium, and web technologies such as HTML, CSS and JavaScript.
4. iPhone
• 50 Million iPhones - 5 Million this past
quarter
• 1.5 Billions application downloads
• 65K+ applications
• iPhone has raised bar and proven how to
make money in mobile
5. Android
• 1M phones already shipping (900% growth
expected)
• 20 new phones coming out EY 2009
• Thousands and thousands of applications
• It’s Google
7. Explosion of
opportunities
20% year over year growth anticipated for
next 5 years in smart phones
8. Oh no.
• iPhone (Objective-C, 28th!)
• Android (Java, Google Style)
• RIM (Java, Blackberry or Midlet style)
• Symbian (old school C)
• Palm Pre (Web 2.0)
• Windows Mobile (.NET compact)
• Maemo (GTK+)
9. Oh, yeah...
• Web Browsers
• Desktop Apps
• Net books
• E-Book readers
• Tablets
• etc etc.
10. We Web
• HTML, CSS, JavaScript
• Presentation / UI can easily be built with
HTML/ CSS
• JavaScript API for mobile features, platform,
UI
• Run locally, integrate cloud services
11. It’s the UX
Build applications that fit the
use cases that are tailored for
the modality
12.
13.
14.
15. What we want
• Skills
• Tools
• Reusability
• Platforms
• Portability
• Speed / Cost
• Open source / Standards
18. Appcelerator Products
Create, test, and commercialize native mobile and desktop
applications with the web technologies you use today.
Develop Native iPhone Build Desktop apps Cloud services used for Web development tools
and Android apps with that can be deployed testing, packaging, that enable rapid RIA
full access to each with one code base on distribution, and development.
device’s APIs. the PC, Mac, or Linux analytics.
platforms.
19. Product Architecture
Mobile Desktop
Titanium
Advanced Advanced Advanced APIs
APIs APIs
Analytics Advertising Social Networking Team Collaboration
Appcelerator
- uattro
Q - acebook
F - hare your Project
S
- Usage
Network
- reystripe
G - Twitter - Account Management
- Events
- ahoo
Y
Training
Support
22. UI
• Clean separation of Design from Code
• UI is constructed via HTML, CSS
• JavaScript access to create native controls,
native views, windows, etc.
23. JavaScript
• JavaScript is used to program Mobile
Features, Access local Resources,
Database, Remote Web Services, etc.
• Use your favorite JS Toolkit - jQuery,YUI,
Dojo, Mootools, etc etc.
24. App Assembly
Titanium SDK compiles (using Titanium
Developer) the application using the Mobile
SDK into a native application
25. Mobile APIs
Geolocation
Accelerometer
Gesture
Analytics
Media
App
Network
Database
Platform
Filesystem
UI
26. Building the UI
• <html> accepted here (including HTML5)
• optimized native UI controls
• hybrid UI composition
38. Databases
var db = Titanium.Database.open('mydb');
db.execute('INSERT INTO DATABASETEST (ID, NAME ) VALUES(?,?)',
1,'Name 1');
db.execute('INSERT INTO DATABASETEST (ID, NAME ) VALUES(?,?)',
2,'Name 2');
db.execute('INSERT INTO DATABASETEST (ID, NAME ) VALUES(?,?)',
3,'Name 3');
db.execute('INSERT INTO DATABASETEST (ID, NAME ) VALUES(?,?)',
4,'Name 4');