By Zoleka and Frank Hofmann
The world of technology is a fascinating one. For an end user who has always used Microsoft Windows or Mac OS X, we thought it would be very easy and we would nail it when it came to learning other operating systems such as Linux - so naive of us, we know. However, upon doing research and trying we figured out how other people feel about it, below is the result of our research.
Many Different Linux Distributions
It feels overwhelming and almost difficult to choose which distribution suits you best. Some of the most popular ones include, but are not limited to, Ubuntu, Kubuntu, Lubuntu, OpenSuse, Slackware, Debian GNU/Linux, Red Hat, and CentOS, to mention but a few. For a newbie, it feels like being dropped in the Amazon jungle and being asked to find your way on your own.
Furthermore, we have learnt one cannot use the same maneuvers across all of these distributions. Due to movements like Linux Standard Base (LSB) and the Filesystem Hierarchy Standard, the main command set, as well as the main directory tree, is similar among them.
Some structures, tools, and commands are specific to a certain group of distributions - the ones that historically have the same origin, and belong to the same branch. The timeline of the development of various Linux distributions shows how these distributions are linked together.
This may seem like a petty complaint, but after trying out 5 or 6 of these distributions to check which one is best for us it became pretty clear that if an experienced person cannot do it, it is therefore too difficult for a newbie. To give a proper answer to this, it helps to gather your needs, and to describe your aim - what would you like to use the Linux-based system for? It can be surfing the web, securing your private network, just watching movies, or writing your thesis. For all of these cases a specific distribution exists that fits for you and your needs. Resources like Distrowatch keep you informed about the changes on Linux distributions.
Beginner and Advanced Distributions
Because it's not so clear, a lot of the times people choose a distribution for Linux that is not suitable for beginners. People who want to venture into Linux are asked to dig a lot in order to find the right information. Be aware that the lerarning curve is quite steep. According to the blog It's FOSS and other sources, this classification may help you to choose the right Linux distribution:
- For beginners (desktop): Ubuntu and derivates, Linux Mint Mate/Cinnamon, Elementary OS
- For intermediate users (desktop and server): Debian GNU/Linux, RedHat, Fedora, CentOS, Arch Linux, OpenSuse, Slackware, Mageia
All of them offer so-called "Live CDs" that allow you to try the Linux distribution without installing it on your computer. Download the distribution image, boot from the image, and figure out if you like it or not. If you are not happy with it then move on and try the next one.
Linux's Open Systems Internals
Linux has a Boot manager, a Desktop environment chooser, a Boot loader, a Desktop manager, a Network manager, and for each of these is software that accompanies the utilities. However, operating systems such as Mac OS X and Microsoft Windows do not display that so openly.
It is overwhelming with Linux if you are a complete beginner. In order to get used to this terminology, from an expert's point of view the only thing that helps is reading the documentation, studying, asking questions, and playing with Linux. For a complete beginner there is tons of introductions that help you to do the steps to become an expert.
This means one has to constantly study the new things. You could find information which you think is current and study that. By the time you finish learning one thing, chances are high that you will find out that it doesn't work any more.
In order to avoid this frustration check the publishing date of the information as well as the Linux distribution the examples are made for, and choose a different guide otherwise.
The Software Basket
Another thing is that commercial operating systems like Microsoft Windows and Mac OS X are bundled with a wide range of software, which Linux seems to not have at first sight. So, for end users it can be really difficult to start working with it in the way they are used to.
Keep in mind that Linux is based on a different concept - a combination of a command-line, and graphical interfaces. You are asked to frequently post-install the software you like from the according software repositories of your Linux distribution. The software may come with a different name and look but does the same thing, or even in a better way.
As an example, Rpmfind helps you to locate packages for rpm-based Linux distribtions like RedHat, Fedora, CentOS, and Suse. Software that is not yet packaged for your system is available from development platforms like GitHub and Sourceforge.
No Common Defaults
Every distro has its own bundle of applications, there are no common defaults across the distributions. For example, an individual distro doesn't always get it right while choosing a set of default applications. So, you have to keep trying different ones until you find the software that's right for you. So this may take you a moment to find the flavour you like.
Keep in mind software that is not installed on your system yet can be freely retrieved from the according software repositories of your Linux distribution, so you're not locked in to the defaults.
Adding new hardware can be a nightmare - no matter which operating system we talk about. Users on Microsoft Windows are used to finding only one or two ways to solve such a problem due to it's GUI nature. This, however, does not always apply to Linux. In many situations one needs to be an expert to know which commands are the perfect solution to your problem or if you are merely hitting the wall.
Moreover, certain hardware drivers for Linux often do not exist, or are classified as in a development state because Linux users are fewer in number, and it is not easy to port or rewrite closed-source software. Given this, you may have a hard time debugging. This applies especially for things like printers and scanners.
To simplify life, the project Linuxprinting holds a printer compatibility database that classifies thousands of devices, and collects reports from users that help you to figure out if a printer is supported by Linux before you spend money on it.
As an example, the figure below shows the information for a HP Laserjet 4 that is fully supported - which is why there are three penguins next to the description of the model.
This also applies to many commercial games that cannot run on Linux. Using the Steam platform is meant to simplify that a lot.
Expectations and Attitudes
Our last point is quite personal. Many Linux developers seem to be anti-social and they look like they're not willing to share or communicate their knowledge in a proper way to someone who wants to learn from scratch. They have almost no understanding of being "user friendly" (which is always relative). Keep in mind that Linux is a collection of software from a variety of authors that follow their own style. Many software packages have been written to fit the author's needs, originally, and later evolved into full-fledged multi-purpose solutions.
What can be quite hard is the fact that a few developers assume that you already know everything and thus they provide very little information if you dare ask for help. Explaining things is never easy, but this needs a change, definitely.
Steps to Simplify your Start
Getting Linux is quite easy, but be sure to take your time to learn about it. Read documentation and tutorials as they explain how to use the different software components, and help you to understand the different concepts.
Rather, don't do it on your own - join a Linux For Beginners training course, or look for a Linux User Group (LUG) that resides near you. Visiting Linux events (see the calendar) helps you get in contact with other Linux users, and maybe they'll be offering a Linux Install Party soon. Contact them beforehand so that someone already knows about you, and can prepare to help you. Ask them as many questions as you can. Make notes, and write down your experiences in a blog article. Doing it in this way helps you, and others as well. Just start.