SlideShare a Scribd company logo
1 of 34
Download to read offline
1
Who Am I
Delivery Manager - Mobile
        REA Group
 (realestate.com.au et al)




                             2
From Concept to …




                    3
The Beginning

• New to the organisation
• New team
• Organisation new to
  native mobile
• High expectations
                            4
Not a Website

• Native mobile is not
  the mobile web
• REAPA (REA Personal
  Assistant)



                         5
We Screwed Up
• The initial project was cancelled
  after three months (the agile
  process in practice)
• Reset and re-imagined
• Halved the team size
• Doubled the productivity
                                      6
Release One




              7
Release One

• Nine Weeks to Develop (including
  back end)
• Initially rejected by Apple
• Counting the appeal it took a month
  from submission to release


                                        8
Android




          9
Android

• Two External Parties Approached
• Both quoted about the same
  duration
• Three weeks.

                                    10
Android
• Four Months in the Making
• All experience mobile java
  developers
• Majority of the development done in
  China
• Completed here (with the team
  from China)
                                        11
iOS 1.3




          12
iOS 1.3

• Bookmarking + ?
• Third Party integration
• Shelved waiting for Third Party
• Eventually released without Third
  Party features

                                      13
iOS 1.3
• We broke it
• Active error monitoring alerted us
  within minutes of store launch
• Our only x.x.x release
• 12 Hours for new version to appear
  in the store

                                       14
iPad




       15
iPad

• Eight week schedule
• Problems with unanticipated scope
• Problems with defects
• Five weeks in and very little was
  production quality


                                      16
iPad
• Changed the team Structure
• Reduced from six to three developers
• Moved two developers to automated
  testing
• Moved two to another project
• Added an experienced developer (me)
                                         17
Observations



               18
The Platform



               19
iOS

• Two screen sizes, three resolutions
• Memory varies
• CPU varies
• Subtle UI changes coming in iOS 5


                                        20
Android
• Every device is different, you'll need a few
• Screen and resolutions vary (lots)
• Touch and tap tracking vary (lots)
• CPU and Memory vary (lots)
• Basic UI varies (lots)
• Physical keyboards


                                                 21
The Environment



                  22
iOS
• Objective-C, rocks, seriously

• xCode, sucks, getting better, very slowly
• Frameworks, you need to know them

• Understand, layers and views intimately

• I've never used interface builder for a
  production application
                                              23
Android

• Java, ageing gracefully, but it's still Java

• Alternative languages, scala, clojure, et al

• Eclipse, IntelliJ, rock the house

• Learning curve is in the frameworks


                                                 24
Memory Management



                    25
iOS
• It's easier than you think

• Remember the rules, you alloc or copy it,
  you own it

• Blocks are sneaky

• Listen to the system warnings

• ARC is coming
                                              26
Android
• Garbage collection is a beautiful thing

• Garbage collection sucks

• Reference leaks are your enemy

• Hard to dump it when you know your
  done

                                            27
Delivering to Multiple
      Platforms



                         28
Respect the differences
• Don't just port you application from one
  platform to the other

• The UX is subtly (and not so subtly)
  different

• Cross platform toolkits don't deliver
  (yet?)

                                             29
Unified Testing
• One set of acceptance tests, share the definitions
• Automate what you can, be prepared to manually
  test what you can't
• Screen comparisons are an essential part of the
  process
• No dedicated QA for our first two releases
• QA is everyone's role

                                                      30
Summary
some closing thoughts




                        31
In My Opinion
• Deliver an application that has an opinion
  (you can't please everyone anyhow)
• Concentrate on a consistent user
  experience
• Everyone is responsible for quality
• It's not easy. Expect some good developers
  to fail in the move to mobile and that's okay


                                                  32
And
• iOS is easier than Android, for now.
• Ice Cream Sandwich will reduce Android
  device fragmentation
• The Windows marketplace will be a better
  revenue source than The Android markets
• I'm going to be wrong on at least one of
  the point above


                                             33
Questions
  @kevinoneill




                 34

More Related Content

Similar to YOW Mobile Night 2011 - The realestate.com.au mobile story

The Xactimate Insurance App: Bringing 10,000,000 Lines of Code to Mobile, Nic...
The Xactimate Insurance App: Bringing 10,000,000 Lines of Code to Mobile, Nic...The Xactimate Insurance App: Bringing 10,000,000 Lines of Code to Mobile, Nic...
The Xactimate Insurance App: Bringing 10,000,000 Lines of Code to Mobile, Nic...
Xamarin
 
Rise of the hybrids
Rise of the hybridsRise of the hybrids
Rise of the hybrids
Oron Ben Zvi
 
How we test tvideo at skype
How we test tvideo at skypeHow we test tvideo at skype
How we test tvideo at skype
QA Club Kiev
 

Similar to YOW Mobile Night 2011 - The realestate.com.au mobile story (20)

Executing for Every Screen: Build, launch and sustain products for your custo...
Executing for Every Screen: Build, launch and sustain products for your custo...Executing for Every Screen: Build, launch and sustain products for your custo...
Executing for Every Screen: Build, launch and sustain products for your custo...
 
The Xactimate Insurance App: Bringing 10,000,000 Lines of Code to Mobile, Nic...
The Xactimate Insurance App: Bringing 10,000,000 Lines of Code to Mobile, Nic...The Xactimate Insurance App: Bringing 10,000,000 Lines of Code to Mobile, Nic...
The Xactimate Insurance App: Bringing 10,000,000 Lines of Code to Mobile, Nic...
 
DevOps Days Ohio
DevOps Days OhioDevOps Days Ohio
DevOps Days Ohio
 
Rise of the hybrids
Rise of the hybridsRise of the hybrids
Rise of the hybrids
 
Real World Windows 8 Apps in JavaScript
Real World Windows 8 Apps in JavaScriptReal World Windows 8 Apps in JavaScript
Real World Windows 8 Apps in JavaScript
 
24 Months - A DevOps Retrospective
24 Months - A DevOps Retrospective24 Months - A DevOps Retrospective
24 Months - A DevOps Retrospective
 
Development of a mobile app for Android
Development of a mobile app for AndroidDevelopment of a mobile app for Android
Development of a mobile app for Android
 
Developing a mobile cross-platform library
Developing a mobile cross-platform libraryDeveloping a mobile cross-platform library
Developing a mobile cross-platform library
 
How we test tvideo at skype
How we test tvideo at skypeHow we test tvideo at skype
How we test tvideo at skype
 
Drupal and Devops , the Survey Results
Drupal and Devops , the Survey ResultsDrupal and Devops , the Survey Results
Drupal and Devops , the Survey Results
 
Webview: The fifth element
Webview: The fifth elementWebview: The fifth element
Webview: The fifth element
 
Docker Enterprise Deployment Planning
Docker Enterprise Deployment PlanningDocker Enterprise Deployment Planning
Docker Enterprise Deployment Planning
 
Strategy, planning and governance for enterprise deployments of containers - ...
Strategy, planning and governance for enterprise deployments of containers - ...Strategy, planning and governance for enterprise deployments of containers - ...
Strategy, planning and governance for enterprise deployments of containers - ...
 
Understand Java for Android the Hard Way
Understand Java for Android the Hard WayUnderstand Java for Android the Hard Way
Understand Java for Android the Hard Way
 
Seminar report on android os
Seminar report on android osSeminar report on android os
Seminar report on android os
 
Java and the Web
Java and the WebJava and the Web
Java and the Web
 
Creating Dragon City for Mobile
Creating Dragon City for MobileCreating Dragon City for Mobile
Creating Dragon City for Mobile
 
Innovating with Mozilla Labs
Innovating with Mozilla LabsInnovating with Mozilla Labs
Innovating with Mozilla Labs
 
Titanium appcelerator kickstart
Titanium appcelerator kickstartTitanium appcelerator kickstart
Titanium appcelerator kickstart
 
Why Do Mobile Projects Fail?
Why Do Mobile Projects Fail?Why Do Mobile Projects Fail?
Why Do Mobile Projects Fail?
 

More from Kevin O'Neill

More from Kevin O'Neill (6)

SwifTEA UI - Unidirectional data flow with SwiftUI and WeeDux
SwifTEA UI - Unidirectional data flow with SwiftUI and WeeDuxSwifTEA UI - Unidirectional data flow with SwiftUI and WeeDux
SwifTEA UI - Unidirectional data flow with SwiftUI and WeeDux
 
Deploying the Graph
Deploying the GraphDeploying the Graph
Deploying the Graph
 
A Slice of Scala
A Slice of Scala A Slice of Scala
A Slice of Scala
 
Building Hypermedia API's - YOW! Night - March 2013
Building Hypermedia API's - YOW! Night - March 2013Building Hypermedia API's - YOW! Night - March 2013
Building Hypermedia API's - YOW! Night - March 2013
 
Hypermedia for the iOS developer - Swipe 2012
Hypermedia for the iOS developer - Swipe  2012Hypermedia for the iOS developer - Swipe  2012
Hypermedia for the iOS developer - Swipe 2012
 
Swipe 2011 - iOS Gems
Swipe 2011 - iOS GemsSwipe 2011 - iOS Gems
Swipe 2011 - iOS Gems
 

Recently uploaded

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
 
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
 
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
?#DUbAI#??##{{(☎️+971_581248768%)**%*]'#abortion pills for sale in dubai@
 
Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire business
panagenda
 

Recently uploaded (20)

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
 
Strategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherStrategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a Fresher
 
Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...
 
"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 ...
 
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
 
Exploring Multimodal Embeddings with Milvus
Exploring Multimodal Embeddings with MilvusExploring Multimodal Embeddings with Milvus
Exploring Multimodal Embeddings with Milvus
 
Six Myths about Ontologies: The Basics of Formal Ontology
Six Myths about Ontologies: The Basics of Formal OntologySix Myths about Ontologies: The Basics of Formal Ontology
Six Myths about Ontologies: The Basics of Formal Ontology
 
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
 
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
 
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
 
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
 
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
 
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data DiscoveryTrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
 
FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 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
 
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
 
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
 
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
 
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​
 
Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire business
 

YOW Mobile Night 2011 - The realestate.com.au mobile story

  • 1. 1
  • 2. Who Am I Delivery Manager - Mobile REA Group (realestate.com.au et al) 2
  • 4. The Beginning • New to the organisation • New team • Organisation new to native mobile • High expectations 4
  • 5. Not a Website • Native mobile is not the mobile web • REAPA (REA Personal Assistant) 5
  • 6. We Screwed Up • The initial project was cancelled after three months (the agile process in practice) • Reset and re-imagined • Halved the team size • Doubled the productivity 6
  • 8. Release One • Nine Weeks to Develop (including back end) • Initially rejected by Apple • Counting the appeal it took a month from submission to release 8
  • 10. Android • Two External Parties Approached • Both quoted about the same duration • Three weeks. 10
  • 11. Android • Four Months in the Making • All experience mobile java developers • Majority of the development done in China • Completed here (with the team from China) 11
  • 12. iOS 1.3 12
  • 13. iOS 1.3 • Bookmarking + ? • Third Party integration • Shelved waiting for Third Party • Eventually released without Third Party features 13
  • 14. iOS 1.3 • We broke it • Active error monitoring alerted us within minutes of store launch • Our only x.x.x release • 12 Hours for new version to appear in the store 14
  • 15. iPad 15
  • 16. iPad • Eight week schedule • Problems with unanticipated scope • Problems with defects • Five weeks in and very little was production quality 16
  • 17. iPad • Changed the team Structure • Reduced from six to three developers • Moved two developers to automated testing • Moved two to another project • Added an experienced developer (me) 17
  • 20. iOS • Two screen sizes, three resolutions • Memory varies • CPU varies • Subtle UI changes coming in iOS 5 20
  • 21. Android • Every device is different, you'll need a few • Screen and resolutions vary (lots) • Touch and tap tracking vary (lots) • CPU and Memory vary (lots) • Basic UI varies (lots) • Physical keyboards 21
  • 23. iOS • Objective-C, rocks, seriously • xCode, sucks, getting better, very slowly • Frameworks, you need to know them • Understand, layers and views intimately • I've never used interface builder for a production application 23
  • 24. Android • Java, ageing gracefully, but it's still Java • Alternative languages, scala, clojure, et al • Eclipse, IntelliJ, rock the house • Learning curve is in the frameworks 24
  • 26. iOS • It's easier than you think • Remember the rules, you alloc or copy it, you own it • Blocks are sneaky • Listen to the system warnings • ARC is coming 26
  • 27. Android • Garbage collection is a beautiful thing • Garbage collection sucks • Reference leaks are your enemy • Hard to dump it when you know your done 27
  • 28. Delivering to Multiple Platforms 28
  • 29. Respect the differences • Don't just port you application from one platform to the other • The UX is subtly (and not so subtly) different • Cross platform toolkits don't deliver (yet?) 29
  • 30. Unified Testing • One set of acceptance tests, share the definitions • Automate what you can, be prepared to manually test what you can't • Screen comparisons are an essential part of the process • No dedicated QA for our first two releases • QA is everyone's role 30
  • 32. In My Opinion • Deliver an application that has an opinion (you can't please everyone anyhow) • Concentrate on a consistent user experience • Everyone is responsible for quality • It's not easy. Expect some good developers to fail in the move to mobile and that's okay 32
  • 33. And • iOS is easier than Android, for now. • Ice Cream Sandwich will reduce Android device fragmentation • The Windows marketplace will be a better revenue source than The Android markets • I'm going to be wrong on at least one of the point above 33