Everywhere we turn these days, we see evidence of open source developers trading their time and hard work for little more than the hope of benefiting the ever-growing open source community.
While there are many companies world-wide enjoying the benefits of a number of Linux and open source products, there are instances where creating sustainable employment for these talented individuals is problematic at best.
Then I came across the The Development Cloud. This is a company that has found it mutually beneficial to share fifty percent of its profit which is derived from closed source software to reward developers of associated open source software projects. (See details here.) I think this is fantastic.
While some FOSS purists will undoubtedly squirm at the idea of closed source software funding open source efforts, the fact remains that this funding rewards the hard work of individuals creating open source software. So despite any perceived controversy, I see this as a positive rather than a negative outcome.
Hired vs partnership?
In a perfect world, I would love to see open source developers working together in orchestrated harmony to make modern open source software available to all who wish to use it. And to a large extent, some variation of this has in fact happened, in part due to sponsorships and grants, in addition to those simply volunteering their time.
In other situations, companies that utilize specific open source software have opted to hire open source developers themselves in order to be sure that their own aims remain intact during the growth of their own businesses.
But what about new businesses that cannot afford to support development teams out of the box? Sure, they can try to create an ecosystem that provides a compelling reason to volunteer. Yet in the end, this still leaves the company to profit while the those who worked hard volunteering are left wondering if their work is really being recognized.
These problems, then, seem to lead naturally to the idea of companies opting to partner with developers for a share of the profits generated, instead of a typical paycheck. I see three big advantages to this over the typical hoping to get hired model many open source developers seem to work toward.
- Free enterprise at its best. Not only does this structure allow volunteers to potentially earn while they learn, it ensures that theyll not bankrupt the company during the development process of the given software. In short, nothing is spent on wages before the product goes to market.
- A flat rate income now, or the opportunity to share something substantial later. With the exception of open source software offered with a dual license in place, most of the time the software is just given away. Yet there are instances where the software requires support, which translates into revenue. This means if the software is used in an enterprise environment, there is revenue available for the developer who wishes to support their product.
- Multiple projects being supported translates into plenty of work. As someone who does a lot of contract work himself, I see a real benefit to not being tied to one single company. It allows the person contracting their services to provide support for other projects as described above with other non-competing companies.
Software as a service - the missing ingredient
Many open source applications come into existence out of need as seen by those who develop the software in question. Often this translates into software supported by individuals rather than by groups of developers working toward a common goal. To that end, these projects will likely remain hobby-based projects, not really suitable for any kind of support business. Not saying this would be impossible, it just seems unlikely.