Among my fascinations with open source is its cultural evolution. Open source demonstrates how much can be accomplished when we genuinely work together. Given that 2017 is the 20th anniversary of The Cathedral and the Bazaar, this seems like an appropriate moment to appreciate some of the long-term effects – particularly in non-technical terms.
Look at how much has been done! From the start, open source has been a home-grown effort. Projects self-organize. Nobody inflicts boundaries; the community makes up the rules as it goes along. Leaders step forward based on technical excellence or their ability to communicate. Individuals contribute code, documentation, test suites; they collaborate on standards and interoperability techniques.
Even more impressively: Quite often everyone does this for idealistic reasons. Sometimes they are simple goals, such as, “We want software that works, and that we can rely on.” But even when individuals, organizations, and businesses contribute to an open source community for reasons of enlightened self interest, it helps other people. As Linus Torvalds commented some years ago, “Open source only really works if everybody is contributing for their own selfish reasons. Now, those selfish reasons by no means need to be about ‘financial reward,’ though.”
An open community for features and functionality
Open source has also encouraged experimentation with business models, and a willingness to fail as long as someone could learn from the experience.
Once, if you had a bright idea for a new application you either had to create it yourself (a difficult prospect for anything beyond a simple shareware application) or to convince some kind of gatekeeper (perhaps a venture capitalist) to fund it. Open source suggested – successfully – that it was possible to create freely-available software that anyone could use, and the bills would be paid by support services, training, and other extras.
And that was just for its first act.
Back when the only enterprise software was proprietary, it would never occur to you to develop a product that didn’t have a full set of features. Everything had to be self-contained, because the application had to stand alone. Adding to the ecosystem in any way was an expensive proposition, whether it was a partner program, hardware drivers, or additional application templates.
Instead, open source communities said, “You want that feature? Cool. Build it yourself, and integrate it with the application so others can use it, too.”
As a result, in today’s marketplace, vendors build the basic functionality and open up the API to a development community. Users and would-be partners develop what they need, which can be anything they think is going to succeed.
Developing with APIs has transformed this industry. We now take open communities for granted.
For instance, reports BetaNews, Amazon has made it cheaper to build and host Alexa skills using Amazon Web Services (AWS). “Previously, developers have had at their disposal the AWS Free Tier, offering a million AWS Lambda requests and a total of 750 hours of Amazon Elastic Compute Cloud (Amazon EC2) – monthly, for free. However, exceeding these limits also meant monthly fees.”
Contrast that Alexa adoption to Siri. Arguably, Siri has equal feature sophistication, but it’s not open. The result is Alexa getting more mindshare, not to mention useful capabilities.
It’s created markets and industries
The culture of open development has also enabled the invention of whole businesses that would otherwise be impossible.
For example, drone technology has been available for a long time. But for decades, the cost of building and using drones was so high that they were only used by governments, usually in military contexts. But as the drone software opened up, the market took off. Drones made a complex technology consumable by the masses and by businesses.
The same can be said for bioinformatics, where a culture of sharing may save lives. Think of people’s willingness to share their own DNA with companies like 23andMe, which use Big Data technologies to match ancestors and develop health trends. People are contributing their most proprietary information, the DNA record about their human likeness, to a community of individuals for the greater good.
The openness is a hallmark of open source, and it’s a key part of cloud development. So is scalability, for both technologies and support systems. As the resources grow, so does the capability. That too has enabled business models that were not attainable otherwise, such as Snapchat and Uber.
A culture of openness
It isn’t as though these human desires to share information are something new in the world in the last 20 years. It’s among the nicest things we can say about ourselves that we humans have always been willing to share knowledge for community benefit. Certainly it’s reflected in the history of computing, such as techies sharing their designs at the Homebrew Computer Club (well documented in Fire in the Valley, should you want to know more).
However, open source made sharing information a business practice, not just something individuals did on their own. An enterprise can ask an open source community to provide features and functions that wouldn’t exist otherwise – and then everyone benefits by the improvement.
Oh no, not another learning experience
Not all these changes happened seamlessly or well. For example, we’ve seen open source develop the culture of valuing simplicity. Because processes are open and because everyone has an equal contribution, there’s no “boss” to turn to for an executive decision. There’s no point at which someone makes a call. When you have too many people, too much opinion slows things down. And since everybody’s voice is equal, progress on large projects can be slow and overly complex.
But I like to think that we learn from experience, and that that too is a benefit of the open source culture. When we’re free to try new things, we discover what works. One of those discoveries is “how many people can create something.” For example, The Open SSL project is written by two guys (both named Steve, which does not appear to be a requirement for success). Open SSL is open for anyone to consume and share but the reality is it’s an oligarchy. Even though everyone in the community has a voice, we end up with a few people leading. Everybody gets a vote – but at some point someone’s voice has to be overruled.
That’s quite a journey in 20 years. What do you think will be different in the next 20? Ultimately, I believe we will all have slightly different reactions to these ideas, so in the true spirit of Open Source, I encourage everybody to reach out to me in the comments section below, or hit me up on Twitter @quityourjoshing.