Computer software systems are now among the most complex, expensive artifacts ever created by humans, and some of the most sophisticated are being built by teams of volunteers as "open source" projects, where any programmer can read the code and suggest changes.