To secure the aims of the project, a company that undertakes a free software development project must organise its relationship with the user community carefully.
In the first section of this module, we looked at the main aspects underpinning a free software project. If a company acts as project founder, it will need to establish and organise a strategy to suit the business aims, though bearing in mind that it has to compensate for the collaboration it hopes to obtain from the user community.
Hence, as with any other free software project, issues such as credibility and transparency, among others, have a very important role in creating a community of users around the project.
Ben Collins-Sussman and Brian Fitzpatrick have identified and classified the different Open Source strategies that can be adopted by a company based on free software development at the OSCON 2007 conference entitled "What's in it for me?".
Recommended website
B. Collins-Sussman; B. Fitzpatrick (2007). "What's in it for me?"
This classification characterises the two main components of the relationship between company and community:
On the one hand, the orientation, structure and general operation of the project, and the company's responsibility in this.
And on the other, the benefits and drawbacks for the company and the user community resulting from the selection of a specific strategy to implement the project.
Hence, the work of Collins-Sussman and Fitzpatrick is a guide to best practices in formalising a healthy relationship between the company and the user community.
In the following sections, we will briefly introduce the main features of this Open Source strategy classification.
Fake Open Source
This strategy is based on opening or releasing the application's source code under a licence not approved by OSI.
Recommended website
Open Source Initiative (http://www.opensource.org/).
It is not really an Open Source strategy because not only are thebenefits lost, but some members of the community may even boycott the project.
For example, software enhancement, project credibility or good relations between companies and users.
Nonetheless, the project can obtain media coverage and attract attention with a relatively low effort and cost.
Throw code over the wall
This is a similar strategy to the one above except that this time the company opens or releases the code under an OSI-approved licence, although it is still not concerned or does not accept responsibility for the future of the project.
In other words, by opening up the code and forgetting about it, the company portrays an image of poor credibility, since it releases an application for which there is no user community to keep the project alive. In this case, alternative communities may spring up to develop the software outside the business goals.
Develop internally, post externally
This strategy is based on developing the application internally within the company and publishing the progress in a public repository.
This time, the company improves both its public relations with the user community and its credibility in the world of free software. For its part, the community could collaborate on the project from time to time. Nonetheless, a totally internal development will encourage the development of parallel communities that do not follow the business calendar (which generates an element of distrust).
Open monarchy
This strategy is based on making public both discussions and the repository of the application, although the users with the rights to it are from the company.
In this case, the credibility and transparency of the companies and the input from the community are improved (which results in better code) but the company still has the final say on all decisions made. This constitutes a risk to the long-term maintenance of the community, including the possibility of a fork in the project.
Consensus-based development
This strategy exploits almost all possible relations between company and community, given that virtually everything is done in public.
In this case, the project is based both on distributed and decentralised decision-making and on meritocratic work systems among collaborators.
These features produce a model with high quality volunteers that is sustainable in the long run, since the company gains in credibility, transparency and reliability in the eyes of the community and other free-software companies.
Nonetheless, the short-term benefits are limited and the workload is significant. In this case, the role of the project leaders is relevant for the strategic operation of the entire organisation.