Russ has a post about his take on mobile Linux. He’s right, of course. I’ve been on the lookout for mobile Linux devices and harping on the mobile open source issue for a long time (unfortunately you can’t read the original Mobile and Open article, The Feature is gone now). I’ve been an embedded Linux developer for a long time, and I’m always amazed at how well the system works. And when I say “The System” I don’t mean just my desktop or my laptop, I mean the whole system supporting open source as a movement. How problems get solved, how the code is managed, how communities come together to create new projects. The whole shebang. I used to get scared when people told me that I was “wasting my time with Linux”. They were older than me and much wiser. I really was concerned when they told me that Linux would never make inroads against the likes of Solaris and Ultrix and Windows NT. I’ve gotten over that completely now. Now I just laugh when people try to explain away the success of open source. Most of them are obviously just afraid of change, some are just stupid. So that out of the way, lets just assume that Linux is going to succeed and figure out how to get there the fastest.
The first thing to realize is that users don’t care at all if their device is Linux. Developers care, and users care about the second order effects of the developers caring. The second order effects are things like an increased rate of platform innovation and a deeper software catalog. So the initial stages call for making the platform appealing to developers. All the activity indicates that Nokia has nailed this with the 770. There are a bunch of different ways to make developers happy. Some like squishy easy interfaces with knobs to twiddle and levers to pull, with everything abstracted and covered over. Those aren’t the developers you want to appeal to at this stage. The developers you want to appeal to want access to everything. Even if you put a nice clean interface over everything they would just rip it apart and reconfigure it for what they want to do. So give them information and examples at every level of the system. To steal a term from the media side, make it easy for them to rip and remix what you’ve provided. Give them packages to make things easy, but also make it easy to pull those packages apart and figure out what they do. Make it easy to put them back together in new forms and share.
Second, transparency of the product vision and technology plan. There are a bunch of resources already out there for the 770, but where’s the blog for the device from Nokia? In order to keep the community thriving and growing it would be best to have the folks from Nokia out there mixing with the hackers and helping out. Think about the early stages of open source Palm development. When the gcc port and prc tools open source projects launched there was a bit influx of developers into the Palm community. When you went to forums or news groups back then there were folks from Palm all over the place. There was a real sense that Palm was watching directly what was going on and trying to help. What happened during those early years is responsible for the early success of Palm I think. On a related note, the later focus on the “more lucrative” corporate market and alienation of the open source developers is the cause of the later problems at Palm. Their efforts to pull in the open source projects and control the discussion forums is an excellent example of what not to do. Fostering the community without smothering it. Too bad Nokia has lost one of the best people I can think of to manage that effort. The communication needs to start soon and it needs to be constant. More transparency, and ignore and abandon the arguments against it.