Measuring Community Growth

The discussion held a few weeks ago at Community Leadership Summit around how to ‘measure’ open source projects were very interesting. There was even a keynote by David Eaves during OSCON about the topic (well worth 15 minutes of your time, watch it below).

There are many people comparing different open source projects, I keep seeing blog posts trying to extrapolate complex concepts from too simple facts. For example, it’s hard to evaluate if an open source project is growing just by looking at the total number of commits per week: when number of commits slow down it may mean that the codebase has reached maturity, not necessarily it’s a sign of diminishing interest. Other simple facts visible on github like the number of followers, forks or ‘watchers’ may not mean much if the developers of that project don’t use the ‘social’ features offered by github.

To measure the “growth” of a project I usually look at a whole bunch of numbers and trends (more importantly) like the total number of committers over time, total new committers over time and also things that are not code-related traffic on mailing lists/forums, websites, google searches, activity on bug trackers as indicators of growth of a community. The total number of commits is more meaningful when taken as one element of ‘livelihood’ of a project (is it still maintained?) but it needs to be integrated with other elements to avoid making mistakes.

All the people interested in measuring open source communities should join the Metrics Working Group at The Open Source Way and push the conversation forward.

Libreplanet, Android, Funambol, Symbian, Ubuntu, Gnome, Mozilla and more at OSCON

OSCON 2009 was as good as I thought it would be. This year there was no mobile specific track but lots of talks about cloud computing. I met very interesting people, attaching faces and voices to email addresses and identi.ca accounts. The BoF about mobile cloud gave me the chance to discuss ideas with Andy Oram and other smart people and I’ll start developing them in the next few months.

Award winning Evan Prodromou and other identi.ca folks liked the idea of integrating the FoaF network in your mobile and desktop addressbook. With Bradley Kuhn and others of FSF Libreplanet we talked about the free software version of the Android OS. Some people are already working to liberate the radio drivers (GSM and wi-fi) in order to have a fully free kernel while many applications are already free as in freedom. The group is also interested in the Funambol syncml client because that adds more autonomy for the user.

The session by Stormy Peters gave me a few ideas for Funambol community that I’ll start implementing as soon as next week (watch Twitter and identi.ca for announcements). We also talked about Funambol as a provider of grants for Gnome projects. With Louis Suarez-Potts we talked about code hosting platforms and ways for the Funambol and OpenOffice.org community to collaborate.

The Ubuntu team gave very interesting presentations. I talked with UbuntuOne developer Stuart Langridge about syncing data (see his presentation): I loved to hear about integrating CouchDB with Kontact/Akonadi and GNOME Evolution.  I followed also the presentations about Launchpad: interesting, especially the license, but I’ll have to dive deeper in it. I joined the Symbian Foundation workshop where I learned that Symbian^1, used in the latest handsets, has a Python interpreter installed by default. Sounds cool especially since it has less limitations than the Java VM.

The presentation of Mozilla Thunderbird 3 gave me hope that there can be an email client that doesn’t suck! And it was fun to follow Mako’s talk about ‘Antifeatures‘. The SourceForge Community Awards party was great, with free drinks, music, entertainment, a r/c car that runs on walls and tatoos. Great to be there, hope to repeat next year.

Mobile Cloud Computing, Part II: Where do We go From Here?

Mobile cloud is going to be big, according to a study published by ABI research. And they’re not the only ones to say so.

In this second part of my thoughts about mobile cloud — which I hope we can all talk about at OSCON — I’ll try to find answers to this question: as a developer commited to free-as-in-freedom software, what would you need to do to get started?

In this who’s who in mobile open source, Funambol and Volantis are shown as the only companies offering service delivery platforms, demonstrating that there are many ways to develop free software applications but only a few solutions to build open mobile services with.

Linux support packages Wind River (also one of the most prominent integrators for mobile Linux stacks), MontaVista
Operating systems for feature phones: Purple Labs; for smartphones: Azingo, Access Linux Platform, A la Mobile, OpenMoko; for MIDs: Intel Moblin, Ubuntu Mobile. Also OKL4 is virtualisation (hypervisor) software for mobile phones.
Middleware GNOME’s GTK+ and related projects (e.g. D-Bus, Gstreamer), the graphics subsystem of Nokia’s Qt and the db4o database engine.
Application environments Google’s Android, Nokia’s Maemo, Nokia’s Qt, Eclipse eRCP, Sun’s Java phone ME, Motorola’s Java MIDP3, AOL’s Open Mobile Platform and Nokia’s Web Runtime
Browsers Apple’s WebKit (on the verge of becoming a de facto standard for web-centric service delivery) and Firefox Mobile
Service deliv. platforms Funambol (consumer email sync), Volantis (content adaptation)
Development tools Eclipse Foundation (manages the Eclipse IDE, used as the basis for Nokia’s Carbide, Wind River tools and many others). Plus RhoMobile – a new set of open source developer tools for creating connected enterprise apps on smartphones.
Industry initiatives Symbian Foundation (EPL license), Open Handset Alliance (APL2 license), LiMo Foundation (open source as it builds on top of Linux), GNOME Mobile and Embedded (LGPL-licensed GTK+ and related software)

On the other hand, proprietary mobile services are blossoming everywhere. Funambol recently listed and reviewed 11 mobile cloud sync services, from Apple MobileMe to Vodafone Zyb.

A minimum requirement are interoperable services implementing open standards, because users’ data must be preserved at all costs. Proprietary walled gardens create small monopolies that sometimes grow big and take away personal data from the users. Two recent cases demonstrated that users of mobile cloud services are exposed to serious problems: one with Amazon Kindle and the other with Palm Pre. Both are mobile devices, both rely on mobile cloud services for most of their usefulness. Kindle users that buy electronic books are realizing that they don’t end up owning anything and Amazon can too easily prevent users from enjoying the books they’ve bought.  The other disturbing news story reports that Palm Pre owners cannot access the music that they bought and stored in Apple’s iTunes: Apple still wants to own the music it sold its users and keep their data hostage.  I think these are just a visible signal of  proprietary services battling to own the users’ data.  If Kindle and iTunes used interoperable and open standards, which could be safely implemented in free/libre open source software, their users would not face much of these problems.

The pure mobile service frameworks available for freedom conscious developers are Funambol, which offers push notification, synchronization and device management, and Volantis, which offers content adaptation to mobile browsers. Rhomobile is another options, a mix between a development tool and a service delivery platform. Funambol is fully based on the Open Mobile Alliance (OMA) open standards Data Synchronization and Device Management, therefore services built with Funambol can easily respect users’ rights. The server aspect is complemented by the Java and C++ SDKs to develop native mobile applications for the devices. Rhomobile is based on Ruby and can be used to develop applications that act as being native but use the local web browser.

While Funambol and Rhomobile in theory can be used to develop free as in freedom mobile cloud services, there is still one big issue to solve: locked down devices. Network operators don’t want the users to be too free so almost all of them prevent users to run applications that are not digitally signed. RIM, Apple and to some extent also Symbian devices are all locked down, which renders users’ freedom in the mobile cloud a balancing act: on one hand a developer needs to obey the rules dictated by network operators and device manufacturers; on the other hand the same developer needs to find ways to deliver freedom to the users. In Funambol’s case, for example, the official iPhone client can only sync contacts because the official Apple SDK only allows that. Nonetheless, Funambol client for iPhone can sync also calendar accessing directly the sqlite database, but such version cannot run on the device unless it is unlocked (breaking Apple’s warranty).

This is only scratches the surface of the mobile cloud services for the freedom-concerned developers and users.  There are further issues to talk about, including:

  • device management,
  • how to push software updates to the devices,
  • security of data (since people tend to lose their phones),
  • how to keep data secure while transfering.

The free software movement should take the lead to address and solve these issues. I hope we can spark the discussion at OSCON. I’ll be available all days ping me any time. Follow me on identi.ca or twitter.

Open Mobile Exchange speech at OSCON2008

OpenMobileExchange room at OSCON2008
Usually it’s the speaker that is photographed, this time I took the chance to take a picture of the people listening to my speech at OSCON2008 for Funambol. Quite some people where there and they seem interested into “Leveraging Mobile Open Source for New Wireless Apps and Services”.

It was a very interesting session, Surj Patel and Raven Zachary have put together an amazing panel.