Wednesday, January 6, 2010

Android Critique

I like to think that I can evaluate and judge a product based on its merits, but there are some companies that elicit emotional responses from me. Apple is one. Contrary to common emotional responses, I get repulsed by Apple products, just because it is Apple. I used to be neutral with them... I liked the iPod, but was never very interested in anything else they did. With their handling of the iPhone (and the App Store specifically), I have come to mistrust them, and now I will actively avoid their products when possible.

Google also brings up emotional feelings for me, but quite the opposite. I have a soft spot for Google for a few reasons. They are strong supporters of open source, both by providing a lot of open source projects (Android, Chrome, Chrome OS, some neat Java libraries... to name a few), but also by providing infrastructure (google code). Most of their products are free, which is hard to dislike. Not only are they free, they tend to be pretty good. I have never had problems with their search. GMail has always been so simple and easy to use that I would never think of switching (especially after seeing people struggle with Yahoo Mail, which seems so cluttered and complicated by contrast). Android blew me away as my first smart phone (with the G1).

With the emotional responses, it's a bit hard to judge whether I like a product from its merits, or it is just my fanboyism that is blinding me to the issues. I want to take a moment to critique Android in this light. I still love the platform, but it would be foolish to claim there are no issues. I honestly believe that overall it is a step up from the iPhone, but I have never had extended time with the iPhone to really have an honestly unbiased opinion there.

First, the good things. Given the right hardware, it can be a snappy OS. The G1 can be sluggish, but my new Droid has proven a significant speed boost. Widgets represent a huge advantage over the bland icon-only iPhone interface. I like having the calendar straight there on my desktop, no touching to see what I have coming up. The ability for an application to always display pertinent information is pretty cool.

Multithreading and background processes can be a pain to implement, but it is a neat feature that Android has over the iPhone. I can have applications actively retrieving useful information, or interacting with each other, or switch between processes while long running tasks are executing. It makes my phone experience much more in line with my desktop computer experience.

The updates are constantly making the Android experience better. Before I switched to the Droid, I had navigation on my G1, something that was nowhere in sight when I first got it. Widgets didn't really exist, and I can now do things such as search with voice commands. The Market (equivalent to the Apple App Store) has slowly evolved with the platform. It only supported free apps initially, but now has both paid and free. Screenshots were added recently, along with the ability to view the top free and paid apps separately. I expect the Market experience only to improve with time.

Now to move on to some bad things. I really like the Droid hardware, but one thing I miss from the G1 are a dedicated number row on the physical keyboard. It is really annoying to have to press alt to type a number. I also miss a dedicated call/answer and hangup button. Those 2 missing features of the hardware are offset by the much better screen and the increased processing and storage power. However, I really miss them.

As for Android itself, the biggest issue is probably caused by the choice of Java as the development language. Applications tend to pause every now and then, including the standard apps like the browser. It could be too many background processes running, but it is very reminiscent of garbage collection pauses which are common in Java. I hope this will be improved with ever better hardware along with improvements in the Dalvik VM that Android uses.

My G1 didn't seem to lock up that often, but my Droid has already locked up a few times, and experienced other glitches that you might not be used to happening in a phone. The oddest recently happened where I could hear just fine during a call, but only when the speaker was on. Switch to non-speaker mode and I couldn't hear a word. Rebooting the phone fixed it. I expect software to fail like this now and then, but it is not good to have my phone crash when I could be receiving an important call, or otherwise experience weird glitches while speaking with someone. I expect updates to resolve these kinds of issues, but it is unfortunate to see any of such catastrophic failures. Probably the worst failure I have had was on my G1, when I had lost reception for about a day without realizing it. The phone just stopped receiving phone calls until I rebooted.

There are a lot of features that are very useful, but very hard to discover. For example, long press on the home button will bring up a dialog that will let you run recent applications. This is extremely useful when switching between a couple applications. Similarly, I only recently learned how to cut and paste with keyboard shortcuts instead of clunky menu controls. I had to find those by looking online. Perhaps it isn't fair to blame the platform for hard to discover features, but it might be nice if the platform gave easy to use, short tutorials the first time you do certain key tasks.

The Market still needs a lot of work. What is the one thing Google should get right in its mobile platform? Search! Searching in the Market doesn't work very well. I have run keywords looking for specific applications, only to get back no results, even though the keywords should have worked. For example, "snogg" will not find the "DoggCatcher" application, even though the developers are "SnoggDoggler." There are also very minimal ways to find applications. You can search, you can browse various categories, and you can look at the top paid, top free, or "just in" of a particular category. Unfortunately "top" has no clear meaning. Under the top free list of all games, PapiJump is below WordSearch Unlimited Free. Except, WordSearch has less downloads (50k - 250k vs. PapiJump's over 250k), and a lower rating (4 stars vs. 4.5 stars). It would be nice to sort the lists in various ways, such as by overall vote score, number of downloads, whatever the current "top" algorithm is, alphabetically, etc.

Overall I am very happy with the platform, but some of the issues I have run into are probably non-starters for some people. It has clearly gotten better since I first started with my G1, so I have no doubts that the platform will only improve with time, and eventually beat out Apple as the #1 smart phone.

1 comment:

Noah said...

Perhaps it isn't fair to blame the platform for hard to discover features

Yes, it is.

When I worked at ACCESS (with the PalmSource guys), this was a constant point of debate. The difficulty of discovery of a feature is a major part of its design.

They probably did realize this was hard to discover, but figured it was better to do it this way than have it be more obtrusive, particularly if they thought of it as a "power user" feature.

We didn't do that very much at ACCESS, but being descended of Palm gives a company some pretty specific ideas about who their users are and what those users want :-)