The Myths of Open Source License for IT

I have recently read Dan Woods' blog on O'ReillyNet. The author interviewed Mark Brewer, CEO of Covalent Technologies, on his preference to BSD-style license for IT companies. His blog encourages me expressing my view on adopting open source software in IT company or IT department.

Some companies have been using open source software such as Apache web server, Tomcat and MySQL. Those software may even benn deployed on open source operating systems like Linux and FreeBSD. Of course, the open source license grants the right of using these software for free and freedom. But attentions have to be paid for any IT companies to use open source software or software libaries in their own propriatary software that are sold for commercial use. It is all about the open source licenses to care about.

From my experience and observation, BSD- and Apache-style licenses allow maximum flexibility for integrating with propriatary software. It only requires the licensees to give credit to the original author. Such credit notice could be found in end-user documentation or included in the software package of the distribution. In addtion, it is also allowed to modify source code and create a new derivative work for their own use or selling it, as long as the licensees do not bare the same name. I called these licenses a less-restrictive license because it allows commercial company to bundle these software with minimum intervention and restriction.

GPL, on the other hand, is more restrictive as the philosophy behind GPL is different. GPL states that the freedom is protected when a work is created, and such freedom will be delegated to all of its derivative work. That means, any propriatary software that integrates GPL'd software to their product are forced to provide the source code for free. And that's why Microsoft called GPL an evil.

LGPL (Lesser GPL) provides another less restrictive alternative to GPL. LGPL is originally designed for library, so that propriatary software is allowed to use or "link" their code to LGPL'd library. But LGPL retains some GPL philosophy that all modification and derivative work must be freely available and be provided for free.

I am not going to argue or discuss which open source license is good and which one is bad. It depends on the use and the business model. See below link for why JBoss uses LGPL and why MySQL uses GPL, and how they use different licensing strategy (dual-license) to protect their business.

As a company supporting open source like MySQL AB and JBoss, they have their own reason to protect their business by using GPL and LGPL. MySQL AB discourages others commercial companies to take their work and offer another similar solution by modifying the source code. On the other hand, they provide commercial license for interested parties, allowing them to modify source code for their own use. Such dual-license approach protects the open source software from branching or creating fork.

JBoss's decision to LGPL is to ensure that changes and improvements to JBoss software remain available as open source software. Nobody will be able to convert JBoss into proprietary software or to create incompatible versions. On the other hand, CollabNet and Covalent Technologies integrates large ammount of open source software to build and customize their own Enterprise-grade software. As you can see, different companies uses different licensing strategies and business models to support open source initative and incubating open source software to their products.

So, let's conclude. My recommendation for using open source license in IT companies, in short:

  • Use BSD- and Apache-style license at anytime, especially for integrating open source software into propriatary software.
  • Use LGPL, if unavoidable, in library level. Be careful in distributing LGPL software together with propriatary software.
  • Do not use GPL'd libaries for integration. Only limit it to standalone application such as MySQL. And remember not to distribute GPL applications together with propriatary software. But GPL is a viable option than BSD- or Apache-style licence for commerical companies providing their products as open source. They protect their open source products from branching and forking while generate revenues by offering support and commercial license.