There are lots of scenarios where developers lose. The problem is, if the developers lose, and if the platform depends on developers, the platform loses too. So you try to strike a balance, leave enough empty territory, and broadcast your direction loud and clear and unmistakeably. It can be frustrating being the platform vendor when you've left big blue sky and people crowd into the territory you're actively developing in. I guess this is human nature.
People watch the leader, and want to be where the action is.
Also, the platform vendor tends to choose the most lucrative areas to work in. That's where people want to be. We've had better results in the Frontier community, after some initial collisions, I'm satisfied that I can move forward in certain areas and depend on others to handle other functionality. Examples of successes include database scripting, CGIs, search engines, regular expression handling. A less stunning success has been TCP scripting which is still an unsolved problem in our community.