Linux distros have long been a favorite among programmers since the rise in popularity of the OS in the nineties. Programmers are technical by nature, and Linux distros appeal to that technical nature. Let’s discuss why Linux is a great desktop OS for programmers and developers
Why Linux?
Before we delve into the nitty-gritty of best Linux Distro for developers to use in their day-to-day coding endeavors, let’s first list reasons for Linux being an excellent OS choice for developers.
- Linux is free, as is most the software that comes with it.
- Linux is safe and secure.
- Linux supports most programming languages (Java, JavaScript, HTML, Perl, PHP, Python, Ruby, C, C++, HTML, CSS, etc…).
- Linux is easy to install.
- Linux terminal. The GUI interface with Linux distros, unlike other OSs, in Linux the GUI is optional. Many programmers who use Linux as their coding platform live solely in the terminal.
- An expansive range of applications to choose from. While nano and Vim are tremendous and fundamental, perhaps you want to give Sublime Text a look (you do). Linux lets you do that.
- Linux experience and expertise always looks good on a resume.
What to Look For
So, we’ve established that Linux is an excellent OS for programming. Now let’s review the criteria we want for our best Linux distro for programmers.
- Rolling versus Point Release Distros
- Community Support
- Distro Reputation
- Distraction-free Desktop Environment
What won’t delve into Community Support, Distro Reputation nor a Distraction-free Desktop Environment here, as these are self-explanatory? I would, however, like to take a moment to discuss the great Rolling versus Point Release distro debate.
Those programmers who opt to go with rolling updates enjoy the latest and greatest iterations of their distro, often receiving multiple updates per day. However, be forewarned that these updates can often lead to an unstable environment, sometimes resulting in a broken system.
Those programmers bent on stability opt for Point Release distros. These distros provide programmers a sense of security without the worry of bugs ‘magically’ appearing overnight because of a rogue or untested update. The Point Release distro, however, does not afford programmers with keen new features that possibly could result in a faster-running end product.
Rolling distro or Point release distro is strictly a matter of preference for Linux users, as there are pros and cons for each.
Great. Now we are all set to look at the best Linux distros that not only meet the requirements mentioned above but popular in the programming community.
6 Best Linux Distros for Programmers
1. Fedora
A distro can’t get a better endorsement than serving as the distro of choice of the founder of Linux. That’s right, Linux creator, Linus Torvalds uses Fedora as his main distro.
The sister project of Red Hat Linux, Fedora is an ideal programming platform. With releases every six months, developers need not worry about going too long between versions.
Fedora is fast, too. Even programmers are running Gnome report no latency or speed-related issues with their Fedora distro. The software repository for Fedora is rich, its community robust, and its reputation stellar.
I’ve been a Linux user for over twenty years, and I have never heard nor read a complaint about the stability of Fedora. Programmers can’t go wrong with one of the most trusted and reliable distros in the Linux arena.
DistroWatch.com ranks Fedora at #8.
2. Ubuntu
Ubuntu has developed a top-notch reputation over the years. The Debian-based distro will celebrate its fifteenth birthday next month on the 20th of October, and has continually risen in the ranks of the Linux community and cultivated its well-earned reputation the hard way.
Backed and supported by Canonical, Ubuntu enjoys a broad base of community support. The software repository is extensive; programmers would be hard-pressed to not to find a tool required for their day-to-day work.
Every six month Ubuntu releases updated versions which receive free support for nine months, which comprise security fixes, high-impact bug fixes, and conservative, low-risk bug fixes. Support for Ubuntu’s LTS releases are for five years and released every two years.
DistroWatch.com ranks Ubuntu at #5.
3. openSUSE
Like Fedora and Ubuntu, openSUSE also has a vibrant community and five-star reputation in the Linux community.
openSUSE is incredibly popular in the programming community, with developers devoted to the distro. An excellent reason for this is their two-variant model.
Tumbleweed allows openSUSE users a rolling release. Updates occur regularly and ensure that programmers using openSUSE always have the latest kernel, OS, and application updates available.
Another feature of openSUSE, Tumbleweed or LEAP, is its easy-to-use software delivery method. Users need only go to software.opensuse.org, find the package they want, and hit “Direct Install.” Install is done. It’s that easy, no repositories, no compiling, no commands, and no need to worry about dependency issues.
DistroWatch.com ranks openSUSE at #11.
4. elementary OS
elementary OS is based on Ubuntu and well-liked among Linux users, especially, new programmers, due to its ease of use. It comes with its desktop environment, Pantheon, which is reminiscent of macOS.
Simplistic, yet aesthetically pleasing, elementary draws man former and current Apple users and developers. Although Linux operating systems, including Ubuntu, are pretty user-friendly, elementary OS takes ease of use to a whole new level.
While the elementary OS community is not as populous as most of the others in this article, they more than makeup for it in their zeal and passion for the distros. Community members are eager and willing to help users with issues or questions.
DistroWatch.com ranks elementary OS at #6.
5. Manjaro
Arch-based Manjaro allows developers access to Arch Linux’s advanced features, however, does it with a straightforward and straightforward installation.
Manjaro uses rolling release cycles but lags approximately six weeks behind the original Arch Linux releases. Their downloads come in a multitude of desktop environment flavors, including XFCE, KDE, Gnome, and others.
Manjaro is not only gaining popularity among the general Linux user base but especially with developers. This is in large part due to easy access to a vast array of development tools, especially with AUR enabled, which provides access to a virtual cornucopia of Github projects.
Especially of interest to programmers, is Manjaro’s compatibility with bbswitch, which allows developers to power down GPUs and test their programs in different graphical environments with ease.
As reported by fosslinux.com, Manjaro’s new business model promises great thing ahead for the popular Arch-based distro.
DistroWatch.com ranks Manjaro at #2.
6. CentOS
Touting itself as a Red Hat Enterprise Linux (RHEL), CentOS claims to take all the good parts of RHEL it into a free release. A good rule of thumb is that any application that runs on Red Hat will run equally well on CentOS.
In fact, in 2014, Red Hat took over sponsorship of the CentOS project, with the goal of “helping to establish a platform well-suited to the needs of open source developers that integrate technologies in and around the operating system.”
Although Red Hat employs most of the CentOS developers, they operate separately from the RHEL developers, yet have access to the RHEL source code.
CentOS, like RHEL, uses the YUM package manager and their repositories are chock full of applications. The distro is an ideal choice for enterprise developers since it so closely emulates the RHEL environment.
Since CentOS is a widely used Linux distro for servers, filling data centers worldwide, it is an extremely popular distro for web developers and web testers.
DistroWatch.com ranks CentOS at #14.
Conclusion
We’ve covered much ground in this article. You can go with any of the six distros listed, and no one could fault you. My best advice is to test each one out in a virtual environment until you find the one that is comfortable for you.
I’ve always likened an excellent distro to one’s favorite pair of shoes, comfortable, familiar, and serves its purpose.
If you are a developer, please opine and let us know your thoughts.