SlideShare a Scribd company logo
1 of 25
Ti & Native Development
Mads Møller
CTO – Napp
mm@napp.dk
@nappdev
https://github.com/viezel
TITANIUM & NATIVE

•
•
•
•
•
•

Introduction to native
Why native?
3rd party libraies
Example module
Hyperloop & its future
Q&A
INTRODUCTION TO NATIVE
INTRODUCTION TO NATIVE
INTRODUCTION TO NATIVE
WHY NATIVE
WHY NATIVE?
• Leverage native features
– 3rd party libraires
– Create new UI components
– Customize Ti components

• Performance
– Speed
– Animation
– Heavy operations

• Better understanding of the platform
– You gain a lot of knowledge of how Android & iOS really works!
IS IT HARD?
WHY NATIVE - IS IT HARD?
• Is it hard to learn?
– Yes and No. (not really)

• It requires
– Learn a new syntax
– Understand how the os platform works
– Learn how Titanium works

• Benefits
– Freedom to build what you want
THIRD PARTY LIBRARIES
THIRD PARTY LIBRARIES
• Soo many services
– We want to use them inside Titanium

• Often easy to implement
THIRD PARTY LIBRARIES
• Example
– Lets build a TestFlight module

• Why Testflight?
– Simple API
– Easy to get started
TESTFLIGHT – MODULE
• What is Testflight?
– Over the air distribution of apps
– Test & exception reporting

What to do:
1.
2.
3.

Grab the SDK
Read the docs and quick start guide
Lets implement it

Source code: https://github.com/viezel/NappTestFlight
TESTFLIGHT – IOS MODULE
TESTFLIGHT – ANDROID MODULE
HYPERLOOP
HYPERLOOP
• What is Hyperloop?
– Next-generation compiler that converts JavaScript source code into native
code.
– It will support iOS, Android and Win8
– Multi threaded, Super Performance

• Hyperloop == Ti.Next
– No. But it’s the foundation for Ti.Next. Hyperloop will compile the new
javascript based Titanium SDK.

• How to get it?
– https://github.com/appcelerator/hyperloop
– npm install -g hyperloop
HYPERLOOP - IS IT HARD?
• Is it hard to learn?
– Yes and No. (not really)

• It requires
– Learn a new special kind of javascript
– Understand how the os platform works
– Learn how Titanium works

• Benefits
– Freedom to build what you want
– Do it in javascript
HYPERLOOP - IOS
HYPERLOOP
HYPERLOOP – MY OWN OPINION
• Super interesting
– Great performance
– Hopefully more module developers

• Still not super easy to learn
– Since it’s a new special javascript syntax, its hard to find great learning
resources.
– What does this line of code mean? (it is javascript)
UIButton.alloc().initWithFrame(CGRectMake(110, 100, 100, 44));
HYPERLOOP – MY OWN OPINION
• Whats still missing?
– Simplier way to do modules
– Syntax should be less OS oriented
HYPERLOOP – FUTURE
• Cross platform modules
–
–
–
–

Single codebase
Build an abstraction layer
Will make Titanium even more powerful
E.g. Testflight module could be a unified module

• Windows & Mac desktop apps
– Write desktop apps using Hyperloop

• Ti.Next
•
•

Might be that abstraction we need for module development
Looking forward to see this implementation
HYPERLOOP – FUTURE
• Leverage C libraries
–
–
–
–

SVG, PDF, OpenCV, game engines etc.
Lots of libs out there
Enormous potential
Native performance
Q& A
Mads Møller
CTO – Napp
mm@napp.dk
@nappdev
https://github.com/viezel

More Related Content

What's hot

What's hot (20)

Clojure presentation
Clojure presentationClojure presentation
Clojure presentation
 
CI/CD at bol.com
CI/CD at bol.comCI/CD at bol.com
CI/CD at bol.com
 
An introduction to Titanium
An introduction to TitaniumAn introduction to Titanium
An introduction to Titanium
 
How to Supercharge your PHP Web API
How to Supercharge your PHP Web APIHow to Supercharge your PHP Web API
How to Supercharge your PHP Web API
 
Devops With Boxfuse and Shippable
Devops With Boxfuse and ShippableDevops With Boxfuse and Shippable
Devops With Boxfuse and Shippable
 
bol.com Dutch Container Day presentation
bol.com Dutch Container Day presentationbol.com Dutch Container Day presentation
bol.com Dutch Container Day presentation
 
Ansible, Idempotency, and Jenkins
Ansible, Idempotency, and JenkinsAnsible, Idempotency, and Jenkins
Ansible, Idempotency, and Jenkins
 
Sutol 2016 - Automation is developer's friend
Sutol 2016 - Automation is developer's friendSutol 2016 - Automation is developer's friend
Sutol 2016 - Automation is developer's friend
 
Crafting interactive troubleshooting guides and team documentation for your K...
Crafting interactive troubleshooting guides and team documentation for your K...Crafting interactive troubleshooting guides and team documentation for your K...
Crafting interactive troubleshooting guides and team documentation for your K...
 
[Rakuten TechConf2014] [C-2] Big Data for eBooks and eReaders
[Rakuten TechConf2014] [C-2] Big Data for eBooks and eReaders[Rakuten TechConf2014] [C-2] Big Data for eBooks and eReaders
[Rakuten TechConf2014] [C-2] Big Data for eBooks and eReaders
 
Infrastructure-as-Code with Pulumi - Better than all the others (like Ansible)?
Infrastructure-as-Code with Pulumi- Better than all the others (like Ansible)?Infrastructure-as-Code with Pulumi- Better than all the others (like Ansible)?
Infrastructure-as-Code with Pulumi - Better than all the others (like Ansible)?
 
Scratching the itch, making Scratch for the Raspberry Pie
Scratching the itch, making Scratch for the Raspberry PieScratching the itch, making Scratch for the Raspberry Pie
Scratching the itch, making Scratch for the Raspberry Pie
 
CakePHP - The Path to 2.0
CakePHP - The Path to 2.0CakePHP - The Path to 2.0
CakePHP - The Path to 2.0
 
Making CLI app in ruby
Making CLI app in rubyMaking CLI app in ruby
Making CLI app in ruby
 
Ruby performance - The low hanging fruit
Ruby performance - The low hanging fruitRuby performance - The low hanging fruit
Ruby performance - The low hanging fruit
 
FuelPHP presentation - PeoplePerHour workshop
FuelPHP presentation - PeoplePerHour workshopFuelPHP presentation - PeoplePerHour workshop
FuelPHP presentation - PeoplePerHour workshop
 
Big Data! Great! Now What? #SymfonyCon 2014
Big Data! Great! Now What? #SymfonyCon 2014Big Data! Great! Now What? #SymfonyCon 2014
Big Data! Great! Now What? #SymfonyCon 2014
 
CakePHP 2.0 - PHP Matsuri 2011
CakePHP 2.0 - PHP Matsuri 2011CakePHP 2.0 - PHP Matsuri 2011
CakePHP 2.0 - PHP Matsuri 2011
 
Shortening the feedback loop: faster and better code development
Shortening the feedback loop: faster and better code developmentShortening the feedback loop: faster and better code development
Shortening the feedback loop: faster and better code development
 
FuelPHP - a PHP HMVC Framework by silicongulf.com
FuelPHP - a PHP HMVC Framework by silicongulf.comFuelPHP - a PHP HMVC Framework by silicongulf.com
FuelPHP - a PHP HMVC Framework by silicongulf.com
 

Viewers also liked

Distinguished Group Brand Marketing
Distinguished Group Brand MarketingDistinguished Group Brand Marketing
Distinguished Group Brand Marketing
livinghistory
 
Welcome to london
Welcome to londonWelcome to london
Welcome to london
corynik
 
Ssh oficial resumida sergio
Ssh oficial resumida sergioSsh oficial resumida sergio
Ssh oficial resumida sergio
Alex S. Oliveira
 
Li 804 alphild dick
Li 804 alphild dickLi 804 alphild dick
Li 804 alphild dick
Alphild Dick
 
P.p aparells mesura temps meteorològic
P.p aparells mesura temps meteorològicP.p aparells mesura temps meteorològic
P.p aparells mesura temps meteorològic
Gemma Chavarria
 

Viewers also liked (18)

Titanium Alloy & Backbone
Titanium Alloy & BackboneTitanium Alloy & Backbone
Titanium Alloy & Backbone
 
Creating Alloy Widgets
Creating Alloy WidgetsCreating Alloy Widgets
Creating Alloy Widgets
 
Learning Appcelerator® Alloy™
Learning Appcelerator® Alloy™Learning Appcelerator® Alloy™
Learning Appcelerator® Alloy™
 
Cotto 1 world
Cotto 1 worldCotto 1 world
Cotto 1 world
 
Distinguished Group Brand Marketing
Distinguished Group Brand MarketingDistinguished Group Brand Marketing
Distinguished Group Brand Marketing
 
The present perfect_tense
The present perfect_tenseThe present perfect_tense
The present perfect_tense
 
Arum W --- Portfolio
Arum W --- PortfolioArum W --- Portfolio
Arum W --- Portfolio
 
physio livre
physio livrephysio livre
physio livre
 
Welcome to london
Welcome to londonWelcome to london
Welcome to london
 
Steve Ray Vaughan Coldn't Stand The Weather
Steve Ray Vaughan Coldn't Stand The WeatherSteve Ray Vaughan Coldn't Stand The Weather
Steve Ray Vaughan Coldn't Stand The Weather
 
Alloy Framework
Alloy FrameworkAlloy Framework
Alloy Framework
 
Ssh oficial resumida sergio
Ssh oficial resumida sergioSsh oficial resumida sergio
Ssh oficial resumida sergio
 
Báo cáo dtht
Báo cáo dthtBáo cáo dtht
Báo cáo dtht
 
Li 804 alphild dick
Li 804 alphild dickLi 804 alphild dick
Li 804 alphild dick
 
Ut
UtUt
Ut
 
Mike Stern - Masterclass
Mike Stern - MasterclassMike Stern - Masterclass
Mike Stern - Masterclass
 
P.p aparells mesura temps meteorològic
P.p aparells mesura temps meteorològicP.p aparells mesura temps meteorològic
P.p aparells mesura temps meteorològic
 
Cross Platform Apps (danish)
Cross Platform Apps (danish)Cross Platform Apps (danish)
Cross Platform Apps (danish)
 

Similar to Amsterdam Meetup Presentation - Marts 2014

Messaging, interoperability and log aggregation - a new framework
Messaging, interoperability and log aggregation - a new frameworkMessaging, interoperability and log aggregation - a new framework
Messaging, interoperability and log aggregation - a new framework
Tomas Doran
 

Similar to Amsterdam Meetup Presentation - Marts 2014 (20)

Great Tools Heavily Used In Japan, You Don't Know.
Great Tools Heavily Used In Japan, You Don't Know.Great Tools Heavily Used In Japan, You Don't Know.
Great Tools Heavily Used In Japan, You Don't Know.
 
The Ideas of Clojure - Things I learn from Clojure
The Ideas of Clojure - Things I learn from ClojureThe Ideas of Clojure - Things I learn from Clojure
The Ideas of Clojure - Things I learn from Clojure
 
Stackato v4
Stackato v4Stackato v4
Stackato v4
 
Exploring Ruby on Rails and PostgreSQL
Exploring Ruby on Rails and PostgreSQLExploring Ruby on Rails and PostgreSQL
Exploring Ruby on Rails and PostgreSQL
 
Stackato v3
Stackato v3Stackato v3
Stackato v3
 
Stackato v6
Stackato v6Stackato v6
Stackato v6
 
Stackato
StackatoStackato
Stackato
 
Stackato v5
Stackato v5Stackato v5
Stackato v5
 
Building a REST Service in minutes with Spring Boot
Building a REST Service in minutes with Spring BootBuilding a REST Service in minutes with Spring Boot
Building a REST Service in minutes with Spring Boot
 
Vulnerability, exploit to metasploit
Vulnerability, exploit to metasploitVulnerability, exploit to metasploit
Vulnerability, exploit to metasploit
 
Hadoop Demystified + Automation Smackdown! Austin JUG June 24 2014
Hadoop Demystified + Automation Smackdown!  Austin JUG June 24 2014Hadoop Demystified + Automation Smackdown!  Austin JUG June 24 2014
Hadoop Demystified + Automation Smackdown! Austin JUG June 24 2014
 
Machine Learning Platform in LINE Fukuoka
Machine Learning Platform in LINE FukuokaMachine Learning Platform in LINE Fukuoka
Machine Learning Platform in LINE Fukuoka
 
Untangling spring week11
Untangling spring week11Untangling spring week11
Untangling spring week11
 
Cloud Foundry 百日行 振り返り
Cloud Foundry 百日行 振り返りCloud Foundry 百日行 振り返り
Cloud Foundry 百日行 振り返り
 
Whats next in templating
Whats next in templatingWhats next in templating
Whats next in templating
 
Whats next in templating
Whats next in templatingWhats next in templating
Whats next in templating
 
Stackato v2
Stackato v2Stackato v2
Stackato v2
 
Messaging, interoperability and log aggregation - a new framework
Messaging, interoperability and log aggregation - a new frameworkMessaging, interoperability and log aggregation - a new framework
Messaging, interoperability and log aggregation - a new framework
 
Hands-on Performance Tuning Lab - Devoxx Poland
Hands-on Performance Tuning Lab - Devoxx PolandHands-on Performance Tuning Lab - Devoxx Poland
Hands-on Performance Tuning Lab - Devoxx Poland
 
Content Management Systems and Refactoring - Drupal, WordPress and eZ Publish
Content Management Systems and Refactoring - Drupal, WordPress and eZ PublishContent Management Systems and Refactoring - Drupal, WordPress and eZ Publish
Content Management Systems and Refactoring - Drupal, WordPress and eZ Publish
 

Recently uploaded

Easier, Faster, and More Powerful – Alles Neu macht der Mai -Wir durchleuchte...
Easier, Faster, and More Powerful – Alles Neu macht der Mai -Wir durchleuchte...Easier, Faster, and More Powerful – Alles Neu macht der Mai -Wir durchleuchte...
Easier, Faster, and More Powerful – Alles Neu macht der Mai -Wir durchleuchte...
panagenda
 

Recently uploaded (20)

Portal Kombat : extension du réseau de propagande russe
Portal Kombat : extension du réseau de propagande russePortal Kombat : extension du réseau de propagande russe
Portal Kombat : extension du réseau de propagande russe
 
WebAssembly is Key to Better LLM Performance
WebAssembly is Key to Better LLM PerformanceWebAssembly is Key to Better LLM Performance
WebAssembly is Key to Better LLM Performance
 
PLAI - Acceleration Program for Generative A.I. Startups
PLAI - Acceleration Program for Generative A.I. StartupsPLAI - Acceleration Program for Generative A.I. Startups
PLAI - Acceleration Program for Generative A.I. Startups
 
Secure Zero Touch enabled Edge compute with Dell NativeEdge via FDO _ Brad at...
Secure Zero Touch enabled Edge compute with Dell NativeEdge via FDO _ Brad at...Secure Zero Touch enabled Edge compute with Dell NativeEdge via FDO _ Brad at...
Secure Zero Touch enabled Edge compute with Dell NativeEdge via FDO _ Brad at...
 
Unpacking Value Delivery - Agile Oxford Meetup - May 2024.pptx
Unpacking Value Delivery - Agile Oxford Meetup - May 2024.pptxUnpacking Value Delivery - Agile Oxford Meetup - May 2024.pptx
Unpacking Value Delivery - Agile Oxford Meetup - May 2024.pptx
 
Simplified FDO Manufacturing Flow with TPMs _ Liam at Infineon.pdf
Simplified FDO Manufacturing Flow with TPMs _ Liam at Infineon.pdfSimplified FDO Manufacturing Flow with TPMs _ Liam at Infineon.pdf
Simplified FDO Manufacturing Flow with TPMs _ Liam at Infineon.pdf
 
Easier, Faster, and More Powerful – Alles Neu macht der Mai -Wir durchleuchte...
Easier, Faster, and More Powerful – Alles Neu macht der Mai -Wir durchleuchte...Easier, Faster, and More Powerful – Alles Neu macht der Mai -Wir durchleuchte...
Easier, Faster, and More Powerful – Alles Neu macht der Mai -Wir durchleuchte...
 
Microsoft CSP Briefing Pre-Engagement - Questionnaire
Microsoft CSP Briefing Pre-Engagement - QuestionnaireMicrosoft CSP Briefing Pre-Engagement - Questionnaire
Microsoft CSP Briefing Pre-Engagement - Questionnaire
 
Optimizing NoSQL Performance Through Observability
Optimizing NoSQL Performance Through ObservabilityOptimizing NoSQL Performance Through Observability
Optimizing NoSQL Performance Through Observability
 
Measures in SQL (a talk at SF Distributed Systems meetup, 2024-05-22)
Measures in SQL (a talk at SF Distributed Systems meetup, 2024-05-22)Measures in SQL (a talk at SF Distributed Systems meetup, 2024-05-22)
Measures in SQL (a talk at SF Distributed Systems meetup, 2024-05-22)
 
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
 
The Value of Certifying Products for FDO _ Paul at FIDO Alliance.pdf
The Value of Certifying Products for FDO _ Paul at FIDO Alliance.pdfThe Value of Certifying Products for FDO _ Paul at FIDO Alliance.pdf
The Value of Certifying Products for FDO _ Paul at FIDO Alliance.pdf
 
Linux Foundation Edge _ Overview of FDO Software Components _ Randy at Intel.pdf
Linux Foundation Edge _ Overview of FDO Software Components _ Randy at Intel.pdfLinux Foundation Edge _ Overview of FDO Software Components _ Randy at Intel.pdf
Linux Foundation Edge _ Overview of FDO Software Components _ Randy at Intel.pdf
 
Intro in Product Management - Коротко про професію продакт менеджера
Intro in Product Management - Коротко про професію продакт менеджераIntro in Product Management - Коротко про професію продакт менеджера
Intro in Product Management - Коротко про професію продакт менеджера
 
TEST BANK For, Information Technology Project Management 9th Edition Kathy Sc...
TEST BANK For, Information Technology Project Management 9th Edition Kathy Sc...TEST BANK For, Information Technology Project Management 9th Edition Kathy Sc...
TEST BANK For, Information Technology Project Management 9th Edition Kathy Sc...
 
Where to Learn More About FDO _ Richard at FIDO Alliance.pdf
Where to Learn More About FDO _ Richard at FIDO Alliance.pdfWhere to Learn More About FDO _ Richard at FIDO Alliance.pdf
Where to Learn More About FDO _ Richard at FIDO Alliance.pdf
 
Choosing the Right FDO Deployment Model for Your Application _ Geoffrey at In...
Choosing the Right FDO Deployment Model for Your Application _ Geoffrey at In...Choosing the Right FDO Deployment Model for Your Application _ Geoffrey at In...
Choosing the Right FDO Deployment Model for Your Application _ Geoffrey at In...
 
Syngulon - Selection technology May 2024.pdf
Syngulon - Selection technology May 2024.pdfSyngulon - Selection technology May 2024.pdf
Syngulon - Selection technology May 2024.pdf
 
Designing for Hardware Accessibility at Comcast
Designing for Hardware Accessibility at ComcastDesigning for Hardware Accessibility at Comcast
Designing for Hardware Accessibility at Comcast
 
How we scaled to 80K users by doing nothing!.pdf
How we scaled to 80K users by doing nothing!.pdfHow we scaled to 80K users by doing nothing!.pdf
How we scaled to 80K users by doing nothing!.pdf
 

Amsterdam Meetup Presentation - Marts 2014

  • 1. Ti & Native Development Mads Møller CTO – Napp mm@napp.dk @nappdev https://github.com/viezel
  • 2. TITANIUM & NATIVE • • • • • • Introduction to native Why native? 3rd party libraies Example module Hyperloop & its future Q&A
  • 7. WHY NATIVE? • Leverage native features – 3rd party libraires – Create new UI components – Customize Ti components • Performance – Speed – Animation – Heavy operations • Better understanding of the platform – You gain a lot of knowledge of how Android & iOS really works!
  • 9. WHY NATIVE - IS IT HARD? • Is it hard to learn? – Yes and No. (not really) • It requires – Learn a new syntax – Understand how the os platform works – Learn how Titanium works • Benefits – Freedom to build what you want
  • 11. THIRD PARTY LIBRARIES • Soo many services – We want to use them inside Titanium • Often easy to implement
  • 12. THIRD PARTY LIBRARIES • Example – Lets build a TestFlight module • Why Testflight? – Simple API – Easy to get started
  • 13. TESTFLIGHT – MODULE • What is Testflight? – Over the air distribution of apps – Test & exception reporting What to do: 1. 2. 3. Grab the SDK Read the docs and quick start guide Lets implement it Source code: https://github.com/viezel/NappTestFlight
  • 17. HYPERLOOP • What is Hyperloop? – Next-generation compiler that converts JavaScript source code into native code. – It will support iOS, Android and Win8 – Multi threaded, Super Performance • Hyperloop == Ti.Next – No. But it’s the foundation for Ti.Next. Hyperloop will compile the new javascript based Titanium SDK. • How to get it? – https://github.com/appcelerator/hyperloop – npm install -g hyperloop
  • 18. HYPERLOOP - IS IT HARD? • Is it hard to learn? – Yes and No. (not really) • It requires – Learn a new special kind of javascript – Understand how the os platform works – Learn how Titanium works • Benefits – Freedom to build what you want – Do it in javascript
  • 21. HYPERLOOP – MY OWN OPINION • Super interesting – Great performance – Hopefully more module developers • Still not super easy to learn – Since it’s a new special javascript syntax, its hard to find great learning resources. – What does this line of code mean? (it is javascript) UIButton.alloc().initWithFrame(CGRectMake(110, 100, 100, 44));
  • 22. HYPERLOOP – MY OWN OPINION • Whats still missing? – Simplier way to do modules – Syntax should be less OS oriented
  • 23. HYPERLOOP – FUTURE • Cross platform modules – – – – Single codebase Build an abstraction layer Will make Titanium even more powerful E.g. Testflight module could be a unified module • Windows & Mac desktop apps – Write desktop apps using Hyperloop • Ti.Next • • Might be that abstraction we need for module development Looking forward to see this implementation
  • 24. HYPERLOOP – FUTURE • Leverage C libraries – – – – SVG, PDF, OpenCV, game engines etc. Lots of libs out there Enormous potential Native performance
  • 25. Q& A Mads Møller CTO – Napp mm@napp.dk @nappdev https://github.com/viezel