When Oracle announced it would no longer offer commercial support for future versions of GlassFish, many people started to "defend" Open Source and blame Oracle. More important than this particular example, I think it is about time that the software industry starts to re-think about how to work with Open Source developers and Open Source technologies.
The best blog entry I've read on this subject, is this article from David Blevins: http://www.tomitribe.com/blog/2013/11/feed-the-fish/. If you didn't read it yet, I highly recommend doing so. I completely agree with his analysis. I hear similar sounds outside the Java EE area as well, and I am worried about this. It appears the industry has created a culture where it is assumed that some geeks will spend all their spare time to "Open Source" products. If those geeks somehow want to be refunded, they are not cool anymore. The industry decided that they have to start a consulting company around their Open Source products. That is valid business model, and to be honest, at LodgON, we're actually doing this with DataFX, the Open Source JavaFX enterprise framework I co-develop. DataFX is all open and free, but we offer commercial support for companies that want to integrate it in their own products or projects.
To be honest, I think forcing open-source developers in this area is a bad idea. It can be a success story though. Some of the brightest open-source developers are capable of starting a company, e.g. look at what my old cohort Dries Buytaert did: after founding Drupal, he co-created Acquia and Acquia is now a leading technology company. That is great, and I have lots of respect for developers like Dries that also have skills for creating a company, an organization and a culture.
Other developers, however, don't have the skills or simply the interest in doing this. They want to do what they are good at: writing code. Those people are often very bad in marketing themselves. Those people often spend lots of time in writing code, in answering questions on forums, in talking about their passion on conferences,... but they don't get a proper reward for it. At the contrary, they might get blamed on forums for not implementing new features fast enough, or by not answering soon enough. Nevertheless, their value to our software heritage can not be underestimated. It is time the industry shows more respect to them. Geeks have to pay their bills as well.
There is an alternative, where a single company funds an Open Source project. This is what happened with GlassFish, and that failed. As David Blevins wrote in his blog entry: "Not even IBM or Oracle can pick up the bill for Open Source forever." Open Source needs the involvement from a community (apart from potential involvement from one or a few companies), but the community somehow need to be rewarded for this.
Changing this culture is not easy, and it will take time. One of my (probably crazy) ideas is that developers might be considered "artists". In Belgium, if an artist writes a song, and that song is played on the radio, or on a local party, the artist get some royalties for it. I am not going to say this is a perfect model, far from that, but the idea is that if people like what the artist is doing, they implicitly pay him. They probably pay a lot more to the artist's manager and the distribution sector, but still, he is rewarded.
It sounds fair to me that if all those big companies and governments that are using Open Source technologies and that are so proud they use Open Source donate "something" back to the community. My favorite quote on this (I forgot who it came from) is that as an Open Source user, you either give time or money. This is already happening in some cases. To use another Drupal example, the White House is using Drupal for its website, and it contributes to Drupal as well -- see http://buytaert.net/white-house-contributes-to-drupal. But this is exceptional rather than being the rule. Many government organizations send out RFP's for their projects that (apart from 90% non-technical requirements that already rule out 90% of the developers that could do the job) explicitly require the use of "Open Source" technologies. Next, they pay way to much to a big IT consulting firm that somehow uses Open Source products (GlassFish, TomEE, Drupal,...), writes a bunch of proprietary code on top of it, and never donates something back to the Open Source development.
I would love to see more examples as the White House, where technology (time) or money is sent back to the Open Source project.
Most likely there are other valid models as well, that allow Open Source products to survive without being forced in the traditional business approaches. I really would love to see more discussions and initiatives in this area. Offering a free management course to all great Open Source developers is not going to help.
Finally, I want to stress that Open Source is not all about money. I am pretty convinced that most Open Source developers (including myself) are driven by passion. This is what makes innovation possible. As an example, I am currently working on a community port of JavaFX to Android. That is probably not the best thing I can do, from a financial point of view. But seeing my own JavaFX code working on my Android phone really gave me a thrill.
written on 26 Dec 2013 12:11.
Open source devs will always get screwed by business if they create something valuable that is not GPL licensed.