Interview with Erik Hellman
Erik Hellman is a regular at Droidcon events and loves the relaxed atmosphere and cool people he meets there. This year, Erik is talking at 15:45 on Day 2 and is tackling a tricky subject. He will pass on the lessons learned by Sony on how to make your application faster and more efficient. We asked Erik some questions about Droidcon, Android and how developers can make their applications better.
I’m really looking forward meeting all the people I got to know at the previous events. I always learn something new and get to see new cool ideas being presented. DroidCon London is more relaxed than many other events so it is easy to talk to anyone at the event. If anyone would like to have chat, just come over and talk to me at the Sony booth where we will also demo our latest products.
What is your history with Android development and research?
I started to work with Android when we were doing the Xperia™ X10 mini and Xperia™ X10 mini pro, which is quite fun since these phones are still the smallest Android devices to date. After the launch of those phones I was appointed as a Senior Architect for all Sony Ericsson Android apps. And since 2010 I’ve been working in the research department where I’m focusing on new and emerging technologies, and how to apply them to our smartphones.
It will be 5 years in November since Android was announced. What do you think is the most significant moment in those 5 years?
Personally, I think the launch of the Xperia™ X10 mini was really memorable, as I was so involved in that project. This is still a great phone considering its size. Other moments of significance for me was when Sony Ericsson (now Sony) announced the option to unlock the boot loader, which in turn made it possible for CyanogenMod and others to release their own custom ROMs on Sony and Sony Ericsson phones. Also, for me it was really nice to hear Google recognise Sony as the most active contributor to the Android Open Source Project. That was a great moment, where we felt that all our work on improving Android really got appreciated.
More recently I believe Jean-Baptiste Queru’s (The guy leading the Android Open Source Project) project where he is working to include the Xperia S in the AOSP source tree is a really exciting thing.
What is your favorite Android app and why?
Picking one single app is very difficult, but the three most used apps on my phone are Evernote, Wikipedia and LastPass . In my work, where I focus on innovation and new ideas, I need a good way to store notes and do quick fact checks. LastPass helps me to keep everything secure.
During your session at Droidcon, you are talking about how to make apps that use the network efficiently. Why should developers care about this, is it not for the network operators to worry about?
The operators play a big role in ensuring that the quality of their networks are the best possible. However, with an open eco-system like Android the operators have very limited power in controlling how developers utilise their network resources. Also, an app that utilise the network in the best possible way has a higher chance of getting good response from the users.
What are the most important decisions for developers to make when building apps, to avoid some of the problems you have seen?
Every developer needs to ask themselves “Does the application really need to make a network call now?” In many cases we perform network operations out of pure habit (for example at startup), even though the feature the user will access doesn’t require any data to be retrieved. The most efficient use of the network is of course when you’re not using it..
What is the single most surprising thing that you have learned about handling network communications?
One of the most surprising things I’ve learned is how much the data overhead is ignored when people design network communication in their software. A single HTTP call might have more than 1kb of headers attached while the only data you are actually transferring in the request could be less than 100 bytes. Also, many developers are unaware of how much it costs, in terms of CPU and power, to setup a new socket.
If anyone would like to hear more about this topic, come listen in to my session (it’s called Fast, user-friendly and power-efficient network communication on Android , and it’s scheduled for Friday afternoon at 15.45). I will share our best tips and practices, and we hope these tips can utilised by many developers.
Thanks Erik, we can’t wait to see you at Droidcon London.