This post outlines some business considerations for open source. It follows advice Infonomics provided to the World Wildlife Fund in collaboration with Ribble Consultants.

Open Source Definitions

The term open source denotes software for which the original source code is made available and may be redistributed with or without modification. In practice this is typically coupled with a peer-production development model although code can be open-sourced without providing any means of re-integrated changes back into the code base. Note that:

  • Free software is not necessarily open-source (closed-source software may be free). Here ‘free’ refers to the freedom (to run, modify, and redistribute) not the price.
  • Open-source software is not necessarily free of charge. There are a variety of business models for generating revenue from an open-source project including: ‘freemium’ (premium features must be paid for), consulting (selling services related to the product), support (paid-for training), subscriptions (original is free, updates require a fee), proprietary add-ons (fees for implementing/ developing bespoke features), and dual licenses (whereby only those earning money from the tool must pay).
  • Open-sourcing does not necessarily involve any loss of control over the quality or integrity of the product (or intellectual property); multiple versions (internal and external) may exist concurrently. Typically derivatives and modifications are made upon ‘forked’ copies (or branches). The lead maintainer (person managing the code) takes responsibility for the core (trunk) version. Changes contributed by the community (in branches) may be applied (used to patch) the original (trunk) or they may be pursued independently. Moreover forks may pursue entirely different objectives without ever being integrated (e.g. a version is developed for a different software platform or only small portions of the code taken for use elsewhere). See below for some real-world examples.

Advantages and Disadvantages

The advantages of open source include:

  • Bug/ defect correction: with more people exploring and testing the code there is a greater chance that problems will be identified and solved (improving stability and reliability);
  • Improvements/ new feature: there are more people to contribute ideas and code to enhance the product and integrate it with other developments;
  • Credibility: greater transparency lends credibility (‘auditability’) and the product’s sustainability depends less on the original developer. The disadvantages include:
  • Price ceiling: the original developer may not be able to charge as much for software licenses. We might expect that the fee could be no greater than is the cost of deploying/ implementing/ maintaining the code that is provided.
  • Intellectual property: other developers may be able to implement competing versions (this is typically dealt with via licensing restrictions).

Open Source Business Models

The table below describes how some of the larger businesses make money while releasing open-source versions of their software. Typically there is:

  • a distinction between a limited-spec version which is released open-source and a fully-featured version which is sold commercially; and/ or
  • a fundamental division of functionality along the lines of free to use, pay to develop/ sell;
  • a set of complementary services that are provided at a fee (training, support, consultancy).
Company Open Source Commercial
Adobe Flex platform for rich internet applications Flash Builder integrated development environment
Apple Darwin: core unix compatible operating system released under Apple Public Source License Mac OSX, Apple TV, iOS (iPhone/ iPad/ iPod platform)
Canonical Ubuntu: linux operating system Technical support contracts
Mozilla Firefox: web browser Partnership with google and others for including search engines in Firefox
MySQL Database: community edition Enterprise/ Cluster editions, training and consultancy
Sun Microsystems Open Office: office productivity suite Star Office

What to consider before going Open Source

  • Release the code: the source will be made available online (i.e. the code not necessarily the data)
  • Release data: some example data may be provided
  • Provide facility for commits: developers may ‘commit’ changes or ‘fork’ new versions of the software (otherwise developers are responsible for maintain their own – external – versions)
  • Allow derivative works: software developed from the tool can be sold commercially (there may be dual licenses – i.e. one for users and another for re-sellers)
  • Modifications must distribute source: Licensee must include the source with any modifications (i.e. cannot create a closed-source derivative)
  • Derivatives subject to same license (copy-left): require that the same rights be preserved in modified versions
  • Provide user support: for example, via training courses/ email/ telephone/ issue tracking/ webchat to end-users
  • Provide development support: as above but for developers
  • Facility for community discussions: a popular alternative to one-to-one support, this allows users to guide one-another (typically moderated by trust users or employees)
  • What aspects are free of charge?
  • What aspects require a fee?

Comparison of Open Source Licenses

The decicions you reach on the above considerations will help to determine which license is most suitable.

License

Attribution

Non-Commercial

Registration

Distribution

Combinations

Transformation

Linking

Copyleft

 

 

 

 

Licensee must include the source with any modifications

with other code

edit/ rewrite

with code under different license

Derivates subject to same license

All-rights-reserved

n/a

n/a

n/a

n/a

n/a

n/a

n/a

n/a

Public-domain

No

No

No

No

Allowed

Allowed

Yes

No

Open-art

Yes

Yes

Yes

Yes

Share alike

Share alike

Yes

No

GPL

Yes

No

No

Yes

Share alike

Share alike

No

Yes

LGPL

Yes

No

No

Yes

Allowed

Share alike

Yes

No

Apache 2.0

Yes

No

No

Yes

Allowed

Allowed

Yes

No

BSD

Yes

No

No

No

Allowed

Allowed

Yes

No

MIT

Yes

No

No

No

Allowed

Allowed

Yes

No

CC by

Yes

No

No

No

Allowed

Allowed

Yes

No

CC by-sa

Yes

No

No

No

Share alike

Share alike

Yes

No

CC by-nc-nd

Yes

Yes

No

No

No

No

Yes

No

The GPL and LGPL Version 3 prohibits DRM, locked-down firmware, and patent lawsuits.

The BSD license prohibits the use of copyright holder’s name for promotion.

The Apache license requires that every file must contain all information about changes, copyrights and patent protection.

The Black Duck Knowledge Base suggests that GPL2 is the most popular choice.