Dual licensing (MySQL, Trolltech Qt)

Possibly the most financially successful strategy for Open Source software has been the so-called dual licensing of it, particularly the way it is employed by companies making "low level' tool-type software.

MySQL Ab is a Swedish company known for its popular database program, which is particularly liked for data storage of web pages that run on a Linux platform. The MySQL database can be downloaded for free from the Internet under the same GPL licensing system as Linux. Another option is to buy it under licence for $500. But why would anybody choose to pay 500 bucks for something they can get for free?

Some people want to pay for it to avoid having to commit themselves to the terms of Open Source. The General Public Licence (GPL) requires programmers who use some GPL licensed code or program in any of their software to also publish their own work under the GPL, source code and all.1 Which is why the programmers who make closed programs can't use the free Open Source version of MySQL, but have to pay $500 for a so-called "commercial licence'. These customers are usually pretty happy with their purchase, because $500 is not a steep price to pay for a good database product.

For MySQL this arrangement has clearly worked brilliantly. The existence of the free GPL version of MySQL helped make it one of the world's most popular databases. Being well-known is obviously important for any product, but for a programmer's tool it's particularly important that programmers learn to use the program. If a software company employee has already used MySQL for free to create the database for the web pages of the local kennel club, he or she is likely to want to use it as part of the company's closed software project rather than have to learn how to use another database program.

The existence of the GPL version has also speeded up the development of the database. In accordance with the principles of Open Source, many programmers outside the MySQL company have improved the database software, making the company's product improve "by itself'. In this way the hacker community pays in free labour and user feedback what the manufacturers of closed software must pay for in money.

Trolltech, who developed the popular Qt user interface library, employed the same business model. A user interface library offers programmers the basic building blocks of computer programs - including such things as push buttons, menus, text fields and scroll bars - with which to build the actual software.

One of the strengths of Qt is that it can be used to program software for both Windows and Linux. That makes it a good choice - out of very few - for programmers who want their program to work on as many operating systems as possible.

The Qt library forms the basis of the KDE desktop environment which is so popular for computers running Linux. With KDE, one can freely use the Qt library version published under the terms of the GPL licence. But, like MySQL, Trolltech also sells a licensed version of Qt for use as building blocks in closed programs. The benefits of this arrangement are the same as those for MySQL. The GPL version of Qt gives it visibility and cachet, while the hackers of the KDE community are an important resource in its development. They give feedback on Qt and often also develop it further, and the improvements they make also benefit the commercial Qt.

Dual licensing raises the interesting ethical question of how these companies would fare in a world that is 100 per cent Open Source. Far from topical, the question is nonetheless relevant for those who believe that the Open Source model is fundamentally better than the mean-spirited restrictions of closed software. If the closed software model is so bad that nobody should use it, then what would happen to those companies that make their money from the makers of closed programs? And is it really kosher to support openness and fight mean-spiritedness, while still recommending this dual licensing business model?

So far, there doesn't seem to be any good answer to the question. The truth is that, for now at least, dual licensing works very well and seems to satisfy all parties. It supports and provides well for companies like MySQL and Trolltech. The makers of closed programs get high-quality tools at a good price. And the Open Source programmers get the same tools on terms they feel fine with. And there's the added bonus that development of Open Source programs is partly financed by funds from the makers of closed programs, i.e. the opposition.

So everybody is happy and, frankly, although the question remains unanswered nobody seems to care.

Verdict: Dual licensing, as used by MySQL and Trolltech, is arguably the most successful business model of the Open Source world. In addition to these two companies, many others like them have used it successfully. However, this model doesn't suit all. In particular, it doesn't seem to work well with software intended for the end user, as all the companies that use this model are selling products - either programming libraries or databases - to other programmers. The model passes the hacker ethical review, although the question of how companies that use dual licensing would do in a wholly Open Source economy remains to be seen.

  • 1Not all Open Source software is published under such strict terms. Many Open Source programs or parts of them can also be used in closed software. However, software such as the Linux kernel and MySQL which are published under the GPL licence do not allow this.
About the bookAbout this siteAcademicAccordAmazonBeginnersBooksBuildBotBusiness modelsbzrCassandraCloudcloud computingclsCommunitycommunityleadershipsummitConsistencycoodiaryCopyrightCreative CommonscssDatabasesdataminingDatastaxDevOpsDistributed ConsensusDrizzleDrupalEconomyelectronEthicsEurovisionFacebookFrosconFunnyGaleraGISgithubGnomeGovernanceHandlerSocketHigh AvailabilityimpressionistimpressjsInkscapeInternetJavaScriptjsonKDEKubuntuLicensingLinuxMaidanMaker cultureMariaDBmarkdownMEAN stackMepSQLMicrosoftMobileMongoDBMontyProgramMusicMySQLMySQL ClusterNerdsNodeNoSQLodbaOpen ContentOpen SourceOpenSQLCampOracleOSConPAMPPatentsPerconaperformancePersonalPhilosophyPHPPiratesPlanetDrupalPoliticsPostgreSQLPresalespresentationsPress releasesProgrammingRed HatReplicationSeveralninesSillySkySQLSolonStartupsSunSybaseSymbiansysbenchtalksTechnicalTechnologyThe making ofTransactionsTungstenTwitterUbuntuvolcanoWeb2.0WikipediaWork from HomexmlYouTube