The open source movement has changed the course of modern software development. Certainly, Linux has been the most prominent example so far, but there is far more to come. Open source continues to infiltrate mainstream development at an ever faster pace. As that happens, the rules change too.
Open source Eclipse tools overturned the IDE business. Open source frameworks helped drive Ajax. Open source unit testers are now par for the course. In the form of Hibernate and Spring, open source has challenged the conventional application server stack. Open source has penetrated the mysterious world of BPM in the form of BPEL and various rules engines. Open source software is on the evaluation list for more and more messaging and enterprise service bus projects.
But open source in these enterprise instances continues to take on something of the tenor of established commercial software. That is not simply because such key software as Eclipse, JBoss, Spring and Hibernate are backed by large and established software companies. It is also because enterprise software is real work, and some commercial reward seems needed if any software is going to continually be shepherded forward.
The Apache Foundation and the Eclipse Foundation have set the tone; enterprise open source today is very much a mix of independent developers and commercial developers (often doing the work on their employer's dime). A lot of the same familiar risks apply. Picking the wrong software
What is the future of open source software? We can anticipate a swing from large, commercially influenced projects back to smaller grass roots projects. When these grass roots projects have mass market potential, we will probably see a bit of a swing back to the larger scale, commercially friendly end of the spectrum.