Russ Nelson's blog

[ Home | RSS 2.0 | ATOM 1.0 ]

Sun, 27 Nov 2005

The Nokia 770 is not an embedded system

The more I look at the current state of applications for the 770, the more I realize that all the problems come down to the application installer. Basically, it's crippled. Somebody seems to have made a decision that the 770 is an embedded system. As such, it needs to be a pristine execution environment into which applications are installed, and don't ever frick with the root filesystem.

Unfortunately for that concept, the 770 is actually a fully capable Unix box. It has communications, mass storage located on multiple partitions, multiple I/O devices, and supports multiple user privilege levels (root and user).

The application installer won't let you do anything interesting. For example, I've not yet figured out how to install Python. I suspect that the problem is that the Python package was written for the developer's image, but who wants to use that -- it doesn't have a web client.

Nokia wants to have a device that it sells in droves to consumers. Consumers are going to want all the crunchy goodness that we developers are creating. Nokia knows that the customers are going to complain to Nokia whenever anything goes wrong. I think that the best solution has in essence two classes of users: naive (who get tech support) and self-supporting (who don't). Here's how my plan goes:

Nokia positions and sells the 770 as a nifty web interface, with a web browser, email client, mp3 and Internet radio player. Additional applications are available via the Nokia store, and people have to purchase these applications. Nokia wallows in the gravy, and uses some of that income to certify that the applications aren't going to fux0r users, and some to compensate the developer of the application. The application installer actually installs packages into the system rather than a sandbox, so packages are full-fledged peers (that's one reason why why Nokia has to charge for the applications -- to ensure that no badness passes into the user experience).

There are, however, alternate sources of packages. When you install a non-Nokia-certified application, you are prompted "This will void your warranty. Continue or Stop?" You can always get your warranty back by reflashing with a pure Nokia image. If a naive user calls for tech support of a machine with no warranty, they are sent to instructions on how to reflash back to in-warranty status.

Hardware repair policy is simple: Nokia always reflashes if it has any trouble running diagnostics.

Obviously, developers have an interest in creating applications that Nokia will sell for them, and which keep the user in warranty. If they choose to develop applications which aren't blessed by Nokia, that's okay too.

Everybody's concern is met: Nokia gets to ship a product with an enhanced revenue stream, Customers get an easy-to-use product, and Developers get full access to the whole machine and only need to develop for one image: the standard image shipped with the 770. No need for a special developer's image.

posted at: 05:56 | path: /770 | permanent link to this entry

Made with Pyblosxom