Android, six months on

So I've been using the Google Android phone for about six months now, and it's about time I reflected on how it's gone. Here's a bit of a rambling review.

The hardware

The G1 hardware is pretty limited. There's not enough RAM, and the default Android way of storing apps on the phone rather than on the removable flash storage means you run out of space pretty quickly. The latter is fixed by using a custom image like Cyanogen, which is awesome.

The buttons on the phone are kinda dumb. There's green and red buttons for call management, just like most phones. Then there's a home and a "back" button, which are kinda superfluous as they could easily be replaced by some sort of touch gesture. The "Menu" is kind of a universal interupt button, and I suppose might be useful. And the trackball is completely useless yet seems to be mandatory for all designs. I never use it. On the sides are the camera and volume buttons, which I suppose are handy.

The buttons that would be really useful are missing. I'd love a pause/play button for when I'm using the thing to play music.

The G1 has a built-in keyboard. This is great, but has been dropped on later releases. Given a decent touchscreen interface, I think I could live without it. Not convinced that the on-screen keyboard is good enough, but it will make the device smaller, lighter and sexier. Though the keyboard rocks for answering emails or using ssh.

Multistasking: good and bad

Multitasking, the key difference between Android and the iPhone, is a double edged sword. It means you can run cool third-party apps that need to run all the time, like apps that show your calendar and weather forecast on the home screen. It also means that crap stays running all the time, meaning performance can be glacial if you've got something hogging the CPU in the background, and memory fills up very quickly.

Some allowance for the slowdown of background apps could be incorporated into the OS. It'd be nice to have apps not slow down core phone functions. I'd even be willing to completely pause background apps while something important is going on, like an incoming phone call. I kid you not, I've missed incoming calls because the phone's CPU has been busy on some other crap. Many is the time I've given up taking a photo because after pressing the camera button, whatever I wanted to snap has long finished before the camera app is up and ready to take a photo.

Shitty memory manglement

Android takes the same "automatic" approach to memory management as Symbian: if it runs out of memory, it kills something random that's running in the background to make some space. Apps tend to run in the background unless you explicitly exit, or use a power user tool to kill the process. That means while you might have something cool running in the background, it could randomly and without notice be killed at any time because you opened something else that wants more memory. The usual excuse for this kind of thing is you don't want to make users of consumer devices think about things like memory. Try telling that to some angry consumer whose fancy alarm clock app got killed to make space for another app meaning the user overslept and was late for work! How much sense does it make to kill the music player when I'm listening to music just to make space for something else? I'd much rather have to explicitly manage the memory and be asked what should get killed.

None of this is helped by the miserly allowance of RAM on the G1, 192MB. The Nexus One's 512MB should make this much more useful, though it's going to make running a G1 or any of the first generation Android phones somewhat suckier, given developers will now be targetting the new, faster, roomier Nexus One.

How about event-driven OS callbacks?

I think many of the problems with multitasking could be solved by introducing some OS-level event-driven triggers. What I'm thinking is instead of apps having to hang around in memory and periodically using the CPU, they could register with an OS service that they want to be woken on specific events: an SMS is received, the phone's power source changes, it's a specific time, the phone's location gets within x metres of a coordinate. That way you wouldn't need, for example, to keep your alarm clock app in memory all the time, wasting RAM and CPU cycles. The app would register the events its interested in, then explicitly exit.

No idea how practical this idea would be once implemented, and whether the overhead of loading up the app to handle the event would kill performance, but I think something different to the always-running-but-could-be-killed-any-time approach needs to be looked into.

Integrated apps

If you've taken a good slug of the GoogleJuice Kool Aid and moved your whole life into the cloud, Android is a really easy integration. I've got my email, calendar and instant messaging all in my Google Apps cloud, and have done for a while now. Starting with Android was as simple as logging in and waiting for it to all sync up. Brilliant. Everything Just Works™.

The apps are good too. Email is just like you'd expect, all your contacts are right there where you expect. A live calendar is life-changing, especially if you sync your work calendars into the cloud too.

One area that could do with some improvement is the way the GTalk app works. When I'm sitting at my desk and someone opens a chat session with me, I get three notifications that this has happened: inside my current browser Gmail session, the desktop GTalk app, and on my phone. Surely the server can work out which one I use to handle the session and close the others for me? Instead I have to go in and close those sessions myself, which is kinda clunky.

It'd also be nice if the instant messaging apps were a bit smarter. Let's say I want to contact someone, and the contact record shows the person has GTalk and a mobile phone. Surely I shouldn't have to work out which one to use, it can instead use the user's presence to work it out. If the remote user is on an Android phone, it could be really clever about it and switch to SMS if that user isn't online. All these contacts should show up in the same interface, regardless of underlying mechanism.

My favourite apps

SlideScreen integrates all your interactions

By far the finest app so far is SlideScreen, which replaces the default home screen. At the top are your "private" communications: phone calls, SMS, email, calendar. Below are your "public" comms: Google Reader, Twitter. In the middle you get some status info: date, time, network connection, current weather. You can slide the middle part up and down to give more space to one area at the expense of the other. You "throw" an item to the right to mark it as read and get rid of it.

It's a beautifully-designed app, and nearly completely suits my way of working. Unfortunately it's just too heavy for the poor little G1. It takes up pretty much the whole of the RAM, so if you run another app it gets killed, and you can't really run it and another app. Should be great on the Nexus One though!

Guardian Anywhere is the most intuitive interface for news

Ever since I lived in London, I've read the Guardian as my newspaper and news source of choice. I subscribed to the Guardian Weekly until recently. Part of the reason I stopped subscribing is this app, which downloads the whole paper overnight and presents it in an awesome UI that doesn't require network access. If you're writing a newspaper app, you should copy the design of this app.

Conclusion

The Android OS is excellent and improving all the time. Its openness means you can swap out much of the bits you don't like, which contasts well with Apple and Nokia's smartphone efforts, where you're stuck doing things the way the vendor tells you.

The app marketplace started off pretty poor, with lots of not very good apps, but is improving fast. People point out the high quality of the iPhone apps, but it's worth also pointing out that a popular app there can easily pay for multiple full-time developers. Android isn't there yet, but the marketplace is expanding incredibly fast. Some stand out apps are appearing (like SlideScreen) and you can expect more with the hundreds of Android handsets that will be available by the end of this year.

I'm looking forward to upgrading to the Nexus One, especially since I dropped the G1 and now have a lovely big crack across the LCD. Just have to keep working on the boss to release the funding. It'd be really good if a version appeared that handles the 850MHz UMTS band, since I'll probably be scoring a work SIM soon and Telstra's network uses this slightly-unusual frequency range.

Good

  • Multitasking means you can have awesome apps running all the time. The iPhone just can't do this unless Apple makes the app.
  • Open platform makes for some very cool apps: custom home screens.
  • Integration with Google apps is very slick.
  • The app marketplace is awesome, and growing fast. Apps are getting slicker pretty quickly.

Bad

  • Hardware on the G1 is very limited. Nexus One appears to solve this.
  • Memory management is "automatic" which means "dumb and confusing".
  • Multitasking means a background app can make the device glacially slow.
  • Stock music app is awful.
  • Buttons are kind of pointless. Trackball even more so.
  • Integrated messaging is needed.
  • Connectivity lost when you switch from 802.11 to GSM/3G.

Who should get my Haiti donation?

I've got a bit of a dilemma. I want to give some money for disaster relief in Haiti following the terrible earthquake. Problem is, none of the relief organisations active in Haiti meet my criteria for donations.

My criteria are:

  • Not a religious charity or affiliated with a religion.
  • Respects my request not to be spammed (email, phone or mail).
  • Does not use chuggers.
  • Does not spend inordinate amounts on administration and fundraising.

Oxfam uses chuggers and failed on the second item after my donation from the Indian Ocean Tsunami appeal. They also ignored my complaint about same.

Medecins Sans Frontieres, Red Cross also use chuggers.

Water Aid, much to my dismay as I respect the charity enormously, use chuggers.

Some will defend charities using these techniques, because the cause is too important. That doesn't wash with me because I expect a code of ethics to be applied across the organisation. I once had an argument with a telemarketer who called to solicit donations for Police Citizens Youth Clubs, along the lines of the government Do Not Call list excludes charities, as if that somehow excuses ignoring my expressly-stated preference.

Chuggers really got me annoyed when I worked on New Oxford Street in London and every time I set foot on Tottenham Court Road I'd be accosted by some slimebag raising money for him or herself in the guise of charity.

So can anyone suggest a charity worthy of my cash?

Getting rid of my landline

I'm getting rid of my landline. And no, not just to avoid the Telstra tax, but because the people who call land lines have no social graces. The only people who call landlines are old people and telemarketers.

Telemarketers are scum and I don't want to talk with them, especially since our number is on the Do Not Call list and they're willing to ignore that (yes I know you're a charity, but that doesn't give you an excuse for rudeness).

Old people have no understanding of the social graces modern technology allows. They think the primary advantage of a mobile phone is that the caller can contact the callee anywhere, anytime. The real advantage of mobiles is the ability to switch it off and divert to voicemail, to deal with later. My Mum answers the phone during dinner, during her favourite (untimeshifted) TV shows, any time it rings. Hell, she's polite to telemarketing scum.

Old people don't get this. Yesterday I had one trying to call me while I'm at work. I rejected the call and diverted to voicemail. He hangs up without calling leaving a message. He calls the home phone, where Holly and Louis get woken up, massively improving everyone's mood. It goes to the answering machine. The caller doesn't leave a message. And redials the home phone. Then calls my mobile again.

Now granted, in a genuine emergency this might be reasonable, but if I pick up the phone in these circumstances and there's no emergency, don't get all offended when I tell you to stop being so rude and hang up.

But the oldies don't get it. They're PAYING to talk to you, so you should answer. They come from a time before texts, voicemail, answering machines. Hell my Mum's first home phone was a "party line" shared with half the street so they didn't even have privacy.

So I'm gonna reduce the options. I've had no luck getting the message through that serial dialling isn't on, so I'm dropping the home phone. I'll use voip for cheaper outbound calls. And no, if you're over 50 you don't get to have my work landline number either.

The future of the music industry?

Ten years ago I wrote this blog about how the music industry doesn't get it. It's interesting that also today Apple bought the subscription music site lala.

Subscription is definitely where it's all heading. It should be a record exec's wet dream: getting the price of one album from every household every month would be streets ahead of what they get now. I'd sign up if someone offered such a server, with enough breadth of catalogue, in Australia!

How not to compete with free

So I'm a bit late, but I wanted to grab the latest Decoder Ring album. Logically, I started at their site, which certainly talks about the album. With no link to somewhere it can be purchased.

Next step Wikipedia to find out their label is "Inertia Music". Google that and find their site, search for Decoder Ring. Bingo, there's the album. Click to buy it and go through the registration rigmarole (here's a free tip: move the registration bit to after the credit card entry part and you'll convert more people). Get a download link and the problems begin.

zip warning: name not matched: /home/inertia/public_html/downloader/jquri3df12cgbr8e24496f84v6/01_DECODER_RING-SAME_OLD_PARADISE.mp3 zip warning: name not matched: /home/inertia/public_html/downloader/jquri3df12cgbr8e24496f84v6/02_DECODER_RING-THE_HORSE_AND_THE_HAND_GRENADE.mp3 zip warning: name not matched: /home/inertia/public_html/downloader/jquri3df12cgbr8e24496f84v6/03_DECODER_RING-ALL_THE_STREAMS_HAVE_LITTLE_GL.mp3 zip warning: name not matched: /home/inertia/public_html/downloader/jquri3df12cgbr8e24496f84v6/04_DECODER_RING-THE_INLAND_SEA.mp3 zip warning: name not matched: /home/inertia/public_html/downloader/jquri3df12cgbr8e24496f84v6/01_DECODER_RING-SAME_OLD_PARADISE.mp3 zip warning: name not matched: /home/inertia/public_html/downloader/jquri3df12cgbr8e24496f84v6/02_DECODER_RING-THE_HORSE_AND_THE_HAND_GRENADE.mp3 zip warning: name not matched: /home/inertia/public_html/downloader/jquri3df12cgbr8e24496f84v6/03_DECODER_RING-ALL_THE_STREAMS_HAVE_LITTLE_GL.mp3 zip warning: name not matched: /home/inertia/public_html/downloader/jquri3df12cgbr8e24496f84v6/04_DECODER_RING-THE_INLAND_SEA.mp3
Moved Temporarily

The requested URL http://www.inertia-music.com/account/downloads/pkg/mydownloads.zip has moved here.
Apache/2.2.3 (Red Hat) Server at www.inertia-music.com Port 443

Download the linked zip file, helpfully named mydownloads.zip which is a real aide memoire when it turns up on my desktop.

Unzip the included file and I get 9 tracks. Checking back on the site, there's actually 17 tracks on the album. Whoops. Looks like I've got only just over half what I paid for. Nice.

It gets better. The tracks are all dumped in the same folder and are all named IN UPPERCASE, helpfully truncated at 47 characters so track two becomes 02_DECODER_RING-THEY_BLIND_THE_STARS_AND_THE_W.mp3 Filename: 02_DECODER_RING-THEY_BLIND_THE_STARS_AND_THE_W.mp3. Brilliant, but I assume there's metadata inside the file that gives me the full name, right?

id3tool 02_DECODER_RING-THEY_BLIND_THE_STARS_AND_THE_W.mp3 
Filename: 02_DECODER_RING-THEY_BLIND_THE_STARS_AND_THE_W.mp3
No ID3 Tag

That is just shockingly poor form. This means I have to manually go and find out the track names and enter them myself. The competition, torrent sites and the like, provides this kind of thing for free! So when I go and spend my hard earned on the legal alternative that gives some money to the musicians, my expectations are that I get at least as much as I would get for free!

PS: I'd prefer lossless audio like FLAC, if you want my real preference.

Louis is growing

Louis playing

It's about time I gave an update on our son Louis. He's doing great, putting on 200 grams a week for the last two weeks and growing 3cm since his birth. All that growth requires a lot of food, which means Holly has been getting very interrupted sleep as he likes to eat at night and sleep through the day.

When he's awake, he's getting more and more interactive, exploring his environment and developing his senses. The changes we see day-to-day are quite amazing, and it's quite exciting observing it.

We've taken a load of photos since we've been home, so check them out.

Welcome Louis Anthony Rumble

After a long and quite painful birth, Holly delivered our son Louis Anthony Rumble on Thursday 30th September 2009 at 22:53. He was 2.7kg (5lb 15oz), 48cm and all the bits in the right places. And absolutely gorgeous!

Yesterday morning he had a little episode soon after we got into our post natal room. Holly woke me up saying he was a funny colour and sure enough, he was what I'd describe as aubergine. I pressed the emergency button they have in all the post natal rooms and cavalry arrived and took over, reviving the little fella. He's been in the neo natal ward for observation and, all going well, will be back with us today. Apparently these blue episodes aren't uncommon in the first 24 hours, particularly when they come early (3 weeks and a few days early).

Holly's pretty exhausted and sore, but is doing very well. Louis being in the neo natal ward has actually given us both a little bit of time to catch up on much needed sleep. We'll need it in the weeks ahead!

Holly and Louis will probably be in hospital for a bit yet, particularly as Holly needs to slowly step down the blood pressure meds under observation. It'll give us time to learn the rhythms and needs of the new addition to the family, and to get the breast feeding thing right.

Thanks for all the wishes being sent from all corners of the globe! We're absolutely thrilled at our beautiful little boy, and can't wait to bring him home.

Rollercoaster ride: birth imminent

Holly, very pregnant, 23rd September 2009

Holly and I have had a bit of a rollercoaster ride the last six days. On Friday she woke up with a headache in the early hours that stayed with her until it was time to get up for work. On her visit to the midwives at the RPA Birth Centre the previous day, her blood pressure had been a little high and she'd been told to look out for the symptoms of pre-eclampsia. A call to the birth centre and the midwives told her to come on in.

When we got there, sure enough her BP was high and we rested for a while in one of the birth rooms. After some hours, we were moved up to a room in the post natal room, Holly's headache hadn't improved and tests showed some signs of pre-eclampsia. The cure for pre-eclampsia is to deliver the baby, which meant a slightly early baby: 35 weeks, which means most of the development is done, so not too bad.

As it turns out we've spent the last six days waiting around with Holly being closely monitored and eventually stabilising. Her BP is stable and at a level to satisfy the doctors, the various blood tests have yo-yoed a bit so that yesterday one went up when it had been falling. Holly's got no headache and seems to have got used to the zonking effect of the BP medication. Last night we even went to our already-planned "Natural Birth" class, though our birth is now unlikely to be particularly natural.

The constant expectation that it was all gonna kick off fairly soon has been pretty taxing, and now that Holly's feeling good she's getting antsy about being in hospital all this time. One doctor even suggested she might be able to come home this morning, though subsequent blood tests seem to have put the kibosh on that.

So we watch and wait. The course of pre-eclampsia is usually a downward progression until the doctors insist on inducing birth. The longer we can safely put that off, the more our little Shlomo will get to cook inside. It's highly likely we'll have a baby by the end of the week: both an exciting and a somewhat terrifying prospect.

Thanks for all the support we've received from friends and family. Apologies for any of you who've wanted to visit that it hasn't been possible. Holly's pretty knackered from the drugs she's on, so I've been keeping her pretty quiet.

I'll be updating progress on Twitter at twitter.com/shermozle. Note you don't need to sign up to Twitter to read this: you just have to bookmark that page and go to it when you want updates.

Guide to the government's insulation rebate

I've built a site that's a guide to the government's home insulation rebate programme. My aim is to provide a fairly quick and simple guide, given that the government site is all full of legalese like "the Owner-Occupier or Beneficial Owner of the dwelling" and so not the easiest thing to read. Most of the other information is from suppliers, so can hardly be thought of as impartial.

I'm also looking to target specific topics of information that are underserved but have a large ecosystem of Google AdSense advertisers, to see what kind of returns you can expect from it. Given how targetted this can be, it's looking pretty good so far.

So check out Insulation Rebate Australia if you want to learn about the rebate.

Get a response from your local member: be rude

Yesterday I sent a rather terse and rude email to my local state member, Carmel Tebbutt complaining that I'd received no response from my email sent last December. It seems being rude helps! Does she not realise she sits in a Labor/Green marginal?

Response from the minion came two hours later. Success? Well, we'll see when the RTA gets around to this.

Date: Thu, 3 Sep 2009 12:36:26 +1000
Subject: Fwd: Wilson Street and Erskineville Road intersection
From: Simon Rumble <simon@removed-to-fend-off-spam>
To: marrickville@parliament.nsw.gov.au

In December last year I send the message below to you and have received no
response.  I know that being a NSW ALP member keeps you busy accepting
bribes (sorry, donations from developers), doing your factional bastardry,
jockeying for position so you can be premier next month and having sex
scandals, but perhaps you could at least get a minion to send the usual
dismissive and condescending response?
This bike lane is now over two years old, and the RTA still haven't bothered
to give the people who use it a safe way to cross the intersection with the
traffic lights.  It seems to me that there's going to have to be a death
before you'll do something.  At that point, I'll remind you of my emails.

---------- Forwarded message ----------
From: Simon Rumble <simon@removed-to-fend-off-spam>
Date: 2008/12/16
Subject: Wilson Street and Erskineville Road intersection
To: marrickville@parliament.nsw.gov.au


Hi there Carmel.  I trust you're well.

I'd like to see if you can achieve some action on a very dangerous
intersection that I cycle through every day.  Back in mid-2006, City of
Sydney completed a handy contra-flow lane for bicycles up the piece of
Wilson Street between Macdonaldtown Station and Erskineville Road.  It's
a really handy and safe shortcut for cyclists heading towards Newtown,
Marrickville and the like, and I see tons of cyclists using it.

The problem is that the RTA still haven't installed a bike traffic light
at the intersection between Erskineville Road and the Wilson Street
contraflow lane.  So instead of having some indication of when it is
safe to pass through, cyclists have to guess when the signal is right
for them (as they can't see the oncoming traffic's signal) and wing it
through the intersection.

It might be reasonable for the RTA to take a little while to get around
to this, but it's now one and a half years since this facility was
built!  Does someone have to die before the RTA fixes it?

If you'd like to see the intersection I'm describing in action, I'd be
happy to meet you nearby and go through the problem.

Kind regards,

Simon Rumble