Linux - The philosophy behind it
I've always been passionate about Open Source, especially the GNU / Linux project. I've been using it for 7 years now and I've learned a lot about it. Why? well, because I'm a curious person and I like to know how things work first, but I've always been fascinated by the philosophy behind it and how it's different from other operating systems. In this article, I'll try to explain what makes Linux so special and why you should use it too!
The Origins of Linux
Let's travel back to the early '90s, a time when the tech world was ruled by non-open source operating systems. These systems were like the gatekeepers, keeping users at a distance with their high prices and limited control. But in the midst of this monopoly, a curious and determined computer science student named Linus Torvalds emerged. Frustrated by the status quo, he embarked on a personal mission to create something different, something that would empower users and promote collaboration. And so, with passion and creativity, Linus gave birth to Linux—a free and open-source operating system kernel.
With its humble beginnings, Linux challenged the dominance of proprietary systems, inviting users to take control of their technology. This revolutionary journey not only transformed the software industry but also sparked a vibrant community, united by the values of openness, collaboration, and freedom.
Free vs Open Source
When we talk about free and open-source software (FOSS), we're entering a world where freedom and collaboration take center stage. The terms free and open-source are often used interchangeably, but they have different meanings.
Free Software | Open-Source Software | |
---|---|---|
Cost | You can use and distribute it without any cost | You can use and distribute it without any cost |
Freedom | Gives you the freedom to use, study, modify, and share the software | Gives you the freedom to use, study, modify, and share the software |
Accessibility | Breaks down barriers and allows you to customize and adapt the technology to your needs | Embraces transparency, encourages collaboration, and promotes innovation |
Source Code | May or may not provide access to the source code | Provides access to the source code |
Collaboration | Encourages collaboration among users and the community | Invites individuals from diverse backgrounds to contribute their skills and ideas |
Community | Fosters a community that values freedom and empowers users | Builds a community around transparency and shared development |
Principles | Upholds the philosophy of software freedom | Embraces the open-source development model |
Why using Linux?
I don't think some people would be just satisfied with the fact that Linux is free and open-source, they would ask why should I use it? what's the difference between it and other operating systems? well, depending on the distribution, you can use Linux for almost anything, on servers, in gaming, in programming, etc... here are some reasons why you should use Linux:
-
Rock-Solid Security: Linux is a fortress when it comes to security. It fends off viruses, malware, and spyware, sparing you those heart-dropping moments. With Linux, you can say goodbye to the anxiety of falling victim to ransomware or being vulnerable to sneaky data breaches like Meltdown and Spectre.
-
Unleash Your Creativity: Linux is all about customization. It's like an artist's palette, offering you endless options to make your digital world uniquely yours. Change your desktop's look and feel, experiment with different desktop environments, and explore a rich variety of Linux distributions tailored to suit your preferences.
-
Lightning-Fast Performance: Linux is known for its exceptional speed and efficiency. It's like having a souped-up sports car for your computer. Whether you're working, gaming, or simply browsing the web, Linux keeps up with your pace, delivering a responsive and seamless experience.
-
Open Doors to Freedom: Linux is all about embracing freedom and openness. It's like stepping into a world where collaboration and knowledge-sharing thrive. Join a passionate community of Linux enthusiasts, contribute to the software you love, and enjoy the satisfaction of being part of something bigger than yourself.
-
Economical and Reliable: Linux saves you money without compromising on quality. It's like having a trustworthy companion that doesn't drain your wallet. Linux is often available for free, allowing you to allocate your resources to other essential aspects of your life or business. Plus, its rock-solid stability ensures that you can rely on it day in and day out, without the hassle of frequent crashes or slowdowns.
Linux is also widely used in servers (90% of the servers actually), and once you get used to it, you'll never go back to Windows or Mac OS.
Community & Collaboration
The Linux community is a diverse and vibrant group of individuals from all over the world. It's like a global family, united by a shared passion for Linux and open-source. The community is made up of people from all walks of life, including students, developers, artists, educators, and entrepreneurs. It's a place where you can learn, share, and grow with like-minded individuals who are passionate about Linux and open-source.
Some communities that I highly recommend joining are:
- Reddit - r/linux
- Reddit - r/linuxmasterrace
- Reddit - r/unixporn
- Reddit - r/archlinux
- Reddit - r/Ubuntu
- Discord - Discord Linux
Distributions? What are they?
A Linux distribution is an operating system made from a software collection that is based upon the Linux kernel and, often, has its own package manager (for installing and deleting programs), and each have its utility, there are many of them on the market, and really anyone can create their own distribution, but the most popular ones (that I used) are:
- Ubuntu - I highly recommend this for beginners and the people that use Linux in every-day tasks
- Kali - A distribution for penetration testing and ethical hacking (has a lot of packages for that)
- Arch - A distribution for advanced users, it's a bit hard to install and use, but it's really good for learning Linux. Its power lies in the AUR (Arch User Repository) which has a lot of packages
- Manjaro - A distribution based on Arch (although it's now diverted from it), it's user-friendly and has a lot of packages, you can also use the AUR if you want
CLI (The command line)
Well, you can't talk about Linux without mentionning the command line, it's that scary black window that you see in movies. The power of Linux lies in the command line, a very fast way to get things done, and it's not that hard to learn, you just need to know the basics, and you're good to go. Although, in some distributions, you don't need to use the command line, you can do everything from the GUI (Graphical User Interface), but it's not as fast as the command line.
The hardest part about the command line is the syntax, you have to learn a whole bunch of commands to be able to use it, but once you get used to it, you'll never go back to the GUI.
Package Managers
A package manager is a collection of software tools that automates the process of installing, upgrading, configuring, and removing computer programs for a computer's operating system in a consistent manner (without breaking any software because each software has its own dependencies, or maybe some other software depends on it). A package manager deals with packages, distributions of software and data in archive files. Some package managers (that I used) are:
- APT - Used in Debian-based distributions (Ubuntu, Kali, etc...)
- Pacman - Used in Arch-based distributions (Arch, Manjaro, etc...)
- Yay - Used in Arch-based distributions (Arch, Manjaro, etc...) but user-friendly, it's a wrapper around pacman and AUR
Desktop Environments
A desktop environment is a collection of software designed to give functionality and a certain look and feel to an operating system. Each desktop environment has its own look and feel, and each has its own utility, some of them are:
- GNOME - The default desktop environment for Ubuntu, it's really good for beginners
- KDE Plasma - My most loved DE, highly customizable, and it's really good for gaming
- XFCE - A lightweight DE, it's really good for old computers
Conclusion
I summarized some of the things and terminologies that you need to know before starting your journey with Linux. From its robust security measures to its customizable nature, Linux offers a plethora of benefits that empower users and foster a sense of community. Throughout this article, we've explored the enduring impact and philosophy behind Linux, highlighting its emphasis on collaboration, freedom, and innovation. Now, armed with this knowledge, it's time to embark on your Linux journey. Dive into the vibrant world of Linux distributions, join the passionate community, and contribute to the collective growth of this remarkable ecosystem. Let Linux be your gateway to a world of endless possibilities, where you have the power to shape your digital experience and make a meaningful impact.