Can Open Source Fill a Vacuum?
We often hear about open source vs. commercial software, but what about when there is no commercial software?
Believe it or not, this actually happens. Last month I was at an industry tradeshow, and I walked into a conference session about software. In of itself, this was a rarity--usually, trade show attendees are too busy buying and selling to listen to software vendors. The closet you might get at one of these shows is a talk on search engine optimization or email marketing.
Even more amazing, this session was well-attended. After a while, I realized why. This industry had no commercial software vendors serving it, because it is an industry with a lot of small businesses and very complicated business processes. The former means that specialized commercial applications vendors couldn't serve them profitably. The latter means that off-the-shelf desktop accounting programs couldn't really satisfy their needs.
In this industry, people referred to their software as "Tom's program," and programmers like Tom were retiring or leaving the business. As a result, the industry is technologically a decade behind. Out of an audience of fifty, only one company was taking orders online. This is truly a software vacuum.
Can open source fill this vacuum? Possibly. Of the three groups presenting at the software session, one was a consulting firm which was using open source databases and languages to create a fairly sophisticated commercial package for this industry. Two other groups were users who had built their own in-house applications and were looking to start software development co-operatives with their peers.
This shows that there are two ways open source can fill a vacuum. First, by leveraging existing open source projects and tools, a commercial product can be created much more cheaply. Thus, commercial vendors may be able to serve these niche segments that would be un-economical for vendors who don't use open source software.
An alternative strategy is the pure collaborative or community model of software development, modeled after successful open source projects. In a sense, this is going back to the earliest days of business software, before there was commercial business software. Back then, companies would collaborate on software development by sending tapes reels in the mail. Today, collaborative development has progressed much farther with the Internet as its distribution vehicle and open source project management being much more mature. By following best practices from successful open source projects, a collaborative development effort would be much more likely to succeed.
Whether either of these models would ultimately fill the vacuum in this industry remains to be seen, but one thing is for sure: people and businesses do need software, and if there is a vacuum, open source is a logical way to fill it.