SlideShare a Scribd company logo
1 of 28
Download to read offline
Mobile for the rest of us
About Me

• @jhaynie
• http://blog.jeffhaynie.us
• jhaynie@appcelerator.com
• #titanium_app on freenode
Appcelerator

Empower developers to quickly create and
commercialize web, desktop and mobile
applications
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.
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
Titanium

• Desktop: Win32, OSX, Linux
• Mobile: iPhone and Android
Programming Model

Titanium supports JavaScript, HTML, CSS for
building mobile applications
UI

• Clean separation of Design from Code
• UI is constructed via HTML, CSS
• JavaScript access to create native controls,
  native views, windows, etc.
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.
App Assembly

Titanium SDK compiles (using Titanium
Developer) the application using the Mobile
SDK into a native application
Mobile APIs

                Geolocation
Accelerometer
                 Gesture
   Analytics
                  Media
      App
                 Network
  Database
                 Platform
  Filesystem
                    UI
Building the UI

• <html> accepted here (including HTML5)
• optimized native UI controls
• hybrid UI composition
Typical iPhone UI
Typical Android UI
<html>
Native UI views
Grouped View   Table View
Composite UI
Grouped View Example


   var groupedView = Titanium.UI.iPhone.createGroupedView();
groupedView.addSection(optionSection);
groupedView.addSection(buttonSection);
groupedView.addSection(inputSection);
groupedView.open({animated:true});
Button Group Section
   var optionData = [
    {title:'Option 1', selected:true},
    {title:'Option 2'},
    {title:'Option 3'}  
];

var optionSection =
Titanium.UI.iPhone.createGroupedSection({header:'Option
Group', type:'option', data:optionData});

optionSection.addEventListener('click',function(e)
{
});
Input Group Section

     var inputData = [
      {title:'Input 1',
       input:switchInstance, image:'iTunes.png'},
      {title:'Sound', input:sliderInstance, image:'Mail.png'},
      {title:'Name', input:textInstance},
      {title:'Input 2', value:'foo', hasChild:true},
      {title:'Input 3'}  
];

var inputSection =
Titanium.UI.iPhone.createGroupedSection({header:'Input
Group', type:'input', data:inputData});
inputSection.addEventListener('click',function(e)
{
});
Native UI Controls
• Toolbars
• Tab Bars
• Status Bars
• Dialogs
• Controls
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');
Camera

  Titanium.Media.showCamera(
{
    success:function(image,details)
    {
        $("status").innerHTML="Uploading...."+image.url;
    }
});
Video
var video = Titanium.Media.
createVideoPlayer({ contentURL : "movie.mp4"});

var listenerId = video.addEventListener("complete", function()
{
   video.removeEventListener('complete', listenerId);
   var dlg = Titanium.UI.createAlertDialog({
    'title' : 'Video Complete',
    'message' : 'video completed',
    'buttonNames' : [ 'OK' ]
   });
   dlg.show();
});
video.play();
Gestures
  function onShake()
{
   document.getElementById("status").innerHTML =
   'Stop Shaking me';  
}
var listenerId = Titanium.Gesture.addEventListener("shake",
onShake);
Accelerometer

Titanium.Accelerometer.addEventListener('update',function(e){

   document.getElementById('x').innerHTML = e.x;
   document.getElementById('y').innerHTML = e.y;
   document.getElementById('z').innerHTML = e.z
});
Titanium Info
• http://www.appcelerator.com
• http://github.com/appcelerator
• @appcelerator
• #titanium_app on irc.freenode.net
Mountain View July JavaScript Meetup at Google

More Related Content

Viewers also liked

TiConf Australia 2013
TiConf Australia 2013TiConf Australia 2013
TiConf Australia 2013Jeff Haynie
 
Mobile Developer Conference 2012 Hamburg, Germany Keynote
Mobile Developer Conference 2012 Hamburg, Germany KeynoteMobile Developer Conference 2012 Hamburg, Germany Keynote
Mobile Developer Conference 2012 Hamburg, Germany KeynoteJeff Haynie
 
SoCon 12 : Where are you in your mobile maturity?
SoCon 12 : Where are you in your mobile maturity?SoCon 12 : Where are you in your mobile maturity?
SoCon 12 : Where are you in your mobile maturity?Jeff Haynie
 
Appcelerator Overview
Appcelerator OverviewAppcelerator Overview
Appcelerator OverviewJeff Haynie
 
CommNexus San Diego Presentation
CommNexus San Diego PresentationCommNexus San Diego Presentation
CommNexus San Diego PresentationJeff Haynie
 
What's great in Appcelerator Titanium 0.8
What's great in Appcelerator Titanium 0.8What's great in Appcelerator Titanium 0.8
What's great in Appcelerator Titanium 0.8Jeff Haynie
 
Appcelerator iPhone/iPad Dev Con 2010 San Diego, CA
Appcelerator iPhone/iPad Dev Con 2010 San Diego, CAAppcelerator iPhone/iPad Dev Con 2010 San Diego, CA
Appcelerator iPhone/iPad Dev Con 2010 San Diego, CAJeff Haynie
 
SoCon 08 Opening Presentation by Jeff Haynie
SoCon 08 Opening Presentation by Jeff HaynieSoCon 08 Opening Presentation by Jeff Haynie
SoCon 08 Opening Presentation by Jeff HaynieJeff Haynie
 
Ajaxworld March 2008 - Jeff Haynie Keynote - Appcelerator
Ajaxworld March 2008 - Jeff Haynie Keynote - AppceleratorAjaxworld March 2008 - Jeff Haynie Keynote - Appcelerator
Ajaxworld March 2008 - Jeff Haynie Keynote - AppceleratorJeff Haynie
 
Guia argentina de tratamiento de la EPOC
Guia argentina de tratamiento de la EPOCGuia argentina de tratamiento de la EPOC
Guia argentina de tratamiento de la EPOCAlejandro Videla
 
Raisers' Ask - South Asia's Fundraising Magazine
Raisers' Ask - South Asia's Fundraising MagazineRaisers' Ask - South Asia's Fundraising Magazine
Raisers' Ask - South Asia's Fundraising MagazineRanjini Victor
 
Más facilidades para adoptar
Más facilidades para adoptarMás facilidades para adoptar
Más facilidades para adoptarCHICUN
 

Viewers also liked (12)

TiConf Australia 2013
TiConf Australia 2013TiConf Australia 2013
TiConf Australia 2013
 
Mobile Developer Conference 2012 Hamburg, Germany Keynote
Mobile Developer Conference 2012 Hamburg, Germany KeynoteMobile Developer Conference 2012 Hamburg, Germany Keynote
Mobile Developer Conference 2012 Hamburg, Germany Keynote
 
SoCon 12 : Where are you in your mobile maturity?
SoCon 12 : Where are you in your mobile maturity?SoCon 12 : Where are you in your mobile maturity?
SoCon 12 : Where are you in your mobile maturity?
 
Appcelerator Overview
Appcelerator OverviewAppcelerator Overview
Appcelerator Overview
 
CommNexus San Diego Presentation
CommNexus San Diego PresentationCommNexus San Diego Presentation
CommNexus San Diego Presentation
 
What's great in Appcelerator Titanium 0.8
What's great in Appcelerator Titanium 0.8What's great in Appcelerator Titanium 0.8
What's great in Appcelerator Titanium 0.8
 
Appcelerator iPhone/iPad Dev Con 2010 San Diego, CA
Appcelerator iPhone/iPad Dev Con 2010 San Diego, CAAppcelerator iPhone/iPad Dev Con 2010 San Diego, CA
Appcelerator iPhone/iPad Dev Con 2010 San Diego, CA
 
SoCon 08 Opening Presentation by Jeff Haynie
SoCon 08 Opening Presentation by Jeff HaynieSoCon 08 Opening Presentation by Jeff Haynie
SoCon 08 Opening Presentation by Jeff Haynie
 
Ajaxworld March 2008 - Jeff Haynie Keynote - Appcelerator
Ajaxworld March 2008 - Jeff Haynie Keynote - AppceleratorAjaxworld March 2008 - Jeff Haynie Keynote - Appcelerator
Ajaxworld March 2008 - Jeff Haynie Keynote - Appcelerator
 
Guia argentina de tratamiento de la EPOC
Guia argentina de tratamiento de la EPOCGuia argentina de tratamiento de la EPOC
Guia argentina de tratamiento de la EPOC
 
Raisers' Ask - South Asia's Fundraising Magazine
Raisers' Ask - South Asia's Fundraising MagazineRaisers' Ask - South Asia's Fundraising Magazine
Raisers' Ask - South Asia's Fundraising Magazine
 
Más facilidades para adoptar
Más facilidades para adoptarMás facilidades para adoptar
Más facilidades para adoptar
 

Similar to Mountain View July JavaScript Meetup at Google

Using Web Technologies to Build Native iPhone & Android Applications
Using Web Technologies to Build Native iPhone & Android ApplicationsUsing Web Technologies to Build Native iPhone & Android Applications
Using Web Technologies to Build Native iPhone & Android ApplicationsAxway Appcelerator
 
Open Source World : Using Web Technologies to build native iPhone and Android...
Open Source World : Using Web Technologies to build native iPhone and Android...Open Source World : Using Web Technologies to build native iPhone and Android...
Open Source World : Using Web Technologies to build native iPhone and Android...Jeff Haynie
 
iPhone/iPad Development with Titanium
iPhone/iPad Development with TitaniumiPhone/iPad Development with Titanium
iPhone/iPad Development with TitaniumAxway Appcelerator
 
Mobile 2.0 Event: Mobile for the rest of us using Appcelerator Titanium
Mobile 2.0 Event: Mobile for the rest of us using Appcelerator TitaniumMobile 2.0 Event: Mobile for the rest of us using Appcelerator Titanium
Mobile 2.0 Event: Mobile for the rest of us using Appcelerator TitaniumJeff Haynie
 
Modeveast Appcelerator Presentation
Modeveast Appcelerator PresentationModeveast Appcelerator Presentation
Modeveast Appcelerator PresentationAaron Saunders
 
PaaS + Appcelerator = WIN
PaaS + Appcelerator = WINPaaS + Appcelerator = WIN
PaaS + Appcelerator = WINAaron Saunders
 
Titanium Overview (Mobile March 2011)
Titanium Overview (Mobile March 2011)Titanium Overview (Mobile March 2011)
Titanium Overview (Mobile March 2011)Kevin Whinnery
 
Reinventing Identity and Social Graphs with Digits
Reinventing Identity and Social Graphs with DigitsReinventing Identity and Social Graphs with Digits
Reinventing Identity and Social Graphs with DigitsRomain Huet
 
Building a Simple Mobile-optimized Web App Using the jQuery Mobile Framework
Building a Simple Mobile-optimized Web App Using the jQuery Mobile FrameworkBuilding a Simple Mobile-optimized Web App Using the jQuery Mobile Framework
Building a Simple Mobile-optimized Web App Using the jQuery Mobile FrameworkSt. Petersburg College
 
Titanium appcelerator sdk
Titanium appcelerator sdkTitanium appcelerator sdk
Titanium appcelerator sdkAlessio Ricco
 
Idea to Appstore with Titanium Mobile
Idea to Appstore with Titanium MobileIdea to Appstore with Titanium Mobile
Idea to Appstore with Titanium MobileChristian Sulllivan
 
Getting started with titanium
Getting started with titaniumGetting started with titanium
Getting started with titaniumNaga Harish M
 
DFW Wordpress February Meetup - Appcelerator Titanium
DFW Wordpress February Meetup  - Appcelerator TitaniumDFW Wordpress February Meetup  - Appcelerator Titanium
DFW Wordpress February Meetup - Appcelerator TitaniumJeff Haynie
 
Nokia Developer Offering Series 40
Nokia Developer Offering Series 40Nokia Developer Offering Series 40
Nokia Developer Offering Series 40Mohamad Iqbal
 

Similar to Mountain View July JavaScript Meetup at Google (20)

Using Web Technologies to Build Native iPhone & Android Applications
Using Web Technologies to Build Native iPhone & Android ApplicationsUsing Web Technologies to Build Native iPhone & Android Applications
Using Web Technologies to Build Native iPhone & Android Applications
 
Open Source World : Using Web Technologies to build native iPhone and Android...
Open Source World : Using Web Technologies to build native iPhone and Android...Open Source World : Using Web Technologies to build native iPhone and Android...
Open Source World : Using Web Technologies to build native iPhone and Android...
 
iPhone and the Enterprise
iPhone and the EnterpriseiPhone and the Enterprise
iPhone and the Enterprise
 
iPhone/iPad Development with Titanium
iPhone/iPad Development with TitaniumiPhone/iPad Development with Titanium
iPhone/iPad Development with Titanium
 
Mobile for the rest of us
Mobile for the rest of usMobile for the rest of us
Mobile for the rest of us
 
Mobile 2.0 Event: Mobile for the rest of us using Appcelerator Titanium
Mobile 2.0 Event: Mobile for the rest of us using Appcelerator TitaniumMobile 2.0 Event: Mobile for the rest of us using Appcelerator Titanium
Mobile 2.0 Event: Mobile for the rest of us using Appcelerator Titanium
 
Modeveast Appcelerator Presentation
Modeveast Appcelerator PresentationModeveast Appcelerator Presentation
Modeveast Appcelerator Presentation
 
PaaS + Appcelerator = WIN
PaaS + Appcelerator = WINPaaS + Appcelerator = WIN
PaaS + Appcelerator = WIN
 
Titanium Overview (Mobile March 2011)
Titanium Overview (Mobile March 2011)Titanium Overview (Mobile March 2011)
Titanium Overview (Mobile March 2011)
 
Reinventing Identity and Social Graphs with Digits
Reinventing Identity and Social Graphs with DigitsReinventing Identity and Social Graphs with Digits
Reinventing Identity and Social Graphs with Digits
 
Introducing Titanium
Introducing TitaniumIntroducing Titanium
Introducing Titanium
 
Building a Simple Mobile-optimized Web App Using the jQuery Mobile Framework
Building a Simple Mobile-optimized Web App Using the jQuery Mobile FrameworkBuilding a Simple Mobile-optimized Web App Using the jQuery Mobile Framework
Building a Simple Mobile-optimized Web App Using the jQuery Mobile Framework
 
Titanium appcelerator sdk
Titanium appcelerator sdkTitanium appcelerator sdk
Titanium appcelerator sdk
 
Idea to Appstore with Titanium Mobile
Idea to Appstore with Titanium MobileIdea to Appstore with Titanium Mobile
Idea to Appstore with Titanium Mobile
 
Web app
Web appWeb app
Web app
 
Web app
Web appWeb app
Web app
 
Getting started with titanium
Getting started with titaniumGetting started with titanium
Getting started with titanium
 
Introducting Titanium Mobile
Introducting Titanium MobileIntroducting Titanium Mobile
Introducting Titanium Mobile
 
DFW Wordpress February Meetup - Appcelerator Titanium
DFW Wordpress February Meetup  - Appcelerator TitaniumDFW Wordpress February Meetup  - Appcelerator Titanium
DFW Wordpress February Meetup - Appcelerator Titanium
 
Nokia Developer Offering Series 40
Nokia Developer Offering Series 40Nokia Developer Offering Series 40
Nokia Developer Offering Series 40
 

More from Jeff Haynie

How to build great teams
How to build great teamsHow to build great teams
How to build great teamsJeff Haynie
 
#Startup lessons
#Startup lessons#Startup lessons
#Startup lessonsJeff Haynie
 
Ti AppCamp 2 : Atlanta
Ti AppCamp 2 : AtlantaTi AppCamp 2 : Atlanta
Ti AppCamp 2 : AtlantaJeff Haynie
 
TiTokyo conference in Tokyo, Japan for Appcelerator community
TiTokyo conference in Tokyo, Japan for Appcelerator communityTiTokyo conference in Tokyo, Japan for Appcelerator community
TiTokyo conference in Tokyo, Japan for Appcelerator communityJeff Haynie
 
Mobile Monday Hamburg, Germany
Mobile Monday Hamburg, GermanyMobile Monday Hamburg, Germany
Mobile Monday Hamburg, GermanyJeff Haynie
 
The Mobile Opportunity
The Mobile OpportunityThe Mobile Opportunity
The Mobile OpportunityJeff Haynie
 
Shotput Ventures - Building startups are hard work
Shotput Ventures - Building startups are hard workShotput Ventures - Building startups are hard work
Shotput Ventures - Building startups are hard workJeff Haynie
 
Developing Desktop Applications using HTML and Javascript
Developing Desktop Applications using HTML and JavascriptDeveloping Desktop Applications using HTML and Javascript
Developing Desktop Applications using HTML and JavascriptJeff Haynie
 
SoCon09 Keynote - Jeff Haynie
SoCon09 Keynote - Jeff HaynieSoCon09 Keynote - Jeff Haynie
SoCon09 Keynote - Jeff HaynieJeff Haynie
 
SD Forum Java SIG - Service Oriented UI Architecture
SD Forum Java SIG - Service Oriented UI ArchitectureSD Forum Java SIG - Service Oriented UI Architecture
SD Forum Java SIG - Service Oriented UI ArchitectureJeff Haynie
 

More from Jeff Haynie (10)

How to build great teams
How to build great teamsHow to build great teams
How to build great teams
 
#Startup lessons
#Startup lessons#Startup lessons
#Startup lessons
 
Ti AppCamp 2 : Atlanta
Ti AppCamp 2 : AtlantaTi AppCamp 2 : Atlanta
Ti AppCamp 2 : Atlanta
 
TiTokyo conference in Tokyo, Japan for Appcelerator community
TiTokyo conference in Tokyo, Japan for Appcelerator communityTiTokyo conference in Tokyo, Japan for Appcelerator community
TiTokyo conference in Tokyo, Japan for Appcelerator community
 
Mobile Monday Hamburg, Germany
Mobile Monday Hamburg, GermanyMobile Monday Hamburg, Germany
Mobile Monday Hamburg, Germany
 
The Mobile Opportunity
The Mobile OpportunityThe Mobile Opportunity
The Mobile Opportunity
 
Shotput Ventures - Building startups are hard work
Shotput Ventures - Building startups are hard workShotput Ventures - Building startups are hard work
Shotput Ventures - Building startups are hard work
 
Developing Desktop Applications using HTML and Javascript
Developing Desktop Applications using HTML and JavascriptDeveloping Desktop Applications using HTML and Javascript
Developing Desktop Applications using HTML and Javascript
 
SoCon09 Keynote - Jeff Haynie
SoCon09 Keynote - Jeff HaynieSoCon09 Keynote - Jeff Haynie
SoCon09 Keynote - Jeff Haynie
 
SD Forum Java SIG - Service Oriented UI Architecture
SD Forum Java SIG - Service Oriented UI ArchitectureSD Forum Java SIG - Service Oriented UI Architecture
SD Forum Java SIG - Service Oriented UI Architecture
 

Recently uploaded

Computer 10: Lesson 10 - Online Crimes and Hazards
Computer 10: Lesson 10 - Online Crimes and HazardsComputer 10: Lesson 10 - Online Crimes and Hazards
Computer 10: Lesson 10 - Online Crimes and HazardsSeth Reyes
 
Empowering Africa's Next Generation: The AI Leadership Blueprint
Empowering Africa's Next Generation: The AI Leadership BlueprintEmpowering Africa's Next Generation: The AI Leadership Blueprint
Empowering Africa's Next Generation: The AI Leadership BlueprintMahmoud Rabie
 
KubeConEU24-Monitoring Kubernetes and Cloud Spend with OpenCost
KubeConEU24-Monitoring Kubernetes and Cloud Spend with OpenCostKubeConEU24-Monitoring Kubernetes and Cloud Spend with OpenCost
KubeConEU24-Monitoring Kubernetes and Cloud Spend with OpenCostMatt Ray
 
Secure your environment with UiPath and CyberArk technologies - Session 1
Secure your environment with UiPath and CyberArk technologies - Session 1Secure your environment with UiPath and CyberArk technologies - Session 1
Secure your environment with UiPath and CyberArk technologies - Session 1DianaGray10
 
Nanopower In Semiconductor Industry.pdf
Nanopower  In Semiconductor Industry.pdfNanopower  In Semiconductor Industry.pdf
Nanopower In Semiconductor Industry.pdfPedro Manuel
 
Designing A Time bound resource download URL
Designing A Time bound resource download URLDesigning A Time bound resource download URL
Designing A Time bound resource download URLRuncy Oommen
 
Connector Corner: Extending LLM automation use cases with UiPath GenAI connec...
Connector Corner: Extending LLM automation use cases with UiPath GenAI connec...Connector Corner: Extending LLM automation use cases with UiPath GenAI connec...
Connector Corner: Extending LLM automation use cases with UiPath GenAI connec...DianaGray10
 
Using IESVE for Loads, Sizing and Heat Pump Modeling to Achieve Decarbonization
Using IESVE for Loads, Sizing and Heat Pump Modeling to Achieve DecarbonizationUsing IESVE for Loads, Sizing and Heat Pump Modeling to Achieve Decarbonization
Using IESVE for Loads, Sizing and Heat Pump Modeling to Achieve DecarbonizationIES VE
 
Comparing Sidecar-less Service Mesh from Cilium and Istio
Comparing Sidecar-less Service Mesh from Cilium and IstioComparing Sidecar-less Service Mesh from Cilium and Istio
Comparing Sidecar-less Service Mesh from Cilium and IstioChristian Posta
 
COMPUTER 10 Lesson 8 - Building a Website
COMPUTER 10 Lesson 8 - Building a WebsiteCOMPUTER 10 Lesson 8 - Building a Website
COMPUTER 10 Lesson 8 - Building a Websitedgelyza
 
UiPath Platform: The Backend Engine Powering Your Automation - Session 1
UiPath Platform: The Backend Engine Powering Your Automation - Session 1UiPath Platform: The Backend Engine Powering Your Automation - Session 1
UiPath Platform: The Backend Engine Powering Your Automation - Session 1DianaGray10
 
Basic Building Blocks of Internet of Things.
Basic Building Blocks of Internet of Things.Basic Building Blocks of Internet of Things.
Basic Building Blocks of Internet of Things.YounusS2
 
AI Fame Rush Review – Virtual Influencer Creation In Just Minutes
AI Fame Rush Review – Virtual Influencer Creation In Just MinutesAI Fame Rush Review – Virtual Influencer Creation In Just Minutes
AI Fame Rush Review – Virtual Influencer Creation In Just MinutesMd Hossain Ali
 
UiPath Solutions Management Preview - Northern CA Chapter - March 22.pdf
UiPath Solutions Management Preview - Northern CA Chapter - March 22.pdfUiPath Solutions Management Preview - Northern CA Chapter - March 22.pdf
UiPath Solutions Management Preview - Northern CA Chapter - March 22.pdfDianaGray10
 
Cybersecurity Workshop #1.pptx
Cybersecurity Workshop #1.pptxCybersecurity Workshop #1.pptx
Cybersecurity Workshop #1.pptxGDSC PJATK
 
IESVE Software for Florida Code Compliance Using ASHRAE 90.1-2019
IESVE Software for Florida Code Compliance Using ASHRAE 90.1-2019IESVE Software for Florida Code Compliance Using ASHRAE 90.1-2019
IESVE Software for Florida Code Compliance Using ASHRAE 90.1-2019IES VE
 
9 Steps For Building Winning Founding Team
9 Steps For Building Winning Founding Team9 Steps For Building Winning Founding Team
9 Steps For Building Winning Founding TeamAdam Moalla
 
How Accurate are Carbon Emissions Projections?
How Accurate are Carbon Emissions Projections?How Accurate are Carbon Emissions Projections?
How Accurate are Carbon Emissions Projections?IES VE
 
OpenShift Commons Paris - Choose Your Own Observability Adventure
OpenShift Commons Paris - Choose Your Own Observability AdventureOpenShift Commons Paris - Choose Your Own Observability Adventure
OpenShift Commons Paris - Choose Your Own Observability AdventureEric D. Schabell
 

Recently uploaded (20)

Computer 10: Lesson 10 - Online Crimes and Hazards
Computer 10: Lesson 10 - Online Crimes and HazardsComputer 10: Lesson 10 - Online Crimes and Hazards
Computer 10: Lesson 10 - Online Crimes and Hazards
 
Empowering Africa's Next Generation: The AI Leadership Blueprint
Empowering Africa's Next Generation: The AI Leadership BlueprintEmpowering Africa's Next Generation: The AI Leadership Blueprint
Empowering Africa's Next Generation: The AI Leadership Blueprint
 
KubeConEU24-Monitoring Kubernetes and Cloud Spend with OpenCost
KubeConEU24-Monitoring Kubernetes and Cloud Spend with OpenCostKubeConEU24-Monitoring Kubernetes and Cloud Spend with OpenCost
KubeConEU24-Monitoring Kubernetes and Cloud Spend with OpenCost
 
Secure your environment with UiPath and CyberArk technologies - Session 1
Secure your environment with UiPath and CyberArk technologies - Session 1Secure your environment with UiPath and CyberArk technologies - Session 1
Secure your environment with UiPath and CyberArk technologies - Session 1
 
20230104 - machine vision
20230104 - machine vision20230104 - machine vision
20230104 - machine vision
 
Nanopower In Semiconductor Industry.pdf
Nanopower  In Semiconductor Industry.pdfNanopower  In Semiconductor Industry.pdf
Nanopower In Semiconductor Industry.pdf
 
Designing A Time bound resource download URL
Designing A Time bound resource download URLDesigning A Time bound resource download URL
Designing A Time bound resource download URL
 
Connector Corner: Extending LLM automation use cases with UiPath GenAI connec...
Connector Corner: Extending LLM automation use cases with UiPath GenAI connec...Connector Corner: Extending LLM automation use cases with UiPath GenAI connec...
Connector Corner: Extending LLM automation use cases with UiPath GenAI connec...
 
Using IESVE for Loads, Sizing and Heat Pump Modeling to Achieve Decarbonization
Using IESVE for Loads, Sizing and Heat Pump Modeling to Achieve DecarbonizationUsing IESVE for Loads, Sizing and Heat Pump Modeling to Achieve Decarbonization
Using IESVE for Loads, Sizing and Heat Pump Modeling to Achieve Decarbonization
 
Comparing Sidecar-less Service Mesh from Cilium and Istio
Comparing Sidecar-less Service Mesh from Cilium and IstioComparing Sidecar-less Service Mesh from Cilium and Istio
Comparing Sidecar-less Service Mesh from Cilium and Istio
 
COMPUTER 10 Lesson 8 - Building a Website
COMPUTER 10 Lesson 8 - Building a WebsiteCOMPUTER 10 Lesson 8 - Building a Website
COMPUTER 10 Lesson 8 - Building a Website
 
UiPath Platform: The Backend Engine Powering Your Automation - Session 1
UiPath Platform: The Backend Engine Powering Your Automation - Session 1UiPath Platform: The Backend Engine Powering Your Automation - Session 1
UiPath Platform: The Backend Engine Powering Your Automation - Session 1
 
Basic Building Blocks of Internet of Things.
Basic Building Blocks of Internet of Things.Basic Building Blocks of Internet of Things.
Basic Building Blocks of Internet of Things.
 
AI Fame Rush Review – Virtual Influencer Creation In Just Minutes
AI Fame Rush Review – Virtual Influencer Creation In Just MinutesAI Fame Rush Review – Virtual Influencer Creation In Just Minutes
AI Fame Rush Review – Virtual Influencer Creation In Just Minutes
 
UiPath Solutions Management Preview - Northern CA Chapter - March 22.pdf
UiPath Solutions Management Preview - Northern CA Chapter - March 22.pdfUiPath Solutions Management Preview - Northern CA Chapter - March 22.pdf
UiPath Solutions Management Preview - Northern CA Chapter - March 22.pdf
 
Cybersecurity Workshop #1.pptx
Cybersecurity Workshop #1.pptxCybersecurity Workshop #1.pptx
Cybersecurity Workshop #1.pptx
 
IESVE Software for Florida Code Compliance Using ASHRAE 90.1-2019
IESVE Software for Florida Code Compliance Using ASHRAE 90.1-2019IESVE Software for Florida Code Compliance Using ASHRAE 90.1-2019
IESVE Software for Florida Code Compliance Using ASHRAE 90.1-2019
 
9 Steps For Building Winning Founding Team
9 Steps For Building Winning Founding Team9 Steps For Building Winning Founding Team
9 Steps For Building Winning Founding Team
 
How Accurate are Carbon Emissions Projections?
How Accurate are Carbon Emissions Projections?How Accurate are Carbon Emissions Projections?
How Accurate are Carbon Emissions Projections?
 
OpenShift Commons Paris - Choose Your Own Observability Adventure
OpenShift Commons Paris - Choose Your Own Observability AdventureOpenShift Commons Paris - Choose Your Own Observability Adventure
OpenShift Commons Paris - Choose Your Own Observability Adventure
 

Mountain View July JavaScript Meetup at Google

  • 1. Mobile for the rest of us
  • 2. About Me • @jhaynie • http://blog.jeffhaynie.us • jhaynie@appcelerator.com • #titanium_app on freenode
  • 3. Appcelerator Empower developers to quickly create and commercialize web, desktop and mobile applications
  • 4. 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.
  • 5. 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
  • 6. Titanium • Desktop: Win32, OSX, Linux • Mobile: iPhone and Android
  • 7. Programming Model Titanium supports JavaScript, HTML, CSS for building mobile applications
  • 8. UI • Clean separation of Design from Code • UI is constructed via HTML, CSS • JavaScript access to create native controls, native views, windows, etc.
  • 9. 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.
  • 10. App Assembly Titanium SDK compiles (using Titanium Developer) the application using the Mobile SDK into a native application
  • 11. Mobile APIs Geolocation Accelerometer Gesture Analytics Media App Network Database Platform Filesystem UI
  • 12. Building the UI • <html> accepted here (including HTML5) • optimized native UI controls • hybrid UI composition
  • 16. Native UI views Grouped View Table View
  • 18. Grouped View Example var groupedView = Titanium.UI.iPhone.createGroupedView(); groupedView.addSection(optionSection); groupedView.addSection(buttonSection); groupedView.addSection(inputSection); groupedView.open({animated:true});
  • 19. Button Group Section var optionData = [     {title:'Option 1', selected:true},     {title:'Option 2'},     {title:'Option 3'}   ]; var optionSection = Titanium.UI.iPhone.createGroupedSection({header:'Option Group', type:'option', data:optionData}); optionSection.addEventListener('click',function(e) { });
  • 20. Input Group Section var inputData = [     {title:'Input 1', input:switchInstance, image:'iTunes.png'},     {title:'Sound', input:sliderInstance, image:'Mail.png'},     {title:'Name', input:textInstance},     {title:'Input 2', value:'foo', hasChild:true},     {title:'Input 3'}   ]; var inputSection = Titanium.UI.iPhone.createGroupedSection({header:'Input Group', type:'input', data:inputData}); inputSection.addEventListener('click',function(e) { });
  • 21. Native UI Controls • Toolbars • Tab Bars • Status Bars • Dialogs • Controls
  • 22. 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');
  • 23. Camera Titanium.Media.showCamera( {     success:function(image,details)     {         $("status").innerHTML="Uploading...."+image.url; } });
  • 24. Video var video = Titanium.Media. createVideoPlayer({ contentURL : "movie.mp4"}); var listenerId = video.addEventListener("complete", function() {    video.removeEventListener('complete', listenerId);    var dlg = Titanium.UI.createAlertDialog({     'title' : 'Video Complete',     'message' : 'video completed',     'buttonNames' : [ 'OK' ]    });    dlg.show(); }); video.play();
  • 25. Gestures function onShake() {    document.getElementById("status").innerHTML = 'Stop Shaking me';   } var listenerId = Titanium.Gesture.addEventListener("shake", onShake);
  • 26. Accelerometer Titanium.Accelerometer.addEventListener('update',function(e){    document.getElementById('x').innerHTML = e.x;    document.getElementById('y').innerHTML = e.y;    document.getElementById('z').innerHTML = e.z });
  • 27. Titanium Info • http://www.appcelerator.com • http://github.com/appcelerator • @appcelerator • #titanium_app on irc.freenode.net