What do Go and Swift have in common? These open source languages are great examples of how some of the most influential software in production today is coming not from traditional software companies, but from industry leaders like Google and Apple, through to disrupters like Uber, and tech industry giants like Netflix, Facebook and Twitter.
The result is that open source is eclipsing the traditional software vendor companies (think Microsoft, IBM and now-defunct Sun Microsystems). Why?
Here’s how it works: By opening up their software tools to the public, companies advertise their tech credibility and can better compete for top talent. In turn, these talented programmers drive innovation at their employers, improving their open source platforms and creating new open source, and closing the virtuous loop.
This plays out on two levels. First, developers who are considering a new employer can gain a deep understanding of the companies they are considering working for by taking a test drive on their open source platforms. Though not everything is open to the public, the open source offerings of a company are a good indicator of the level of innovation, professionalism and opportunity taking place behind closed doors.
Secondly, the level of commitment to open source goes a long way toward showing how an organization lives out the ethos many tech companies aspire to, which is to make the world better, by making software better one step at a time. By opening up the code, architectural decisions and other programming techniques, companies are helping programmers across the globe solve software problems every day. Many programmers want to work for organizations that live out that mission, and having a robust open source library supports that ethos.
Consider, then, that two of the most influential open source companies are considered destination employers by developers: Facebook and Twitter. Facebook routinely has multiple blips on Thoughtworks’ Technology Radar; major open source platforms include React Native (cross-platform native apps), Buck (a build system) and Flux (UI).
Looking ahead, the open source mindset is playing out in interesting ways across the globe.
It’s important to understand why open source even exists as a concept. Many traditional business people wonder why these companies are giving away something that they could be charging for. Or, they question why an organization would share ways of doing things that could take away their competitive advantage.
In reality, even the most open source friendly companies do not provide open source access to their most competitive products or offerings. Those projects continue behind closed doors and might only be released as open source once they are mature technologies and they have moved beyond the leading edge.
But for many companies driving open source, the software is no longer their business differentiator, even though it may have been in the past. Netflix is a good example: when Netflix was figuring out how to stream video content, their competitive advantage was the technical know-how to make that work at scale. Now, though, many other companies have figured out how to stream, and it’s a commodity capability.
Partly as a result of that shift, the real business differentiator for Netflix now comes from its licensing deals and content creation strategy. Certainly, being technically forward-looking is integral to the business (which is why they must continue to attract and retain top tech talent), but the real competitive advantage for the enterprise has moved beyond software.
Not surprisingly, then, Netflix is a powerhouse when it comes to open source, in particular with Simian Army (arguably its most famous open source tool, for testing failure in production), Hystrix (for building components that tolerate network latency and failure) and Spinnaker (Continuous Delivery to multiple clouds).
Likely the greatest effect open source has on business is how organizations use software to advance their business goals. In the past, enterprises contracted with a technology vendor such as IBM or Microsoft that supplied them with the software platforms, tools and libraries they needed, trained their staff and managed maintenance releases. As new or improved technology came along, the vendors offered new features and drove innovation on their platform.
Though the vendor relationships still exist, it’s no longer an exclusive relationship. It is now “business as usual” for companies to choose an open source tool or platform instead of one provided by a vendor. In some cases, open source is actually preferred because of the extra flexibility it offers.
One of the best examples of this phenomenon was shown by Twitter’s Bootstrap, an open source platform that allowed people to quickly build a very richly interactive website, the likes of which were previously available only by working with a trained designer. Almost overnight, this open source tool raised the bar for organizations. Suddenly, it was necessary to have a good website and an app, no matter the size of the organization or the reach of the product.
Major open source players have some of the most influential frameworks and libraries in the industry. Much of the explosion in open source has been driven by publicly available project hosting and collaboration tools, the most important of which is GitHub. The “social coding” model of GitHub allows programmers to follow projects and other programmers, to discuss software features and proposed changes, and even to directly review new code submissions.
In my recent article, Macro Trends in the Tech Industry, I wrote about the phenomenon that developers are communicating primarily through code, using tools such as GitHub. This allows increased efficiency and productivity, and is giving rise to “internal open source” within organizations looking to boost their output.
This open source trend is likely to continue across companies. Microsoft continues to embrace open source with the .NET platform, and it will be interesting to see if they consider any of their other flagship assets as potential candidates for open source. We’ve highlighted the “new wave” of openness at Microsoft—for instance, their release of Office for iPad—and we expect this trend will continue.
At the same time, newer players are embracing open source. Uber, for instance, has five open source projects on its site. Square has eight, including Dagger (a dependency injection framework). Certainly, Uber and Square rely on technology for their business, to move people and goods (for Uber) and to process credit card payments (for Square). But software is not their only differentiator, and so it makes sense for them to participate in open source. In other cases, open source will advance one project at a time, just as the tech community makes software better one step at a time. Software providers need to continue to listen to their customers or their consumers, and adapt.
For instance, at Thoughtworks, we recently released GoCD, a Continuous Delivery tool, as open source. Our clients said they wanted this not because they didn’t want to pay for a closed-sourced tool; instead, they asked for us to open it up so they could do more with the product and make it their own. For us, this was a no-brainer: By providing GoCD as open source, we were actually providing more value to our clients and making it usable by more people.
The energy surrounding open source is not going away, and we are looking forward to seeing how more organisations can contribute to the overall health of our industry, collaboratively making software better.
[Mike, along with Badri Janakiraman, Martin Fowler, Mike Mason and Rebecca Parsons, discuss the general state of open source in the industry in this 30-minute podcast.]