Open source and I
This is a short read and my first blog post, yay! I will point out a few noteworthy facts on the value open-source creates around us and why we should all promote it. I will then conclude with how it has transformed me as a software developer and how you can leverage open source to make an impact on your career and the world at large.
Let’s start by looking at how we create value for the people around us through open-source. Open-source is “free” or at least enthusiasts have presented the illusion that it’s free but whatever the case, it’s cheaper and better than proprietary software, period! Now let’s put that in our right pocket and take a quick stroll through time.
You’ve probably heard of UNIX — a family of operating systems developed in the 1970s. There is a rich history about this software but in short, a group of really smart people led by Ken Thompson decided to create this software and make it available for others to use. Out of this free software came a plethora of goodies and a massive family tree.
Now, what do I mean by this, a lot of systems were built on top of the first software (Unix). Out of Unix came Linux, another free software and by the way, it’s currently the most deployed software in the world — “it’s in everything”. Aside from the fact that Linux as a standalone software has made a stupendous impact, we also got a few awesome byproducts from it.
For instance, it was during the development of Linux that Linus Torvalds created Git and years later, we got GitHub with Git being the underlying technology. Bear in mind these are the byproducts of creating a free software and there are so many great byproducts like this. Now Git and GitHub are “beasts” on their own and I will cover them in detail some other time.
Next, we got the Android family from the Linux kernel; so if you are grateful for android phones, smart TVs and smartwatches. We actually owe some of that gratitude to free software, the Linux Kernel, and Linux’s grandpa Unix.
Mac OS, for instance, is built on top of Unix — look at that, that’s another magnificent branch of the Unix family. Mac OS and Linux are distant cousins if I may say and both operating systems are creating phenomenal value. They have improved lives and advanced modern day technology.
NASA, for instance, uses Linux and Unix in a lot of their systems — we can then enter the realm of space technology and talk about the value created through the use of free and open-source. This is the beauty of open-source, NASA took free software created by a bunch of brilliant developers and used it for their greater purpose. They didn’t have to recreate Linux in other to achieve their goal. They simply cloned a copy and applied it in ingenious ways and I hope you will be inspired to make your creation available for others.
Let’s take a glance at another facet of Linux. We can talk about the numerous flavours it offers — Ubuntu, Kali Linux, Red Hat just to mention a few. This gives people variety and options when it comes to choosing an operating system. If you don’t like Windows or Mac or you simply want a third option, there are tens of Linux flavours you can choose from — each with specialised features. For instance, you can get yourself a flavour designed for a specific use case, say graphic design, music production or network penetration testing. This way, you don’t need to carry around all the bloatware that comes with you-know-who.
And to talk of Red Hat, IBM recently made their biggest acquisition ever by buying Red Hat for $34 billion… mind-blowing right. This is because Red Hat — one of the biggest contributors to the open-source community — has developed a number of innovative technologies that push the boundaries of hybrid and private cloud. On that note, it’s important to mention that IBM is one of the biggest promoters of Linux and open-source.
IBM and Red Hat are redefining the landscape of cloud by leveraging open-source. The future of the cloud is made possible by Linux and I bet you’ve heard of the aforementioned buzzword. We can confidently attribute a majority of the cloud’s prodigious success to free and open software. We can look at another buzzword like blockchain and it’s pumped with plenty of open-source technologies driving it forward. Blockchain?! If we take a swing at it we will write a book instead of an article. We have a glut of innovation pouring out of this technology. This article gives us a glimpse into the open-source applications being used in Blockchain.
You’re probably thinking… what about the internet? This open-source thingy seems to be everywhere. Gotcha, open source did play a huge role in that as well. You may already know this, but servers and websites are the building blocks of the internet. And you guessed it. Most servers are run by Linux distributions and most websites are hosted on open-source application servers. For instance, we can talk about the Apache HTTP server, XAMPP, Apache Tomcat among others.
To put it differently, we have the internet because of all these free software and had it not been for their existence, the internet wouldn’t have been this accessible to the world. For instance, after the big success of the ARPANET — the original internet, that would have been the end had it not been for Sir Tim Berners-Lee — the creator of the world wide web (WWW). As a matter of fact, he fought for his creation to be free and you can connect the dots from this.
I left out quite a bit of nuance but you get the bigger picture — free software has a googol ripple effect and this sort of effect is what you create when you contribute to open source.
When you decide to make your software freely available to others to use, you give them the power and ability to achieve greater heights. You create the giant that uplifts their mission. That is the sacred law of open-source.
If we calculate the value created by open-source, we are currently in the trillion dollar range and if we perform a critical guesstimation we could hit the quadrillion dollar range.
Now, enough of that, let’s look at the other side of the coin. So far we’ve touched on the value open-source creates but let’s look at open-source developers. I joined an opensource community about a year ago but feels more like a few weeks. So many exciting events have happened over these few months but one fact I can’t ignore is how much I have grown in my abilities as a software developer over a short period of time.
My capabilities have grown exponentially because of my involvement in open-source and don’t get me wrong I have had my moments before now. By the time I got to high school, I was coding the hell out of everything. And this is because, by age 12, I had my own PC with unlimited internet access in my bedroom. By the time I got to final year in High school, I had my fourth laptop and destroyed about 5 system units due to my numerous “experiments”. Bucky Roberts was my dude back then. But the past one year has been truly life-changing.
First and foremost, I picked up 3 new production technologies and this changed my value in the market. How did I find out? I recently had an interview with one of the biggest companies in Mauritius — seeking for an internship. Bearing in mind this is my 5th internship in the past 3 years. Not only was this interview process super fast, but I was assigned a critical project and paid a handsome salary compared to other interns. And you guessed it, this is because I had skills which were in high demand and on top of that, I had proof to back my competence. This is probably the most prominent effect of open source in my career.
The good news; you can also do the same. Now, let’s take a step back and digest how you stack up your skill set through open-source. One obvious goal about open source is that most communities want more users to adopt their technologies and so they keep improving the quality of the software and incorporating brilliant technologies. That’s a no-brainer. On the other side, they want more developers to join and stay in the community. With these goals in mind, they keep evolving, they take on exciting projects and practice reliable development approaches.
But at the centre of all this is the open-source developer. In your attempt to create a product that users want to use, you learn new technologies, you read and research, you compare and contrast tools and methodologies — all of that. By the time you finish with your goal of fixing a problem or creating a new feature; you add one more skill to your cookie jar. On top of that, you have experienced developers in your community who pass on invaluable knowledge that would have taken you a lot of trials to figure out.
It’s a selfless act, but you gain so much at the end and honestly, it’s much more fun than reading 500 pages of how to do XYZ and let’s get real, you would probably abandon the book in the middle of page 52 because the writer kept blabbering about something you would never need.
Now with more engagement in your community and consistent contributions, you learn a great deal. You may or may not see the growth until you work with professionals/experts in the industry. Only then would you realize the transformation and it’s a pleasant experience. That is when you realize that your value has gained a few extra pounds. In addition, your skills are in high demand.
Now let’s bring it together. Open-source is amazing and I hope I passed on this feeling. Here are my two cents; developing countries especially African countries need to catch up with the rest of the world. We will make tremendous progress in the right direction when we have great technologies under our belt.
But how do we become a technologically advanced continent within the shortest possible time? It’s simple, let’s leverage open source and I believe you know why. I will definitely write another post about how Africa can leverage opensource to zoom into prosperity but until then have a great day. You can follow me @ebenezergraham on twitter for more updates.