Colin's Journal

Colin's Journal: A place for thoughts about politics, software, and daily life.

September 7th, 2011

Android Market Experience

The Android Market continues to struggle in providing a great end user experience.  To illustrate, here’s what I went through when purchasing Carcassonne tonight:


Dolomites looking desolate

  • I had bookmarked the Carcassonne page on the market a few weeks ago, so when I decided to buy it, I followed the bookmark.  The advertised price was £1.75.
  • I clicked on purchase, and the site prompted me to login, which I did.  The “review your purchase” pop-up appeared, but listed the price as €1.99, and was missing the Confirm button.
  • Deciding that the phone version may work better, I searched on my phone for Carcassone, and saw the price listed as £3.49.
  • Thinking that a lower price sounded better, I tried various re-loads of the page in my browser with no luck – the “review your purchase” pop-up grew a “Confirm” button, but it was greyed out and would not work.
  • I tried searching in the web based version of the market for Carcassone.  The result was a listed price of £3.49.
  • Giving it one last go, I followed the search result link, and it brought up the page showing the price as £1.75.
  • Selecting purchase I was shown the confirmation dialog with a price of €1.99, and a working “Confirm” button.
  • Upon clicking Confirm the app started downloading on my phone – and the website showed a confirmation that I had purchased the game for £1.75.
  • Finally my Google Checkout receipt arrived, showing the actual transaction cost €1.99

It’s fairly amazing that my own app (ExpenseClam) receives any purchases at all given the difficulty involved!

I should add that it was worth persevering – the game is rather good!

June 20th, 2011

ExpenseClam – finding the currency

Stair case

Stair case

Yesterday I released ExpeneseClam, a business expenses tracking app for Android.  Recording expenses on a smartphone can be a painful experience, typos are common, expense claims are not always made in chronological order, and there is usually little time to note down how much a taxi cost.  ExpenseClam has a number of features to help make this easier.  Simple things like auto-suggesting expense descriptions based on the amount entered can make it much quicker to record common recurring expenses.

One of the niftiest features in ExpenseClam is something that you will only stumble across if you travel a lot: it auto selects the default currency for a new expense based on the country you are in.  This is done without needing user permission to determine location, carry out reverse geocoding or even internet access.

The secret sauce is Android’s TelephonyManager and it’s method getNetworkCountryIso().  This method returns the ISO code given by the mobile operator for the network that you are connected to (the Mobile Country Code).  From this a Locale object can be created, which then allows the Currency instance to be created.  None of this requires network traffic and it takes very little processing power to complete.

Changes in the default currency only happens when the country changes.  This is to avoid frustrating users who have to enter expenses in a different currency to this default.  The country derived currency is however prioritised in the list of currencies to make selection easier for what is likely to be a common choice.

February 13th, 2011

Android a challenge to OEMs?

Does the “Android Monopoly” really provide a challenge to the traditional OEMs? Is the answer to use virtualisation on the handset and put Android in a virtual machine sandbox while the OEM’s own O/S runs underneath it?  That’s Andreas Constantinou’s proposal in his latest blog post at VisionMobile. I’m not so sure.  Firstly let’s take a brief look at the history of the OEMs he identifies as losing out due to the success of Android: Motorola and Sony Ericsson.

Toronto sunset at the beaches

Toronto sunset at the beaches

Motorola’s success story pre-Android was the Razr.  This was a huge phone in 2005 and dragged Motorola into second place behind Nokia.  The success of the Razr had little to do with the software that it ran, and a lot to do with the very distinctive and stylish design. Motorola failed to innovate effectively off the back of this however, resulting in a whole series of similar phones and declining market share.  It is only with their adoption of Android that Motorola has been able to rescue themselves from terminal decline in the mobile market.  The Droid series of phones built for Verizon have been very successful for them, bringing the company (now split off as Motorola Mobility) back from the brink.

Sony Ericsson’s history contains more highlights than Motorola’s, but is also a mixed record.  They have used a number of operating systems over the years, with Symbian (using the UIQ interface) and Windows Mobile both playing a part.  Sony Ericsson has been able to differentiate with their Walkman and Cyber-shot brands, both of which relied more on innovation in hardware than software.  Sony Ericsson have produced a range of Android smart phones, which has done much to restore their financial health (to the tune of €1.1bn).

Hardware has always been a major differentiator between mobile OEMs, marking a significant difference between the mobile and personal computing industry.  This traditional strength is not undermined by Google being the driving force behind Android.  OEMs adopting Android get for free the things they have traditionally struggled with: a best-in-class smart phone O/S, app store and cloud services.  This allows them to focus on the part of the equation where they have seen past successes and that aligns to their core competencies.

The announcements coming out of Mobile World Congress this year (and CES before it) shows that there is plenty of room for innovation in hardware and software:

  • Sony Ericsson offering the Xperia Play.  This shows that both hardware innovation (slide out game control pad) can be done alongside corresponding software innovation that sits on-top of Android (the PlayStation Store).
  • Motorola announced the Atrix.  This again shows innovation in both hardware and software, with a docking station that provides a desktop experience when the phone is plugged in.
  • The LG Optimus 3D provides both 3D capture through dual cameras, but also a 3D stereoscopic screen.
  • Samsung are generally sticking with a tried and tested form factor, but are innovating with the screen, the thickness of the phone and the inclusion of NFC in the Galaxy 2.

If Google is restricting what OEMs can do on the hardware and software front, I don’t see much evidence of it in the products that they are announcing, or an opportunity to do more by using virtualisation.

Copyright 2015 Colin Stewart

Email: colin at