Why free software applications are a priority on mobile platforms (not device drivers)

Bradley wrote about mobile software freedom, a field that I’m obviously deep into because of my work at Funambol. His quite long article Musings on Software Freedom for Mobile Devices contains an analysis of the situation, which mobile platforms are more freedom-promising and why (in short: Maemo/Moblin merged as Meego and Android/Linux). I only disagree with Bradley on the priorities he sets. He says:

The challenging and more urgent work is to replace lower-level proprietary components on these systems with FLOSS alternatives,

I don’t think that device drivers are really the first problem the free software movement needs to tackle. I believe that the most important issue is to have good applications, with superb usability and that are innovative in order to attract users, fast. Some of the tactics used in the GNU project will need to be adapted to the speed of mobile, while others are not applicable.

Stallman’s project started in a time when PCs were slowly becoming relevant in society. It took almost 10 years before they were cheap enough to be in the bedrooms of young, smart programmers for them to easily contribute to the project. GNU also started developing applications first, and it took almost 10 years to start working on kernel and device drivers. The early adopters of GNU were highly skilled users, in a world with few computers with a clearly winning platform (the standard/commoditized platform IBM/Intel x86). Stallman and the whole free software movement had a lot of time to develop a nice free-as-in-freedom operating system and applications on standardized hardware. They also had the Unix design to follow: how the system had to look was pretty clear, it only had to be ‘better’.

Compare those first ten years and the quantity of computers in the ’80s/’90s to today’s speed and the quantity of mobile devices in everybody’s pocket (not just in developed countries), without a clear plan to follow(like Unix was for GNU): the game is radically more challenging. Take Google’s G1 as an example: it’s only one year old but its operating system version is obsolete (and customers are complaining). With users changing phone every 18 months in the US, the lifecycle of a free driver is too short to justify the effort.

On the other hand there are many applications that need to be liberated, like social applications that respect freedom in the cloud, mobile email client that don’t suck, mobile music players with stores that are not defective-by-design. And many more need still need to be imagined.  Developer’s focus should be on what appears in freedom-giving mobile applications markets: we made the application market concept popular (apt-get repository anyone?), now we need to move to mobile and to fill them with good and free applications first. Device drivers can come at later stage, eventually after hardware manufacturers will have battled each other to the death and one winner will emerge (like it happened with x86).

Skype open source. Not!

Skype open source? Reading the full announcement on Skype blog:

[…]Having an open source UI will help us […]

So, it’s not Skype being open sourced, but it’s only the UI. The full sentence should be:

Having an open source UI will help us further our [Skype’s] plans to monopolize the Voice Over IP market with a proprietary and secret protocol that nobody can interoperate with. [Evil laugh]

I wish Google released a fully free and open source Gtalk, server included.

Mobile phone markets are designed to split our community

Apple’s iPhone biggest innovation is its mobile app store: for the first time it allowed installing software on the mobile device with the convenience of any modern GNU/Linux distribution. Like in Debian, Fedora, Ubuntu, installing software is just a matter of browsing a repository and click on a button. It’s such a good idea that now every mobile phone manufacturer has created its own mobile app store version. Nokia has Ovi Store, RIM/BlackBerry has App World, Android has its Market. I’m sure that more will come, also from the network operators.

Differently from GNU/Linux software repositories, though, these markets only allow non-free software. The manufacturers together with the network operators act as strict gatekeepers, allowing to reach the users only binaries signed with developers keys. Even if there are many free/libre software projects distributed on the mobile stores (Funambol, WordPress, and many other), the users cannot practically enjoy the freedom to modify the software autonomously because of tivoization.  So we have in our hands powerful computers, always connected to the network but its users are deprived of one significant freedom. The worst effect of these mobile stores is that they split our community, forcing free developers to choose between distributing their software while compromising their morality or not distribute at all.

Given the sad news about OpenMoko ceasing development of the new phone, it’s necessary to gather up and think of alternatives. Jailbreak and Cydia on iPhone is a start, and other phones will need similar liberation. But these are just short-term palliatives. In the long run, I hope we’ll have more OpenMoko-like devices, with full freedom attached.

Buy, sell, regret. A lesson from a good professor

My professor of International Economics, Fabio Sdogati, is quite a character: he has a very effective teaching style and I really like to go to his lessons. Last night’s lesson was about exchange rates policies. He was showing a graph to demonstrate how exchange rates follow clear political decisions. His theory is that, at least in the mid-long term, the monetary markets are governed by politics, not by market rules. Answering a question about when to (dis)invest in currency that is about to [de|ap]preciate against another, he gave a small piece of advice:

don’t even try to buy/sell at the peaks. The rule is: buy, sell, regret!

In his roman accent it sounded great. I love him 🙂