If you've kept up with studies done on the development of the Linux kernel, such as the one discussed here, you know that Linux advances over time thanks to prodigious amounts of co-working on the part of large enterprises. IBM, Red Hat, Oracle and many other companies make huge contributions, and sometimes expensive ones. They do that, of course, because Linux is a rising tide that lifts their own boats. Across the broad spectrum of open source software, though, there ought to be much more co-development and shared contributions on the part of businesses.
It's instructive to look at an initiative going on in Thailand. As discussed here, a consortium of Thai businesses called the Business for Open Source Society (Boss) is pooling contributions from open source specialists and local software companies and launching training programs for open source developers.
Is Boss purely a charitable effort? Hardly. Boss has already ushered brand new open source software projects into business deployments that benefit its own member companies.
Of course, outside of Thailand there are many organizations that push broad-based open source initiatives, ranging from foundations, to Open Source For America, to companies such as Google that simply share so much open source code that other businesses tend to build on top of it. But businesses that have unmet software needs could certainly do more working together on open source projects. It might call for laying down competitive weapons in some cases, but that can be a wise move.