6 of the Best Linux Distros for Developers and Programmers

One of the reasons Linux is great is because of how flexible it is. For example, it can run on everything from servers to your old laptop to a Raspberry Pi. For this reason, it’s also a fantastic platform for developers.

Whether you’re a seasoned developer or just using Linux to learn to program, you still have to choose a distribution. The reality is that you can pretty much be a developer with most Linux distros, but some have those little conveniences that make them head-and-shoulders above the crowd.

1. Ubuntu

Yes, it may seem like a given to include Ubuntu on any list of the best Linux distros, but there are a lot of specific and convincing reasons why it stands out for developers.

Ubuntu is not only one of the most frequently updated Linux distros out there, it also has the biggest app repositories and is one of the most popular server operating systems. Everything on the OS is incredibly accessible – from package management, to tools, to migration across PCs, servers and cloud.

It’s little surprise that Ubuntu is utilized by big companies like Amazon’s AWS and the Android open-source project for development. You should check out Ubuntu Make too, which is a comprehensive package of development tools (complete with dependencies) that makes it easy to jump straight into the developing!

2. Fedora

Though he hops from distribution to distribution, Linux creator Linus Torvalds favors simplicity of setup. For a long time he mentioned Fedora as one of his preferred distributions, which speaks to that ease of use. We could recommend Fedora based on the kind words from the famously blunt Torvalds alone, but that’s just the start.

Fedora might be easy to install and configure, but it’s anything but dumbed down. Many new technologies make their way to Fedora before they end up in other distributions. If you’re looking to stay caught up with what’s happening in the world of Linux, this is a great distribution. Fedora’s updates eventually make their way into Red Hat Enterprise Linux, as Red Hat is a sponsor of the project.

You’ll find three core varieties of the distribution: Fedora Workstation, Fedora Server, and Fedora Atomic. This is handy for developers, as you get a version to run on your laptop, your server, and even one to power your cloud services.

3. CentOS

Like Fedora, CentOS is closely tied with Red Hat. In this case, instead of looking into the future, CentOS is instead the community-developed analog of Red Hat Enterprise Linux. This means you won’t find the newest packages included in the distribution, but those that are there are well-tested. This is great if you’re looking for a rock-solid system.

Stability is always great, but CentOS is especially useful if you’re developing enterprise software. The main reason is that software meant to run on Red Hat Enterprise Linux will usually run on CentOS. Even if you only eventually plan on working in this space, learning the Yum package management system can prove useful to your career.

4. Arch

Arch Linux is popular among many users because of its rolling release schedule. This means instead of waiting for big releases for major updates, Arch’s packages are updated much more frequently. If you like to live on the bleeding edge, as many hobbyist programmers do, Arch is a great option.

When you install Arch, you’re essentially building your system one piece at a time. After the initial installation, you won’t have a whole lot installed, so everything that is installed is there because you wanted it there. This extends to development tools, so you’ll be able to build the perfect development environment for you.

You can also try Antergos or Manjaro if you find Arch’s installation to be overly complicated.

5. Debian

If you’ve tried a handful of Linux distributions, chances are at least one of them was based on Debian. Ubuntu, for example, is built on top of Debian. If all of these different distributions are built on Debian, it has to be doing something right.

Debian also powers a lot of servers on the Internet. Because of this and the sheer amount of distros it powers, many Linux tutorials focus on Debian-based systems. This is great if you’re trying to get a piece of software to build but keep running into mysterious errors.

Another reason Debian is useful for developers is the amount of software in its repositories. If you want to spend less time building your software instead of getting someone else’s code to compile, Debian is a great choice.

6. Kali

One of the many distributions based on Debian, Kali distinguishes itself with its focus on security. Specifically, it focuses on penetration testing and breaking security. If you’re working on a web app and want to make sure it can stand up to different types of attacks, Kali will be an excellent tool to have in your inventory.

Kali also runs well on devices like the Raspberry Pi. If you’re looking to use another distro as your main computing platform, having Kali as a battery-powered “backup” can be handy.

Conclusion

Any Linux distribution can be a good distribution for programming. However, those in the above-mentioned list are more polished and can give you a head start when setting up your programming environment.

Never recommend Kali as a distro for devs or programmers, or any day to day. Defaults are unsecure, and require proper know-how to fix, also bloated by a lot of useless stuff for developers… Even from a security professional standpoint, installing it as a distro is a no-no in my book (having it in a VM is another story, but not as your default system). If you really want a distribtion to install with all the bloat of tools you’ll never use (Kali comes with A LOT of those, even pentesting every other day), at least Parrot is (theoritically) secure by default, supports SNAP for tools with “weird” dependencies (I don’t use it as a day too day, archlinux being my go-to, but if I had to choose, Parrot would win any day).

Been on Fedora since its release version 12 / 3 (Goddard) have loved every hit-and-miss with Gnome and the explosive change up from Gnome v2 to v3. Been with them and have earned my Linux Admin chops on this distro. I have used Ubuntu….OpenSuSE…Debian….and the many derivatives from it……and have worked with CEntOS in lieu of Red Hat. All in all I’d say that OpenSuSE….Ubuntu…Debian….Fedora……these are decent distros for programmers and coders. I’ve never used Arch or any of its offshoots so I can’t really speak on their usefulness. I guess whenever I come across some “spare hardware”?….I can always give ’em a try!

For years ago I was starting Linux with Ubuntu because the thought behind open source i like. I have a lot of struggle with Microsoft. Windows XP was the last OS with the very closed system and is now a days it doeing things I never ask for. I do not like my swearing during the use of windows. Linus do what I want to do. Now I enjoy to work with Xubuntu. One thing is, we live on the earth with many people and many have their own meaning about an OS. So the OS are going a big balloon. I wonder if there is a basic linux OS with only the most essential programs. Never the less, Linux is safe and realiable.

I think by adding the tools you need you can make any Distro great for any of your needs. Most commonly used tools are in the repositories, It is just installing what you need. I agree it can be nice for a Distro to have all the tools already installed to save time, but I would say it is not absolutely necessary.

Although today’s Multi-terabyte drives make it almost irrelevant how much space a distro takes up, I would much rather install tools that I need/want then to uninstall the ones I don’t. Some distros, like any based on Ubuntu, make it very hard, if not impossible to uninstall software that was part of the default install. Recently, after installing MX 18.2, I went though and uninstalled over 1 GB of software I did not need/want. I’m sure that with the installation of the proper software, I can make MX 18 into a great programming/development distro.