yow mobile night 2011 - the realestate.com.au mobile story

Post on 05-Dec-2014

1.692 Views

Category:

Technology

0 Downloads

Preview:

Click to see full reader

DESCRIPTION

A brief summary of the path taken by the mobile development team at realestate.com.au. It provides an overview of the project from inception to cancellation, to rebirth, multi-platform and tablet. The presentation concludes with some observations, on the platform, technologies and the future.

TRANSCRIPT

1

Who Am I

Delivery Manager - MobileREA 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

Summarysome 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

top related