with Kevin Fleming, Head of Open Source Community Engagement and Member of the CTO Office at Bloomberg
Kevin has spent more than 20 years in the technology industry. In 2004, he started a VOIP service provider company and chose Asterisk as his platform. 9 months later he was offered a position at Digium to work on Asterisk full-time. After seven years of developing and managing the Asterisk project, and helping to design and build the Asterisk SCF project, he moved on to Bloomberg LP, where he works with various teams to help produce and support Bloomberg's open software, used by its customers and partners to integrate with the Bloomberg Terminal. Follow @realkpfleming and @TechAtBloomberg on Twitter.
“ASF's very explicit statement that every participant
in a project is participating personally is really
a big differentiating factor to the other models.”
How did Bloomberg's work with Open Source begin?
Bloomberg has been a consumer of Open Source software for decades, but our involvement as a community collaborator and contributor began in earnest about seven years ago. That was a result of a company-wide decision to begin using Open Source tools in the development of our applications and infrastructure when possible, instead of commercial or proprietary tools.
Open Source tools are important to us because, when a tool’s source code is available, you have the flexibility to understand how it works, to modify it, and to support it by yourself, and you don’t have to rely on a vendor who might go away or whose priorities might change. That's not to say that there aren’t vendors who support their Open Source tools, because there are, but we're not locked into a channel model. Open Source tools give us control over our own destiny. If something becomes important enough to us, we can form an internal team to provide support and enhancements for that tool and the team can contribute those enhancements back to the Open Source community, if appropriate.
Why Apache? How is Bloomberg involved with the ASF, and for how long?
Bloomberg has been involved with the ASF for almost all of the seven years that we've been an active participant in the Open Source community. Apache is the home of dozens of Open Source projects that are fundamentally important to us. These tools support our data science workflows, data processing workflows, and web services, as well as other internal and external services that the company operates.
It's important to us that the organization providing a project's home is able to effectively support the project, and we want developers that work on projects in the Apache organization to focus on actually developing software, without having to spend time managing infrastructure (like bug trackers, source code repositories, and related tools). Contributors to Apache projects can focus on their own project because of the support from the foundation that these projects receive.
Why is support for foundations such as the ASF important? How does helping the ASF help Bloomberg?
Supporting organizations like the ASF is important to Bloomberg because of its governance model. Every participant in one of these Open Source projects has equal representation and footing, and developers are valued based on the merits of their contribution. Projects operating under a different governance model might not offer same type of participation for developers unless their company has made a significant financial contribution to the organization. Bloomberg participates in those types of organizations as well, but we strongly prefer those that allow everyone to participate. Not only can input come from a broader community, but also this allows contributors with a varied level of experience to participate in projects.
Contributors on these projects aren't only developers; they also include people with varied skills like documentation, project management, and marketing. Sometimes a project's decision-makers don’t write any code. While useful tools are developed within both governance models, the way an Apache project's roadmap is set, planned, and decided upon is what's important to us.
What sets the ASF apart from other software foundations or consortia?
The one really significant difference from other charitable foundations that we also support is the ASF's governance model. ASF's very explicit statement that every participant in a project is participating personally is really a big differentiating factor to the other models.
What does 'The Apache Way' mean to Bloomberg? What makes 'The Apache Way' special?
As a result, meetings held to discuss the next major phase of an Apache project's development don't feel like any company has a representative group. ASF's policy states that you're there representing your own personal interests and not anyone else's. Even though I may know where everyone in the room works, it doesn’t matter and is not relevant. That doesn’t mean you can't say 'the company I work for uses this piece of software in a certain way,' and obviously the way you use the software will impact your opinion, but you don’t make suggestions because that’s what your company wants. Your decisions about a project should be influenced by what you think is best for the broader community. A contributor's entire currency is based on their contributions and how the community values their participation.
Do you have any guidelines for promoting innovation? There is no limit with Open Source: how do you stay focused?
We often have to consider different solutions because of changing business requirements, new types of systems to manage, or some other reason. We strongly encourage people to take a few steps back from their daily work of maintaining our systems to think about what the service may need to support in the future. We want to know if we're using the right tool, if we should use something else, or if we should improve an existing tool.
We strongly encourage people to consider that they're not just delivering a service today and that they don't want that service to be irrelevant to clients six months down the road. They need to build applications and provide databases and services that have the right functionality that meet our clients' present needs. But, you also have to choose solutions that can grow with you and that you can grow, and you have to be able to take technology in the direction you need it to go. You can do this with Open Source easier than you can with a commercial, off-the-shelf solution.
How does Apache fit into Bloomberg's long-term strategy/plans?
It's strategically important to us to ensure that the ASF continues to be a place where new, interesting, and exciting Open Source projects want to go to as their home. As these projects evolve beyond just a few people putting code up on GitHub, they can receive the benefits and support that ASF has to offer – this is a good thing for Bloomberg and the greater Open Source community.
Money is just one way to support the ASF. How else do you contribute? What recommendations do you have for others to participate?
We participate in helping the ASF decide how best to support organizations like us, and we look for ways to further help the ASF through regular conversations with them. We help spread the word about how Apache projects are run and why that's valuable and important – marketing and evangelizing is another way we contribute to the overall health of the community and the projects to which our developers contribute.
There are a few different models for how people can contribute to Apache projects. We have some employees who contribute outside of work, in their personal time. On the other end of the spectrum, we have staff that spend most of their day working on Open Source projects, including reviewing patches that aren't contributed by Bloomberg employees. These Open Source projects are important to Bloomberg, and this work ensures that the projects move forward. Of course we also have team members who contribute to projects as the need arises, which may mean that they contribute to a dozen (or more) projects in any given year.
We also host collaborative weekend sprints that are focused on a specific Open Source project or group of projects. Between 50 and 100 people attend these events with project leaders so they can learn how to become contributors to that specific project, and we provide the support system so they can participate. We ask people to break up into teams so they can, while working as part of a small group, tackle open items on the project's 'to do' list. The groups dive in and try to figure out how to solve each problem, and experts are available to help when people get stuck or to merge participants' PRs on the spot.
For some of those attending, this may be their initial contribution experience, and it's important that this experience is very collaborative, friendly, and productive. The goal of these events is to train people to be Open Source contributors. While the sprint might not be for an Apache project, some participants end up contributing to Apache projects in the future. Once someone becomes a contributor, they become more comfortable with the process and know what to expect, and they're able to translate that experience to subsequent projects.
How does it feel to be able to offer this level of support?
We're pleased to be able to participate and encourage more companies to sponsor the Apache Software Foundation. Everyone wins when everyone collaborates.
# # #
Sponsors of The Apache Software Foundation such as Bloomberg enable the all-volunteer ASF to ensure its 300+ community-driven software products remain available to billions of users around the world at no cost, and to incubate the next generation of Open Source innovations. For more information sponsorship and on ways to support the ASF, visit http://apache.org/foundation/contributing.html .