As a product manager for developer-centric platforms (such as APIs, application platforms, scripting engines), I’ve found that boundaries, protocols, and community are three key pillars for successful adoption of the platform.
Boundaries define the limits of a platform. In programmatic platforms, developers write code that is executed on the platform. A boundary ensures the separation between the user’s code and the provider’s code. This boundary helps to prevent the user’s code from accessing sensitive data or abusing resources on the platform owner’s servers. From my experience, good documentation, clear guides, and helpful error messages help developers understand the boundaries of a platform. As a product manager or platform owner, it is important to invest in these areas.
Community ensures that platforms are user-friendly and innovative. I have had very positive results from building communities that facilitate two-way interactions:
- User-user interactions: Users can discuss ideas and overcome challenges with each other in a forum.
- Owner-user interactions: Owners can collect user feedback, defects, and share the roadmap of the platform in a forum.
Identifying and rewarding users who help others ensures that the community is always engaged. A great example of rewarding community champions, is the Microsoft MVP (Most Valuable Professional) program. This is a community program that recognizes and rewards individuals who demonstrate exceptional technical expertise and community leadership. MVPs are selected by Microsoft based on their contributions to the Microsoft community, such as writing blog posts, answering questions on forums, and developing training material.
With these definitions in place, here are a few questions to ponder:
Ultimately, to create a successful developer-centric platform, you need to carefully consider the interplay between boundaries, protocols, and community. There is no one-size-fits-all solution, as your specific needs and the broader industry landscape will play a role. However, by keeping these three key concepts in mind, you can create a platform that is both secure and welcoming to developers