I’ve been playing with a bunch of personal homepage products (primarily Netvibes and iGoogle) and I’m kind of disappointed with what I’ve seen in terms of 3rd party applications developed for each platform. That got me thinking about what it takes to make a good developer program work. I think a lot of the lessons we’ve learned from open source apply to web developer relations programs as well. I think the key ingredients can be boiled down to three key things:
- An application that is well on its way to becoming popular – More than anything, I think most great developer programs need to have, at their core, an application that’s got lots of momentum in the marketplace. One need look no further than Facebook to find ample evidence of this. I also suspect that that the slower adoption in developer programs for personalized homepages is due to the fact that none of them have really broken out in terms of mass consumer adoption. Who wants to develop for an application that isn’t experiencing rapid growth unless it has some really dominant, entrenched base?
- The opportunity to become famous and/or make money – At the end of the day, everyone has limited amounts of discretionary time. There has to be something in it for the developer. Fame and fortune are the two most common enticements.
- Support and outreach from the engineers at the company – Last but not least is the need to have some regular or semi-regular contact from the engineers and product team who are actually building the product. Being heard is really important, as is the opportunity to interact with the people who are building the product.
I’d welcome any other thoughts or contributions.