🚀 Think you’ve got what it takes for a career in Data? Find out in just one minute!

Linux: Why is it the most liked OS for developers?

-
5
 m de lecture
-

When we talk about Linux, it usually implies a need to learn development, to become skilled on this operating system, and can therefore be scary. But is this really justified? This is what we will try to decrypt in this article.

What is Linux?

Linux is a Unix-like operating system based on the Linux kernel. Unix systems are multi-processor and multitasking operating systems and have been designed to be as stable as possible, with a high level of security. It is a free (GNU/Linux license) and open-source operating system. Therefore, users have a great deal of autonomy in terms of customization and configuration.

The fear of not being able to find one’s software, of having to learn Bash or Python scripting, of getting lost among the different distributions, etc., are all reasons that can slow down. It’s no coincidence that about 75% of web servers use Linux (according to w3techs.com), or that devices such as connected TVs, entertainment devices, space flight software, or even your Android smartphones also use this operating system.

Primary operating systemsx among professional developers

In short, Linux is now considered to be the most secure and efficient operating system.

LEading desktop operating systems worldwide by market share
Leading desktop operating systems worldwide by market share

Speed and fluidity of execution​

It is necessary to understand that Unix operating systems, in this case, Linux, work as close as possible to your hardware architecture with much less interfacing than Windows. As a result, the execution of programs and scripts is made much more fluid. In terms of security too, everything is much clearer than on other operating systems. Indeed, here, there are no more resource-intensive cumulative updates. The management of security updates is designed to be as transparent as possible.

What is the developers' point of view about Linux?

As previously stated, Linux is today considered one of the most powerful and secure operating systems. This is even more true for developers. Open-source and therefore free, Linux is an ideal choice to develop, whether as an amateur, student, or professional. As a bonus, most software designed specifically for Linux is also free. Among them, there are of course some well-known consumer software, like Obs, VLC, and LibreOffice, but also specific software like VI (text editor), or Geary (mail client).

A few years ago, installing Linux was not within the reach of everyone. Now, with an intuitive graphical interface, and above all a simplified and direct operational mode, this step is a piece of cake. However, some distributions may require a little more knowledge.

It is very important to note that Linux includes native support for most programming languages, from C to Python, through Vala, Perl, or Javascript. More generally, as long as a language is not limited by a specific architecture (such as .NET for Microsoft for example), it will work on Linux.

If you are reading this article, you are probably interested in development (or maybe you already are a developer). Mastering Linux, or at least having some skills, will also allow you to embellish your CV, and therefore may increase your employability.

What's the purpose of the bash?

The bash (Bourne-Again Shell) is the command interpreter of the Unix shell. The shell allows access to the components of the operating system. It gives access to the elements inside the system. With this interpreter, it is, therefore possible to perform simple tasks such as file manipulation, but also much more complex tasks allowing the automation of actions, or the management of Cron tasks (equivalent to scheduled tasks for Windows)

Which distribution is the best?

From Ubuntu to OpenSUSE, passing by Manjaro or CentOS, there are many distributions, and it is easy to get lost. We won’t go into the details of each distribution here, that would require a dedicated article. To make a long story short, the choice would be as follows: if you want a proven distribution, very popular and with a big community, you should choose Ubuntu without a doubt. If, on the other hand, you are looking for a very development-oriented ecosystem, then Manjaro will surely be ideal. In any case, there are a lot of articles comparing distributions according to your needs on the Internet.

Top Linux subcategories
Top Linux subcategories

What's the difference between Windows and Linux?

It would be a mistake to call Linux better than Windows, or vice versa, because they address a different population and meet users’ needs in different ways. Therefore, it is useless to talk about competition either, because that is not the case here. As we have seen in this article, Linux ticks a lot of boxes compared to its counterpart. They are not aimed at the same population and each has its advantages. Here is a small comparison (not exhaustive) between these two operating systems:

FeaturesWindowsLinux
PriceLicense requiredFree (for most distributions)
Graphical environmentKnown for its very "user-friendly" environmentMost distributions now offer GUIs. There is also a wide selection of GUIs available
SoftwareMost software is compatible with Windows (not to mention architecture)Software must be compatible, and the choice remains limited
Installation and uninstallationInstallation is done after retrieving the installers (downloading and/or purchasing the product).
Uninstallation leaves residue on the system (files, registry, etc.)
Installation is done automatically through a very extensive library.
Uninstallation removes all traces of the product
ReliabilityAlthough it has improved, it is in no way comparable to its counterpartKnown and recognized for its reliability
SecurityAttacks, vulnerabilities, DDoS, etc. are risks that must be corrected by security patchesDue to its nature, the Linux kernel is very difficult to "attack"
SpeedAlthough generally fluid, the system becomes heavier over time and useVery fluid in general
UpdatesEvery second Tuesday of each month. Or more frequently to fix certain security flawsUsers have full control over available, necessary, experimental updates, etc.
HobbiesAlmost all games are compatible, and the offer is gigantic. With the various hardware acceleration possibilities, Windows is the most suitable choice for gamersMore and more games are compatible with Linux (especially a large part of the Steam library), but the entertainment offer is much less advanced
TargetsIt was designed to suit the largest number of people. It is the operating system of choice for novice or expert users, whether for personal use (especially for games) or professional useMore advanced knowledge may be necessary for the use of Linux. However, it is the ideal system for developers, or more generally for users whose daily life is computer science

Conclusion

As we have seen throughout this article, Linux is the ideal operating system for development. Contrary to popular belief, learning this operating system does not require as much investment as it used to, as the distributions are more and more user-friendly. 

However, customization, and what you can get from Linux with some investment, can be much more advanced than Windows for example. 

Finally, if you can’t make a decisive choice, it is important to note that Linux natively offers to be installed in parallel with your Windows installation. This will materialize by a choice at the startup of your computer, between the Windows partition or the Linux partition, and this will not affect your existing data in any way.

If you want to learn to master the Linux operating system, discover our Data Engineer training!

Facebook
Twitter
LinkedIn

DataScientest News

Sign up for our Newsletter to receive our guides, tutorials, events, and the latest news directly in your inbox.

You are not available?

Leave us your e-mail, so that we can send you your new articles when they are published!
icon newsletter

DataNews

Get monthly insider insights from experts directly in your mailbox