most open source developments start for the following reasons: - Scratch their own (individual or collective) itch. - Compete against commercial offerings that are deemed too: dominant, important, monopolistic or 'bad\evil'. Whereas a commercial development are there to fill a certain users' needs (demand). They have to identify this for them to properly monetize it.