Over the years I think I helped to influence few people here and there to actually start experimenting with linux. I count that as a personal success. I’m sure I was not the primary influence in most cases, but I’m glad I could help people to start tinker with the new OS. Note that I didn’t say switch. I do have an issue with this whole switch mentality. People say “I have switched to Linux” or “I have switched to Mac” and I can’t help but roll my eyes.
I just want to put out there this novel idea: you are not marrying you OS. Regardless of what Microsoft may want you to think, there is no rule anywhere that says you can use only one OS. Personally I think a well rounded human being should be able to use several operating systems. Hell, you can have several OS’s installed on the same computer, and simply boot into the one that you need when necessary.
When people ask me how to go about switching to Linux I tell them not to. I tell them, to try using it along side Windows (cause it’s usually Windows folks who ask it) for a while, play and explore. Whenever it gets scary or overwhelming you just go back to comfy windows zone. Whenever you need that crucial windows application that has no Linux equivalent it will be right there for you. Don’t switch - just start playing. Have fun with it and learn. Then if you one day realize that you haven’t touched the Windows box in months, you can say you have switched. However, most of us never reach the point where they can honestly say they use linux exclusively. I don’t see it as a honor badge or anything. Most of us are perfectly content having a windows box (for gaming) sitting in the corner, a MacBook laptop, and a linux workstation all working together.
But the question does have merit. Starting with linux is usually a little bit different than starting with windows, or Apple. Why? Because this is the only OS that most people have to install by themselves. When people start messing around with Linux and BSD they usually tend to install it on a system that originally came preloaded with Windows. And this is where many issues crop up. Here are the few tips I usually pass down to the newbies. I figured that I might as well record them here and just point people to this post from now on.
Consider buying a system that comes Linux installed
Best advice I can give to total newbs is to consider purchasing a system that already comes preloaded with Linux. This is naturally the most expensive option you can pick but it does solve two main problems a lot of people run into:
First, you side-step the whole installation process. Your machine will be equipped with hardware that works well with linux, and will ship with all the right drivers. Your drive will be partitioned for you and the OS will be right there. All you need to do is go through few easy initial steps such as creating a new user and you will be ready to go. The biggest linux adoption hurdle for many people is the issue with hardware that doesn’t play well with linux. If you buy a linux machine you circumvent this whole problem.
Second, you are getting a brand new computer. This means that if you for some weird reason hose the linux installation you still have your old Windows machine to fall back on. People are often scared to try linux because they don’t want to get stuck with a botched installation and a PC that can neither boot windows or linux. You will be working on a dedicated Linux machine so even if you hose it you are still fine. You can still go online and research your issues, and try to get help.
Where do you get a machine with linux on it though? You don’t have to go to some shady online company that promises to ship you linux powered PC. You can get one from Dell. Yup, dell sells machines preloaded with everyone’s favorite distro (Ubuntu). You can say what you want about dell, but at least they are trustworthy, and usually make good on their warranties.
If you feel more adventurous, or you hate dell/large corporate behemoths you can try something like System 76 which sells laptops, desktops and mini boxen all running Ubuntu out of the box.
Consider Using A Spare Computer
If you can’t afford a brand new PC at the moment. If you are like me, you probably don’t like to throw out old computers. I usually stash them in the attic planning to one day turn them into some low powered server or something like that. I also inherit hardware from relatives and sometime even co-workers who bring me their old PC to dispose of (”here, maybe you can do something with it or scrap it for parts… If not just throw it out”). Old machines are perfect candidates for Linux test boxen for all the reasons I listed in the previous section. If you mess around with your primary PC you will be nervous, and you will worry about hosing your windows partition. If you are working with a spare junker that you really don’t care about you will be in the care-free tinkerer mode.
If you mess up, just start over. Wipe the drive and start again. That is the mindset you want to get yourself into. You are messing around and experimenting on some random machine while your data and most importantly your internet connection is safe and secure on your windows box.
Of course when you are using old hardware you may run into problems. Some of it might not be compatible, some might actually be really broken, and naturally it will be really slow. Then again, older hardware may actually be a blessing - having been around for years, the correct drivers may have made their way directly into the currently used kernel.
Use a Live CD First
This is less of a concern now since most of major distros ship with a Live CD installer these days. It wasn’t like that when I was starting. Still, probably a good first step for anyone is to download and burn yourself a Knoppix CD and stick it into the machine you plan to use for Linux. If Knoppix has major problems identifying your hardware and getting to work, then you may need to reconsider your choice. Chances are that any distro will have simillar issues, if not worse. If Knoppix just works, it doesn’t necessarily mean your distro of choice will but it is a sign that your hardware can and will work with Linux.
A lot of distros ship a Live CD installer (I know Ubuntu does) which lets you try out the system before you install it. I highly recommend burning yourself several such Live CD’s of different distributions and messing around with them. See how they interact with your hardware, how they handle driver installation and etc. Pick one that gets everything right out of the box, or has the best, most intuitive system for loading the needed drivers and applications.
Most of them will be very simillar but different people tend to be comfortable with different types of interfaces or ways of doing things. Some distros are more n00b friendly than others. Some will require you to drop down to CLI while some other ones will have nice GUI menus to do these things. You just need to find one that you feel comfortable with.
Avoid Dual Booting if Possible
Having your machine set up with both Linux and Windows is great. Dual booting is an awesome feature and you should definitely try it at one point, but it is a lousy way to start your Linux experience. It’s not that it’s hard - it’s just that it’s not trivial. In most cases it will require you to resize your windows partition (which may hose your system), then format that partition (if you choose the wrong one you may hose your system) and then make sure that the bootloader works correctly. This process has many points of failure and you don’t really want to be dealing with all this stress and uncertainty.
Most distros come with a nice “wipe the drive and let me set up the file system my way” option and that’s the one you should be using your first time around. You can fuck around with custom partition on your third or fourth installation. The first time around though your mission is to get linux onto your box with as few steps, and in it’s most default form. It’s much easier to troubleshoot a system that was installed with the default configuration rather than with a meticulously tweaked one.
Know what you want
Before you start messing around with linux you should do some research and get to know the vocabulary we all use. At he very least you should be able to differentiate between different package management systems. You want to know whether you want a Deb based system or an RPM based one. You should also look into desktop managers - look at screenshots and reviews of KDE and Gnome and see which one you like better. Try live CD’s which ship with both of them. Your first linux experience will be largely depend on whether you like or hate the desktop manager. So it’s a good idea to try both Gnome and KDE beforehand. If you hate one of them, it will narrow down the list of distros you have to choose from.
Pick the right distro
Finally, do some research into different linux distributions. You want to pick one that is newbie friendly - so probably probably not Gentoo in which you compile everything from scratch. You probably don’t want slackware either which hails itself as the most unix-like linux out there. You want something like Ubuntu, or Fedora or SuSE. You want something with a graphical installer, shipping with either Gnome or KDE out of the box and providing a nice package management front end (ideally a GUI one).
You should also pick a distro that has a large community. This helps immensely - a large community means lots of backports, frequent patches and active forums and discussion groups where you can finds answers and solutions to many of your problems. At some point a distro reaches a critical mass where nearly every problem you run into is already well documented and resolved by the community.
How do you know if a distro is popular? You will likely know it by reputation - people on technology blogs will mention it and talk about it. If you are at a loss, you can try Distrowatch which tracks the trends on Linux distribution market. Just be careful with their data - you want to pick something that is consistently popular over a long period of time, not the flavor of the month.
If you follow these few suggestions, your first steps with linux will be a positive, rewarding experience even if you mess up. You will learn a lot, you will gain new perspective on things and most importantly you will have fun.