I can definitely see how these could arise. Before I had any experience with Linux, (but enough with computers in general) it seemed to me an ominous object looming over me, casting a large shadow over my computer abilities. Many users screamed at the first sight of Linux. Many of them hadn’t used Linux either but had heard other people talk of it. Whether those people used Linux or not doesn’t matter. What matters is that Linux is one big scary operation system to the majority of end users. But as I’ve found with most preconceptions, my fear of Linux was mostly unfounded.
Now these views are coming from a computer enthusiast. I have no qualms about spending several hours on end trying to figure out a problem. I also enjoy doing some self-learning, which is how I’ve acquired most of my computer skills.
Okay, let’s start off with a bit of an intro to Linux. First, and most basically, it’s an open operating system created by Linux Torvalds based on UNIX. It’s developed under the GNU General Public License which states that the source code for the operating system is available to anyone who wants it. Nowadays, it is redistributed by various groups and companies. Some distributions are offered for free while others are marketed commercially. In either case, they’re all based off an implementation of the UNIX kernel.
I’m a relative newbie to this Linux business so I’m not going to serenade you with complex terms and big definitions. It wasn’t until about half a year ago that I really became interested in Linux and its endless possibilities for both productivity and plain entertainment. Instead, I’ll give you an overview of what someone can (and can’t) expect when moving over to Linux.
There are several popular distributions available for Linux. These include Ubuntu, Fedora Core, SuSE, Mandriva, Slackware, MEPIS, Gentoo, and Debian. They all regularly have updates for these distros and are constantly fixing things and adding new features. After trying out several distros (including Fedora Core 3, SUSE 9.2 Pro, and Mandrake 10.1) I settled on SuSE 9.2 Professional which I was able to download for free off the SuSE mirrors.
As you can see, a pretty clean looking operating system. So it should be easy to use right? Well, there are a few problems. You see the Linux operating system itself is open source; however many of the applications we use are not. Also, the hardware in our computers need drivers to work properly. Some of the companies who make the hardware we use aren’t very open with their source code. This means there can be incompatibilities or bugs that can compromise the stability of the system. The Open Source community is growing though. People are seeing the advantages of open source and are moving towards it. As more people do migrate to Linux, companies will be forced to open up. That’s why you’re seeing better and better support for Linux from most companies. They see a potential market before them.
So once you’re past that hurdle, you’ll want to start checking out what you can do with you new operating system. The first thing you may notice (if you’re coming from a Windows system) is that the menu system is a bit different. Also depending which distro you installed, you’ll get different applications with it. Some distros, such as Fedora Core, aren’t developed by registered companies per se and thus cannot acquire some licenses. In this case, Fedora Core does not come with an mp3 decoder. You can play ogg vorbis fine right after installation, but you’ll need to get a mp3 plugin or another media player to play mp3s. And this is usually where most of the troubles start.
Installing programs under Linux is different from installing them in Windows. The Linux system has a ‘root’ user that you’re required to log in as when you make changes to the system. This is a result of the normal use of UNIX. It has an administrator that doesn’t actually use the system normally. So to install a program in Linux you’ll probably want to log in as this ‘root’ user. A side-effect of this setup is those Windows users won’t be able to do anything catastrophic to your Linux system without knowing your root password.
If you’ve got your program as source code, you’ll have to compile it. Most distros come with a compiler preinstalled. So unlike Windows where you can double click on an executable file and have a Graphical User Interface (GUI) guide you through the steps, you actually have to type in commands to compile and then install the program. For the most basic programs, you can open up a console and type ‘./configure’ then ‘make’ then log in as the superuser by ‘su’ and then the root password. Finally as superuser, you type ‘make install’ to install the application. Now this is the most basic compile and install as it gets. Unfortunately, you may run into errors due to a wide range of reasons including unsatisfied dependencies, missing libraries, and so forth. Most users don’t know or want to go through this tedious process just to install a program.
So that’s where many distros are focusing their efforts. They want to make Linux more accessible to the general user.
If you look around you’ll see binary packages created either by the distributers themselves or by community participants. These allow you to basically download and then install by simply clicking on them, much like is possible in Windows. The only difference is that you must once more log in as the root. As long as all the dependencies are satisfied, the program should install fine.
But dependencies are a pain in the ass. Most of the time, you need something to install an app properly, but that app has another dependency and down the line it goes. It’s really quite annoying. So to take it one step further, there are included applications with many distros that installs programs and finds all the dependencies for you. For example, under SuSE I have YaST (which stands for Yet Another Setup Tool). I just add the mirrors I want and then when I go to install a program (by simply clicking on it or several) it asks me whether it can install all the dependencies needed. It’s really quite slick. So you’ve basically solved the installing application problem.
Now one of the greatest advantages to Linux is also its greatest weakness. Because it is an open source project, anyone can create new applications and modify existing ones. This means there’s an extremely wide variety of programs and you’ve got a good chance of finding something that meets your needs. However it also means that many applications are under a constant state of updating. Bugs need to be worked out and it’s difficult to test these applications under a variety of conditions if it is just a small project. That doesn’t mean the applications available on Linux are second-tier to Windows or Mac programs. Far from it. In fact, some programs have been ported over from Linux to Windows and Mac.
Audacity, an sound recorder and editing program
Linux programs are being made to be compatible with most Windows-based programs. OpenOffice version 2, which is currently being worked on, will have much better Microsoft Office compatibilitiy. Wine, which is a program that allows some Windows applications to be run under Linux, is constantly improving with an ever growing list of compatible programs. Furthermore, your range of internet tools are also available. Kopete satisfies the IM programs all in one; Firefox is vastly superior (in my opinion) to Internet Explorer, and K3b is probably one of the better media burning programs available to either Linux or Windows.
Linux can be a very useful tool if you give it a chance. Once configured properly, it can be as easy to use as Windows while being much more secure. I’m not saying that it’s right for everyone. Many will get frustrated and never look upon it again, but most people aren’t even giving it the chance it deserves based solely on the fact that the next person didn’t have a very good experience with it. Oh for sure, someone who can’t use Windows adeptly shouldn’t even consider Linux. However if you’re ever looking for a challenge and a possible reward, give Linux a shot.