Last Wednesday I had the pleasure of attending All Things Open in Raleigh, NC, just a short drive away from DZone HQ. While I listened to the impressive roster of keynote speakers, it became clear very quickly that the theme of the conference would be a little less on the technology itself, but rather on the communities that are build around it, and why that is more important than any one feature or fork.
Jono Bacon, former community director at GitHub, started things off by establishing these themes. He started by looking at the exponential, hockey-stick graphs of growth in open source communities, and summarized the challenge of community building as making the process predictable. The strategy is to use behavioral economics and start your engagement from the bottom up. The more developers that are part of a community, the sooner it'll get to the higher-ups that they should invest in OSS. From there, he introduced the speakers.
I've summarized the talks below, but you will eventually be able to watch the videos at the AllThingsOpen YouTube channel.
Jim Whitehurst — CEO, Red Hat
While reviewing the growth of Linux from a side project to the default choice in enterprise software, and the example it's set most recently for machine learning software, Jim Whitehurst explained that "The company that builds the community will win." We've seen this with tools like Jenkins, MongoDB, and Spring, all of which are leaders in their spaces and have their own dedicated conferences.
But why is community so important? Jim took a step back, way back, to the Industrial Revolution, where the average productivity per person more than doubled. However, productivity started to slow down in the 1980s and we've been in a plateau ever since, so people don't feel as better off as they used to with the passing of time. Eventually, we will need to see another Industrial Revolution to push productivity again, and Whitehurst believes open source software is the way to do it.
With OSS, collaboration and community is the key. The more people work together, the more work they can accomplish than they could just on their own. One way to encourage this growth is to incorporate agile and DevOps principles into more and more organizations. These methodologies both focus on increased collaboration and flexibility with requirements, encouraging better quality software. More importantly, they help buck the traditional hierarchy and bureaucracy of larger corporations, which are great at being efficient but not for changing. The ability to scale, collaborate, and stay flexible to changing markets is vital for any company can thrive, and open source communities embody those qualities.
Mark Hinkle — VP Marketing, The Linux Foundation
Next up was Mark Hinkle, another NC native filling in for Kelsey Hightower. His talk, "Open Source: The Punk Rock of the 21st Century" started with comparisons of Henry Rollins, Iggy Pop, and David Bowie to the likes of Linus Torvolds. Why? Because when Punk started, it was self-produced, distributed through informal channels, and prided itself on DIY production and raw authenticity. Eventually, it was adopted by the mainstream with bands like Green Day. This trajectory should sound familiar to you if you've ever been involved with or have become aware of an OSS tool. So how do you accomplish the monumental task of building a community? Mark had four main points.
The first was to make your project personal. Start by scratching an itch you have and solve a problem you're having right now. His first example for the success of this rule was the Open Prosthetic Project. The issue, Mark pointed out, is that prosthetic leg technology has not really advanced much in design since 1912 (and followed up that fact with a quote: "Imagine if the technology you used every day advanced as much as prosthetic limbs have"). But in 2015, a 19-year-old built a $500, 3D-printable prosthetic hand and open-sourced the design. Opening up your work can and will help everyone, whether it's a stepping stone to something better, or if it helps people immediately.
The second was to be inclusive to everyone. AllThingsOpen established a code of conduct to be accepting of everyone regardless of gender, race, or sexual orientation, which Hinkle praised (NC in particular is already feeling the effects of not being inclusive to everyone). These are important because it doesn't do anyone any good to exclude amazing contributions, and if anyone starts acting like a troll, there are clear rules in place to remove them. The third is to share your work with the world. Without sharing, there are fewer opportunities to improve and grow. The fourth stems from the third, and that's to talk to people. Meetups, maker fairs, and conferences are great opportunities to network with other professionals, learn about what they're doing, and use it to improve yourself.
It's not as rock and roll as trashing hotel rooms, but it's very similar to how genres like punk grew from scrappy rebellions to mainstream leaders.
Neha Narkhede — CTO, Confluent
Neha Narkhede may be better known as one of the creators of Apache Kafka and the main force behind implementing data streams at LinkedIn. Her talk was more tech-focused than the previous two, called "The Rise of Real-Time", focused on how businesses change and leverage data, and how Kafka plays into it. First, she explained that thinking in streams of data is much different than just doing things in a better way (e.g. moving from filing cabinets to databases), it's changing the way you think about information.
All data consists of event streams. They start with something important that happened (an event), and as sensors and monitoring tools are updated, a clear path is shown in how the data changes in response to anything. You can see how it changes through visualization, logfiles, and changelog streams to look back at old database tables. Streams can then be used to build data pipelines, and thanks to the massive simplification of data processing with tools like Hadoop, it's easy to incorporate constantly changing data into your data processing pipeline. Kafka fits in by allowing devs to build data pipelines, store streams of data like a database, and process streams in real time. It also utilizes a vast library of APIs to connect with dozens of different pieces of software, while allowing users to build their own if they need to. All this can lead to real-time MapReduce and eventually the implementation of event-driven Microservices that can respond to data pipelines in real-time.
Jeremy King — CTO of eCommerce, Walmart Labs
For Jeremy, it was important for developers at large enterprises to 1. start contributing and 2. start from the bottom up by using "baby steps" to influence managers to use OSS. One way to accelerate growth in this way, at least for Walmart Labs, is to divide the team into mini-teams that focus on one project and less on provisioning or meetings. One key example was a Sam's Club app that allows members to scan and pay for their items without having to wait in line. The app is currently being implemented at more and more stores, and was developed by a team of only two people. Success stories at large companies like Walmart make it clear that everyone can start using open source software, and make a big change for their organizations and for the development world at large.