You are here

Community First!

The current release of MySQL shows the problems free and open source software projects face that put business first and community second. Michael “Monty” Widenius critizes in his Blog the current developement model of MySQL and recommends not to use the current release 5.1 of the database system.

The reason I am asking you to be very cautious about MySQL 5.1 is that there are still many known and unknown fatal bugs in the new features that are still not addressed.

Monty points out problems stemming from having a company taking the lead in the development of a free software system - cause they need something to sell fast. In this article I am supporting the view of Monty and discuss his views in regards to Freifunk and LXDE. I believe communities must take the lead in order to make and keep a project on the bleeding edge, however, we should work together with companies (like FON.com for Freifunk or ASUS for LXDE) and exchange resources. Both can profit. In the end open and free community projects are all about cooperation.

In his blog entry Monty gives some reasons why the MySQL development department again got a quality problem with the release. Problems are ranging from the fact that MySQL 5.1 was declared a release candidate to early (because of commercial reasons), to focussing too much on new features rather than on quality (because of commercial reasons), to involving developers that are not experienced in developing database systems (Mario: Maybe because they do not come from the community?), to not keeping the development open for testing and participation of the community and more.

As I said in my talk at the MySQL users conference, I think it’s time to seriously review how the MySQL server is being developed and change the development model to be more like Drizzle and PostgreSQL where the community has a driving role in what gets done! (http://monty-says.blogspot.com/2008/11/oops-we-did-it-again-mysql-51-rel...)

What can we learn for the free software and other open source projects here? The consequences are clear. Projects that want to stay on the bleeding edge of technology with quality code and widespread support must put the community first.

In the projects I participate - e.g. freifunk, LXDE, FOSS Bridge - I always work hard to bring the community together, make the community grow and keep and foster it. And this is not always easy. There are different expectations of people involved, different goals and outside circumstances change and have positive and negative effects.

For example, even though the Freifunk community was in the spotlight many times in the last two years, it seemed somehow stagnating. We had put a lot of resources to rebuild the website and foster more exchange, but with the broader availability of broadband in some districts in Berlin for example the motivation of people to participate to get constant Internet access became less. Additionally new business models seemed to draw people away from freifunk to something that seemed easier to use and offer many things similar to Freifunk. However Freifunk is more than mere exchange of free Internet access. The idea of Freifunk is to build a local network - the public space in cyberspace, but we did not have the tools easy enough giving everyone the chance to build the local network with the limited resources, especially time!, that people have.. but we are getting there with simpler software and easier to use devices.

FON.com received different reactions in the core groups of the global Freifunk community when it started, ranging from refusing any connection with FON to trying to ignoring it. Some welcomed FON and their involvement. FON pays some of the core OpenWRT developers which is the base of the Freifunk Firmware and it offers new hardware, that can also be used by the Freifunk community. Personally I do not mind working together with FON. As I see it, we have to be pragmatic and everyone has to make a living and the Freifunk community could profit from the involvement of FON and other companies. I would like the decision if people from the community work for and with FON left to the person him/herself. At a recent meeting in Berlin, I have discussed this a bit with Martin Varsavsky. Martin actually asked me how FON could work together more with the Freifunk community.

We should be clear here though. FON and Freifunk are two very different things. FON is a company that labels its participants (actually its customers) community. Freifunk is a community with many different people - students, engineers, scientists, free and open source activists, people who want Internet, people who want a truly free network, people using it for their business, people working for development cooperation and so on. People have different motivations to participate in Freifunk - interest for technology and development, Internet access, interest in new ideas and projects, inspired by idea of freedom, a way to make a living. These people would not participate if Freifunk was a commercial operation. I remember the saying of some ¨Money destroys the community¨. It is formulated in this regard, I believe.

Still, we should not be absolute here - meaning - we should acquire resources and money for the community -> for conferences, events, hardware for developers, funding for projects etc.. Based on my experience of the last years, communities need resources. We should study successful models of communities that have achieved to channel resources to the people really working on it. Associations, Foundations and similar organisations are very helpful here as they keep things transparent and offer newcomers entry points. Also companies that would like to support projects have it easier to talk to someone from the community if there is a working organisation set up.

During recent months I have seen more activity in the Freifunk community again. With the new OpenWRT Firmware Freifunk will have many features which we want for years. I am always talking about the fantastic things we can do in local networks - new usage cases and sharing of content in your local environment, community radio in schools, universities or simply your backyard. Local networks are different to the Internet as cinema to TV. Felix Fietkau and John have presented a development version of OpenWRT to a group in Berlin recently. The new OpenWRT will offer plugins that will let us store content directly on the nodes. With router devices offering USB connections now everyone can have their small webserver at home. We can have a local Web 2.0. With devices connected to sensors like thermometers we can have live feeds from all over the city, the country and worldwide. I do not want this local Web 2.0 called after a company, a device or anything else. We call this FREIFUNK. A global local = glocal network open to everyone - to the public and to companies.

Companies are always welcome to join development and focus on their business models. However, Open Source, Open Infrastructure and Free Software Projects like Freifunk and LXDE or Open Content projects like Wikipedia have a roadmap that is following long term goals instead of short term profitability. And people are engaging here not just for monetary reasons, they have much broader motivations and they are inspired by the freedom the communities offer. This is why communities are more powerful. Companies simply cannot compete with this in terms of human resources and motivation. In order to grow and sustain free and open projects and the communities though we need to work together in our different fields and we need companies that engage and support the communities.

Comments

I could not be more upset with your blog. OmegaWiki has developed a new version of its software and it is based o the new functionality that is in 5.1. OmegaWiki is very much open source and we had the option to either write the functionality that is offered by 5.1 ourselves or go "bleeding edge". We went bleeding edge and this made it possible to develop our software cheaply. We have been involved with the MySQL people on testing our software and we cooperated in the Workbench functionality. Your notion that this functionality is only their for businesses is extremely upsetting and patently false. Thanks, GerardM

Hi Gerard, thanks for your comment. Please let me clarify, I am not questioning new features and I am not commenting on single features or code lines. Talking about your project I am looking very much forward to the new funtions and improvements on Omegawiki (I love your project and have registered a long time ago even though I could not participate yet).

In my blog article I am supporting the views of Monty, that in the long run projects will be more successful (cause they are more stable and tested for example by a large community) than projects dependent on a company, that has naturally its own agenda - to keep the company profitable mainly. Monty is pointing to something I have observed during my engagement with LXDE (http://lxde.org) as well. The group that has started LXDE started working on LXDE in 2005. As I see it most companies would not have done such a long term investement, but a group of open source/free software people did it and now we have a faster and more energy efficient system, where people constantly join development.

So, how about the support of companies? Well, already in August gOS (http://thinkgos.com) announced it will offer future versions with LXDE components. You might expect companies using LXDE will support projects they are using. Actually David Liu hired LXDE developers (part time), like Fred Chien. But at this time, we are still curious to see the code contributions of gOS to LXDE. In fact, I can understand what they are doing in a logic sense - They have to make money, pay developers, pay off their venture capital.

Priorities of companies are different and I agree in this point with Monty completely. Monty gives very convincing examples. Let me quote him again:

MySQL 5.1 was declared beta and RC way too early. The reason MySQL 5.1 was declared RC was not because we thought it was close to being GA, but because the MySQL manager in charge *wanted to get more people testing MySQL 5.1*. This didn't however help much, which is proved by the fact that it has taken us 14 months and 7 RC's before we could do the current "GA". This caused problems for developers as MySQL developers have not been able to do any larger changes in the source code since February 2006!

....

We have not been giving the MySQL community enough opportunities to test MySQL 5.1 (too few releases). The reason few releases was made was that if we would have done a release every month, as we have done in the past, we would have got 14 RC releases which would have looked silly and proved that the first RC was made too early. In addition, the MySQL current development model doesn't in practice allow the MySQL community to participate in the development of the MySQL server.

So, Gerard, I would prefer not to talk about single implications of new releases to projects and the advancements, but rather the general way we should go with free software. In your case you could probably go a great leap forward with the new release of MySQL. This does not challenge what I wrote concerning development models and different priorities of companies and communities and why I believe a good community where people work together truly collaboratively will always be more successful and offer better software.

Hi Mario! I really liked this article talking about communities! You are right, community have a strong power and make very good software/products. I hope the society of the future will understand how to exploit the community work finding the correct business models :) Saluti da Ninux.org ! Saverio

Hi Mario, nice blog. But it's not always money that destrys the community. Old school industrial companies pay a lot of atention toward quality and quality assurance to avoid loosing image. So if Mysql development process failed, it might not be always the money/business pushing this. It might most likely depend on the development processes and the people working on the project. It might also be some matter of cultural differences. By experience I know that north american companies very early announce features in their products, that have not even alpha status. In the next release the features become some what beta and you will be able to seriously using them some major releases later. European consumer are used only seeing features on the feature list of products when they are truly tested and working.