SlideShare a Scribd company logo
1 of 44
Download to read offline
Totally Build Apps for Free
*not really
Tony Hillerson • Tack Mobile
Mobile+Web DevConf
San Francisco January 2015
Presentation tackmobile.com
slideshare.net/thillerson/totally-
build-apps-for-free-not-really
Presentation tackmobile.com
About Me
• Engineering Director, Tack Mobile
• Denver, CO
• Android (since Beta), then iOS (since ~ iOS 2)
• Various Server-side technologies
• Pragmatic Programmers Author
Presentation tackmobile.com
Goals for Today
• Very Modest Goal:
• Understand what cross-platform solutions get
you
• … and what they don’t
• Offer my experience on which types of cross-
platform solutions make sense
Presentation tackmobile.com
Like It Or Not…
• Cross platform solutions are necessary
• I don’t like it…
• But it’s the world we live in
• Be prepared
Presentation tackmobile.com
FAQ…
Presentation tackmobile.com
If we use solution ‘X’, then we can
build an app for platform A

and get platform B

FOR FREE
Presentation tackmobile.com
FOR FREE,
RIGHT?
Presentation tackmobile.com
Solutions
• Cordova/Phonegap Based
• Titanium
• Xamarin
• Fuse Tools *NEW!
• React Native *SUPER BRAND NEW!
Presentation tackmobile.com
http://www.gartner.com/technology/reprints.do?id=1-20SX3ZK&ct=140903&st=sb
Presentation tackmobile.com
wut
Presentation tackmobile.com
Presentation tackmobile.com
Presentation tackmobile.com
People Want Answers
Presentation tackmobile.com
Presentation tackmobile.com
Presentation tackmobile.com
First, Let’s Talk About Native
• I strongly believe 

Native should be your default preference
Presentation tackmobile.com
Doesn’t HTML Solve Everything?
• Your Mobile Web is important
• A Good Mobile Web Experience is Table Stakes
• Web views replacing native - It’s just not the
world we live in yet.
Presentation tackmobile.com
Mobile UX Considerations
• Android users want Android conventions
• iOS users want iOS conventions
• Unless you have a good reason not to
• … and that reason shouldn’t be that you can’t
do it with your toolchain
Presentation tackmobile.com
What About These
Solutions, Then?
Presentation tackmobile.com
Mobile Development Strategies
• Mobile Web - i.e. no app
• Single Platform - i.e. iOS only
• Multi-platform
• Cross-Platform
Presentation tackmobile.com
What Are You Trying to Accomplish?
• Make a one-size-fits-all app?
• Shield developers from learning a new
language or platform?
• Save money on development effort?
• Share code, but still build a great UX?
Presentation tackmobile.com
Cross Platform Strategies
• Web-view solutions
• Vendor Technology/APIs
• Native Compilation
Presentation tackmobile.com
Cross Platform Web
• PhoneGap/Cordova Based
• Strategy: Hide cross platform differences,
Write with web technologies

Run in web view
• Hard Questions:
• Does it look like a web app?
• Does it feel like a web app?
Presentation tackmobile.com
Cross Platform Interpreted
• Example: Titanium
• Strategy: Hide cross platform differences
behind a common, vendor API.

Write everything once with web technologies,
interpreted on native platforms
• Hard questions:
• How hard is it to fit design to the platform?
• Do I get native performance and experience?
Presentation tackmobile.com
Cross Platform Native
• Example: Xamarin, React Native, RubyMotion
• Strategy: Unified language and platform to
native APIs.

Runs in native runtime.

Write in one language, calling native APIs.
• Hard Questions:
• Do you trust the developer?
• Can they keep up?
Presentation tackmobile.com
A Syllogism
• Native applications are preferable to web
• and Native execution is preferable to interpreted
• and platform native APIs are preferable to vendor
APIs
• Cross platform native apps are native, executed,
and access native APIs
• Therefore: Cross native platforms are preferable
• QED
Presentation tackmobile.com
What’s For Free, Then?
Presentation tackmobile.com
React Native Dev Quote
• “We’re not chasing the write once, run
anywhere pipe dream”
• “Learn Once, Write Anywhere”
28:50 - http://youtu.be/KVZ-P-ZI6W4?t=28m50s
Presentation tackmobile.com
First, What’s Not Free?
• Platform specific design
• Platform specific expectations
• Technical discovery
• Licensing fees
Presentation tackmobile.com
The Free Part
• Shared code where it makes sense
• Common understanding across team(s)
Presentation tackmobile.com
Cross Platform Native Strategies
• Share http access
• Share local data layer
• Build to MVVM, share model and view model
Presentation tackmobile.com
Cherry-picking Shared Code
API Access Layer
+
Deserialization
iOS UIAndroid UI
Presentation tackmobile.com
Push the Shared Code as Far As You Can
API Access Layer
+
Deserialization
iOS UIAndroid UI
Common Data
Model Layer
Common View
Model Layer
Presentation tackmobile.com
Add Caching and Local Data
API Access Layer
+
Deserialization
iOS UIAndroid UI
Common Data
Model Layer
Common View
Model Layer
Local
Datastore
Presentation tackmobile.com
Abstract Platform Services
API Access Layer
+
Deserialization
iOS UIAndroid UI
Common Data
Model Layer
Common View
Model Layer
Local
Datastore
Location
Manager
CoreLocation
Injected Injected
Abstract Location
Manager
Presentation tackmobile.com
Xamarin as an Example
Presentation tackmobile.com
Xamarin
• Write in C# using .Net libraries
• Access Platform APIs directly
• Core project (shared code)
• Android project
• iOS project
Presentation tackmobile.com
An API Client Interface
public interface CheckvistAPI {

[Get("/auth/login.json")]

Task<string> LogIn(string username,
string remote_key);



[Get("/checklists.json")]

Task<Checklist[]> GetChecklists(string token);

}



Presentation tackmobile.com
iOS Uses It
public override void ViewDidLoad () {

base.ViewDidLoad ();



var client = new CheckvistClient();

var loginTask = new Task(() => {

client.LogIn("username", "AP1k3Y");

var checklists = client.GetChecklists();

foreach (var checklist in checklists) {

Debug.WriteLine(checklist.Name);

}

} );



loginTask.Start();

}



Presentation tackmobile.com
Android Uses It
protected override void OnCreate(Bundle bundle) {

base.OnCreate(bundle);

SetContentView(Resource.Layout.Main);


var client = new CheckvistClient();

var loginTask = new Task(() => {

client.LogIn("username", "AP1k3Y");

var checklists = client.GetChecklists();

foreach (var checklist in checklists) {

Console.WriteLine(checklist.Name);

}

} );



loginTask.Start();



}
Presentation tackmobile.com
Recap
Presentation tackmobile.com
Recap
• Web technologies are not up to native
standards yet
• Cross platform solutions deserve your
attention
• Don’t give up access to the native APIs
• Build good apps
Thank You!
Questions?
tony@tackmobile.com
jobs@tackmobile.com

More Related Content

What's hot

Design for Non-Designers
Design for Non-DesignersDesign for Non-Designers
Design for Non-DesignersAll Things Open
 
A Holistic Approach to HTML5 Game Design & Development
A Holistic Approach to HTML5 Game Design & DevelopmentA Holistic Approach to HTML5 Game Design & Development
A Holistic Approach to HTML5 Game Design & DevelopmentKarl Bunyan
 
Joomla 4 is on the Horizon - JAB 2018
Joomla 4 is on the Horizon - JAB 2018Joomla 4 is on the Horizon - JAB 2018
Joomla 4 is on the Horizon - JAB 2018George Wilson
 
Effectively Using UI Automation
Effectively Using UI AutomationEffectively Using UI Automation
Effectively Using UI AutomationAlexander Repty
 
Shift Remote: JS - PoseDance: Build a TikTok Trainer - Jennifer Looper (Micro...
Shift Remote: JS - PoseDance: Build a TikTok Trainer - Jennifer Looper (Micro...Shift Remote: JS - PoseDance: Build a TikTok Trainer - Jennifer Looper (Micro...
Shift Remote: JS - PoseDance: Build a TikTok Trainer - Jennifer Looper (Micro...Shift Conference
 
Introduction to PhoneGap
Introduction to PhoneGapIntroduction to PhoneGap
Introduction to PhoneGapRaymond Camden
 
Evaluation question 6
Evaluation question 6Evaluation question 6
Evaluation question 6CTVL
 
We’re Going Mobile! Great! Wait… What Does That Mean?
We’re Going Mobile! Great! Wait… What Does That Mean?We’re Going Mobile! Great! Wait… What Does That Mean?
We’re Going Mobile! Great! Wait… What Does That Mean?STC-Philadelphia Metro Chapter
 
Startup Architecture: How to Lean on Others to Get Stuff DoneUntitled
Startup Architecture: How to Lean on Others to Get Stuff DoneUntitledStartup Architecture: How to Lean on Others to Get Stuff DoneUntitled
Startup Architecture: How to Lean on Others to Get Stuff DoneUntitledC4Media
 
Evaluation question 4
Evaluation question 4Evaluation question 4
Evaluation question 4lydhayward
 
Building Apps for Apple TV
Building Apps for Apple TVBuilding Apps for Apple TV
Building Apps for Apple TVdavidolesch
 
Building A Platform From Open Source At Yahoo
Building A Platform From Open Source At YahooBuilding A Platform From Open Source At Yahoo
Building A Platform From Open Source At Yahoonarkoza
 
Android pro tips trilogy
Android  pro tips trilogyAndroid  pro tips trilogy
Android pro tips trilogyVitali Pekelis
 
Tech Thursdays: Building Products
Tech Thursdays: Building ProductsTech Thursdays: Building Products
Tech Thursdays: Building ProductsHayden Bleasel
 

What's hot (20)

Design for Non-Designers
Design for Non-DesignersDesign for Non-Designers
Design for Non-Designers
 
A Holistic Approach to HTML5 Game Design & Development
A Holistic Approach to HTML5 Game Design & DevelopmentA Holistic Approach to HTML5 Game Design & Development
A Holistic Approach to HTML5 Game Design & Development
 
Joomla 4 is on the Horizon - JAB 2018
Joomla 4 is on the Horizon - JAB 2018Joomla 4 is on the Horizon - JAB 2018
Joomla 4 is on the Horizon - JAB 2018
 
Emerald
EmeraldEmerald
Emerald
 
Effectively Using UI Automation
Effectively Using UI AutomationEffectively Using UI Automation
Effectively Using UI Automation
 
Shift Remote: JS - PoseDance: Build a TikTok Trainer - Jennifer Looper (Micro...
Shift Remote: JS - PoseDance: Build a TikTok Trainer - Jennifer Looper (Micro...Shift Remote: JS - PoseDance: Build a TikTok Trainer - Jennifer Looper (Micro...
Shift Remote: JS - PoseDance: Build a TikTok Trainer - Jennifer Looper (Micro...
 
Last Call Media Drupal 8 Case Study
Last Call Media Drupal 8 Case StudyLast Call Media Drupal 8 Case Study
Last Call Media Drupal 8 Case Study
 
Ohoh
OhohOhoh
Ohoh
 
Nuget
NugetNuget
Nuget
 
Introduction to PhoneGap
Introduction to PhoneGapIntroduction to PhoneGap
Introduction to PhoneGap
 
28 ways To Create Awesome Blog Content with an iPhone
28 ways To Create Awesome Blog Content with an iPhone28 ways To Create Awesome Blog Content with an iPhone
28 ways To Create Awesome Blog Content with an iPhone
 
Evaluation question 6
Evaluation question 6Evaluation question 6
Evaluation question 6
 
We’re Going Mobile! Great! Wait… What Does That Mean?
We’re Going Mobile! Great! Wait… What Does That Mean?We’re Going Mobile! Great! Wait… What Does That Mean?
We’re Going Mobile! Great! Wait… What Does That Mean?
 
Startup Architecture: How to Lean on Others to Get Stuff DoneUntitled
Startup Architecture: How to Lean on Others to Get Stuff DoneUntitledStartup Architecture: How to Lean on Others to Get Stuff DoneUntitled
Startup Architecture: How to Lean on Others to Get Stuff DoneUntitled
 
Evaluation question 4
Evaluation question 4Evaluation question 4
Evaluation question 4
 
Building Apps for Apple TV
Building Apps for Apple TVBuilding Apps for Apple TV
Building Apps for Apple TV
 
Building A Platform From Open Source At Yahoo
Building A Platform From Open Source At YahooBuilding A Platform From Open Source At Yahoo
Building A Platform From Open Source At Yahoo
 
UPNext
UPNextUPNext
UPNext
 
Android pro tips trilogy
Android  pro tips trilogyAndroid  pro tips trilogy
Android pro tips trilogy
 
Tech Thursdays: Building Products
Tech Thursdays: Building ProductsTech Thursdays: Building Products
Tech Thursdays: Building Products
 

Viewers also liked

라이프로깅, 유행인가 본능인가?
라이프로깅, 유행인가 본능인가?라이프로깅, 유행인가 본능인가?
라이프로깅, 유행인가 본능인가?Pengdo .
 
The Brand Train - Branding on the move
The Brand Train - Branding on the moveThe Brand Train - Branding on the move
The Brand Train - Branding on the moveUmesh R. Sonawane
 
ICEIM Conference, Durban, SA 2014 - Sudeep Krishnan, IIM Ahmedabad
ICEIM Conference, Durban, SA 2014 - Sudeep Krishnan, IIM AhmedabadICEIM Conference, Durban, SA 2014 - Sudeep Krishnan, IIM Ahmedabad
ICEIM Conference, Durban, SA 2014 - Sudeep Krishnan, IIM AhmedabadSudeep Krishnan
 
currency trading sample
currency trading samplecurrency trading sample
currency trading samplesandy sandy
 
Placing Trust in Employee Engagement by Acas Council
Placing Trust in Employee Engagement by Acas CouncilPlacing Trust in Employee Engagement by Acas Council
Placing Trust in Employee Engagement by Acas CouncilElizabeth Lupfer
 
The Journey Toward Cultural Inclusion
The Journey Toward Cultural InclusionThe Journey Toward Cultural Inclusion
The Journey Toward Cultural InclusionSteve Lowisz
 
MUC295 LEC1b Job Search 101
MUC295 LEC1b Job Search 101MUC295 LEC1b Job Search 101
MUC295 LEC1b Job Search 101MUC295
 
Auto Presentation1
Auto Presentation1Auto Presentation1
Auto Presentation1guest0f5fd0
 
Mae Hong Son, Thailand
Mae Hong Son, ThailandMae Hong Son, Thailand
Mae Hong Son, Thailandsandy sandy
 
currency trading sample
currency trading samplecurrency trading sample
currency trading samplesandy sandy
 
Candidates in Drivers Seat Recruiting Trends Oct 28 Final
Candidates in Drivers Seat Recruiting Trends Oct 28 FinalCandidates in Drivers Seat Recruiting Trends Oct 28 Final
Candidates in Drivers Seat Recruiting Trends Oct 28 FinalSteve Lowisz
 
MUC295 LEC3a Branding 101
MUC295 LEC3a Branding 101MUC295 LEC3a Branding 101
MUC295 LEC3a Branding 101MUC295
 

Viewers also liked (20)

라이프로깅, 유행인가 본능인가?
라이프로깅, 유행인가 본능인가?라이프로깅, 유행인가 본능인가?
라이프로깅, 유행인가 본능인가?
 
The Brand Train - Branding on the move
The Brand Train - Branding on the moveThe Brand Train - Branding on the move
The Brand Train - Branding on the move
 
ICEIM Conference, Durban, SA 2014 - Sudeep Krishnan, IIM Ahmedabad
ICEIM Conference, Durban, SA 2014 - Sudeep Krishnan, IIM AhmedabadICEIM Conference, Durban, SA 2014 - Sudeep Krishnan, IIM Ahmedabad
ICEIM Conference, Durban, SA 2014 - Sudeep Krishnan, IIM Ahmedabad
 
currency trading sample
currency trading samplecurrency trading sample
currency trading sample
 
Prosessrapport
ProsessrapportProsessrapport
Prosessrapport
 
Placing Trust in Employee Engagement by Acas Council
Placing Trust in Employee Engagement by Acas CouncilPlacing Trust in Employee Engagement by Acas Council
Placing Trust in Employee Engagement by Acas Council
 
The Journey Toward Cultural Inclusion
The Journey Toward Cultural InclusionThe Journey Toward Cultural Inclusion
The Journey Toward Cultural Inclusion
 
01
0101
01
 
MUC295 LEC1b Job Search 101
MUC295 LEC1b Job Search 101MUC295 LEC1b Job Search 101
MUC295 LEC1b Job Search 101
 
Auto Presentation1
Auto Presentation1Auto Presentation1
Auto Presentation1
 
Mae Hong Son, Thailand
Mae Hong Son, ThailandMae Hong Son, Thailand
Mae Hong Son, Thailand
 
currency trading sample
currency trading samplecurrency trading sample
currency trading sample
 
Diapo
DiapoDiapo
Diapo
 
Candidates in Drivers Seat Recruiting Trends Oct 28 Final
Candidates in Drivers Seat Recruiting Trends Oct 28 FinalCandidates in Drivers Seat Recruiting Trends Oct 28 Final
Candidates in Drivers Seat Recruiting Trends Oct 28 Final
 
Communicationppt
CommunicationpptCommunicationppt
Communicationppt
 
MUC295 LEC3a Branding 101
MUC295 LEC3a Branding 101MUC295 LEC3a Branding 101
MUC295 LEC3a Branding 101
 
Strategy of Giving
Strategy of GivingStrategy of Giving
Strategy of Giving
 
Flex And Rails
Flex And RailsFlex And Rails
Flex And Rails
 
Module01
Module01Module01
Module01
 
Module03
Module03Module03
Module03
 

Similar to Totally Build Apps for Free! (not really)

WIPJam Cross Platform Tools - Dec 2013
WIPJam   Cross Platform Tools - Dec 2013WIPJam   Cross Platform Tools - Dec 2013
WIPJam Cross Platform Tools - Dec 2013Mark Arteaga
 
Titanium - The Good Parts (TiConf Bangalore)
Titanium - The Good Parts (TiConf Bangalore)Titanium - The Good Parts (TiConf Bangalore)
Titanium - The Good Parts (TiConf Bangalore)Gaurav Kheterpal
 
Mobile App Landscape for the Non-Technical
Mobile App Landscape for the Non-TechnicalMobile App Landscape for the Non-Technical
Mobile App Landscape for the Non-TechnicalJames Quick
 
Build Your First iPhone or Android App with Telerik AppBuilder
Build Your First iPhone or Android App with Telerik AppBuilderBuild Your First iPhone or Android App with Telerik AppBuilder
Build Your First iPhone or Android App with Telerik AppBuilderJeffrey T. Fritz
 
HTML5 or Android for Mobile Development?
HTML5 or Android for Mobile Development?HTML5 or Android for Mobile Development?
HTML5 or Android for Mobile Development?Reto Meier
 
Android development made easy with appcelerator titanium
Android development made easy with appcelerator titaniumAndroid development made easy with appcelerator titanium
Android development made easy with appcelerator titaniumGaurav Kheterpal
 
MyAppConverter DroidconUK 2014
MyAppConverter DroidconUK 2014MyAppConverter DroidconUK 2014
MyAppConverter DroidconUK 2014myappconverter
 
Top 4 Cross Platform tools for Mobile App Development
Top 4 Cross Platform tools for Mobile App DevelopmentTop 4 Cross Platform tools for Mobile App Development
Top 4 Cross Platform tools for Mobile App Developmenttechugo
 
Multi-platform Mobile apps with Phonegap
Multi-platform Mobile apps with PhonegapMulti-platform Mobile apps with Phonegap
Multi-platform Mobile apps with PhonegapGautam Chaudhary
 
Cross platform development with c# and xamarin
Cross platform development with c# and xamarinCross platform development with c# and xamarin
Cross platform development with c# and xamarinLuca Zulian
 
C# everywhere: Xamarin and cross platform development
C# everywhere: Xamarin and cross platform developmentC# everywhere: Xamarin and cross platform development
C# everywhere: Xamarin and cross platform developmentGill Cleeren
 
Cross platform mobile approaches
Cross platform mobile approachesCross platform mobile approaches
Cross platform mobile approachesPhuong Hoang Vu
 
Cross platform mobile development - you tube videos
Cross platform mobile development - you tube videosCross platform mobile development - you tube videos
Cross platform mobile development - you tube videosColin Eberhardt
 
Cross platform development
Cross platform developmentCross platform development
Cross platform developmentdftaiwo
 
Cross platform mobile application development
Cross platform mobile application developmentCross platform mobile application development
Cross platform mobile application developmentwebprogr.com
 
Introduction to building multi platform mobile applications with javascript u...
Introduction to building multi platform mobile applications with javascript u...Introduction to building multi platform mobile applications with javascript u...
Introduction to building multi platform mobile applications with javascript u...Shoukry Kattan
 
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 & PhoneGapNick Landry
 

Similar to Totally Build Apps for Free! (not really) (20)

WIPJam Cross Platform Tools - Dec 2013
WIPJam   Cross Platform Tools - Dec 2013WIPJam   Cross Platform Tools - Dec 2013
WIPJam Cross Platform Tools - Dec 2013
 
Titanium - The Good Parts (TiConf Bangalore)
Titanium - The Good Parts (TiConf Bangalore)Titanium - The Good Parts (TiConf Bangalore)
Titanium - The Good Parts (TiConf Bangalore)
 
Mobile App Landscape for the Non-Technical
Mobile App Landscape for the Non-TechnicalMobile App Landscape for the Non-Technical
Mobile App Landscape for the Non-Technical
 
Build Your First iPhone or Android App with Telerik AppBuilder
Build Your First iPhone or Android App with Telerik AppBuilderBuild Your First iPhone or Android App with Telerik AppBuilder
Build Your First iPhone or Android App with Telerik AppBuilder
 
HTML5 or Android for Mobile Development?
HTML5 or Android for Mobile Development?HTML5 or Android for Mobile Development?
HTML5 or Android for Mobile Development?
 
Android development made easy with appcelerator titanium
Android development made easy with appcelerator titaniumAndroid development made easy with appcelerator titanium
Android development made easy with appcelerator titanium
 
MyAppConverter DroidconUK 2014
MyAppConverter DroidconUK 2014MyAppConverter DroidconUK 2014
MyAppConverter DroidconUK 2014
 
Top 4 Cross Platform tools for Mobile App Development
Top 4 Cross Platform tools for Mobile App DevelopmentTop 4 Cross Platform tools for Mobile App Development
Top 4 Cross Platform tools for Mobile App Development
 
Multi-platform Mobile apps with Phonegap
Multi-platform Mobile apps with PhonegapMulti-platform Mobile apps with Phonegap
Multi-platform Mobile apps with Phonegap
 
Phone gap
Phone gapPhone gap
Phone gap
 
Cross platform development with c# and xamarin
Cross platform development with c# and xamarinCross platform development with c# and xamarin
Cross platform development with c# and xamarin
 
C# everywhere: Xamarin and cross platform development
C# everywhere: Xamarin and cross platform developmentC# everywhere: Xamarin and cross platform development
C# everywhere: Xamarin and cross platform development
 
Cross platform mobile approaches
Cross platform mobile approachesCross platform mobile approaches
Cross platform mobile approaches
 
Cross platform mobile development - you tube videos
Cross platform mobile development - you tube videosCross platform mobile development - you tube videos
Cross platform mobile development - you tube videos
 
Cross platform development
Cross platform developmentCross platform development
Cross platform development
 
Cross platform mobile application development
Cross platform mobile application developmentCross platform mobile application development
Cross platform mobile application development
 
Introduction to building multi platform mobile applications with javascript u...
Introduction to building multi platform mobile applications with javascript u...Introduction to building multi platform mobile applications with javascript u...
Introduction to building multi platform mobile applications with javascript u...
 
Platforms FTW!
Platforms FTW!Platforms FTW!
Platforms FTW!
 
Platforms FTW!
Platforms FTW!Platforms FTW!
Platforms FTW!
 
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
 

More from Tony Hillerson

Dynamic Sound for Android
Dynamic Sound for AndroidDynamic Sound for Android
Dynamic Sound for AndroidTony Hillerson
 
Git for Android Developers
Git for Android DevelopersGit for Android Developers
Git for Android DevelopersTony Hillerson
 
Designing an Android App from Idea to Market
Designing an Android App from Idea to MarketDesigning an Android App from Idea to Market
Designing an Android App from Idea to MarketTony Hillerson
 
SCM for Android Developers Using Git
SCM for Android Developers Using GitSCM for Android Developers Using Git
SCM for Android Developers Using GitTony Hillerson
 
First Android Experience
First Android ExperienceFirst Android Experience
First Android ExperienceTony Hillerson
 
iPhone Persistence For Mere Mortals
iPhone Persistence For Mere MortalsiPhone Persistence For Mere Mortals
iPhone Persistence For Mere MortalsTony Hillerson
 
Flex Framework Smackdown
Flex Framework SmackdownFlex Framework Smackdown
Flex Framework SmackdownTony Hillerson
 

More from Tony Hillerson (10)

Working with Git
Working with GitWorking with Git
Working with Git
 
Dynamic Sound for Android
Dynamic Sound for AndroidDynamic Sound for Android
Dynamic Sound for Android
 
Git for Android Developers
Git for Android DevelopersGit for Android Developers
Git for Android Developers
 
Designing an Android App from Idea to Market
Designing an Android App from Idea to MarketDesigning an Android App from Idea to Market
Designing an Android App from Idea to Market
 
Rails on HBase
Rails on HBaseRails on HBase
Rails on HBase
 
SCM for Android Developers Using Git
SCM for Android Developers Using GitSCM for Android Developers Using Git
SCM for Android Developers Using Git
 
Flex With Rubyamf
Flex With RubyamfFlex With Rubyamf
Flex With Rubyamf
 
First Android Experience
First Android ExperienceFirst Android Experience
First Android Experience
 
iPhone Persistence For Mere Mortals
iPhone Persistence For Mere MortalsiPhone Persistence For Mere Mortals
iPhone Persistence For Mere Mortals
 
Flex Framework Smackdown
Flex Framework SmackdownFlex Framework Smackdown
Flex Framework Smackdown
 

Recently uploaded

SpotFlow: Tracking Method Calls and States at Runtime
SpotFlow: Tracking Method Calls and States at RuntimeSpotFlow: Tracking Method Calls and States at Runtime
SpotFlow: Tracking Method Calls and States at Runtimeandrehoraa
 
Cloud Management Software Platforms: OpenStack
Cloud Management Software Platforms: OpenStackCloud Management Software Platforms: OpenStack
Cloud Management Software Platforms: OpenStackVICTOR MAESTRE RAMIREZ
 
Maximizing Efficiency and Profitability with OnePlan’s Professional Service A...
Maximizing Efficiency and Profitability with OnePlan’s Professional Service A...Maximizing Efficiency and Profitability with OnePlan’s Professional Service A...
Maximizing Efficiency and Profitability with OnePlan’s Professional Service A...OnePlan Solutions
 
What is Fashion PLM and Why Do You Need It
What is Fashion PLM and Why Do You Need ItWhat is Fashion PLM and Why Do You Need It
What is Fashion PLM and Why Do You Need ItWave PLM
 
Cloud Data Center Network Construction - IEEE
Cloud Data Center Network Construction - IEEECloud Data Center Network Construction - IEEE
Cloud Data Center Network Construction - IEEEVICTOR MAESTRE RAMIREZ
 
What are the key points to focus on before starting to learn ETL Development....
What are the key points to focus on before starting to learn ETL Development....What are the key points to focus on before starting to learn ETL Development....
What are the key points to focus on before starting to learn ETL Development....kzayra69
 
GOING AOT WITH GRAALVM – DEVOXX GREECE.pdf
GOING AOT WITH GRAALVM – DEVOXX GREECE.pdfGOING AOT WITH GRAALVM – DEVOXX GREECE.pdf
GOING AOT WITH GRAALVM – DEVOXX GREECE.pdfAlina Yurenko
 
CRM Contender Series: HubSpot vs. Salesforce
CRM Contender Series: HubSpot vs. SalesforceCRM Contender Series: HubSpot vs. Salesforce
CRM Contender Series: HubSpot vs. SalesforceBrainSell Technologies
 
BATTLEFIELD ORM: TIPS, TACTICS AND STRATEGIES FOR CONQUERING YOUR DATABASE
BATTLEFIELD ORM: TIPS, TACTICS AND STRATEGIES FOR CONQUERING YOUR DATABASEBATTLEFIELD ORM: TIPS, TACTICS AND STRATEGIES FOR CONQUERING YOUR DATABASE
BATTLEFIELD ORM: TIPS, TACTICS AND STRATEGIES FOR CONQUERING YOUR DATABASEOrtus Solutions, Corp
 
Der Spagat zwischen BIAS und FAIRNESS (2024)
Der Spagat zwischen BIAS und FAIRNESS (2024)Der Spagat zwischen BIAS und FAIRNESS (2024)
Der Spagat zwischen BIAS und FAIRNESS (2024)OPEN KNOWLEDGE GmbH
 
Call Us🔝>༒+91-9711147426⇛Call In girls karol bagh (Delhi)
Call Us🔝>༒+91-9711147426⇛Call In girls karol bagh (Delhi)Call Us🔝>༒+91-9711147426⇛Call In girls karol bagh (Delhi)
Call Us🔝>༒+91-9711147426⇛Call In girls karol bagh (Delhi)jennyeacort
 
Recruitment Management Software Benefits (Infographic)
Recruitment Management Software Benefits (Infographic)Recruitment Management Software Benefits (Infographic)
Recruitment Management Software Benefits (Infographic)Hr365.us smith
 
Alluxio Monthly Webinar | Cloud-Native Model Training on Distributed Data
Alluxio Monthly Webinar | Cloud-Native Model Training on Distributed DataAlluxio Monthly Webinar | Cloud-Native Model Training on Distributed Data
Alluxio Monthly Webinar | Cloud-Native Model Training on Distributed DataAlluxio, Inc.
 
英国UN学位证,北安普顿大学毕业证书1:1制作
英国UN学位证,北安普顿大学毕业证书1:1制作英国UN学位证,北安普顿大学毕业证书1:1制作
英国UN学位证,北安普顿大学毕业证书1:1制作qr0udbr0
 
Balasore Best It Company|| Top 10 IT Company || Balasore Software company Odisha
Balasore Best It Company|| Top 10 IT Company || Balasore Software company OdishaBalasore Best It Company|| Top 10 IT Company || Balasore Software company Odisha
Balasore Best It Company|| Top 10 IT Company || Balasore Software company Odishasmiwainfosol
 
Building Real-Time Data Pipelines: Stream & Batch Processing workshop Slide
Building Real-Time Data Pipelines: Stream & Batch Processing workshop SlideBuilding Real-Time Data Pipelines: Stream & Batch Processing workshop Slide
Building Real-Time Data Pipelines: Stream & Batch Processing workshop SlideChristina Lin
 
ODSC - Batch to Stream workshop - integration of Apache Spark, Cassandra, Pos...
ODSC - Batch to Stream workshop - integration of Apache Spark, Cassandra, Pos...ODSC - Batch to Stream workshop - integration of Apache Spark, Cassandra, Pos...
ODSC - Batch to Stream workshop - integration of Apache Spark, Cassandra, Pos...Christina Lin
 
React Server Component in Next.js by Hanief Utama
React Server Component in Next.js by Hanief UtamaReact Server Component in Next.js by Hanief Utama
React Server Component in Next.js by Hanief UtamaHanief Utama
 
MYjobs Presentation Django-based project
MYjobs Presentation Django-based projectMYjobs Presentation Django-based project
MYjobs Presentation Django-based projectAnoyGreter
 

Recently uploaded (20)

SpotFlow: Tracking Method Calls and States at Runtime
SpotFlow: Tracking Method Calls and States at RuntimeSpotFlow: Tracking Method Calls and States at Runtime
SpotFlow: Tracking Method Calls and States at Runtime
 
Cloud Management Software Platforms: OpenStack
Cloud Management Software Platforms: OpenStackCloud Management Software Platforms: OpenStack
Cloud Management Software Platforms: OpenStack
 
Maximizing Efficiency and Profitability with OnePlan’s Professional Service A...
Maximizing Efficiency and Profitability with OnePlan’s Professional Service A...Maximizing Efficiency and Profitability with OnePlan’s Professional Service A...
Maximizing Efficiency and Profitability with OnePlan’s Professional Service A...
 
What is Fashion PLM and Why Do You Need It
What is Fashion PLM and Why Do You Need ItWhat is Fashion PLM and Why Do You Need It
What is Fashion PLM and Why Do You Need It
 
Cloud Data Center Network Construction - IEEE
Cloud Data Center Network Construction - IEEECloud Data Center Network Construction - IEEE
Cloud Data Center Network Construction - IEEE
 
What are the key points to focus on before starting to learn ETL Development....
What are the key points to focus on before starting to learn ETL Development....What are the key points to focus on before starting to learn ETL Development....
What are the key points to focus on before starting to learn ETL Development....
 
GOING AOT WITH GRAALVM – DEVOXX GREECE.pdf
GOING AOT WITH GRAALVM – DEVOXX GREECE.pdfGOING AOT WITH GRAALVM – DEVOXX GREECE.pdf
GOING AOT WITH GRAALVM – DEVOXX GREECE.pdf
 
CRM Contender Series: HubSpot vs. Salesforce
CRM Contender Series: HubSpot vs. SalesforceCRM Contender Series: HubSpot vs. Salesforce
CRM Contender Series: HubSpot vs. Salesforce
 
BATTLEFIELD ORM: TIPS, TACTICS AND STRATEGIES FOR CONQUERING YOUR DATABASE
BATTLEFIELD ORM: TIPS, TACTICS AND STRATEGIES FOR CONQUERING YOUR DATABASEBATTLEFIELD ORM: TIPS, TACTICS AND STRATEGIES FOR CONQUERING YOUR DATABASE
BATTLEFIELD ORM: TIPS, TACTICS AND STRATEGIES FOR CONQUERING YOUR DATABASE
 
Der Spagat zwischen BIAS und FAIRNESS (2024)
Der Spagat zwischen BIAS und FAIRNESS (2024)Der Spagat zwischen BIAS und FAIRNESS (2024)
Der Spagat zwischen BIAS und FAIRNESS (2024)
 
Call Us🔝>༒+91-9711147426⇛Call In girls karol bagh (Delhi)
Call Us🔝>༒+91-9711147426⇛Call In girls karol bagh (Delhi)Call Us🔝>༒+91-9711147426⇛Call In girls karol bagh (Delhi)
Call Us🔝>༒+91-9711147426⇛Call In girls karol bagh (Delhi)
 
Recruitment Management Software Benefits (Infographic)
Recruitment Management Software Benefits (Infographic)Recruitment Management Software Benefits (Infographic)
Recruitment Management Software Benefits (Infographic)
 
Alluxio Monthly Webinar | Cloud-Native Model Training on Distributed Data
Alluxio Monthly Webinar | Cloud-Native Model Training on Distributed DataAlluxio Monthly Webinar | Cloud-Native Model Training on Distributed Data
Alluxio Monthly Webinar | Cloud-Native Model Training on Distributed Data
 
英国UN学位证,北安普顿大学毕业证书1:1制作
英国UN学位证,北安普顿大学毕业证书1:1制作英国UN学位证,北安普顿大学毕业证书1:1制作
英国UN学位证,北安普顿大学毕业证书1:1制作
 
Balasore Best It Company|| Top 10 IT Company || Balasore Software company Odisha
Balasore Best It Company|| Top 10 IT Company || Balasore Software company OdishaBalasore Best It Company|| Top 10 IT Company || Balasore Software company Odisha
Balasore Best It Company|| Top 10 IT Company || Balasore Software company Odisha
 
Building Real-Time Data Pipelines: Stream & Batch Processing workshop Slide
Building Real-Time Data Pipelines: Stream & Batch Processing workshop SlideBuilding Real-Time Data Pipelines: Stream & Batch Processing workshop Slide
Building Real-Time Data Pipelines: Stream & Batch Processing workshop Slide
 
Hot Sexy call girls in Patel Nagar🔝 9953056974 🔝 escort Service
Hot Sexy call girls in Patel Nagar🔝 9953056974 🔝 escort ServiceHot Sexy call girls in Patel Nagar🔝 9953056974 🔝 escort Service
Hot Sexy call girls in Patel Nagar🔝 9953056974 🔝 escort Service
 
ODSC - Batch to Stream workshop - integration of Apache Spark, Cassandra, Pos...
ODSC - Batch to Stream workshop - integration of Apache Spark, Cassandra, Pos...ODSC - Batch to Stream workshop - integration of Apache Spark, Cassandra, Pos...
ODSC - Batch to Stream workshop - integration of Apache Spark, Cassandra, Pos...
 
React Server Component in Next.js by Hanief Utama
React Server Component in Next.js by Hanief UtamaReact Server Component in Next.js by Hanief Utama
React Server Component in Next.js by Hanief Utama
 
MYjobs Presentation Django-based project
MYjobs Presentation Django-based projectMYjobs Presentation Django-based project
MYjobs Presentation Django-based project
 

Totally Build Apps for Free! (not really)