The following list is derived from my personal experience, both as a former Linux newbie, and in the dealings I have had with other Linux newbies. Linux newbies often have a lot of misconceptions about what Linux is, and about how they should learn it. These statements are meant to contradict some of those misconceptions.
The only realistic way to learn Linux is to use it. Though this may seem like an obvious point, I have met a number of Linux newbies who did not seem to grasp the concept. These people often want to "dual-boot" Linux and another operating system, or to put Linux on a spare computer, so that they can "play" with Linux every once a while without going outside of the safety of the other operating system that they already know.
Trying to learn Linux by "playing" with it once in a while is like trying learning to ride a bike by walking next to it. To become proficient in Linux, you need to depend on it. Nothing will improve your Linux skills like knowing that you need it to send your next e-mail or to finish your next homework assignment.
You do not get software in the same way as you do for Windows and Macintosh computers. With the Windows and Macintosh operating systems one typically finds software by buying a CD off of a shelf, downloading it from a malware-infested freeware site, or copying it illegally through peer-to-peer networks. In Linux, you rarely install software this way, and it is generally considered a bad idea to do so.
Almost every Linux distribution available has what is called an online software repository. An army of magical geeks and programmers find or make programs and put them into this repository. They examine each program in the repository as best they can in order to make sure the programs are safe to run on your computer and free of software bugs.
These repositories usually contain thousands of programs. All you have to do is learn how to use the "package management system" that came with your Linux distribution, and then you will be able to install and use all these programs for free. The package management system downloads the software from the repository and installs it on your computer for you.
There is a difference between an operating system and an interface. With operating systems such as Windows or Macintosh, the operating system has a certain well-defined "look and feel", which can only be altered slightly. Things such as the location of menus and the way icons behave is characteristic of the operating system itself. This is called the operating system's "desktop environment".
In Linux, however, there are many different desktop environments available for you to choose from. Most Linux distributions come with a certain desktop environment by default. But if you don't like it, you can simply install a different one.
Do not allow yourself to become frustrated just because you come across an interface you do not like. Linux is highly customizable, and it can ultimately become whatever you want it to be.
The command line is not a bad thing. For those of you who do not know what I am talking about, a "command line" is a special tool on your computer. It allows you to tell your computer what to do by typing commands instead of by clicking on icons or menus. Nearly every operating system has one - some just hide it a little better than others.
Some people are deathly afraid of the thing. Really, however, it is not all that bad. I have used mine for years, and I know a lot of other people who have as well. In fact, you can use it to accomplish a lot of cool things that are very difficult to accomplish without one.
But in any case, if you pick the right Linux distribution you may never even have to use the command line. Or at least, very rarely.
Linux is for gamers too. Too many people believe the popular myth that there are no or very few computer games available for Linux. Actually, there are many games available, in a large variety of genres and styles. There are First-Person-Shooters (FPS), Role-Playing Games (RPG), arcade games, puzzle games, strategy games, flight simulators, and other games. Just run online searches for a list of "top linux games", or ask the nearest Linux fanatic what his favorites are.
Often these Linux games do not always have quite as high a resolution or quite as many features as their proprietary, commercial counterparts, but any gamer can have a satisfying experience if he is willing to patiently experiment with the various Linux games that are available.
Furthermore, due to special "emulator" technology written for Linux, it is sometimes possible to play Windows games on a Linux computer.
There is help available. You can certainly learn how to use Linux without any help if you really want to. But you do not need to. Strange as it may sound, the are literally thousands of people who "hang out" at online forums and chat channels for no other reason than to find people who need help with Linux (and to increase their own knowledge). Learn how to communicate with these people, and they will be able to answer nearly all the newbie questions you have.
Furthermore, there is online documentation scattered across the Internet for nearly every Linux distribution and program available. And if you are lucky enough to know a Linux fanatic personally, he or she will more than likely be glad to provide you with whatever resources you need to help you get set up.
The first experience is not always the characteristic one. I once talked to a man who gave up on Linux after only a single attempt. As he provided me with more details, I came to find out that he happened to have chosen the most complex and technically-oriented Linux distribution available. There are many other distributions that are much easier to use, but he was not aware of that.
I knew another person who told me that he hated a particular Linux distribution. As it happens, he was using a version of that distribution which was almost ten years old!
If your first experience is a little rough for some reason, do not "throw in the towel". Talk to someone with more experience to see if you are doing something wrong. Or try a different desktop environment. Or try a different Linux distribution.
Linux is an operating system of ideals. What is ultimately most important about Linux is that it is an operating system constructed of Free and Open-Source Software (FOSS). The entire FOSS movement is predicated on the idea of intellectual freedom. FOSS advocates believe that ultimately nobody "owns" a piece of software, and that people should be free to copy, distribute, and modify software without the legal restrictions and intellectual fetters imposed on them by copyright and patent holders.
Since most of the commercial software world does not think this way, Linux has always been something of an "underdog". Linux is a great operating system, and constantly improving, but it is not perfect. People who understand where Linux is headed are more apt to be patient when there are a few bumps along the road. Someone once said that "an ideal is still a useful thing, even if it is never fully realized."


A thoughtful insight and ideas I will use on my blog. You've obviously spent some time on this. Well done!
This site doesn't show up right on my iphone, I thought you might want to know, awesome site though
Thanks, I enjoyed that.
When you say "You do not get software in the same way as you do for Windows and Macintosh computers", you list only one legitimate way, then go on to list as many negative ways as you can think of.
Then you mention that the command line isn't a bad thing. For advanced users it isn't, but Linux being centered around the command line has it's down sides for new users, especially when things go wrong. Typical example today, I try to play some Internet radio stations with Rhythmbox. Pooof! The program closes. What the heck? Turns out it's actually crashing, but because I didn't launch it from a terminal I never get this message. This is a real problem, one you neglect to mention, and it stems from Linux still being primarily a text based OS with a GUI as an afterthought.
I understand you love your OS and you want more people to experience the "joy" that you do, but you are clearly biased. You will not give people all the positives and negatives in a balanced way.
Very nice write up. You have things in the right order of importance and list everything that matters. I've helped teach people Desktop GNU/Linux for more than five years and have seen all of this over and over again. When people understand these few, simple concepts they never go back to non free software. The are two things I might add to this, that there's no "magic" involved and that the GNU/Linux command lines are better than "not bad."
There's no magic in the GNU/Linux community other than their ability to share. All computer systems, Windows and Mac included, are dependent on a community of users. The thing that makes any OS "easy" is community support. The maker's support, the retailer stocking what you want, the repair shop around the corner knowing your system, the kid next door being able to help, without these things no computer works. GNU/Linux works without a lot of the commercial support because the software is free. Once one person figures something out, everyone can have it. This is more efficient than the non free way of inventing every wheel at every company over and over again. People still have to work at things, the costs are just a lot lower when people share and there's no barrier to sharing the free software way.
While intimidating at first, the GNU/Linux command lines are a thing to be proud of not hide. Just as sharing makes for better device support and applications like browsers, it also makes for a better command line. Paths work, so you can call programs with ease. Try typing "paintbrush" in DOS. Did you forget the extension and where the program is located? Will the prompt auto complete for you? No? Now try typing "gimp" in bash, or "gi" followed by a tab character. Don't know what the rest of that is? Use the "man" or "info" commands to find out. Type "man man" and remember that "q" exits. This just scrapes the surface of the GNU/Toolset, but any reader should be able to see that the command line is a first class piece of work. DOS is like a pair of bad sandals, you will be sore using it. GNU/Linux is like a magic carpet ride, all you have to do is think a little and soon you don't even have to do that.
Kudos for point 2 -- beginning users should get _all_ their software from their Linux distributor, because these are the people who have made sure that the software will work together. Any other approach puts it on _your_ head to get something working, and keep it working over time. Many people can install software and get it working, but keeping it working forever is harder. Look at all the MS Windows systems that slowly die of bitrot as the user gradually adds, or tries to add, new software.
If I had to pick one mistake new Linux users make, it's not getting _all_ their software from their distro.
The corollary impacts where you goto get help. Go first to the people supporting your Linux distribution. Go second to the people who wrote the software. _Then_ search the Internet for answers as a last resort.
Excellent post. Can identify with everything you mentioned. Mandriva 2009.1 KDE with its Control Center is for me since 1997.