How To Learn Linux
I often see the question ‘How do I learn Linux?’. It is usually from those who do not have access to professional work involving Linux. This is how I got start with Linux as a kid and how I usually respond to this question.
What Do I Do With It?
Most people with any professional IT experience will tell you that your learning is accelerated considerably on the job. This is because you are spending at least a solid 40 hours a week dedicated to it, you probably have tasks which require you to persevere even when you’re stumped and those tasks solve the problem of ‘Well, what should I learn?’.
The most common answer to this question that I see from other is something along the lines of ‘Spin up a VM, install Ubuntu and play around’.
I think this is bad advice when the goal is something general like ’learning Linux’. The reason is that it is pretty painless to install Linux these days and once the installation is complete the user is not going to know what to do next in pursuit of their goal.
Linux is used to do things: host web sites, run software, power a workstation, etc.
Without something to do, the job is over once the installation is complete. Congratulations, you now have a Linux VM.
If you have a web site or app that needs hosting, I would suggest you start with that. Otherwise, read on.
Desktop Linux
My first experience with Linux was Ubuntu 5.10 Breezy Badger. I was 13 and my only motivation was that Linux is what the cool kids were using and I wanted to be a cool kid too. Ubuntu was a bit of a revolution for the desktop space because it was so user-friendly. Still, as human-friendly as it was, it was common after an install to be greeted with: - Display resolution stuck at 800x600 - No audio and missing media codecs (couldn’t play mp3 and other non-free formats) - No WiFi (maybe no Ethernet either) - Graphics card driver problems - Many other possibilities depending on your hardware.
So right away you had a decent list of things to fix and this is usually where your journey into the user forums and documentation began and what would give your first taste of that little hit of joy one experiences when you finally get something to work.
Today, almost everything on that list is a non-issue when using mainstream distributions like Ubuntu. While this is doubtlessly a positive advancement, it does remove some of the opportunities to get down and dirty for new users.
Nevertheless, I believe that using desktop Linux as your “daily driver” workstation operating system is the best way to get familiar with Linux as a new user.
“I Believe that using desktop Linux as your “daily driver” workstation operating system is the best way to get familiar with Linux”
When you are using Linux as your workstation OS, you will: - Encounter many opportunities to delve deeper as you attempt to find solutions for all of your day-to-day needs. - Discover the documentation and community sites that are relied on by everyone, including professionals. Through these sites you will see what other users are doing with their desktop Linux setups and become inspired - Be more likely to spontaneously explore the system - Become familiar with basic terminal usage, file system hierarchy, terminology and general ‘philosophy’
At some point you will get the urge to ‘distro hop’. This is where you, somewhat manically, try out new Linux distributions in search of a sort of holy grail. When you reach this state, I would encourage you to try ‘harder’ distributions, such as Arch Linux, Gentoo or even Linux From Scratch. Ubuntu provides a nice friendly introduction but there are other distributions for more advanced users that will have you much closer to the system and place more responsibility on you as the administrator.
Conclusion
Be brave and install Linux to disk with the commitment that you will use it everyday for as much as possible. Windows (if you need it) is the one that should be virtualized or kept on a separate partition for dual booting.
When you do start working with Linux professionally you will find that Desktop Linux is quite rare, with most of the action happening on Linux servers that only provide command-line access. That is ok because it is still the same Linux and the system knowledge you gained as a desktop user will still be applicable. I would encourage you to make friends with the terminal early-on in your desktop adventures, as this is the direct path to the heart of a Linux system.