The hot ticket for developers over the past week was to the YOW! conferences in Brisbane and Melbourne, chances for coders to share secrets such as how to test, which mobile OS to target and to hear from a Smalltalk pioneer about what Linux might have looked like.
Attendance at sessions on mobile development for Windows Phone 7, Android and Apple iOS suggested local devs aren't yet in the Redmond camp but Microsoft's presenter suggested Windows Phone 7's familiar toolset will be a plus for coders.
Microsoft's mobile program manager Dragos Manalescu explored differences between desktops and mobiles such as how to handle the interruption of a phone call when an app is running and power consumption. For example, touching the screen drains around 10mW, geolocation takes 100mW and pinging the network pushed it to 1000mW: "Everything has a cost, [so] be aware of those costs" while developing, he said.
Other differences included providing for a program to keep running while the device was locked (important for media players, route tracking apps and so on), and recording data streams (eg from the accelerometer) so they can be fed into the simulator during testing.
Director of mobile developer jTribe, Daniel Bradby, said Australians were "picking up Android quite heavily". He recommended developers use relative layouts when defining user interfaces to overcome the different screen dimensions and resolutions inherent in the multitude of devices running the platform.
"Developing user interfaces on Android is tedious and verbose," Bradby said.
But freelance Apple developer Nathan de Vries, who has Foxtel and Movember apps under his belt, said the key for iOS developers was to adhere to the device maker's human interface guidelines: consistency was a "huge deal on the iPhone", he said.
He recommended designing interfaces as vectors before rendering them to the target device. And as Apple doesn't reveal much about an app's success, developers should look to services such as Flurry, Google Analytics, Omniture or AdMob to learn how their apps are being used.
In other YOW sessions:
- Richard Durnall of REAGroup said management theory had to move from ease of execution to meeting customer needs. He argued for "outside in" organisations that identify what customer want and that the venture can deliver before management teams were assembled.
- The combination of Rails and Mac OS X "rocks" as a development platform, said Thoughtworks software architect, Neal Ford. Wholesale vehicle site OVE.com found its Java code was so complex that it was slow to change in response to the market. Developers could run 9000 tests in 41 seconds by providing stubs and mocks. Thoughtworks wrote its own DeepTest software in order to run tests on both cores of each Mac mini and after an upgrade on all eight cores of each Mac Pro. Selenium Grid simulated user actions and Cruise Control was used for verification.
- Were it not for a fate of history, software conceived at famed Xerox PARC could have been the preferred Linux user interface, said object-oriented pioneer Dan Ingalls, who implemented Smalltalk at the home of the graphical user interface, later reimagined it as Squeak, and then reused some of the ideas in Lively Kernel.