In consulting sessions companies often ask me about the quality of open source software in general. There are, of course, both good and bad open source solutions, and it is one of the reasons companies hire commercial open source consultants to assess different kinds technologies for them. Open Source technologies are the result of user community collaboration and participation, and that’s what brings simplicity, modularity, quality, and security to these solutions.
Simplicity
The route that many Open Source projects such as Joomla, Drupal, or phpBB3 are taking these days is to build a vanilla framework with a basic set of functionalities and then rely on the community feedback to develop additional set of functionalities over time. This approach is very efficient because most of the implemented features will actually be used by most users. This way, the application architecture stays lean and simple, yet there’ll be room for further scalability and customization.
This approach goes against the traditional business and product development methods where a limited group of “experts” within a corporation conduct surveys and marketing research, then build a product based on a list of assumptions and features that experts think users may find interesting. In reality, only a portion of those assumptions are right and every miss is considered a business loss that is going to be compensated using cunning Sales and Marketing schemes.