Short Bytes: Linux-based operating systems are often used by developers to get their work done and create something new. Their major concerns while choosing a Linux distro for programming are compatibility, power, stability, and flexibility. Distros like Ubuntu and Debian have managed to establish themselves as the top picks. Some of the other great choices are openSUSE, Arch Linux, etc.
Should programmers use Linux?
Even though there are tons of Linux distributions which are aimed at beginners for making things easier, the majority of the crowd still uses Windows operating system. There are many reasons behind this, but that’s an inspiration for some other article. Here, we are going to discuss the best Linux distros for programming and development purposes. Using Linux while starting to learn new technologies is great because Linux is free and open source. You don’t need to spend tons of money to buy software and OS.
It also lets you make changes as per your convenience and build a personal system to suit your programming needs. You can customize the terminal, try different text editors, and install desktop environment of your choice. Moreover, most programming languages (if they aren’t limited to a particular OS) work on Linux. Last but not the least, Linux expertise is in great demand and it’ll surely help you earn some extra points while looking for your dream job.
Having established that Linux is great for programming purposes, let’s get started and tell you some of the best Linux distros for programming. Before that, don’t forget to check out our other useful lists of Linux distributions for specific purposes:
- Best Linux Distro For Beginners
- Best Linux Distro For Gamers
- Best Lightweight Linux Distros
- Overall Best Linux Distributions
- Best Linux distros for kids
- Best Operating Systems For Ethical Hacking
Top 8 Linux Distros For Programming
1. Debian GNU/Linux
Debian GNU/Linux distro is the mother operating system for many other Linux distributions. Its latest ‘stretch’ release arrived recently. In any discussion of the best Linux distros for programmers, Debian and Debian downstream distros find a special place. The reason behind Debian’s status as a developer’s operating system is a large number of packages, which are aimed at stability, and tons of tutorials out there to solve your issues and get better at whatever you’re doing. Here, I’d also like to mention the Debian testing branch (don’t let the word testing scare you), which has all the latest software and it’s pretty stable. It’s highly recommended for advanced programmers and system administrators.
Please note that if you a beginner Linux user and you’re learning the basic nuances of coding, Debian isn’t the perfect programming operating system for you. For that, you need to look for other options liken Ubuntu LTS.
Why use Debian for programming?
If you want a rock-solid stable system whose repositories have tons of open source goodies, go for Debian. Also, its popular .deb package management is another plus point.
Ubuntu is most famous and commonly used Linux distro for development and other purposes. Over the years, thanks to the support provided by Canonical and open source community, Ubuntu has grown to become one of the highlights of Linux desktop scenario. Due to its popularity and continuous development, this Debian-derivative is heavily used in the cloud and server applications. It also ships in multiple flavors to gratify different needs of people.
For all your development purposes, getting .deb packages won’t be a tough task. Its own Software Center has tons of free applications that make it a great Linux OS for programming. Its LTS version remains supported for 5 years and provides the stability of a fixed release. Notably, many programmers disliked its Unity desktop environment. But, due to some recent changes, Ubuntu has switched back to GNOME desktop.
Why use Ubuntu for coding and development?
The most popular open source OS has a huge user community to help you out at every step. A polished experience is provided by LTS releases that are quick to fix issues. Ubuntu also supports popular .deb package management system.
openSUSE, which can easily give Ubuntu a run for its money due to its professional and timely development, is a very stable operating system for programming. This Linux distro is available in two versions. While openSUSE Leap is the LTS release which remains pretty up to date and guaranteed stability, Tumbleweed is the rolling release for those who love the taste of the latest software.
One of the major strengths of openSUSE is its YaST package management which makes it easy to automate different tasks. Another great quality of this dependable Linux distro for developers is its software delivery method. You can simply visit their website and directly install anything you like. Its vast package database and supportive community is another plus point.
Why use openSUSE as a programming Linux distro?
It’s stable with very latest packages and comes with tons of packages in the repository. Its YaST package management is loved by many.
Community-driven Fedora, whose primary sponsor is Red Hat Inc., known for delivering the most cutting edge features in the world of Linux desktop. Its latest releases often inspire the other Linux distributions to adopt new features and make changes. Its smart auto config and updated packages make it a perfect programming operating system for a developer. If you don’t like being stuck with an older version of operating system you can adopt Fedora as it has a release cycle of 6 months. Upgrading from one version to another is also painless.
Moreover, Fedora only ships with open source components, which makes it a perfect choice if you’re a die-hard open source lover. Even Linus Torvalds prefers Fedora over Debian and Ubuntu. The Fedora forum is a very friendly platform to share your problems and get them solved. As Fedora is backed by Red Hat, you can expect it to work without issues while development process.
Why use Fedora for programming?
Fedora is pretty stable and it just works. It works mostly out-of-the-box on most hardware. Its small release also delivers cutting edge features.
If you love everything about Fedora (and RHEL) but you wish to use an operating system with long term support, you need to use CentOS. It’s basically community version of Red Hat without any fee or support. As it’s compiled from RHEL sources, most of the commercial software built for RHEL can be made to run on CentOS. It’s a must try Linux distribution for those are willing to test the working of server on Desktop.
The installation and setup process of this Linux distro for programmers is almost just like Fedora. To address your different software needs, there’s the vast Red Hat Software Collections and CentOS repository. This highly stable system also allows you to develop applications with safely using Xen virtualization. It uses YUM for package management.
Why use CentOS for development?
CentOS is a rock solid Linux distro that’s perfect for programming. If you’re doing enterprise development, look no further.
6. Arch Linux
Arch Linux, the favorite Linux distribution of die-hard Linux enthusiasts, comes with Linux kernel and package manager. You need to start from the ground up, choose components, and build a customized operating system that could easily become a great Linux distro for programming and other development purposes. The whole Arch community is experienced with programming at some level, so you get some helpful company.
If you love the rolling Linux distributions (here are some fixed vs rolling release differences), then you don’t need to look any further. This bleeding edge distro’s repository is always up-to-date. Its one-time installation is sufficient and every time a new version is released (very early every month), you get an updated machine. So, you can focus on the development work and leave other worries aside. If you wish to do some penetration testing work, by following some instructions you can convert your Arch Linux installation into a BlackArch installation.
Why should programmers use Arch Linux?
Arch Linux is highly customizable. It teaches you a lot while getting your system ready. If you have experience with Linux, you should definitely try Arch and build a personal system.
And then comes Gentoo. It’ll need a lot of investment from your side. So, be prepared. If you need special compilation options on your executable files, you can give Gentoo a try as it does everything from source. It also lets you rebuild your entire system for your specific CPU architectures. Its installation process will teach you a lot about your system and its subtleties. One of the best parts about Gentoo, which is also a curse for some people, is its ability to configure what compilation flags packages should support. So, if we keep the ease part aside, Gentoo gives a developer power, stability, and flexibility–everything that he/she wants.
Distros like Gentoo and Slackware (and Arch Linux, to some extent) are hard to install and setup in a good way. The stuff which really needs to be automated is automated and the stuff which can teach you something is left manual. Having said that, if you’re having some experience in Linux and you wish to expand the shores of your knowledge, try Gentoo.
Why should programmers use Gentoo?
If you think you’re an expert and you love challenges, choose Gentoo. It’s also great for developing Linux packages.
8. Manjaro Linux
If you know how to setup your Arch Linux system, you don’t need Manjaro Linux. But, if you want an Arch-based system without thinking much about updates, you can go for Manjaro. It’s very easy to install, just like Ubuntu or Linux Mint. Manjaro is the newest distro on this list and it’s growing at a fast pace. Currently, in Distrowatch’s past 6 months ranking, it sits at #3.
Manjaro development team has been doing a pretty great job with each release and making the overall experience more polished. Its stable branch is just a few weeks behind Arch stable. One more thing, if you don’t want your programming Linux distro to be devoid of systemd, there’s an OpenRC spin for that. It also has a utility to let you select real-time kernels. You can also go for another Arch-based distro, Antergos. For many, Manjaro/Antergos is to as Arch as Ubuntu is to Debian.
Why use Manjaro for programming?
If you love the power of Arch Linux and a stable distro that just works, try Manjaro. You can also go for Manjaro-OpenRC if you don’t like systemd.
So, did you find this list of Linux distros for developers interesting? Which one is your favorite? Do let us know in the comments section below.