Background
I remember that my software journey started when I started to read the book Head First C. I read the book because I wanted to learn programming and C language. By starting with C, I fell in love with it, and it's still my most favorite language until now. However, there is another one I unexpectedly fell in love with - the Linux operating system. In my mind, Linux is the best software ever created, it's lightweight, fast, open-source, and can be installed in any kind of hardware.
From the first version in 1991, it took less than 30 years to become the most important software in the world. From the little embedded board to the smartphone in our hand, or to a supper computer, we see Linux everywhere. I personally use Linux on my computer all-time, from working to playing some games. But we must admit that Linux has failed to be popular on personal computers.
Built for developers from the beginning
The best part about Linux is its stable, efficient, and especially easy to do stuff with commands.
You can easy to create a file with the touch command, write text to files with the cat command,
or simply build a program with the gcc command.
But we all know that these things are easy for our developer culture only, it's not the way to use computers for users at all.
How do we expect people to copy files using the cp command or edit files using Vim?
The creator of Linux - Linus Torvald was a great developer by making Linux. But he said before that he can do anything with computer memory, CPU kinds of stuff, but he will die if we force him to design an interface. From the beginning, Linux was created by a developer and was built for developers.
To bring Linux to the world, we need friendly interfaces, software managers, etc. That is where Linux distributions came from.
The distributions family
A Linux distribution is a combination of the Linux kernel (created by Linus Torvald), a friendly user interface (we call them Linux desktop environment), a packages manager, and installed software. Let's look at Ubuntu. It has the Linux kernel, a desktop environment names Unity, a packages manager name apt, and some installed software like a web browser, a file manager, etc. Now we call Ubuntu a complete operating system for any user, it can be compared to Window or MacOS as well.
Almost Linux distributions were open-source at the beginning, it was a very great idea and contribution to the world of software, but it also was the beginning of problems. Many developers don't like the orange color and Unity's interface, and because Ubuntu is open-source, they easy to make other distributions. Some people like the green colors and the Window old-style interface, so they created Linux Mint. Other people like an elegant interface and look like MacOS, so they create the Elementary OS. In the hacking culture, hackers need so many tools and software, so they just create a new distribution names Kali Linux with many hacking tools installed.
In this way, the world of Linux distribution is out of control, and it becomes too large today. You can look at this image and see that there are thousands of Linux distributions are existing. Do we need so many distributions at present? I think we don't! It split up our developer resources. Why do we need to create a new distribution just because we need some pre-installed tools or the green color instead of the orange?
We need to let go of our egos
As a developer for years, I also make so many changes and designs for Linux distribution on my computers. Why do we need to accept ideas that came from others while we can make our one? I think there are many developers who have the same question as me. I also ask myself why we can work together on a single Linux kernel idea, but can not work together on a single distribution.
The simple answer that I have at present, a Linux kernel is too large or there is nothing for a person or a group of people to change or personalize, we all need the kernel works well. But a Linux distribution that includes software and interfaces is too personal. That is where our developer ego rises.
Have we ever thought what if we can work together on a Linux distribution or some of it, not thousands at present? It will be great, and we will rule the world the same as the way Linux kernel is doing.
Many thanks to
- Linus Torvald for creating Linux and making it open-source.
- Distrowatch for catching up and sharing about all Linux distributions.
- Developers around the world for making a great Linux community and culture.