Sunday’s most popular Javablogs entry was Steven Noels’ provocatively titled Open Source Whoring. Basically, Steven is complaining that companies offering their closed-source products for free are just doing it for marketing. Here’s the trick, though: it only works as marketing if some open source projects take them up on the offer. Those projects will only take them up on the offer if they see value in what is being offered. Sure, Bugzilla has been around for years. I’ve used both Bugzilla and JIRA, and there is no question in my mind that I would take JIRA, as a number of open source projects have chosen to do.
Steven’s real beef, it turns out, is not the notion that some open source projects might be inadvertantly advertising closed source ones. The real problem is that “one should be ready to make money on services, not on license sales”. This is because “Services reserve the right for customers to give you money when they want you, not when they have to.”
There are many people who want to cling to the notion that there is adequate money to be made providing services around open source software, such that this is the only viable business model. These are the “Free Software” people for whom the teachings of RMS seem like the one true way to do software. Of course, there is a large group of people who more closely parallel the Open Source Initiative. ESR and the OSI have come across as far more pragmatic, recognizing that there are multiple ways to make use of open source for the good of all.
There are three things overlooked by the “Open Source Whoring” article:
The authors of those open source libraries chose to allow closed-source products to use them. Obviously, not everyone believes that the open source+services model is the only way to go. A great number of projects, including many open source libraries, have chosen the “Lesser” GPL, Apache or BSD licenses. Either the authors of those libraries are doing so because they don’t understand the terms of the licenses, or because they want more people to use the software, including those that make closed-source systems.
Nearly all “non-toy” open source packages get supported by businesses. It doesn’t matter if JotSpot or Atlassian are the principal developers of open source packages. What does matter is that they contribute back changes that they make! Under many licenses, they’re under no obligation to do so. But, for most of these companies the open source they include is part of the infrastructure and they’re more than happy to give back their changes. Whenever a company contributes changes, they are effectively making a monetary contribution to that product and keeping it alive! This should be encouraged!
The services model doesn’t work for many products. One commenter pointed this out, causing Steven to alter the article and remove IDEA. But, this really destroys the whole argument. As seen on South Park:
- Open source
Many people want to fill in services for #2. The trouble is that for many products, there just isn’t a good services model to be had. As “Services” said in the comments to Open Source Whoring: “I suppose to reach the holy grail of OS nirvana of selling services they’d have to break it in some way.” Exactly! People making commercial desktop software (or commercial software of any kind) usually spend quite a bit of effort on the fit and finish of the product. They work hard to make the product easy to install and use.
Think of these two scenarios: you come across a product for $100 that will save you three hours a week of time. The website is very clear about what the product does, reviews have been good, and you’ve heard other people recommend it. Buying that is a no brainer. It pays for itself quickly!
Or, you search Google for something that does what you need, and learn of a Free (as in GPL) alternative. You download it and run it, and it looks so close to what you want. You can’t figure out how to make it do a couple of things. So, you send a message to the mailing list. And wait. And wait. And, no one responds. You decide you want some help. Most projects don’t even have services offered. So, you have to negotiate with one of the developers to get some of their time. How much will that cost? A good developer can bill out at a contract rate in excess of $70 per hour. It doesn’t take much time billed to add up to the $100 of the original product, and a bunch of your own time could have been saved along the way.
Some categories of projects are a good fit for the GPL. Dual-licensed developer libraries (Qt) make good sense. Complex products that involve a large degree of customization and integration (JBoss), or configuration tweaking and tuning (MySQL) can make sense.
Products that need to “just work” make no sense at all. I’d rather spend $30 on Quicken than spend hours and hours trying to make GnuCash work.
In all honesty, I’m not singling out Steven’s article here. My point is that the world of open source is much broader than that of Free Software. I would hope to see more people recognize that GPL+services does not always, or even often, apply and be a little more open to small companies that are genuinely trying to work with open source projects.