点击此处阅读中文版本,Click here to read the Chinese version
Rich Bowen has been involved in open source since before we started calling it. As a member of the Apache Software Foundation, Rich serves as a board member, VP Conferences and also an open-source strategist at AWS. Rich's multiple roles have granted him a more diverse and profound understanding of open source.
After he delivered his keynote speech, "Talking with Management about Open Source," at CommunityOverCode Asia 2023, we had a quick chat to explore more behind the speech. Besides management and open source, we also discussed approaches and strategies of AWS and the Apache Software Foundation (ASF) in open-source projects, what matters most for building open-source ecosystems, and how Rich manages to balance different roles, etc.
SegmentFault: In recent years, many Chinese companies begin to establish their open-source program office. As a well-known open-source company, how does AWS manage, operate and promote open source?
Rich Bowen: In general, AWS and Amazon have been building on open source from the very beginning. Everything that we have done has relied on open source. At Amazon, we have what we call our leadership principles. There are some things that guide the way we think.
The first one is customer obsession. We're always concerned about the customer and serving their needs foremost, so we've built all of this infrastructure, and all of these products are built on top of open source. The most important thing is that open-source projects are sustainable. Everything that we do around open source is focused on making sure that those open-source projects remain healthy. One of the things that we do is we try to choose projects and if there are several projects to choose, we try to pick one that has a healthy ecosystem and a healthy community. That can mean a lot, including the involvement of many companiesIt and transparent conversations. Then, we watch those communities closely to make sure they stay healthy, and we also attempt to participate actively to keep them healthy, and this summarizes our most critical and biggest focus.
The way that we set out to promote open source is to do it with the community. It's not like doing a promotion, instead we try to do it with the community. For example, we rely on the Apache projects so much, like Kafka and Airflow, etc. We promote them by being involved in their conferences, such as Kafka Summit and Airflow Summit. Instead of trying to do our own independent promotion, we do it with the community. In this way, we ensure the voice is from the community rather than the voice of Amazon. We also get involved in community events, like KubeCon or open-source summits.
SegmentFault: It's more about making the company step back, but for some open-source companies invested in the project a lot, making clear decisions can be difficult. They might blur the lines due to investment or treat the project as their brand.
Rich Bowen: That's correct. Occasionally, you'll see the promotion of an open-source project, and you'll wonder, are they talking about the project or are they talking about the company? It's hard to tell.
Like any big company, there's going to be a difference between one department and another. But my job, as an open-source strategist, is to engage with those departments and advise them on what we believe to be the correct way to engage, which is to put the community first and not us.
SegmentFault: Could you please share with us some astonishing AWS open-source projects?
Rich Bowen: There are two main types of open-source communities that Amazon is involved in. From my perspective. There are ones that are primarily Amazon, and there are ones that are primarily community.
Some open-source projects that we're involved with are focused around one of our services, and so there's no real incentive for other people to get engaged in it unless they're customers. There are ones like Apache Kafka, where there are many companies involved. I'm primarily interested in that second kind, the ones that are real community projects. At Amazon, most of the projects that I'm involved with are, in fact, Apache projects.
One of the projects that I'm most excited about is Apache Airflow because it's a project where Amazon is very involved. We've got plenty of full-time engineers who are working on it, but the project is not owned by Amazon. It's a community project, and there are many companies involved. That is one of the models for the best way that we engage in projects from my perspective.
SegmentFault: From your perspective, how to build an open-source ecosystem?
Rich Bowen: Transparency is the most important thing. All the discussions regarding Apache Airflow take place on the Apache Airflow mailing list. We don't have an internal meeting and then go to the project saying “Here's what we've decided”, instead, we make a proposal to the community, and it's discussed and decided in the community. So transparency and working in public is the first part of that.
The second part of that is listening with humility. It's not like I have the answers, and you should agree with me. It's listening to what the entire community thinks and then making the decision together. One of the early thinkers in open source was Bill Joy, and he founded Sun Microsystems. One of the things that he said, and I always think about is, no matter what company you work for, the smartest people in the world work somewhere else. So, thinking your team has all the answers is arrogant and short-sighted. You should listen because the best ideas always come from somewhere else because they make you think in a new way.
So, listening is the biggest part there. You have to earn trust from the community because it’s hard to gain trust, but it's so easy to lose trust. You have to be respectful, listen politely and calmly, and contribute your ideas, but don't try to force people to see your perspective.
SegmentFault: Now that you work both for AWS and the Apache Software Foundation, do you find there are some similarities and differences?
Rich Bowen: Yeah, the most significant difference is obviously the motivation. Companies exist to serve customers and make money. That's what we're there for. The Apache community exists to produce free software for the public good.
But from there, I see a lot of overlap because as I mentioned earlier, customer obsession is our top leadership principle, and that's the same thing with an open-source project. If you're not focused on the user, then you're missing the point.
As for a company to be successful, you have to think of all the users as your customers, whether they're paying you or not. They might someday, maybe they won't. But you need to make sure that you're developing products that people want, so that's the same thing with open source.
One more thing that remains constant between a prosperous company and a thriving open-source community is that no matter what you're creating – be it a car, a service, or software – the ultimate product is trust.
Do your customers trust you? Because if they don't trust you, no matter how good your product is, they're going to go somewhere else, which is the same in open-source communities. Trust is always the most important thing. If your open-source community burns the trust of the users, no matter how good your product is, they're not going to use it. We deal with open-source projects weekly, where they will decide without consulting the community. Then everybody goes to some other product just overnight, and trust is the biggest thing of that.
SegmentFault: From the foundation or community perspective, is there any conflict when you present different roles? Let’s say, having the feeling of it's the wrong way to go?
Rich Bowen: Yeah. What's important about when you have a conflict of interest is to be honest about it, to be transparent.
For example, there are projects that my company relies on very heavily, and I may want the project to make a certain decision. Or one of our competitors is involved in the project and I may not want them to be successful. So it's critical for me to say when I'm having these conversations, by the way, I work for Amazon, these are our interests, this is our potential conflict of interests. Then, once you have disclosed that, you would try to put the community first.
This goes back to an earlier point. It's significant that all of your involvement with the projects is transparent and upstream first. Because if you're making decisions internally and then taking them to the project, you're not putting the project's interests first. But if you're focused on your customers and your users, then you want the project to be successful. There's a phrase in English, the tide lifts all boats, which means if I make the project successful, I'm going to help my competitors and that's okay. Because the tide lifts all of us, and we collaborate on this thing. Maybe I'm helping my competitors, but mostly I'm helping my customers.
SegmentFault: What aspects of open source should management be aware of, and why are these aspects particularly critical?
Rich Bowen: Okay. So I think that one of the most critical things for management to understand is that open source is part of the supply chain.
No matter what your product is, you rely on raw materials, natural resources coming from somewhere else. If you just consume, then at some point you're going to run out of it. If we think about open source as our raw materials, then we have an obligation to make sure that that source of raw materials continues to be healthy. So if you are a carpenter, you want to make sure there is always a forest, you plant new trees rather than just cut it down. So what I try to communicate to management is that sustainability is our job. It is our job to make sure that projects we rely on remain healthy.
Now, historically, there are many companies that have built businesses on top of open source without contributing back, which lead to several situations. One is that the project will resent you and find ways to oppose you. You end up in a situation where you've built a product on top of something that maybe they changed their license to cut you out of the picture.
The other is that if you don't actively participate, then you don't have a voice in the decisions that are made. Perhaps the project will go in a direction that doesn't benefit you. And so active participation in your supply chain is critical. And this is true. It's not just true in software, it's true in any business. If you rely on coal, then you should understand how the coal business works so that you can see months or years in advance when a problem is coming. That is the most important thing to me.
The last thing is trust, which is again tied to transparency. You need to make sure that you are in open communication with the project, and you don't make decisions, you don't do your marketing in ways that annoy the community or ways that embarrass or devalue the community. You need to do it in ways that give credit, give the correct credit to the people who are doing the work.
SegmentFault: You mentioned consuming and applying open-source softwares which brings up another topic: contribution. What challenges do management teams face when using, contributing to, or applying open-source software? How can these challenges be addressed?
Rich Bowen: I think the biggest difficulty that businesses have in working with open source, and I mentioned in our round table yesterday, is being patient. When you try to make a decision in an open-source project, you can't just have your manager say, ‘This is how we're going to do it’. You have to discuss it.
Occasionally, you have to wait days or weeks to arrive at a decision, and that is very frustrating for companies that want to launch a product. As I have a product launch deadline and an upcoming conference where I need to announce a new feature, but you can’t do that with open source. That makes it a challenge to communicate to management why they should wait.
The reason that they should wait is that we are customer obsessed, and the users are our customers. We need to make sure that we have time, and we have to be patient to hear back from the customers. So if I have this great idea for a new feature, I'm excited about it. I want to launch it, but the users don't think it's a good idea, then eventually it will fail and so it is worth waiting for. You can even consider it to be market research, it's worth waiting to hear back from the user community. The developers involved in a project are representative of themselves, and they're the most knowledgeable users, also the power users. We have to make sure that we include them in that decision process, and that's hard to communicate to managers about deadlines.
SegmentFault: So there’s a natural conflict between management, which represents the company, and the open source. How can you convince management that understanding open-source concepts benefits in aligning strategies to meet business goals?
Rich Bowen: Going back to my earlier question, I think that having them understand that this is their source of materials and their supply chain. I find that kind of metaphor is the most useful: if we're selling milk, we need not kill the cow.
Now, some people will say, ‘We should just buy the cow, own it and ignore the farmers. We should just do this ourselves’. It’s important for a business to understand what they’re uniquely good at and things to leave behind. So you collaborate on the things that are common, and then concentrate as a company on the things that you're uniquely good at.
For example, AWS is entirely about and good at hosting network services. We have data centers all over the world. We have enormous scale, fast networks, and talented system administrators. But the software that we run is developed by the entire world, the entire community, and we share that. Then, we focus on what we're uniquely good at.
I spent nine years at Red Hat. Red Hat is not a software company. Red Hat sells support instead of software. What I would advise salespeople is not to emphasize being the best software producers in the world, as the software is made communally. What we're good at is selling support. That was the message that I thought a lot about in my Red Hat years, which is very much the same thing at AWS.
Learn more about Rich's thoughts and insight on open source in his blog at DrBacchus.com.
Author: Anne Zhu
Anne Zhu is the community manager of Answer, SegmentFault.