Tuesday, May 31, 2005

The Ultimate Wireless Killer App

The only true killer app (that I have seen so far) is a Symbian application that lets you shutdown other applications on the phone. While the purpose of the app truly meets the definition of a killer, it pretty much has very little economic values. Even the source code is publicly available.

Windows 95 is now 10 years old (actually only 9 years, since M$ is late on schedule), and Java is now 10 years old. When PC and desktop was emerging, it's very easy for a 1-2 person team write a killer app, build a solid business around it, cash out before M$ comes into your territory, and solve a lifetime's money problem once and for all. Numerous people have done that.

Today, mobile phones are very popular and there has been a lot of hype about the wireless killer app. But it has been a bit of disappointment: so far the most successful apps seem to be SMS-based and some what involve entertainment. I am not saying these are not cool apps. Quite the contrary, some of the wireless games I've seen are pretty amazing. It's just that hype about wireless apps, I believe, sets a much higher bar. You know what I mean.

Comparing to the PC era's spreadsheet, word processing and desktop publishing, there is no equivalent world-changing class of wireless application today, despite the fact that a mid range smart phone today packs much more processing power and memory than a PC 10 years ago.

The reason, I believe, is that the entry barrier is now much higher, both for developing such apps and for building a business around it.

First, software development. Contrary to PC, where you can concentrate your efforts on writing your app on Windows, there are a wide varieties of ways to put your apps on a cell phone:

1) WAP: ideal for content-rich apps that has low usability requirements.

2) J2ME: supported on almost all phones, even low end ones, can build rich applications with high quality of a usability.

3) Symbian: most powerful because the whole OS is exposed. Limited phone support, mostly Nokia based, and mostly high end phones. (Almost) not applicable to CDMA phones.

4) BREW: more powerful API that J2ME. Supported only CDMA phones. Lack of object oriented programming model - only concerns good programmers.

You might think that it's good to have more choices, it is a headache if you have a killer app and want it to reach the widest set of audiences. Now you don't just write one app, but four apps for all these different platforms.

Another difficulty in developing wireless apps is usability. On a PC, you can sell your app even if it has the ugliest and hard to use interface, as long as it serves a void in the market. People will learn to use the app if it serves their purpose and there is no better ones in the market. Why? Because when you use your desktop PC app, you are mostly sitting down and usually are not in a great deal of hurry.

Wireless apps are different, people use the apps in a wide variety of situations, usually in a hurry, even playing games. Expectation for usability is much higher.

Now assume all these technical issues are not problems, either because you have lots of development resources, or a super-programmer who knows how to programmer in J2me/BREW/Symbian. You have you all your apps developed. It's now the time to sell them and make some money. Talk to your customers and let them know about this cool app.

But hold on. Are they really YOUR customers? For some reason the wireless carriers don't think so. Unlike a PC app, which you can pretty much sell it over your own web site, do your own advertising, and have your OWN customer base, you have to go through the carriers to reach your customers. Most likely the carrier will also want a cut on your revenue, even the app already generate additional air time revenue for them.


I think we'll just have to wait a bit longer for the ultimate wireless killer app. While eliminating these barriers to entry won't necessary accelerate the process, it certainly will help a bit.

Sunday, May 29, 2005

Where are the Symbian Evangelists?

My favorite Symbian resource site is NewLC.It's not even officially run by Symbian. Pity.

Microsoft didn't own the desktop just by bullying others. In the early days, people bought Windows simply because there are so many useful applications available.

How did Microsoft get so lucky? They were not. Like Windows itself, they learned something from Apple, and became a master of it.

Apple created this special breed of people called Evangelists. The most famous one was Guy Kawasaki. These are super smart programmers who also has a knack for mesmerizing other programmers/hackers (or people skills as they say it in B-school).

Microsoft built teams of evangelists for each product line. If you are interested in learning how it worked, here's a very interesting book.

I wish Symbian will become more interested in evangelizing than simply making those learn-to-write-Symbian-code-in-20-days courses.

It's as if they somehow find a positive correlation between:

a) World-class software that make their OS succeed; and
b) Programmers who attend their courses because they work for companies that are willing to pay GBP6,000 plus travel costs.

Wednesday, May 25, 2005

Mobile Operating Systems

In the market right now there are many type of OS on mobile phones. They can classified into two categories: open and proprietary.

Phone OS that are open has a public API that allow 3rd parties to write code on it. Most of them come with an SDK. Publishing the application after you write it is another matter that deserves an article by itself. The predominantly available open OS are:
- Symbian;
- Microsoft Windows Mobile;
- Linux; and
- Palm OS

Note that I made a distinction between OS and APIs. There are many ways you can write apps on phones using some public API, like J2ME and BREW. While you write some very sophisticated apps using these API, they are not OS. They lack many of the features of a full-blown OS. One very easy way to tell is to see if the API provides a means to write device drives. All the open OS I mentioned above provide means to write device drivers so that you can port them to hardware platform, although this information are mostly not open to the public.

There are many closed (aka proprietary) phone OS as well. Some are quite good, some are buggy, but that's not my point. I believe the future economy of scale in the mobile phone business favors open OS HUGELY.

Linux mobile OS

Two news items today triggered this article:

1) Nokia today announced they will release an Internet tablet, based on Linux, instead of Symbian which is one of their dominant phone OS (the other architecture is based on the Nokia OS, a Nokia proprietary RTOS that began its development in the early 90's).

2) PalmOne is to change its name back to Palm. (Confused? Check this out. About two years ago Palm is split into two companies: PalmSource makes the OS and PalmOne has the PDA/phones). What is interesting in that news article is that PalmSource is venturing into Linux.

It seems the open mobile OS is starting to converge a bit, in this case slightly favoring Linux.