The functionality of software is defined as much by what features it lacks as by what features it implements. Open-source programmers and advocates seldom grasp this, and like to promote "choice" at the expense of solid design.
The sad state of a lot of open-source software is in part a consequence of this.