SlideShare ist ein Scribd-Unternehmen logo
1 von 25
Downloaden Sie, um offline zu lesen
Anarchist Guide to
                  Titanium UI
                           AN INTRODUCTION TO TITANIUM &
                                   PROTOTYPING




Wednesday, June 22, 2011
Vince Baskerville
    Co-Founder of TripLingo

    VP of Production
    TripLingo
    @whoisvince




Wednesday, June 22, 2011
TOPICS
                           What is Titanium
                           Requirements
                           Tools
                           Quick Peek
                           Q&A


Wednesday, June 22, 2011
What is Titanium
Wednesday, June 22, 2011
It’s a bad-ass framework
                           It’s a rapid application
                           development platform
                           Use your base source to develop to
                           multiple platforms & devices
                           iOS & Android currently for mobile


Wednesday, June 22, 2011
What’s inside?
                           300+ APIs
                           Full filesystem access
                           Internal SQLite database access
                           Built-in analytics
                           Use JavaScript, HTML5 & CSS3
                           Objective-C for modules
                           * more...
Wednesday, June 22, 2011
How does it work?
                           Pre-compiler
                            Optimizes your .js code


                           Front-end compiler
                            Generates platform-specific native code


                           Platform compiler & packager
                            Packaged for runing on the native simulator, device &/or
                            distribution




Wednesday, June 22, 2011
Requirements
                           Titanium Developer sdk
                            http://www.appcelerator.com/products/download/


                           iOS sdk & Xcode
                            http://developer.apple.com/


                           Java SDK & Android SDK
                            http://developer.android.com/sdk/index.html




Wednesday, June 22, 2011
Tools
             Kitchen Sink (sample app)
                   https://github.com/appcelerator/kitchensink

             API References
                   http://developer.appcelerator.com/apidoc/
                   mobile/latest

             Community Q&A
                   http://developer.appcelerator.com/
                   questions/newest

             AppU Training
                   http://training.appcelerator.com/



Wednesday, June 22, 2011
I <3 Coda

                                             My
               http://panic.com/coda/

           Tower (git gui)

                                           Workflow
               http://www.git-tower.com/

           CodaSet.com
               http://codaset.com/


Wednesday, June 22, 2011
Quick Peek
Wednesday, June 22, 2011
Project Structure
                           build
                             iphone
                           Info.plist
                           Resources
                             app.js
                             anotherView.js
                           manifest
                           tiapp.xml


Wednesday, June 22, 2011
Project Structure
                           build              Build directory
                             iphone            per platform
                           Info.plist
                           Resources
                             app.js
                             anotherView.js
                           manifest
                           tiapp.xml


Wednesday, June 22, 2011
Project Structure
                           build
                             iphone
                           Info.plist           Resource files;
                                                actual js code,
                           Resources
                                              images, db files, etc
                             app.js
                             anotherView.js
                           manifest
                           tiapp.xml


Wednesday, June 22, 2011
Project Structure
                           build
                             iphone
                           Info.plist
                           Resources
                             app.js           Project files
                             anotherView.js
                           manifest
                           tiapp.xml


Wednesday, June 22, 2011
Code Interface
                           Module
                             Titanium.UI
                           Object
                             Titanium.UI.Label
                           Object Factory
                             Titanium.UI.createLabel({})
                           Properties / Methods
                             ...({ top: 0, left: 44, text: ‘Spanish’ });
                           Event Handling
                             Button.addEventListener(click)

Wednesday, June 22, 2011
JSS vs Inline
                           Each method ends
                           with a semi-colon;
                                                Each except the last
                           Words are
                                                ends with a comma,
                           seperated with a
                           dash, ie:
                                                words are not
                           background-image:
                                                seperated, ie:
                                                backgroundImage:
                           file name needs to
                           match .js document
                           and be in same dir

Wednesday, June 22, 2011
Sooo... about that title


Wednesday, June 22, 2011
Titanium does a great job at giving you access
             to native buttons, tabs, etc; but you don’t have
                               to use them


Wednesday, June 22, 2011
Break the rules*
             Use the native controls for prototyping. Then if
               you can, create your own UI. Go crazy!




        *okay, so not really.. instead, you can bend & cheat some though.
Wednesday, June 22, 2011
TripLingo
        “This doesn't seem like it
    would function better than an
    app designed with apples ios
             guidelines in mind”

               “I love this app! Very
       intuitive and beautiful. Very
               cool idea. Good job”



Wednesday, June 22, 2011
Drilldown
                           95% custom UI
                           Prototype developed in 2 days
                           MVP in 2 weeks
                           v1.0 in 4 months
                           Possible because of Titanium (and
                           a bad-ass team!)
Wednesday, June 22, 2011
Code Demo


Wednesday, June 22, 2011
Questions?


Wednesday, June 22, 2011
Merci Beaucoup
                                        By: Vince Baskerville
                                   http://vincentjordan.com




Wednesday, June 22, 2011

Weitere ähnliche Inhalte

Ähnlich wie Anarchist guide to titanium ui

Javascript framework and backbone
Javascript framework and backboneJavascript framework and backbone
Javascript framework and backbone
Daniel Lv
 
Continuous Delivery for Mobile R&D
Continuous Delivery for Mobile R&DContinuous Delivery for Mobile R&D
Continuous Delivery for Mobile R&D
Anton Weiss
 
JavaSE - The road forward
JavaSE - The road forwardJavaSE - The road forward
JavaSE - The road forward
eug3n_cojocaru
 
Android & Google Plus
Android & Google PlusAndroid & Google Plus
Android & Google Plus
iMellon
 

Ähnlich wie Anarchist guide to titanium ui (20)

Javascript framework and backbone
Javascript framework and backboneJavascript framework and backbone
Javascript framework and backbone
 
Javascript Views, Client-side or Server-side with NodeJS
Javascript Views, Client-side or Server-side with NodeJSJavascript Views, Client-side or Server-side with NodeJS
Javascript Views, Client-side or Server-side with NodeJS
 
Pycon2011 android programming-using_python
Pycon2011 android programming-using_pythonPycon2011 android programming-using_python
Pycon2011 android programming-using_python
 
Entity Framework Today (May 2012)
Entity Framework Today (May 2012)Entity Framework Today (May 2012)
Entity Framework Today (May 2012)
 
2011 The Year of Web apps
2011 The Year of Web apps2011 The Year of Web apps
2011 The Year of Web apps
 
2011 june-kuala-lumpur-gtug-hackathon
2011 june-kuala-lumpur-gtug-hackathon2011 june-kuala-lumpur-gtug-hackathon
2011 june-kuala-lumpur-gtug-hackathon
 
Flowdock's full-text search with MongoDB
Flowdock's full-text search with MongoDBFlowdock's full-text search with MongoDB
Flowdock's full-text search with MongoDB
 
Android Development Slides
Android Development SlidesAndroid Development Slides
Android Development Slides
 
Marcel bruch ide 2.0 ecoop 2011
Marcel bruch ide 2.0 ecoop 2011Marcel bruch ide 2.0 ecoop 2011
Marcel bruch ide 2.0 ecoop 2011
 
Hands on iOS developments with jenkins
Hands on iOS developments with jenkinsHands on iOS developments with jenkins
Hands on iOS developments with jenkins
 
Continuous Delivery for Mobile R&D
Continuous Delivery for Mobile R&DContinuous Delivery for Mobile R&D
Continuous Delivery for Mobile R&D
 
Breizh camp adobe flex et les mobiles
Breizh camp   adobe flex et les mobilesBreizh camp   adobe flex et les mobiles
Breizh camp adobe flex et les mobiles
 
Groke
GrokeGroke
Groke
 
Beginning Android Development
Beginning Android DevelopmentBeginning Android Development
Beginning Android Development
 
ITP / SED Day 2
ITP / SED Day 2ITP / SED Day 2
ITP / SED Day 2
 
Secrets of the GWT
Secrets of the GWTSecrets of the GWT
Secrets of the GWT
 
JavaSE - The road forward
JavaSE - The road forwardJavaSE - The road forward
JavaSE - The road forward
 
Android & Google Plus
Android & Google PlusAndroid & Google Plus
Android & Google Plus
 
Building Eclipse Plugins with Tycho
Building Eclipse Plugins with TychoBuilding Eclipse Plugins with Tycho
Building Eclipse Plugins with Tycho
 
JavaScript as a Server side language (NodeJS): JSConf 2011, Dhaka
JavaScript as a Server side language (NodeJS): JSConf 2011, DhakaJavaScript as a Server side language (NodeJS): JSConf 2011, Dhaka
JavaScript as a Server side language (NodeJS): JSConf 2011, Dhaka
 

Mehr von Vincent Baskerville

Mehr von Vincent Baskerville (20)

Storytelling for product development
Storytelling for product developmentStorytelling for product development
Storytelling for product development
 
Mobile UX Design workshop
Mobile UX Design workshopMobile UX Design workshop
Mobile UX Design workshop
 
Introduction to LEAN UX
Introduction to LEAN UXIntroduction to LEAN UX
Introduction to LEAN UX
 
Wine & wireframes
Wine & wireframesWine & wireframes
Wine & wireframes
 
Create + execute a non-reactionary UX strategy
Create + execute a non-reactionary UX strategyCreate + execute a non-reactionary UX strategy
Create + execute a non-reactionary UX strategy
 
UXD lesson 1 - Intro To UX
UXD lesson 1 - Intro To UXUXD lesson 1 - Intro To UX
UXD lesson 1 - Intro To UX
 
Mobile, Metrics & Mayhem
Mobile, Metrics & MayhemMobile, Metrics & Mayhem
Mobile, Metrics & Mayhem
 
Designing happiness
Designing happinessDesigning happiness
Designing happiness
 
Mobile analytics
Mobile analyticsMobile analytics
Mobile analytics
 
Designing for engagement
Designing for engagementDesigning for engagement
Designing for engagement
 
Being a UX team of one: Understanding strengths & weaknesses
Being a UX team of one: Understanding strengths & weaknessesBeing a UX team of one: Understanding strengths & weaknesses
Being a UX team of one: Understanding strengths & weaknesses
 
Semantics, less and sarcasm
Semantics, less and sarcasmSemantics, less and sarcasm
Semantics, less and sarcasm
 
Adapting to Your Users
Adapting to Your UsersAdapting to Your Users
Adapting to Your Users
 
Mobile UX Prototyping & Storytelling
Mobile UX Prototyping & StorytellingMobile UX Prototyping & Storytelling
Mobile UX Prototyping & Storytelling
 
Being a UX team of one: Understanding your strengths and weaknesses
Being a UX team of one: Understanding your strengths and weaknessesBeing a UX team of one: Understanding your strengths and weaknesses
Being a UX team of one: Understanding your strengths and weaknesses
 
Semantics, LESS and Sarcasm
Semantics, LESS and SarcasmSemantics, LESS and Sarcasm
Semantics, LESS and Sarcasm
 
Designing happiness
Designing happinessDesigning happiness
Designing happiness
 
Lean Usability Testing
Lean Usability TestingLean Usability Testing
Lean Usability Testing
 
Uxd codestrong
Uxd codestrongUxd codestrong
Uxd codestrong
 
Productizing yourself
Productizing yourselfProductizing yourself
Productizing yourself
 

Kürzlich hochgeladen

Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Victor Rentea
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Safe Software
 

Kürzlich hochgeladen (20)

Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
 
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost SavingRepurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
 
Introduction to Multilingual Retrieval Augmented Generation (RAG)
Introduction to Multilingual Retrieval Augmented Generation (RAG)Introduction to Multilingual Retrieval Augmented Generation (RAG)
Introduction to Multilingual Retrieval Augmented Generation (RAG)
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
 
Understanding the FAA Part 107 License ..
Understanding the FAA Part 107 License ..Understanding the FAA Part 107 License ..
Understanding the FAA Part 107 License ..
 
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWEREMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
 
Elevate Developer Efficiency & build GenAI Application with Amazon Q​
Elevate Developer Efficiency & build GenAI Application with Amazon Q​Elevate Developer Efficiency & build GenAI Application with Amazon Q​
Elevate Developer Efficiency & build GenAI Application with Amazon Q​
 
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
 
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ..."I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...
 
Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...
Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...
Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...
 
presentation ICT roal in 21st century education
presentation ICT roal in 21st century educationpresentation ICT roal in 21st century education
presentation ICT roal in 21st century education
 
FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024
 
Vector Search -An Introduction in Oracle Database 23ai.pptx
Vector Search -An Introduction in Oracle Database 23ai.pptxVector Search -An Introduction in Oracle Database 23ai.pptx
Vector Search -An Introduction in Oracle Database 23ai.pptx
 
MS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectorsMS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectors
 
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, AdobeApidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
 
CNIC Information System with Pakdata Cf In Pakistan
CNIC Information System with Pakdata Cf In PakistanCNIC Information System with Pakdata Cf In Pakistan
CNIC Information System with Pakdata Cf In Pakistan
 
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdfRising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdf
 
WSO2's API Vision: Unifying Control, Empowering Developers
WSO2's API Vision: Unifying Control, Empowering DevelopersWSO2's API Vision: Unifying Control, Empowering Developers
WSO2's API Vision: Unifying Control, Empowering Developers
 
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
 

Anarchist guide to titanium ui

  • 1. Anarchist Guide to Titanium UI AN INTRODUCTION TO TITANIUM & PROTOTYPING Wednesday, June 22, 2011
  • 2. Vince Baskerville Co-Founder of TripLingo VP of Production TripLingo @whoisvince Wednesday, June 22, 2011
  • 3. TOPICS What is Titanium Requirements Tools Quick Peek Q&A Wednesday, June 22, 2011
  • 5. It’s a bad-ass framework It’s a rapid application development platform Use your base source to develop to multiple platforms & devices iOS & Android currently for mobile Wednesday, June 22, 2011
  • 6. What’s inside? 300+ APIs Full filesystem access Internal SQLite database access Built-in analytics Use JavaScript, HTML5 & CSS3 Objective-C for modules * more... Wednesday, June 22, 2011
  • 7. How does it work? Pre-compiler Optimizes your .js code Front-end compiler Generates platform-specific native code Platform compiler & packager Packaged for runing on the native simulator, device &/or distribution Wednesday, June 22, 2011
  • 8. Requirements Titanium Developer sdk http://www.appcelerator.com/products/download/ iOS sdk & Xcode http://developer.apple.com/ Java SDK & Android SDK http://developer.android.com/sdk/index.html Wednesday, June 22, 2011
  • 9. Tools Kitchen Sink (sample app) https://github.com/appcelerator/kitchensink API References http://developer.appcelerator.com/apidoc/ mobile/latest Community Q&A http://developer.appcelerator.com/ questions/newest AppU Training http://training.appcelerator.com/ Wednesday, June 22, 2011
  • 10. I <3 Coda My http://panic.com/coda/ Tower (git gui) Workflow http://www.git-tower.com/ CodaSet.com http://codaset.com/ Wednesday, June 22, 2011
  • 12. Project Structure build iphone Info.plist Resources app.js anotherView.js manifest tiapp.xml Wednesday, June 22, 2011
  • 13. Project Structure build Build directory iphone per platform Info.plist Resources app.js anotherView.js manifest tiapp.xml Wednesday, June 22, 2011
  • 14. Project Structure build iphone Info.plist Resource files; actual js code, Resources images, db files, etc app.js anotherView.js manifest tiapp.xml Wednesday, June 22, 2011
  • 15. Project Structure build iphone Info.plist Resources app.js Project files anotherView.js manifest tiapp.xml Wednesday, June 22, 2011
  • 16. Code Interface Module Titanium.UI Object Titanium.UI.Label Object Factory Titanium.UI.createLabel({}) Properties / Methods ...({ top: 0, left: 44, text: ‘Spanish’ }); Event Handling Button.addEventListener(click) Wednesday, June 22, 2011
  • 17. JSS vs Inline Each method ends with a semi-colon; Each except the last Words are ends with a comma, seperated with a dash, ie: words are not background-image: seperated, ie: backgroundImage: file name needs to match .js document and be in same dir Wednesday, June 22, 2011
  • 18. Sooo... about that title Wednesday, June 22, 2011
  • 19. Titanium does a great job at giving you access to native buttons, tabs, etc; but you don’t have to use them Wednesday, June 22, 2011
  • 20. Break the rules* Use the native controls for prototyping. Then if you can, create your own UI. Go crazy! *okay, so not really.. instead, you can bend & cheat some though. Wednesday, June 22, 2011
  • 21. TripLingo “This doesn't seem like it would function better than an app designed with apples ios guidelines in mind” “I love this app! Very intuitive and beautiful. Very cool idea. Good job” Wednesday, June 22, 2011
  • 22. Drilldown 95% custom UI Prototype developed in 2 days MVP in 2 weeks v1.0 in 4 months Possible because of Titanium (and a bad-ass team!) Wednesday, June 22, 2011
  • 25. Merci Beaucoup By: Vince Baskerville http://vincentjordan.com Wednesday, June 22, 2011