You know how I like to rate distributions at the end of each year? Yes, you do. However, while I do try to make those articles be as impartial and fair as possible and encompass as broad spectrum of users as possible, they ultimately reflect one man's experience, me. Not bad, given my awesomeness, but still.
I want to try a tricky challenge. Give you a perspective on how Linux distributions can serve you based on your skill level. In other words, what is the best distro for you if you happen to be a first time user, and what is the best one for you if you're a hardcore l33t hacker with Computer Science III ninja level? And then, everything in between. Of course, it will still be my perspective, but not so much revolving around my particular needs. To sum it up, we will examine the distributions based on their stability, productivity, ease of use, compatibility, security, and many other factors, only normalled to other people than myself. Not an easy task, but let's hope I can manage it.
Say this is your first time using Linux. I'm not going to lie to you. It will not be easy. There are the preliminary steps of figuring out what Linux is, what distributions are, which version to choose, including architecture, desktop environment, flavor, codecs, software, and whatnot. Then, you have to grab the media and burn it, and then run it. The installation is probably the trickiest part, but once you figure out the notation, you will learn that all operating systems are the same, so if you've ever installed Windows, you will eventually cope just fine.
After a bit of trial and error, fun and frustration, disappointment, wonder, and realization that things might be different from what you're used to, your Linux experience will begin in earnest, or it may end suddenly, and you will go back to Windows, disliking the unfamiliar taste of change.
In this adventure, the best distribution for your needs would be Linux Mint. It is based on the most popular distribution out there, Ubuntu, and shares much of the code base, so pretty much any problem that applies to Mint applies to Ubuntu, and vice versa. Moreover, Mint retains the classic desktop layout in the form of Cinnamon desktop environment, which is very similar to Windows, and it comes preloaded with useful software and multimedia codecs, so you are ready to start using your operating system from the first moment it comes up. Of course, do not expect miracles. Most games and certain Windows-only software will not work, but as far as Linux is concerned, Mint will offer the easiest transition from your familiar world into the unknown.
A second worthy candidate is Kubuntu. The distribution, also based on Ubuntu, comes with a different flavor of desktop environment, known as KDE, hence the name, Kubuntu. With five years of free support, a very Windows-like interface, and a good compromise between usability, looks and functionality, Kubuntu offers an experience that should be similar to Linux Mint, with an added Windows twist, although some of the options in the system are not as trivial as Cinnamon.
You are no longer a noob, you know your way around. This means you have installed several Linux distributions by now, you can go about partitioning and multi-booting without ruining your system much, and you are now undergoing the transitional phase known as distro-hopping, testing everything for a few days then moving on to the next available distro with the promise of simplicity and greatness.
Again, Linux Mint is probably the best bet for your needs. You get a comfortable, out-of-the-box experience with everything you need, so you will not be overwhelmed with the need to tinker too much or try to fix too many things that could cause you to quit.
At this point in life, you've notched several years of Linux use under your belt. This means you can write your own scripts, debug system problems, separate spurious nags from systematic issues, report bugs when needed, and suchlike. You still dislike tweaking too much lest you lose control, and you often marvel at the success of some of the long commands provided in forum posts.
As someone who is willing to experiment, but not too much, you expect a certain level of predictability from your systems. Beauty is important, but no longer imperative. You are more concerned about long-term support, backward compatibility and abundance of information. Perhaps the best word that describes your needs is consistency.
Finding distributions that offer consistency is not easy. If you look at Ubuntu, and consequently Linux Mint, there have been many radical changes under and over the hood in the past few years. For example, various system paths and services have been removed, others added. This could really upset you. Ubuntu used the classic Gnome session as its fallback, then it introduced Unity 2D, and now it's gone. Then, Mint underwent from Gnome 2 via Gnome 3 via Gnome 3 with shell extensions to Cinnamon and MATE. Not bad, but you might find this somewhat alarming.
What you're looking for is something simple yet elegant, modern but not unstable, conservative but not outdated, with good information, and many years of support that will guarantee your peace of mind. The most suitable candidate that addresses all these concerns is CentOS. Still running the venerable Gnome 2, the distribution comes with 7 to 10 years of support, rock-solid stability, and follows all the classic Linux schemes and dogmas. This means you can rely on CentOS not to break your programs and scripts. The downsize is that you might have to struggle a little bit in making the distribution suitable for desktop use, but that's part of your fun as an advanced user, albeit to a small degree. You want productivity, and you don't have much partience. Luckily, CentOS matches the bill.
My definition of advanced points at people who use Linux for work in addition to fun, or at the very least, the system is an inseparable, integral part of their daily use. People who might be chucked into this category include code developers, scientists, engineers, or very enthused enthusiasts.
The advanced level of skills comes to bear in things like the ability to recover systems without reinstalling in virtually any situation, the ability to perform detailed, thorough analysis of problems and root cause them without running arbitrary commands found in Web searches within seconds, the ability to understand that symptoms are merely pointers to an issue of a deeper scale somewhere. Along those lines.
Contrary to what you might think, advanced users will most likely shun from tinkering with systems, because they expect them to be robust and stable and predictable. Much like the intermediate users, they seek the peace of mind, so they can focus on actual productivity. However, here, the criticality of the matter is even more enhanced. While a skilled home user can afford to break down their box now and then for the sake of fun, advanced users will not want to afford it, or cannot afford it. Moreover, the excitement of recovering from errors and bugs no longer poses a challenge, and it is even detrimental to one's experience.
The answer is: CentOS, once again. Fedora can also be a candidate if your work entails dabbling in the latest and greatest, but Fedora does introduce a bleeding edge of unpredictability into the equation, making things more difficult, and there's the quick update regime. Eventually, one's personal desire to focus on maintaining and running the system vs. the need to be as efficient and productve as possible will determine the usage patterns.
On a side note, and it's a big, fat, bold note: Advanced users can afford to run pretty much any distribution, from Ubuntu to Gentoo, as they see fit. In fact, taste might be the deciding factor. Unlike most people out there, I do not equate difficulty with skill. In other words, setting up Arch or Gentoo can take time, but that's probably not the best use of one's skills. In the learning stage, maybe, and it's highly debatable, but once you've mastered that stage, the necessity to manually setup your Wireless card and everything else becomes a burden. Why go through something you can get out of the box? You know your packets and services and scripts, you are no longer an apprentice marveling at your master's magic potions and powders. Harry, move on.
Anything goes, just make the right choice that matches your needs - money, freedom, religion, software choice, licensing, and all that. My expectation is to see a two-hump camel graph describing advanced users, those at the far end with hackerish distros and those at the near end with so-called noob distros. Either going for ultra-ease or ultra-control, while avoiding the in-between gray area that is the worst thing for people who strive for efficiency and perfection.
If you're expert, you are reading this article because it may have amused you. The title, that is. Do you really need me to tell you how to cater to your needs? If you're a game developer and you're now planning on working on new games for Steam, then obviously, you want Precise Pangolin, because that's what Steam wants. Or if you're an Android developer, then you will look for the distro that offers the best SDK.
Being an expert means you're really good at what you do. And being an expert in Linux means you define the boundaries and rules of the game around you. So the choice of the distribution becomes irrelevant. What is important is to use what makes you happy or rich, or both.
My vision of an expert is definitely not a basemen dweller gazing at Assembly code. That could be a form of an expert, but that does not necessarily mean THE expert. Not does it have to be something arcane or obscure that no one will ever know about. Expertise is, after all, your ability to solve problems. That is all.
As an expert, you will most likely not be using any one specific distro, but multiple ones. Rather than converging on the best compromise, you will go for pinpoint, specific tools and solutions that address your needs perfectly and disregard everything else. So you will dabble in many and all, each one perfectly tailored for narrow tasks, as it should be. Think a utility van vs. a sports car. You get it.
Not what you expected? Neither did I. When I began writing this article, I realized another cool thing. A person can instantly qualify in multiple categories at once. Someone can be an expert and a newbie. Or perhaps someone might have the necessary skills for a certain job, but completely and totally refuse to exercise them. For example, being able to manually configure printers using CUPS does not mean you will ever want to do that in your distro. So you might end up using Mint and CentOS. There you go.
The list mentions only four distributions - Mint, Kubuntu, CentOS, and Fedora. That does not mean that many others, like Xubuntu, Ubuntu, Sabayon, Mandriva, Debian, or others do not have their place in the food chain. This merely means that I have tried to choose the best, most optimal solutions for listed skill levels. Your ever so slightly different needs will make all the difference in the world. And do not forget the magical multi-faceted nature of your computing personality. Well, hopefully, you enjoyed this.
About the author:
Igor Ljubuncic aka Dedoimedo is the guy behind dedoimedo.com. He makes a living out of his very hobby - Linux, and holds a bunch of certifications that make a nice pile in the bottom drawer.