"Open source" has come a long way and with the new administration adopting the open source content management system Drupal to power the recovery.gov Web site, open source's visibility will likely get another big boost. Speaking from the standpoint of a developer, the number of tools, utilities and programs available under open source licensing continues to be very exciting. But it is also true that confusions still persist about what it is and, in particular, about its costs. "Open source" and "free" are not synonymous -- though there is a relationship between the two terms.
As with any engineering product, using software requires more than just having access to the application. To take a more concrete example, let's consider the task of building a bridge over a stream -- it involves more than just having a crew pull up to the river and start building. The environmental impact, the needs and concerns of the surrounding community, how to make a connection to the electric grid and even connecting to the existing roads are all factors that need to be taken into account. And that all occurs before the bridge is built. Once construction is done, it requires ongoing maintenance, inspection, repairs and a means of controlling the traffic on it.
But let's get a bit more precise about the analogy. Before the bridge is built, someone needs to have done the engineering work to figure out how the bridge is put together, the size of the beams, etc. A fabrication operation then makes the beams and other pieces needed to do the construction. If the bridge is small, it might be assembled in a shop and transported to the target site. If it is larger, then the fabricated pieces will shipped to the site and assembled in place.
Open source projects are similar: the architectural work has been done and has been made available for general use. Many of the pieces have been fabricated and often those pieces have been assembled and the "bridge" is just waiting to be transported to the installation location.
And while that means a lot of work has already been done and made available without cost, it doesn't mean that the new bridge will be "free." The fact that a general blueprint exists is nice but it may need some tweaking to make it fit for the specific use. This requires a resource that can read and update blueprints. When working on open source projects, you can't necessarily depend on a vendor to supply that resource -- you may have to supply it yourself.
To keep things in perspective, the following is a quick list of the items that commonly need to be taken into account when deciding on open-source software alternatives:
Many open source software applications, like commercial software, require configuration which can require expert-level knowledge. For example, the Apache Web server requires administration which is primarily done by editing one or more configuration files. Configuring Apache is not difficult but if your staff doesn't have existing expertise in it, then the total cost of ownership will need to include either hiring experts or getting staff up to speed.
By contrast, Microsoft's Web server also requires a great deal of customization but is all done through a graphical user interface. Both require expertise. This issue also shows itself when selecting an application that requires ongoing configuration or changes as part of routine use. For example, many open-source content management systems exist and are quite popular. But, when evaluating options, it is important to look into the technologies on which they are built. For example, if your staff's expertise is in .NET or ColdFusion, the no-cost price license for a PHP-based system may be appealing until you need to get something changed and find that