How to Manage a Successful CNCF Project (Like Linkerd)

5 minutes

CNCF projects have been a breath of fresh air to the developer ecosystem as a whole, but to cloud-based communities in particular. They represent the ethos of community building and have become very powerful tools to encourage collective innovation in a number of different areas.

With all that being said, it takes a lot of skill to be able to facilitate a successful CNCF project and we wanted to get a sense of what it looks like in the trenches. So, in episode 5 of the Committing to Cloud Native podcast, we spoke to William Morgan to delve into the good, the bad, and the ugly. William Morgan is the CEO of Buoyant and one of the co-creators of Linkerd. He has a range of experience from a number of world-class development teams and has been an ardent contributor to open source projects for more than two decades now.

The Linkerd Journey

Linkerd, of course, is one of those projects that has captured the imagination of developers worldwide and has become an invaluable part of the technology stack for hundreds, if not thousands of companies at this point. We chatted to Morgan about how it came to be and he shared the story of how it’s pre-cursor Finagle came out of his time at Twitter. After a brief stint working on machine learning related work, he shifted to the infrastructure team at Twitter and was instrumental in turning the product from something that would fall over rather frequently into a more robust system that could handle the crazy growth it was seeing at the time. In his tenure, he saw them move from a monolithic Ruby on Rails app to an infrastructure which echoed the cloud-native architectures that we see so often today.

Finagle was one of those pieces of technology that came out of that shift and it slowly transformed into the first version of Linkerd once he had left the company – leveraging proxies and containers to create a really powerful tool that maintained the heritage of what came before but solved for common problems in a very unique way.

The team at Buoyant made some very intentional decisions to seed the tool as an open-source project rather than trying to build it into proprietary software that they could put behind a paywall. They remained the commercial backer for sustainability’s sake but wanted to be as vendor-friendly as possible. That’s why they made it a CNCF project hosted by the neutral foundation, with the IP collectively owned by the Linkerd authors in general.

Nurturing the Community

As with any of these projects, managing the community is where things live or die – because you need people to be pulling in the same direction if you’re going to build something truly special. Morgan had some fantastic advice, based off his experience, about how to make an open-source community thrive:

  • Have a home. It’s important to make sure that the community has a place to be and that they know about it. This could be a forum, a Slack group, a Discord server, or whatever – but making sure that there was some form of virtual home is table stakes.
  • Set boundaries. As creators and ambassadors, you want to be as welcoming and friendly as possible, without turning into a pseudo customer service agent who is just helping everyone with everything. It’s finding that balance that allows for a truly distributed network that isn’t dependent on you.
  • Clear communication. A lot of community building just comes down to good communication. Let your members know how they can be active in the community and reiterate that the project is just as much theirs as it is yours.
  • Prioritize recognition. Linkerd does this really cool thing every month called ‘Linkerd Heroes’ where people who’ve done something cool with the technology or for the community are nominated and then voted on – to win a LinkedIn badge that they can display on their profile. It doesn’t have to be a huge thing but encouraging people like this has proven really useful in incentivizing active participation throughout. Recognition matters.
  • Be intentional. You have to be intentional about the kind of community you want by seeding the culture and expectations that you want to permeate through everything. If you just leave it to have a life of its own, you’re in trouble. But if you’re proactive about the kind of discourse and participation you’re looking for, then you’ll attract the right people.

The Linkerd community is a great example of what is possible when you stay true to these principles and do the hard work necessary to get a CNCF project off the ground.

Advice for New CNCF Projects

Morgan also shared some great advice for new CNCF projects which are just getting off the ground. He emphasized that you really do have to set your intentions from the beginning and make sure that the relationship between the commercial backer and the open source project is set up correctly. It’s difficult to turn things around if you get that wrong in the beginning.

In addition, you also need to be wary of the hype cycle in the development world. Your ability to differentiate between what is being used to solve real problems and what is just intellectual thought experiments disguised as blog posts will determine how efficiently you expend your time and resources. Don’t get caught up in fads, focus on the realities of what’s working on the ground.

All of that barely scratches the surface of what was a vibrant and fascinating conversation. If this was of interest to you, then we’d highly encourage you listen to the whole podcast to get the most out of it. We thoroughly enjoyed it and we think you will too.