5 reasons you can't ignore Open Source
- select the contributor at the end of the page -
At Pluralsight, we’re big consumers of Open Source software, both for internal projects and public facing applications. If you were to randomly fire a Nerf dart into any one of our offices, you’d likely hit a front end designer styling web pages with Sass, a web developer implementing a feature in Angular 2 or React, a mobile developer writing applications with Swift, or a data scientist moving gigabytes of data in and out of Hadoop.
None of this happened as a result of an intentional ideology or a strategic move toward Open Source software; it happened naturally as we evaluated the tools available and picked one we were confident would deliver the greatest benefit to the business. For this reason and in honor of OSCON, which just so happens to kick off today, we thought it only appropriate to give you the scoop on Open Source and why you should embrace it.
Major front end web frameworks are all Open Source
The term open source software was coined in the 90s, right when the world wide web was rising in popularity. It’s not a coincidence that both happened together. Thousands of web developers learned HTML, CSS and JavaScript by reading the source code of web pages all around the web.
The complexity of today’s web applications makes this a little bit more difficult, but that’s been offset by the availability of top quality Open Source web frameworks. We’ve got Angular 2, React.js and hundreds of languages built on top of JavaScript, such as TypeScript.
In fact, it’s hard to think of a major front end web framework that isn’t Open Source. You can’t ignore Open Source in front end web development.
Exciting experimental projects with Open Source
In the 90s and aughts, Open Source was famous for copying existing ideas. Developers dreamed of being able to deploy distributed databases as powerful as Google’s Bigtable or Amazon’s Dynamo. Eventually, we’ve inched toward achieving implementations of tools that approach what billion dollar companies can create in their private research labs.
But now we’re starting to see groundbreaking research appear first as Open Source software. I have a personal list of unimplemented technologies that I think will significantly change what software can do. At the top of my list is a robust natural language parser.
Last week, Google released their natural language parsing neural network. And it’s not just a protected demo--you can download the source and experiment with it yourself! So, if you want to be on the cutting edge of research, Open Source software can’t be overlooked.
Quality of Open Source software
One of the challenges we encounter when building top notch training for software developers is getting access to demo copies of the software that we want to teach. More and more, we’re finding the software companies want to learn is Open Source.
This makes it easier for us to experiment with it and build training. But it also shows how companies are finding Open Source delivers a quality level that rivals the best commercial software available.
Support from all sizes of companies
The stereotypical story around Open Source software depicts the after-hours developer spending nights and weekends writing software alone. It’s debatable whether or not that was ever the norm, but it’s certainly not that way now.
Microsoft, famous to Open Source developers for listing the Open Source Linux operating system as a major competitive threat, is now a major contributor and supporter of Open Source.
Industry wide standards are being funded by the largest of companies. After dedicating the brightest of minds and many millions of dollars into the HipHop Virtual Machine, Facebook’s R&D work is now the foundation for PHP 7. And Google’s work on the SPDY standard has now brought web data transfer protocols a much needed update as the HTTP/2 standard.
So when it comes to industry-wide standards and investment from multi-billion dollar companies, Open Source shouldn’t be neglected.
Choice of stable releases or cutting edge
A final and major roadblock to the adoption of Open Source was stability. Apart from major projects such as the Linux kernel, the choice of Open Source meant wrestling with buggy software and unexpected changes with every major and minor release.
But many Open Source projects have realized the need for maturity and stability. As a business with mission-critical software, you now have the choice of well-identified stable releases vs. cutting edge development releases. Once known for breaking backwards compatibility with impunity, Node.js now offers a long term stable release.
Developers have embraced SemVer. Even minor packages try to maintain backwards compatibility within major version numbers and group changes together in a sensible way.
So when it comes to stable software, you can’t ignore Open Source.
In summary, you can find Open Source in web frameworks and in experimental software. It delivers quality, is supported by large companies and is increasingly stable. We hope you stay up on what’s happening this year at OSCON. And when it’s time to learn more about Open Source, you know where to find us.