Although I'm known as a "developer community" person, I've been spending my time focused more on the ecosystem piece as of recently. I believe the ecosystem thought is larger than the community thought, but I'll tackle that one later...
The ecosystem is essentially the whole of all the components in a specific environment, with strong focus on how they relate to and interact with one another. As my team moves forward to launch a new initiative at Microsoft, we have to consider the ecosystem carefully: the potential and current users/customers, the community, partners and potential partners, developers (inside and outside the company), product management and field evangelists. All of these are key ecosystem players that need to be joined together when creating a new strategy, product, or technology that will be brought to market.
When you're looking at building a successful product/technology ecosystem (note I don't say company here), you're looking at all these players (and sometimes more) that need to work together. And the key here is to recognize that it's not just your product/technology and your company that you really want to be successful, mostly, it's your user or your customer. So in order to create this ecosystem, it's absolutely essential that you need to involve the customer/user more in the product development and testing phase.
Google is a company that does this very well. Very early on in development, these products are put out to the market in beta format for the community to test and check out. If they fail, they don't move forward with the product. If they succeed, the community not only shows its love for the product by downloading and using it, it also helps Google by finding and reporting bugs, and additionally the users champion the product/technology to the extended community. Essentially, the ecosystem provides Google with not only the feedback they need, but some critical testing and product promotion as well - and the Google ecosystem provides a smooth working process for how products should be developed for the market. I can't leave the scalable infrastructure part out either, but that will be discussed in a later post.
I am a huge supporter of this model. Next week I am in San Francisco for an offsite to discuss our "NextWeb"* strategy (you'll hear more about this as we close on specifics) but this is something I am going to recommend that we seriously consider as we move forward with this plan.
Just some thoughts as I move into next week. You'll get a few more of these random postings since I'm still learning the ropes over here, but I want to make sure that you guys know what I'm working on so I can get feedback from you on what we should be considering and what we can do better.
*"NextWeb" is a combination of different technologies, languages and products from Microsoft and the community at large, such as AJAX, LIVE, Silverlight, LINQ, ASP.NET, PHP, Ruby, Web and Enterprise 2.0, etc. (Note this is my definition, not Microsoft's).