Do you need a Linux distro for programming? For starters, there aren’t any distros that are specifically targeting programmers per se. It doesn’t really matter, as a Linux distribution is mostly the same as the next one in regards to what software you’ll be able to use on it. But then again, there are a few distros available that will be preferable due to the way they have been built up. You should also consider the kind of programming you’re into, whether web-based or system or application programming.
For the programmer, you want to choose a Linux distro with the following in mind
- Stability – that is stable.
- Lightweight, You also want a distro with preferably no unnecessary additions or bloatware and hence a lightweight distro. You should also choose a distro with good support or update approach.
- Support – Another advantage will also be community support as you will need all the help you can get if you should run into issues.
4. Personal preferences – And lastly, your personal preferences such as your choice of the desktop environment: do you prefer a simple one such as XFCE or LXDE or rather a fully featured KDE, Cinnamon or Unity? Do you prefer pacman, apt-get, yum or portage to manage your packages? Do you want Debian based or RPM-based distro?So with all these in mind, let us look at 5 Linux distributions that are quite preferable to the programming community.
Arch Linux seeks simplicity as without unnecessary additions, modifications, or complications, and provides a lightweight UNIX-like base structure that allows an individual user to shape the system according to their own needs. In short: an elegant, minimalist approach. This allows you to easily study existing source code; modify it and build your own
customized package; and so on. For the advanced Linux user, ARCH might just be the one for you.
One thing I appreciate about Debian is that you can very easily set up your system to work with lower level sources with minimal friction between your workflow and working code. Debian provides an awesome system for Linux programming because of apt-get and build-dep and, of course, the quality of metadata in their repositories and the discipline they impose on the source/build cohesion for each release as a whole. You should use Ubuntu and use an LTS release. It’s the most common Linux OS, so things will actually work quite often. In practice, this is the most important thing about an OS you’re going to use to do your work. Another good option is Linux Mint. Linux Mint is built on top of Ubuntu (or Debian) and essentially tries to provide a more elegant version of Ubuntu. It uses a fork of GNOME 3 and comes with some proprietary software installed for easier use. The openSUSE developer community and Novell work very hard and very consistently and systematically to improve the distribution with every release, without making the same mistakes again with every major release (like Ubuntu). For the past few years, openSUSE has proved quite capable. It has a vast package database and an amazing community for troubleshooting minor bugs on your own. The essential packages and all of their complementary libraries have always been built good and working flawlessly. openSUSE is fast, stable and reliable. Fedora is stable and you won’t have to deal with any frustrating crashes. I think what makes Fedora one of the best is the extensive, sensible auto config and up-to-date packages. If your target is building software for GNU/Linux, and you are an experienced programmer, then I believe that Fedora is for you. It is quite easy to set your programming environment up. Building projects are as easy as a few invocations to
rpmlint. Cloning and pushing are through a highly programmer-friendly
fedpkg tool. Updating through the Bodhi system is quite straightforward and has both text- and web-based interfaces. Most of the software you can find on any distro you will find on some Fedora repository (and a few more). The Fedora forum is a very friendly user community that helps very much when you are stuck. There are also other resources of course.
If you want a distro that will make you a better programmer, I’d recommend Gentoo
. It has a steep learning curve – you wind up with a system that has no software on it that you didn’t compile from source. And it’s incredibly non-opinionated – you can use any combination of software you can compile for it – assemble a super lightweight desktop from pieces-parts and realize that that’s all a “desktop” ever was, and you’re not stuck with the choices someone else made. Want power management? What happens when you close or open the lid of your laptop is a script you will write. There never has to be a moment when you don’t know what your computer is doing.
All that said, it is not for the faint of heart or patience, and you need to plan to invest some time getting started with it. After a few months, though, you’ll wonder how you ever tolerated what you used before.
If you ask ten different people, you will get ten different answers, for 10 different reasons. Trying out different Distros before settling one is highly recommended. But if you want a core that is most often targeted by developers, you may want to go with Ubuntu, but all the others on this list will surely work for you.