Saturday, November 07, 2009

The Motorola Droid is a Turning-point

First, a confession. As a co-author of Android Application Development and Chief Architect of an IP communications platform based on Android, my main fascination with Android was based on the Android platform being the most exciting thing that ever happened to client Java and embedded user interface, and to open mobile communications platforms. The Android platform has that sense of perfect balance that I recall from when I first wrote software for the original Macintosh. I enjoy writing Android software even more than I did writing Mac software, both applications and extensions to the Android system software, and I hope a lot of other people will like it, too, which is why I enjoyed spreading the Android software development word through a book.

Using an Android handset was, however, something I did to get work done. So far, the only new-generation smartphone platform that made me want to use it on my own time was iPhone, or, rather, iPod Touch. iPhone, as a phone, was just not that compelling. This gap between Android technology and desire is echoed in others' opinions in the form of pronouncements that Android is the “cool, but geeky” platform. That gap has now closed.

I just got a Motorola Droid, and, instead of a conventional review, I'm going to address the reasons why Android is ready not only to play a significant role in mobile devices, but to do that at the same level of play as iPhone. The Motorola Droid is the first Android-based product that needs no excuses when compared to an iPhone. This is the result of a lot of effort at Motorola to produce a very polished product, plus the maturing of the Android platform, plus some critical applications.

First, the maturing of the platform: Droid runs Android 2.0. For most applications, this won't make a critical difference, and most applications will be compatible with Droid, even if they have not been updated since Android 1.5. Android 2.0 mostly matures the underlying bits – how Android works as a phone, and how the other built-in applications work. Android is now a great phone. Android always had the better UI infrastructure in the Android framework. Now this superiority shines through in a way that should be obvious to the non-geek user.

Motorola did a great job building a product around Android 2.0. The CDMA radio and phone audio keep calls clear and connected. The TI OMAP 3430 CPU makes Android lag-free with buttery smooth visual effects. The touchscreen is big, sharp, accurate, and responsive. The speaker is clear enough to listen to podcasts without external speakers. The industrial design is better in person than in the pictures: It looks massive and square, but it's only slightly less rounded at the corners than an iPhone. It's iPhone-thin despite being a slider; the “frameless” keyboard is friendly to my large fingers and has good feedback. It comes with a 16 GB memory card.

Integration with your Google account is effortless. 20 paces out of the Verizon store, all the 4000+ contacts in my address book were synced and ready to use. And if you have 40,000, you won't have to wait for them all to sync before using them. Sync is a background task and contacts appear in the UI as soon as they are in the handset's database.

There are plenty of competent platforms and industrial designs out there. If that was all there is to it, Nokia would have no worries. The real news in Android is that Google has made it an object of desire, and applications are a big part of that. The tipping point was Google Map Navigation, which makes in-car navigation a feature of Google Maps, but that's not all: Google Listen is second to none for podcast management – which is a lot of what iTunes gets used for. YouTube is, of course, slick as can be. Facebook comes pre-installed and is also very polished. Google Sky Map is an augmented-reality planetarium in your pocket. And on and on. Now there is an amazing and desirable Android app for that.

Android is a new system and it is maturing and improving at a faster pace than iPhone, Symbian S60, or Windows Mobile. There is no feel of a legacy tail dragging behind Android. Applications are impressive and numerous. The app store is simple, fast, and clear. And, while Android is an even-better platform for application developers with the release of SDK r3, Android is no longer just interesting technology.

I used to work in the games business, and the thing about games as products is that features and technologies don't matter if the game isn't fun. Similarly, all the architectural virtue in Android doesn't amount to more than replacing Windows Mobile in the market unless customer say: “That's what I really want.” Motorola's Droid is the first product that can be put on a table next to an iPhone and win the decision entirely on the basis of what the customer sees and experiences within minutes of using it.

And that is a turning point.

Sunday, November 01, 2009

Smartphones, 4G, IP, and IMS – Part II: Why is this G like no previous G

Making a phone call is an activity that seems almost as natural as walking, or drinking, but it has a history. About 120 years ago the layout of the phone terminal, with transducers for speaking and listening, was a settled matter of design. In another 20 years the matter of dialing phone numbers was settled as automatic electromechanical telephone exchanges were introduced. A phone call is a blend of humans making accommodations to machines and machines being designed for humans, and much of the early outcome of that blending persists today.

If you look at the software in any mobile phone, the key thing that makes it a phone is the call-state management. This is what keeps track of the state of phone calls (and, in 2.5G and 3G, data connections, too). It enables the user interface of the phone to display the correct state visually and play the right call progress tones (the ones that originate in the handset) at the right time. It also hooks into power management to light the LCD backlight at the right times, the switch that detects if a flip phone is closed, the keyboard lock, and performs other operations that create the user experience of a telephone.

The design of all mobile call state management is based on having one bearer channel to a circuit switch, plus SMS and data. The first implementations of mobile call state management had minimalist requirements: Display the on-hook dialed phone number on a numeric display, play call progress tones the user would find familiar from the landline user experience, and enable control over a small set of switch-based functions like call-waiting, where the call on the single radio channel to the phone is switched to a second call. It is familiar enough to be accepted by customers and accommodating enough to the way the network works to be efficiently deployed.

There are some differences between CDMA, GSM, iDEN, etc. but they are close enough to share a lot of the implementation. 2G, 2.5G, and 3G differ in the richness of the circuit switched signaling (but not so much that users are aware of it), and in whether and how much data you have. GSM and UMTS/WCDMA data and HSPA differ from CDMA data in detail, but, again, there's not much user awareness of the differences. Color LCD displays on phones make text messaging nicer, but the impact on the mobile phone call user experience has been limited to presenting a contact list and call log.

4G is the first fundamental break from the roughly 25 year old model of cellular mobile telephony. In 4G, the radio is part of a network interface on an IP network, like a WiFi radio. There are no bearer channels dedicated to voice calls. You either do IP telephony using SIP, in the IMS case, or you simulate circuit switched telephony on top of IP in the VoLGA case. There is no practical limit to the number of voice calls and other kinds of communication sessions a 4G device can juggle. Packets traversing the carrier's network carrying voice to other endpoints are no different from packets flowing between the endpoint and a third party or private gateway/switch with a telephone network interface. Identity, communications services, media (how voice or video is encoded), etc., all become decoupled from the network.

So we are entering a product development phase where the winners will be, in part, determined by how well they can make compelling new communications features and capabilities based on this change without confusing the end-user. What it means to be a phone is now infinitely malleable.

Surely, at the bottom of this a phone call has the same limitations as a face to face conversation plus the further limitations of not being actually face to face. No, even this can be called into question. The ability to redefine the phone call experience is comprehensive and the potential is limitless. And the potential ranges from the obvious – what the user sees on a screen – down to the subtlest microsecond-level manipulation of the human voice.

But will this potential be realized? That is more in doubt than that the potential exists. So far, the modern general purpose pocket-sized telecomputer surfs the Web and plays games. It will take the realization that new communications products can be created, and sold, to motivate reconsideration of how phones enable communication.