In early May, at Startup Camp in San Francisco, I had the chance to talk to two startups about their open source projects and how community plays a role in these projects. I have been thinking about the best kind of community we could create on the Microsoft Startup Zone for .NET companies worldwide.
One entrepreneur was not "religious" about open source vs. non-open-source. In his first job in Australia, working for a large firm, he did not have the skills to pick up Java quickly, but for his types of projects discovered PHP, learned it quickly, could apply it quickly and so fell into the world of open source. When he came to start his startup, he realized that the functionality of the online service he wanted to create could be met by using an existing blog platform, as opposed to custom development. After some research, he chose WordPress MU and tracked down a specific community that is supporting this open platform. Word Press also discovered Beau, since he was really pushing the platform, and thus a great synergy was born with lots of exchanges and helping each other. My take away is that what worked for Beau about this community was the size and intimacy of it. They learned to know each other through the online community, respect each other, helped each other. Beau's company is www.myBabyOurBaby.com -- sort of a collective record keeping for a baby by all the adults in his or her life. Shutterfly on steroids; an online baby book (you know, the thing you create for your first child and have nothing for your last one. My mom did that for my brother and me, and I have nothing to show for my second two children. Where was Beau when I needed him?)
The second entrepreneur I talked to had a similar experience with community. He initially worked for a software company using Java in the US and was asked to file a patent for his work. Philosophically, he was opposed to patents, and this experience led him to the world of open source software. After a failed startup during the dot bubble era, Roy Feldman moved to Bangkok, where he has started another software company, also using open source, called OpenSoft Solutions. Its product, Open Software Factory, "turns UML models into executable application code. It currently supports the rapid development of web service enabled J2EE applications that run on any J2EE server." They are now developing a new module which will support .NET developers.
Roy's perspective on community is that the quality of the input and participants matter -- not necessarily the size: "In the case of open source developer communities, size becomes a problem when the number of "new users" grows significantly without a comparable growth in developers and power users that are willing and able to respond to the "newbies". All things being equal, I personally prefer communities that are small and highly focused. However, some large developer communities can be very helpful, they just aren't as much fun."
Roy added that early communities often exsist as a group of developers on an email group, with some of the real experts participating. When the open source project gets more successful, the community gets switched to an online forum. At that point, one can simply do a web search for the problem he/she is trying to solve and get taken right to the answer on any forum; you don't need to join and participate in a formal community to get the answers he needed. This discussion raised questions for me about how many communities can we each join and participate in meaningfully? How do we choose those around our business projects?
Roy mentioned that he refers to a site called Ohloh to check the health of a community. Anyone can register an open source project. Perhaps surprisingly, the site was started by some ex-Microsofties and is in Bellevue. Their goal when they founded the company in 2006? To create a directory of open source projects that would help people find open-source projects and compare them. The site presents clear information about each project, including information that helps developers make build vs. buy decisions by offering code analysis, # of active developers on a project, licensing information, etc.
My take-away from these conversations is that for community -- intimacy, focus and size matter. The value is more around having "real people" offer real insight to the community; smaller size and quality improve the experience. It's probably the relationships as much as the content that matter.
We are always looking at what support we can offer for Microsoft-based startups on this site. At this point, we are headed towards providing more content that helps startups (any startup) become successful instead of a structured online forum. The goal of this site (www.microsoftStartupzone.com), by the way, is to create conversation around the business value of working with Microsoft, not to duplicate all the tech discussions that already exist on MSDN, Channel 9, etc.
I'd love to hear your thoughts! What support would you like for community for startups on this site? Also, should we move to more videos or are text blogs OK? (Some on our team think they are faster to read, definitely cheaper and faster to create, but others prefer pictures. Your thoughts?)