We have all been there. Our first attempt at Linux. And we have all forgotten it. The human mind does a wonderful trick of glossing over less glamorous details, forgetting boring ones, heightening trauma and success, making us believe that our journey to becoming special, i.e. Linux users, was a fairly trivial man-it-up ordeal. We have long lost the touch with reality, which is, most people have no darn clue about operating systems, especially not one named Linux.
Today, I would like to try something rather impossible, or at the very least, in the words of Great Vizzini, inconceivable, sans the lisp. I would like to create a short hitchhiker’s guide to Linux for the newbies and converts, so they will know what awaits them if they ever stumble upon the yellow geek road. Really short. A one-liner. Maybe even shorter.
Better still, us veterans will then use this guide to help their friends take the leap of faith, or at the very least, of binary code. Best of all, I will attempt to avoid all the pitfalls that played our memory silly, and made us believe our guru enlightenment was a simple thing of wit, intelligence and luck. At the end, I will give you the recipe. And it will be just one word. Believe me. Now, read on, don’t skip.
Someone whispers THE word
If you heard the word Linux, your curiosity will perk up. What might it be, you may ask? Or your friend may ask? Or someone will? So how do you explain it? GNU slash Linux is … Buzzer. Wrong! No one cares about terminology.
Analogies and real-life examples might work. Walk into your computer-dedicated room and point at your router. See that thing, tell them. That’s Linux. Modem? Linux. TV? Linux. Keep going. Then, grab your smartphone, and if it’s not Android, put it away. Find one that is, then tell them, Linux, even if you might disbelieve it yourself, deep down, in the black pits of ideology.
That’s one way of doing it. But don’t push it. For instance, and totally sidetracking, telling Mac users their shiny white gadgets may have roots in something that was made in the hallways of universities and almost rhymes, ever so dyslectic-like, with that fancy night club in Amsterdam, might be overdoing it, just like claiming that nuclear-powered aircraft carriers are, in essence, almost identical to the first steam engines in the 18th century.
Still, Linux is not just about implementation. It’s about the journey. With the same excitement you feel when standing at the entrance to the BDSM club at the corner of Rozengracht, capital of the Netherlands, you want to explore this new, forbidden operating system. And that’s where the magic begins. If you’re all about applications, then the operating system is irrelevant. Game over. If you’re all about tinkering, then you may proceed to the next step.
Now that you’ve heard of Linux. What do you do now? Google Linux? Wikipedia might help, but not much, because there’s too much lingo. Ubuntu features highly in the searches, and that’s a favorable sign. Further down the list, names like RedHat, Mint and Debian crop up, and the plot thickens.
How do you explain the subtle concept of distributions to someone who still has no clue what this new operating system is all about, or worse, comes fat with preconceptions from another world, one called Windows, where the system, across the entire stack, is just that, Windows. There is no such dimension in the familiar world, and you can’t explain the universe to a pleb any more than you can explain distributions of Linux to a common Windows user. How do you explain the support model? Free and yet not so? Free to modify and redistribute? To make things even more complicated, you strip the graphics stack from the kernel, and give it all kinds of fancy names. From a one-dimensional world into the string theory.
So no. We won’t do that.
Just as you don’t learn driving in Bugatti Veyron, you do not start the Linux journey by naming distributions and their flavors. So far, the person has only heard Linux, and they don’t know the extra granularity, and you should keep it safely hidden away. Because, remember, that’s what we did. We were so confused we distro-hopped for years until we figured out the right way of doing things. Some of us are still stuck in the limbo, unable to take their hands of the DVD burner, unable to try yet another spin, another fork, another edition.
Step 1 to happiness: Go with the popular choice.
I know, I know, you won’t like it, call me fanboy, whatever. But the best way of helping new users master Linux is by providing them with just one choice, and we’ll argue about that. It should be one distribution with a specific desktop environment, and that’s all they should know for now. The distro war is not important at this stage. Just one operating system, one desktop, one edition.
Which one? Well, I’d recommend going with whatever works best in the search engines. Should one need to browse for help, let is be something with a plenty of resources rather than an obscure copy of an archived mailing list. This means Ubuntu or Mint, most likely Ubuntu. Sure, this may be the wrong choice, but it is the best beginner’s choice, no matter how you, the elderly grumpy veteran, feel about it. Later on, we will try to steer our newbie to other flavors, the ones we supposedly like more, but not right now. This is the baiting step. The mating call.
Testing the new operating system
Do not let the newbie install it by themselves. Because that’s what we did, and that made us read too much, and soon our head was bursting with new, raw, unprocessed knowledge. We did a whole bunch of mistakes until we learned what those partitions are.
Instead, I would recommend a preinstalled virtual machine image. That’s a most useful exercise, because virtualization is an excellent way of teaching computer enthusiasts about the separation between hardware and software, about the installation process. It’s also a safe and often reversible way of making changes and even doing mistakes.
Once the new users gets the hang of what this thing called Linux is about, the next step would be to perform their own installation, still using this virtualized framework. At this point, they will learn about operating system images, about disks and partitioning, maybe even a little about network. Nothing to do with Linux per se, and yet, everything. It’s also preferable to using Linux on a production machine, where people cannot afford to make any errors.
After our rookie masters the virtual instance, we should let them try a live edition on a laptop, hopefully a non-critical piece of hardware. This will bring them face to face with the more interesting aspect of the Linux world, the hardware detection. They will cherish the fact everything works out of the box, and at this point, you should remind them of the lengthy driver setups in Windows, and they will cry hysterically when things do not work quite as expected, and they are forced to try to fix problems on their own. Nothing like a healthy dose of gcc and insmod in sobering up some fresh blood.
We did, which is why we shouldn’t let them do it. We ought to be there for them, help them get their Linux installed for the first time, and work around some of the rougher edges. Remember your own pride after you had a box up and running, and everything worked. That’s the moment they will be hooked.
The addiction begins
That laptop will not rest, collecting dust. It will see more and more usage, as the newbie tries to discover the various, colorful facets of the new operating system. And in the span of first few weeks, they will learn the concept of root and user separation, what sudo does and why it’s good for them, the idea of multi-user environment and sharing, and finally, the fact their desktop is, in essence, one big application for all those other applications. Lastly, the sharp one will figure out the command line, and true magic shall begin.
Naturally, since we all have our little twists, some of the users will not be content with the world we have just shown them, and they will want more. At this point, they will have enough confidence to use the search engine on their own and begin exploring. Fortified with the basic knowledge about virtualization, image manipulation, some hardware compatibility, and the installation process, they will not fear going back to the familiar grounds and making small adjustments. Using the virtual machine from before, they will replace the ISO file, and try something else. And then, something else. The unavoidable cycle of distro hopping will begin, but in a safe and stress-free manner.
Nor long thereafter, you will be thanked for your effort and support, and the rookie will hit the road on its own. This is the point when a newbie becomes a true Linux user, the moment he or she start comparing the benefits and shortcomings of various distributions, various desktop editions, various collections of programs. They will sink into the multi-dimensional world of Linux, and it will never be quite the same for them. To think they only knew Windows, pre-installed, at that, just weeks earlier.
So what’s the big difference?
So I am preaching, but how is my recipe any better or worse than everything else people have tried in the recent years? Well, for one, converting another person to the lifestyle of exploration will not solve the desktop usage figures. It will happen commercially, most probably thanks to Steam, and maybe Ubuntu, definitely not because superior technology ought to reign. That’s irrelevant. Then, you may argue that only the end result matters, and that new users SHOULD bleed their share of pain, and that this is the best way of learning.
If you think about it, the Charles Dickens’ school of discipline and education has been outdated recently, and switching kids is no longer in fashion, apparently for a reason, and yet, math, science and geography are still being taught. The fact we had to pray to the gods of the Internet for the source code for the network card does not mean the future generations should suffer the same.
This is one true problem with the Linux world. The technology has moved on, but not the mentality, not the mindset. The rift, the attitude of years yore still remains, and in being the gurus and evangelists, we spread this infection to the next generation. Inadvertently, sometimes without malice or bad thought, just by accident, cause that’s what we all know. Still, too complicated.
In teaching others, we teach ourselves
That’s the crux of the message. It’s not about compiling drivers. It’s not about using an obscure product that makes you happy, and then projecting on the whole world in the brightest and most exclusive black and white. Your great-great-grandfathers hunted for food. Should you?
We learned through fragmentation, trial and error, and that’s why we are so rad. But I believe that the new wave of Linux users can be just as good as we are, without having to undergo the mandatory IRC abuse, ask silly questions in forums, and waste days of their lives getting basic things to work. They should focus on the cool stuff, on the fun stuff, and designing the future edition of excellence.
No disrespect, but teaching Linux by giving people Arch or Gentoo is not the right way. Nor is the Debian or CentOS. For new users, FOSS means nothing. For new users, source code is meaningless. Sure, they might learn a whole lot if subjected to it, but to what end. So they can repeat the same mistakes we made? Anyhow, way, way too complicated still. Let’s make it simpler.
Now, if we could also get OEM vendors to bundle Linux, then we get the desired result. Think about it. People buy a laptop, with an operating system already there, fully configured for use. Reminds you of something. Yup. That’s called Windows. No fuss, no driver problems, no hardship, just fun, on familiar grounds. To an extent. Still, that’s the right way of doing. Software centers, with easy access to applications, even better. Instant win. New convert, next please. Some companies are already doing that. Like System76. Or maybe SOL. They are trying to break through using Linux, mated to hardware. But that’s not just their battle, that’s ours, too.
My recipe for Linux is actually an anti-recipe. Don’t show the new user Linux. Because Linux is a beast with a hundred heads and arms and hearts and mind, and it beats so many tunes, it’s a cacophony. Ideology, forking, free vs. non-free, beautiful, ugly, old school, automated, desktop environments, kernels, binary formats, no no no. That’s not what we want our new members to see. Keep all that behind the curtain. When you go to the restaurant, you don’t want to see the preparations. Once you connoisseur your way around, then you might. If you feel like it.
People will only embrace new technology if it’s identical to what they already use and know. Electric cars? Not until they get the range and refueling speed of regular cars. On the desktop, it’s Windows, I’m afraid. So give them Windows, just make it Linux. One system, one desktop, pre-installed, fun, full of games. They will figure out the rest. That’s how it’s done.
Nah, we can do better than that. On the hardware front, if we want to see Linux become dominant on the desktop, just as it has everywhere else, we just need to learn from the existing success stories. What is one unifying factor that made Android so big, or Linux so well embedded in all those peripheral devices? It’s the devices themselves. You never install them on your own, they come ready for use. What’s the one difference between Windows and Linux desktops? You install the latter on your own. Did it work for us? So no recipe, no anti-recipe. Forget it. Make it even simpler. One line. One word, really. Hardware.
Wanna help others try Linux, let’s solve the hardware piece. Peace.