Wednesday, November 14, 2007

Yo mama is a PDA

What is a smartphone?

Frequently, the question comes up “What is a smartphone?” Usually, this question is mixed up with other questions like “What makes a good phone UI?” and “Why don't all phones use a smartphone OS like Windows Mobile?”

The confusion comes from the fact there are “good” or “nice” UIs that can be classified as smartphones, like iPhone, and clumsier UIs that are clearly in the smartphone category, but that are hung up on a design legacy that prevents them being competitive with products like iPhone. Are they all smartphones? Do we need more categories? What about the Linux-based 3G phones in Japan? What about Android?

The PDA design legacy

The idea that handheld devices need an operating system emerged long before mobile handsets became the dominant handheld device. It emerged before one could expect all devices to include a wireless network. It emerged before Web browsing and Web applications became central to handheld device use cases. It emerged before we had a choice between a circuit switched voice network and packet switched data networks. It emerged before the disaggregation of communications services and network access.

Handheld device operating systems originated with PDAs. There are several problems that arise from this design legacy: PDAs started out as non-network-connected “sideloading” sync-oriented devices for carrying your contact list and schedule around with you. Was that even a good idea to begin with? Evidence is, no: The worldwide market for PDAs is less than one tenth of one percent of the mobile handset market. But, like some string of selfish DNA with a will to survive, PDA operating systems began to infect mobile phones.

An awkward relationship

This was never a satisfactory combination: PDA phones were heavy, expensive and sucked batteries. Some PDA users were happy with the ability to keep a large contact list and a synchronized schedule with them, but folding up Microsoft Outlook and putting it in your pocket is not a goal for most people.

The smartphone has had a long, slow growth trend in the market. Only three smartphone OS suppliers remain, one of which is on life-support, one of which can afford products that don't turn a profit for many years, and one which has as their almost-sole customer the largest handset maker in the business

The new need for a better phone OS

We are now long-separated from PDA use cases as key drivers of handheld device UI design. Multimedia, the Web, and a diverse combination of IP and mobile communication on multiple networks, using multiple services now drives the requirements for handset user interfaces. This is why old school smartphone OSs are facing new competition: It was easier for Google to make Android than it would have been to turn Palm OS, or Symbian and UIQ, into a platform that meets Google's requirements for a mobile device OS.

The new requirements:

  • An OS that is non-exclusive, cheap to license, and adaptable on my schedule, not the OS vendor's.
  • An OS that brings the Web front and center in the user experience. The “mobile Web” is a crock. Everyone wants the real Web.
  • An OS that is undemanding of the user: Direct manipulation, touch connected to action, no multi-step operations, no “dialog boxes” - communication is not like filling out forms. In other words, it can't be harder to use than a non-smartphone, and it can't be less intuitive than a media player's UI.
  • An OS that accommodates new forms of communication while retaining the simplicity of the mobile phone. Access to all of our modes of communication, all of our networks, and all of our services are converging into one device. The next phone UI should not make this a burden on the user, but a benefit to the user.
  • An OS that makes presence central to the user experience. The “start page” of your phone should tell you about your contacts' availability.
  • An OS that makes non-verbal communication a first-class citizen in the user experience. All forms of messaging should be treated uniformly, and a single interface should organize all messages.
None of these top requirements existed when PDAs were designed. Your to-do-list is not the most important thing for your mobile device to display. Your calendar is important, but it isn't central to communications tasks.

It is also worth noting that no mobile device meets all these requirements, especially not the communications-oriented requirements. The PDA heritage is being discarded, but what will take it's place? This is, as yet, unclear.

The new wave of smart device operating systems

Symbian (plus UIQ or S60), Palm, and Windows Mobile are the old-timers of mobile device operating systems, and the reason they are under attack from a new wave is that they cannot shake off their PDA heritage. Nokia is making the best of it by putting Symbian on some very capable hardware. But if you want to know why Nokia's amazing phones are not challenging the iPod, Symbian and S60 are the prime suspects. You simply can't build a user experience that is competitive with iPod using a platform born from a PDA (Yo mama!).

So what do we call the new arrivals? Android, the newest arrival, puts the question into focus. Android does away with most of the clutter of the PDA-style interface in favor of a friendly application “dock.” Sure, you could build a busy, multi-tab, form-filling-centric application in Android, but that's not what Google has done. Android's map application is full-screen, clutter-free, and all about direct manipulation. So is Android a “smartphone?”

I, for one, welcome our new Android overlords

I would venture to say that Android's creators hope it isn't thought of by end-users as a smartphone OS, even though it is targeted to the same big-screen hardware platforms as Windows Mobile. Android is for everyone who wants to surf and search on the go, not type-A email addicts who need to check their to-do list every time they glance at their phone. If you have the goal of building a better communications tool for everyone, don't look in a businessman's hip-pouch. You won't find it there any more than you would find inspiration for any consumer mass-market product there.

Friday, November 02, 2007

Is Indiana close to Nirvana?

If I can install Debian I can install Solaris

Earlier, I explored what the world would be like if I were the Sun King: In short, Solaris would rival Ubuntu for the role of desktop open software operating system, and Sun would be back in the game in desktop computing.

With Project Indiana, Sun has brought itself within reach of that goal. Project Indiana is what happens when you give the task of creating a Solaris distribution to one of the founders of Debian: A customer-friendly experience with Ubuntu/RHD-like ease of installation and maintenance. Ubuntu still rules the desktop ease of installation rankings, but getting Solaris on your machine is no longer “daunting” - merely not as bulletproof as Ubuntu.

Now that a Sun OS is within the grasp of mere mortals, or merely those who would rather not spend an afternoon screwing with an unfriendly installer, what next?

The boundaries of the Sun King's domain

What does Sun bring to the desktop? What should Sun want to bring to the desktop? A reasonable straw man for Sun's goals can be summed up as “If I intend to do some Java coding, I should want to use Sun's distro for that purpose.” That's not taking over the world, but it's a good start at taking over a large number of the opinion leaders in open source desktop OSs.

What are the ingredients of a killer Java developer's distro? To sum it up: a dose of realism and a dash of Sun's vision:

  • It will have to acknowledge that Eclipse and Apache are key elements of many Java projects.

  • It should project a vision of Java development that Sun wants to see happen: NetBeans and GlassFish, both of which are very worthy competitors.

  • It should provide examples of Java in action: The desktop should be a Java desktop, and applications running on Glassfish should ship with Solaris, along with client applications written in Java/Swing.

  • It should show contributions from Java technology to FOSS software development needs, such as using NetBeans to edit and debug mainstream FOSS applications written in C.

What makes a modern desktop

Linux is a rapidly growing choice for the desktop because it is a blank slate: Your choice of Gnome, KDE, Enlightenment, etc. for desktops, and a wide choice of applications in a staggering number of application categories on a system that gets out of your way to let you customize. Sun should aim off to one side of Linux. Solaris should become the OS X of open source distributions: It should be clean, uncluttered, and preconfigured. It should target current-generation desktop PCs to the possible exclusion of low-spec hardware. It should be great looking and more than a little sexy.


Sun's near-term goal should be to seduce the opinion leaders in open source software. That will require give and take, and it will require understanding that audience. Sun's own employees should be a good pool of open source opinion leaders, and tapping that resource is largely a matter of Sun taking an unequivocal position on its own goals and intentions in open source.