Why GNU/Linux….. or Why not GNU/Linux………..

In a previous post, I promised to express my thoughts on the question of taking up GNU/Linux for an average computer user…who are usually referred to as a noob in the terminology of GNU/Linux enthusiasts. As is obvious from the terminology, GNU/Linux enthusiasts often do not think highly about their fellows still chained to other Operating Systems (really??Operating systems?? No…but more on this later). But to say the least, the feeling is mutual. Noobs usually think of GNU/Linux enthusiasts either as stupid, misguided souls who are politically motivated and hence  brainwashed in some way or another to use inferior operating systems Or as geeks or programming gurus whose snobbery prevents them to use something which is both good and easy to use.

This is my attempt to start a conversation………..to break the ice so to speak….with the average user. But I do not want to explain the political ideology behind the idea of free software , open source software or GNU/Linux or Unix ( please note that the ideas behind these four are not the same at all). There are many good references……excellently written material on all these. I do not want to say to a average computer user that you should use GNU/Linux so that you can participate in something that strives for a revolutionary transformation of society towards a better society. The reason that I do not want want to say this is not that I think they are false. NO…..the ideas the politics involved here is truly revolutionary………but because you, an average computer user have probably heard these arguments before and concluded ( as an average person concludes about anyone trying to do something that strives to make the world a better place ) the speaker to be a fool, a misguided soul at best.

All I want to say here is this: You should use GNU/Linux because it is simply far far far better.

Before starting, let me first say for whom this post is not. First of all, if you are already a GNU/Linux enthusiast, read my post if you want to, send me your feedback on my attempt. But you are not, strictly speaking, a target audience of this post.
Now the other exceptions….

  • If you are a seasoned Gamer        
    I am really sorry brothers and sisters, but my advice to you ( I am sure you do not need it ) is Not to use GNU/Linux. Playing your favorite games in GNU/Linux will not only by all probability be impossible, but you will have a hard and painful time trying and ultimately you will give up, but being infuriated about GNU/Linux in the process. There are games in GNU/Linux  if you think they can be as interesting to you as the games you play now, by all means try GNU/Linux  Also, if you think you do not always play games and use your machine for other purposes too, try using a dual boot machine where you can try everything else in GNU/Linux and boot into the other one when u want to play games.But you should understand one thing………if your favorite game does not run in GNU/Linux, this is not because ‘GNU/Linux sucks’……rather it is because the corporations that creates your games suck. They purposefully do not create and release a version of your game for the best system that there is on earth, mostly because of their open or secret ties with Microsoft.
  • For nearly the same reasons, if you have to use your machine for full-fledged 3D hardware acceleration from your bleeding-edge new graphics card with tons of  VRAM,  GNU/Linux is probably not a good choice. Gaming essentially can also be considered as subcategory of this one, as though some Windows games do run on GNU/Linux using some applications like wine and playonlinux, most popular games uses high-end graphics, making it impossible to play them this way in GNU/Linux. But again, the reason is  that the hardware manufacturer purposefully uses non-standard architecture or instruction sets for your Graphics card keeps and then its driver codes/ instructions sets/ architecture  secret. Of course, when I say “purposefully” I meant for reasons other than the technological requirements. If they had to use something new to make their card perform better, everyone would understand. But mostly, that’s not the case. They specifically introduce non-standard elements to make it hard for anyone to write a driver for their cards other than they themselves. So GNU/Linux community can not get access to it to write suitable driver for your graphics card. To get it to work, they have to write the drivers for themselves having no help ( in some cases active opposition ) from the hardware manufacturer relying mostly on guesswork and reverse engineering techniques, which makes it very hard to have full support to utilize the card to its limits, especially if your hardware model is brand new. But most cards work to almost their full capability in GNU/linux nowadays. As far as I am aware of, all Nvidia cards and most ATI Raedon cards work pretty close to their full capability. ( But this is on today’s date….everything changes very quickly in today’s ever changing hardware market ) . So you are strongly advised to check the compatibility of your hardware (some wireless devices falls in this category also….. these problems are what GNU/Linux enthusiasts call  Proprietary Firmware problem ) with GNU/Linux before planning to try GNU/Linux out.
    • If you have to run Servers on your machineIf you are running servers on your machine and still not running GNU/Linux, then probably……..
    1. You are using some other clone of UNIX….may be UNIX itself, or Solaris and the like.Then you are doing the right thing of course. But nonetheless UNIX ( and some other UNIX clone ) is not free and though Solaris has a free version,  it is not received not even anything close to half as much developments some of the GNU/Linux distros  are getting nowadays. So I suggest you can try it out if you can find the time.
    2. If you know your work well and you are running servers and still not running any UNIX  clones, then probably you have a very special and particular reason to do so.  Maybe some tool on some of the server you run has a particular issue with UNIX systems (very unlikely, but hey…you know your job well….so you know better).
    3. If none of the above is true, then by all probability you must be unimaginably stupid or completely insane or both. Servers belong to UNIX systems. GNU/Linux is a UNIX clone and a free one at that.
  • If you are a compulsive obsessive masochist who really enjoys being told what you should and should not desire about what your machine should do and how your machine should do it, i.e, in short, if you are a Mac-user. Windows users never tasted freedom, they don’t know how it feels like to have freedom. But Mac user’s dictionary is too crowded to have a place for the word freedom. For the uninitiated, their dictionary contains only one word….the Holy word…..APPLE.
    If you are asking apple is the fruit that caused the first sin, so how can that be the Holy word then surely you are a misguided soul and have not read the brand new 21st Century Bible, The New Testament, Steve Jobes Version….King James is ancient man!!
    If you are saying “OK, A for Apple is fine…but where are the other words and where are the other alphabets?”………….then welcome aboard….as you are definitely not a mac user and can not ever be, as mac users are born, not made.
    (Note: Jokes apart, but curiously enough, technically Mac OS X is indeed itself a UNIX-clone…..but this is the most restrictive (and hence, most non-UNIX like ) UNIX clone mankind could have ever dreamed of creating and so I will not be discussing it as a UNIX clone at all and as a matter of fact, I shall leave all discussions of Mac to ma(so)c(h)-ists from here onward.)

If you are not any of the above, then allow me to try and and convince you that GNU/Linux is far superior. But I promise I shall be honest. I shall also specifically point out the weaknesses of the system and the problems that you might expect to face if you try to use GNU/Linux as we go along.

[To be Continued….. 08/10/2012]

Cont from 8th October 2012….

So now I begin with the comparative study of GNU/Linux and Windows systems….
The first topic of discussion will be Security.

Security: Virus-antivirus-firewall……the dreaded vicious cycle….

If you are a Windows user…………definitely you have asked a lot of people, discussed with a lot of people and spent countless hours and bandwidth to download and install ( or installing from CD, in that case which means you paid money also ) your favorite anti-virus software………and downloading updates of virus definition databases of your antivirus…….many heated discussions over Mcfee or AVG or …..so on and so forth…
and still after all that, sometimes the anti-virus software and its resident shields and so on and so forth things make your life miserable by asking you every time whenever you open a site in internet or plug in a usb device……..and makes your machine so slow that sometimes you think that the worst virus you can have in your machine is most probably that cursed anti-virus software itself……….and still sometimes, there are viruses in your machine and you realize that your annoying, bulky anti-virus is helpless against it….you loose valuable data, still more valuable time and always live in a perpetual state of fear about possible virus threats in your computer.  So are you happy with the situation?

At the point you are probably thinking “This is not about my Windows…..It is about my anti-virus software …They are crap, but what does it have to do with Windows? Windows did not provide the anti-virus software”. Exactly. Windows do not provide you security.
GNU/Linux on the other hand, provides you a far secure system. You don’t need an anti-virus. I personally once had the hobby of collecting viruses….Yes, you can keep viruses as your pets….( so that if you get angry with some of your friends who uses windows, you can send them a mail attaching that virus as attachment and enjoy the fun……………….kidding apart, do not do that…although they use Windows, they are just uninitiated, not your enemies). But let me explain why….

I must admit that one reason is that GNU/Linux systems are not that popular among normal users yet…so writing a virus for GNU/Linux is less effective (and more difficult too, but that is the next point) if the writer wants to damage a large number of users with his/her virus.
So this is about to change if GNU/Linux becomes the popular system of choice.

But the second reason is the key point, which will not change….that GNU/Linux, being a UNIX clone is a far more secure system than Windows. Let me briefly explain why…..
if a virus somehow enters your system….it must first run itself…..it is a program…so it needs to be run in order to do its job…..as long as it is not run, i.e executed………it is just an file containing binary data….
How do viruses achieve this? usually by faking the disguise of something that your Windows system usually runs….like some Java codes from your browser…..Windows allows your browser to run the Java codes (and allows many other programs to run many things ) and allows it to make changes to your system. This is the big difference……….of course, Java codes are also run browsers running on GNU/Linux and GNU/Linux allows that………but what it does not allow is to make any change to the system itself without your explicit authorization.  Why Windows don’t do that? Well….I hope you installed application software in Windows, right?  What does it do? You click on a .exe file which contains the executable binary codes and the system runs the code (as you instructed it to do so by clicking the code ) and the code then makes changes to the system. That is how software get installed in a Windows system. So system has to allow codes to make changes to the system. Well, I admit that this can be turned off by using a guest account rather than an account with administrator privileges…but if you are really an average user, you probably have no idea what I said in this last line and using a guest account is quite inconvenient too. So now all the virus has to do is to fake your “click”, so to speak. The system will think you instructed it to run and voila…..next thing you know is it is time to call your assembler….your machine is under attack by a virus…and your assembler is fighting hard to save as much of your valuable data as he/she can.

GNU/Linux does not allow anything to make changes to the system without your explicit authorization. You can think this can also be faked the same way your ‘click’ can be faked. After all, your ‘click’ is also a sort of authorization right? Well, in principle it can be…….but practically it is much more difficult than faking the ‘click’. First of all, here the system will ask for your superuser password or root password, which you will then have to type. So to fake this authorization, the virus program have to know what your password is. That in itself is hard enough, but there is an added layer of security….the root password is never ‘written’ anywhere in your machine. It is stored, but in an encrypted-way….in a machine readable format, not like words that are written in a text file which you can read by opening it. So even if the virus manages to get a hold of the file where your password is stored, still the virus program can not know the password without breaking the encryption. Of course, the stronger the encryption, the stronger is your system’s security. Some GNU/Linux distros like Ubuntu however extensively uses sudo in place of su…in plain English, it asks for your login password ( explicitly , i.e although you are logged in, still it asks for your login password again ) instead of superuser password to grant you superuser rights. However you can always change this behavior by enabling the root account.
It is a fortress compared to Windows systems.….

So if you use any distro of GNU/Linux……..you can stop worrying about viruses and in fact, can keep them as pets. No scans, no obnoxious resident shields, no slowing down your machine….no virus definition database update…………..nothing.
Freedom from your fears of viruses. This is the first taste of freedom you are getting. Enjoy it. No worries.     Hakuna Matata

[To be continued………09/10/2012]

Continued from 09/10/2012…………

Sorry everyone for the unusually long pause…….

Our next topic is going to be …

Boot and Startup:  Frankly, there is nothing to discuss in detail….  Nowadays, GNU/Linux systems in general boot faster. Especially Ubuntu has taken it to unbelievable level… It really boots within a blink of an eye…..

Software Installation: The repositories……

If you are a windows user, you know that after installing windows, you actually had to install a long, long, long list of softwares……… most likely MS Office, Adobe acrobat, Adobe Photoshop etc or CorelDraw or even drivers for your CD-writer ( Probably you got a free Nero with it ) or printer……… and then you used your default browser, the internet explorer, for the one and only time in your life…… to download and install google chrome, mozilla firefox or opera….

GNU/Linux systems comes with most of the basic softwares included…. so they get installed along with the operating system itself….
But that’s not the only fun part… it is in fact nothing compared to the other one………
They have repositories…… Well, bear with me a while………. I am aware you are a windows user… so the word repository probably means nothing to you.
A repository is exactly what it sounds like…. a repository of softwares……..a place where you get any GNU/Linux software you want and many other Open-Source or free software that runs on the linux system……
So if you have a working internet connection……… you have whatever software you like in a central place.… no more searching and downloading pirated versions from filehippo and of course not paying to buy softwares.

[To be Continued….. 06/06/2013]