Open Source Projects and Corporations
by Kevin Farnham
I attended my first OSCON two weeks ago. I learned a lot about leading open source projects -- something that has long been important to me, but now is even more important for me, since I've just started working full time on Intel's new Threading Building Blocks open source project. I split my time at OSCON between sessions related to multithreaded programming and open source project management strategies.
It's easy to think that an open source project's success depends on the quality of the product and nothing else. But that is surely not the case. An excellent open source project that no one knows about is very likely to eventually disappear.
Yet, open source projects are indeed quite different from corporate products. An open source project succeeds through the interest and effort of its community. It's not just a matter of how many dollars were spent to promote the product -- what matters as much, or more, is the community, the relationships, the dialog among members of the community.
A given is that the open source project must be worthy of attention, the software must address a need and be of high quality. Otherwise, why should anyone pay attention to it?
Why corporations support open source projects
In his recent O'Reilly Radar post "Yahoo!'s bet on Hadoop", Tim O'Reilly commented:
OK -- but why is Yahoo!'s involvement so important? First, it indicates a kind of competitive tipping point in Web 2.0, where a large company that is a strong #2 in a space (search) realizes that open source is a great competitive weapon against their dominant competitor. It's very much the same reason why IBM got behind Eclipse, as a way of getting competitive advantage against Sun in the Java market. (If you thought they were doing it out of the goodness of their hearts rather than clear-sighted business logic, think again.) If Yahoo! is realizing that open source is an important part of their competitive strategy, you can be sure that other big Web 2.0 companies will follow. In particular, expect support of open source projects that implement software that Google treats as proprietary.
So, corporations support open source in order to make money. Duh! But, let's think about who benefits: shareholders, employees, the company's customers, and whoever uses the supported open source software. So, in the case of Yahoo! or IBM, or Sun, or Intel -- is there anyone reading this post who isn't among that group of beneficiaries?
To be a good open source citizen, it seems to me that a corporation needs to understand the value of reticence. Corporate reticence implies that the corporation understands where the world is moving, and they want to ensure that they have their boat in that rising water. It's a statement that they don't employ the "not-invented-here" syndrome in their decision-making. A statement that they would like to be a member of the community that is creating the future, rather than the dictatorial creator of that future.
This is an enormous step for corporations to take. Open source has played a great role in bringing this situation into being, in my view. The notion that a free community can be more powerful than a corporate spreadsheet is difficult to swallow for most corporate officers. Yet, some come to understand it much more quickly than others.
OSCON and Corporations
Corporations, of course, are the prime funders of conferences such as OSCON. It's a signal that corporations (some of them, anyway) have recognized that the world is much bigger than their specific product domain. And if they can be good citizens within that larger world, they will reap benefits along with all other participants.
There is definitely a big difference in how well corporations understand the open source process, and how they address "openness" in general. In my view, some -- such as IBM, Intel, and probably Sun, "get it." They simply want to position their boat in the rising water, and to do so they are willing to pull their fair share of the weight. If open source projects have hundreds of salaried IBM, Intel, and Sun developers working on them, isn't that a great benefit? I'd say so!
I was able to attend OSCON because I'm working with Intel on Threading Building Blocks. It's a project I'm very pleased to be working on, because much of my software development experience has involved multithreaded software development, on both Unix and Windows systems. I thoroughly enjoyed OSCON. I'm excited to be working on my first open source project, Threading Building Blocks. While Intel invented the software, the intent is indeed that its future will be determined by the community. That's the kind of corporate participation in open source that I see as beneficial for the entire community.
At OSCON I saw evidence that many other corporations are starting to "get it." I consider that a very very good sign!
A given is that the open source project must be worthy of attention, the software must address a need and be of high quality.
Actually all that's necessary is that the project meets a perceived need, or is perceivable as meeting a need. Consider PHP Nuke, or Matt's Script Archive, or Automatix. The quality and worthiness of all three is under question, but a lot of people have used them.
This isn't just a nitpick. It's a reminder that the potential developer community is not necessarily as important as the entire potential community, in terms of adoption.