Photo by Arget on Unsplash |
Following up on our previous discussion on why use Linux, today we will discuss why Linux is the favorite operating system of developers, the folks who build the software you use. To get started, let's back up our assumption using StackOverflow's own insights, where it shows Linux is the most loved technology by developers:
Linux is free
Obviously, one of the main reasons to run Linux is because Linux is free. As poverty (unfortunately) grows around the world, it's important to minimize costs for users and companies. Since prices for Windows licenses are really high and utilizing MacOS, almost impeditive for half of the world, being free allows Linux to reach a wider audience including independent developers, small organizations, schools, universities and research labs.Linux is (way) more secure
Linux is also (way) more secure than Macs and Windows. That's mainly due to its:- open-source code: due to its open nature, researches and hackers frequently inspect and crack the code. When issues are found, they're reported and fixed by community.
- open collaboration model: open-source code also fosters open collaborations. Developers from all over the world will frequently push fixes to the software you use making it better and more secure.
- enterprise-grade software: tools like SELinux that are run on mission critical environments run on your machine too.
- different permission model: Linux users run on a low permission level making it very improbable that even if you're hit by a virus, you would infect the machine.
- frequent updates: your system will always be updated getting the latest security, software and kernel fixes. These are usually the holes crackers explore to target you.
- smaller exposure to viruses: yes, Linux has viruses but on an infinite smaller proportion than Windows users get. Linux also has anti-viruses if you need too.
- curated repositories: the easiest way to install software on your Linux is by using its own repositories. These repositories are curated and are less prone to have viruses.
Awesome Command Line
Developers love the command line. Using the command line is key to automate your
tasks and to opmitze tasks, resulting in huge productivity gains. Today, even
tasks that are commonly UI-based such as browsing the web, managing files and
even watching YouTube can
be accomplished from the terminal. Plus, tools such as
tmux or
i3, allow you to multitask
without sacrificing your productivity.On the left man git, on the right: vim on top and htop on bottom |
Linux is reliable
Writing software requires a a reliable system. As you probably know, Windows (and even Macs) are not as reliable as their companiesAdd caption |
Excellent Documentation
Developers have to frequently access the documentation. Linux comes the man tool allowing you access to the documentation you need available regardless of your exposure to to the internet. Just run man <cmd> to view documentation for the software you need:Good for old hardware
Linux is also excellent for old hardware. For example, you can run lighter tools that utilize less resources. Most distributions (such as Fedora LXDE shown below) release alternative lightweight versions optimized for lower-end hardware.Updated Software
Another reason why developers love Linux is because (1) they're exposed to the cutting edge software and (2) they'll get frequent updates/upgrades. Regarding the latter, updates on Linux are not only reliable but are more frequent than anything you'd get on those systems. The system will be updated multiple times a week and a new version can be available every 6 months depending on the distribution with long-term releases available every 2 years.
Streamlined cloud and container integration
Dotfiles
Integrated Git
A powerful shell
Bash (and siblings such as ZSH and Fish) is a really powerful tool in Linux. Developers who know it can leverage it to enhance their workflows. For example, you could map the following three commands:
- git add .
- git commit -m <your-message>
- git push
msg="More updates"
if [ -n "$1" ]
then
msg=$1
fi
git add . && git commit -m "$msg" && git push;
}
Oh, and simply typing gcp would do all the above using "More updates" as the git commit message. Use but don't abuse 😊.
Outstanding software availability
Not only installing software on Linux is simple but Linux distributions come
with thousands of applications to choose from. Need communication software?
Linux has Slack,
Skype,
Zoom and even
Microsoft Teams. Need
a modern development environment? Try
Visual Studio Code.
Source: Slack Downloads |
Powerful build tooling
Powerful networking tooling
Cloud-native tools
Support from a huge community
Linux users are spread around communities over the internet.
Being on Reddit
or on forums of your specific distribution, developers frequently share their
thoughts with similarly minded folks around the web. This helps them share
knowledge, news, learn new things and obviously, help others.Curated
repositories Linux users are used to having repositories curated by the
community and available for them. That means no viruses, adware, unsafe or
untrusted software.
Linux is highly customizable
Another reason developers use Linux is due to its extensive customization.
Here are some of the things that can be customized on Linux:
- Desktop Managers: don't like GNOME or KDE? There's XFCE, LXQT, LXDE, etc for you.
- Login Managers: how you login to your system.
- Desktop themes: configure themes, colors, etc.
- Fonts: customize your fonts, sizes, etc.
- Shell: shell is the application that runs on your terminal and also can be changed or customized.
- Systems and Services: your system will have an endless list of services to choose from.
- Kernel: even the kernel, the main process of your system can be customized.
Powerful hardware integrations
Into IoT, Rasperry Pi, Arduino? Due to the open nature of these platforms and to the vast documentation available, developers have access to an outstanding amount of technical information on how everything works. And Linux is the best system to do so.
Conclusion
On this post we understood a little more why developers use and love Linux. You too could benefit from using it today! We hope you learned something new today and are excited to try out Linux and use it as your main system as we do!See Also
- Why use Linux
- Why is Linux free
- Why Linux is perfect for Education
- Why Linux is safer than Windows and MacOS
- Why Linux is perfect for web developers
- What's Enterprise Linux
- Why Linux is perfect for small companies and small organizations
- Why Linux is perfect for Governments and public institutions
-
How to become an open-source contributor
- What is Open-Source?