Taming the penguin
Taming the penguin? you might ask what is so much to tame in a penguin, they are cute, gentle black and white birds with a taste for cool places. Yeah, but lotsa people don’t agree, I think it has something to do with the windows of their houses, through which the harmless penguin appears to be a vicious wild rabid carnivorous monster that would love to bite your ass off and you’ll end with painful injections on your navel. So.. which penguin am I talking about? well, penguins come in a variety of types and shapes, Emperor penguins, Chinstrap penguins, Rockhopper penguins, Adelie penguins and finally Tux, but they are all penguins right?….
Don’t worry, this isn’t a weird guide on zoology, and no, I have no plans to work for Nat Geo either :).It’s just a brief story of how I got into the Linux world. There seems to be several listings out there on the net about the pros and cons of the different operating systems available. Then there are fights over which one is the best. But I intend this article as an account on my transition to this wonderful OS, on to the story then….
I’ve been a windows user for a long time. It started with dos, then windows 3.1 all the way to Windows XP. I wasn’t aware of any other OS at the time, but I made good use of what I had.
Linux raises it’s head:
I first heard of Linux from a friend about half a decade ago. I was delighted that Windows wasn’t the only one and also of the fact that the OS in question was modifiable!so I decided to give it a try, I copied the 3 Mandriva installation disks and installed on my desktop back home. It installed fine but the dismal graphics, unfamiliar territory and lack of support for my main use (gaming) eventually made me abandon it, having a low speed dialup connection didn’t help either.
Ubuntu and gang comes along:
I stayed away from Linux for a couple of years, then I heard about a new popular distro called Ubuntu (from the same friend again) and one fine morning I tried out Ubuntu 8.10(Interpid Ibex) on my laptop. It was much better than my old Mandriva(I was curious, Mandriva had 3 cds but this has only one but had a big bunch of features), but Windows was still my mainstream OS. I considered Linux to be a toy OS, never gave it much serious consideration. This was good in a way, cos it allowed me to try out several other distros without losing any important data. I tried out several other distros(I have to admit, it tends to get a bit confusing for new comers) Fedora, SuSe, and several other. But none were given any serious consideration. In fact I used Windows for about 90-98% of the time.
Defection to Ubuntu linux:
The next major change happened when Jaunty Jackalope (Ubuntu v 9.04) came along. I used my Laptop mainly for browsing, and for running stuff that I needed for my study. So, with Jaunty’s support for wireless and extreme user friendliness, I made a switch over to Linux.
So, for browsing I stuck to Linux, It was all that I wanted. It was fast, user friendly and more Importantly malware free 🙂 It felt quite liberating to not have to fear infecting my comp with a pen drive I used elsewhere, most public computers(some private ones as well) seem to be filled to the brim with viruses.
So, I started learning more about the OS at this point, and I realized that lot of things that I considered true were just myths (particularly the one that says that Linux is hard). So, slowly I transitioned to a full adoption of Linux. I found equivalent applications for it and surprisingly they seem to be better than the commercial counterparts. Now I used Linux for about 80% of the time. The only reason why I still had Windows in dual boot was to run some simulators etc that wasn’t available for Linux and also for occasional gaming.
Ubuntu gives way to Gentoo linux:
So, I was quite content with Ubuntu, I installed Karmic Koala when it came out. until this point I ran a 32bit OS on 64bit Core 2 duo. Since I only had half a GB of ram and also due to the proliferation of s/w designed for 32bit processors, I was discouraged from trying out the 64bit OS. I had studied processor architectures and didn’t quite buy the memory crap completely, yes it’s true that having a 64bit OS gives you access to more memory but it’s not the only advantage like it’s told widely. S/w has to be optimized for proper exploitation of this power though.
So, I got the 64 bit version of Karmic and took it for a spin. It went pretty well but there was this weird bug that would slow down my comp after installing something new, a couple of restarts usually solves the problem(unlike Windows, Linux doesn’t need restarting after most maintenance tasks).
Coming to the actual milestone, This happened when I came across Gentoo Linux, yep, the source based distro. Initially I thought I was crazy to even consider it. Unlike the common distros, this one is built from scratch(almost) piece by piece, gives you great flexibility and performance BUT there is a price, installing it is a relatively long process, you start from the CLI, compile the kernel, then the DE and so on, takes a while. It’s considered a ‘l33t’ OS for a good reason (never start with it, it would be pretty daunting if you have no exp with Linux).
So, why would anyone want to do this seemingly ‘painful’ procedure? well, it has to do with flexibility, you could make the same thing run on a plethora of configurations, it can run on a huge variety of architectures, you could optimize it for speed or size or power efficiency or a balance. Everything is installed as a module(ultimate tweaking). After I got used to it, I never want to use another OS ever again.
Initially I tried it on a friend’s PC (yeah, I was skeptical at first and didn’t want to mess up my system). He was reinstalling Windows on it, so I sorta took it on a lease for a couple of days to try out Gentoo on it. The first two attempt were only partially successful. The first attempt, I installed the kernel, but I couldn’t install the DE(gnome had a lot of options, and I wasn’t sure of the ones I needed). But before I could give it a second try, my friend reformatted it. So, I rebuild the kernel again, and again I had the same problem. but I couldn’t continue cos my ‘lease’ period was over 😉
It really took off when I installed on another desktop(this site helped), it was an old p4 1.6Ghz, with 256Mb ram. Windows XP crawls in it, I couldn’t even think of installing something like photoshop. BUT when the Gentoo was installed, it was quite fast and moreover I could use GIMP!(FOSS equivalent of photoshop). This particular comp was used by a lot of other people and I usually pay it a visit about every 5 months, by then XP would be trashed with all the spyware out there, but the Linux installation was as good as new 😀
Impressed, I decided to install it on my laptop as well.
Gentoo linux conquers my computer:
As a remnant of the old days, I only alloted a quarter of the disk space for the Linux installation. As Gentoo became the mainstream OS, I suddenly felt a lack of space. And my XP in dual-boot crashed as well, so here comes the next major milestone. I decided to shift my Gentoo installation to the 50% that was used by Windows. It wasn’t as hard as it may seem, I repartitioned the space and just ‘copied’ the files over to it. A little reconfiguration of Grub and I was all set. This would have been impossible with Windows, you could create an image of the old installation of course and restore it BUT there are complications that arise when the target partition is bigger. After the reinstall, here I am writing this little essay on my experience.
Now, let’s have a look on what motivated me to switch shall we?
Why the grass on Linux side was greener:
1) Windows needs more more more:
Windows seriously hogs a lot of resources, every time I upgraded to relatively newer version of Windows, it would just satisfy the minimum requirements and run pretty slow. It sucks considering that an OS should facilitate the smooth running of user space applications while not consuming too much extra resources. Windows seems to be like an application, it needs so much just to run.
Initially I thought this was just because I actually had crappy hardware. But now I feel that it’s got more to do with crappy programming and FUD. As an engineer and embedded system designer who had to write code for machines with very limited resources(512K is a lot of space!) I felt that M$ was shoving down mediocre software down our throats, any RTOS that behaved like Windows would quickly have gone out of use.
2) Windows tend to expire:
Windows seems to experience a kind of ‘rot’ that makes it necessary to reinstall it often (it’s actually considered a routine maintenance). One might think that malware causes it, but even comps that are never connected to the internet nor done any file transfers seem to rot. It just seem to happen with regular use, defragging, reg cleaning, etc etc seem to reduce the rot but the initial speed of the pristine install is never attained back.
3) Windows is perishable, and needs a lot of preservatives:
This is a pretty common problem. I have come across computers so full of crap that it take quite a few good minutes to get anything started. But even otherwise the requirement of having to run a virus scanner in the background and a scan every time you use a pendrive(thanks to the wonderful autorun feature)… It tends to get a little irritating with all those public computers so full of malware. When I switched to Linux it was like liberation
I did quite a bit of searching to figure out what made Linux better at this. The first two that always seem to pop up were about the small market share(about 1-5%0) and most malware writers being M$ haters. This is true to an extent but there are several key reasons that make it more resistant.
i)To execute or not to execute:
Windows seem to judge the executable nature of the file through it’s extension alone. name something as xyz.jpg.exe and ppl would just open it thinking it’s an image. In Linux, it’s necessary to set permissions for something to execute, besides the whole compilation process.
I remember ‘uninstalling’ a virus from a friend’s pc, it exploited this flaw to rename all of his videos to .jpg (a simple command from the dos shell helped reverse it >:] ) and a painstaking edition of the registry and finally the infection was contained… I wonder how it got past his scanner.
ii) You may not pass!:
Source code of most apps are scrutinized pretty heavily, so malicious code is discovered pretty fast.
iii) It’s alive! it’s alive!!!
It would take a significant amount of user intervention to run a virus with all the settings, compilations etc
iv) We are the Borg:
Updates happen pretty rapidly in OSS world (sort of like the Borg quick adaptation from star trek TNG)
As far as Windows is considered, you never buy the OS. You take it on a lease, you can only run it on a limited number of machines(read ‘1’), updates stop a while after, you are forced to upgrade both you s/w and h/w just so that you could use their ‘service’ which is ‘necessary’.
It sort of feels like dictatorship, you have no choice but to keep taking their crap. Don’t get me wrong, I’m not saying that everything they release is crap. Just to give you an idea, DirectX 10 is not available for XP, if I have to get it (the upgrade), I need to buy a whole new os (read 7), and also get another 2 gigs of ram just to run it. Halo2 needs Vista to run(without modifications lol)… the dictatorship is pretty obvious isn’t it. my latest partially optimized Gentoo Linux just seem to consume a mere 87 MB of ram while Idle. Lotsa people compare the speeds etc and talk about how Linux is just as fast or almost fast as 7/Vista/whatever, but they fail to see that on systems where you could run Linux, you can’t even imagine installing the M$ product.
There are a few other motivators besides this, but they didn’t play a significant role.
I’ll just list out a few things that I’ve noticed during my ‘journey’. They are not necessarily supportive of Linux.
1 ) Viruses:
This is the most liberating aspect of using Linux, no scanners or firewalls running in the background and not tension of getting infected. Linux is not completely immune to it, in fact there are a few viruses (albeit not in the ‘wild’) that can infect it. But the quick patching and the way you execute programs makes it pretty difficult to run one.
And about the firewall, it’s built into the kernel. All the user has to do is to set the rules.
2 ) Linux is hard:
Most people I know (me included once upon a time) believe that it’s difficult to use. But this is not true. Being used to Windows makes it seem that way at first, but isn’t everything like that? I was pretty clueless when I used Windows or Office the first time. It’s got more to do with familiarity rather than actual toughness. Yes, Linux is considered to be a hacker’s OS, but this is because it ‘allows’ you to do stuff that commercial OSes don’t, but just because it offers that flexibility doesn’t mean that you have to use it. It’s the user’s choice after all.
3 ) OSS is crass:
Again, I believed in this too. Anything not done by ‘professionals’ isn’t supposed to be very good right? wrong… practically I found this to be incorrect. Often the OSS counterparts are superior. I think this is so because in a corporate environment, the programmers are forced to somehow finish the product within the deadline, so they make it ‘just’ work(prob explains why every version of windows ships with a lot of bugs). OSS programmers oth code for a genuine interest in improvement and besides, when the source code is available to everyone, improvements are incremental and the end product would be awesome.
Windows has a lot of bugs that surprisingly are absent in Linux 🙂 I use my phone to dialup internet sometimes(I’m not talking about the slow 48Kbps modems, but rather the UMTS & HSDPA dialups). In Windows, I could either use Nokia PC suite or the plain old dial up networking. But in either case, I have to restart the connection every 30 minutes or so. But when I dial up in Linux, it never stops working!! I actually thought it was a hardware fault.
4 ) Games:
This is one of the disadvantages of using Linux, there aren’t many games that run natively on Linux. Wine helps run windows programs(sometimes even more efficiently) in Linux, yet not all of them run well. Game companies obviously code for the OS(ie Windows) that has the most market share… hopefully this is changing.
5 ) Software married to Windows:
While you could get equivalents for nearly every windows applications, certain software has to be run in Windows. I couldn’t find a proper equivalent for AutoCAD. I haven’t tried running it in Wine though.
6 ) Variants are confusing:
This would be the most common problem among newbies. Which distro to use?? The most important provision of Linux is choice and naturally this resulted in a huge number of distros… and we think that this is really confusing… lacking standards etc BUT there is a silver lining to this. “All of the the distros are Linux and Linux is all of them”… they are just a different mix from the same common pool, they look different but the underlying functionality is the same. In Windows, the whole OS is a single unit, but like I’ve mentioned earlier Linux is built from several components(actually it’s just the kernel that’s truly Linux, the rest are supporting s/w). The GUI is sort of like an add-on, a front end for the CLI program that actually does the work(sort of like a secretary). So rest assured that you don’t have to relearn everything whenever you switch to another distro.
7 ) De-fragmentation:
I’m sure most of you guys wouldn’t believe me when I say that Linux filesystems don’t need to be defragmented. I was skeptical about this too, but from experience I’ve found this to be pretty accurate. It has something to do with the way files are stored on the disk. Windows filesystems pack files close together, so whenever a file changes size, it results in fragmentation. Linux filesystems liberally scatter the files(not parts of a single file) over the disk, so that fragmentation is minimized.
8 ) Drivers:
Lotsa people seem to worry about not finding drivers for their hardware in Linux compared to windows. I find the opposite to be true. M$ stops support for certain hardware in newer versions of their OS, but in Linux, you could find drivers for just about anything. I honestly never had a problem with any of my computers. In fact compared to the huge number of drivers that I need to install after installing Windows on my laptop, Linux just works pretty instantly.
There is a little difficulty with older dialup 56K modems. The modem manufacturers ‘assumed’ that everyone would use Windows, and as a method of cost cutback they shifted the modem’s digital signal processing to the PC’s processor via windows (they are therefore called softmodems aka winmodems). Linmodems.org has solutions to this problem, but I don’t use the 56K modem in my comp so I’ve never tried installing it’s drivers in Linux. But the usage would be similar to the mobile phone dialup.
9 ) Internet and support:
I’m not sure if this is a problem in this era. But to fully make use of FOSS, you would need a good internet connection, more than being able to download software, you need it for quick solutions from people (yes there are lotsa helpful folks out there).
Windows has tech support, yes, I’ve never used it but I’ve heard a lot of stories about them, particularly the kinda questions people ask (“where can I find the ‘any button’?). There are windows support forums too, but they’re not all that in-depth (if it was, M$ would prob sue them for reverse engineering lol). The Linux community is huge and filled with eggheads, that you would get a solution to virtually any problem pretty quickly, there is a certain etiquette however just like anything else…. first step… RTFM!… second step… search the net (Google is your friend).. final step, if everything fails…. post in a forum 🙂
I’m aware of the community chat channels, but I won’t advice asking help over there though. It seems to be filled with either egotistical jerks or people who are too busy to talk (there are a few occasional helpful people though). So, if your problem is too simple, they don’t bother replying or you could find the solutions elsewhere and if your problem is complex, they don’t seem competent enough to solve it lol…. and you’ll leave with an impression of the community being full of jerks (very bad for the PR I must say)..
Well, that just about summarises my observations. Now for some conclusions and advice.
1)About fan boys:
I’ve come across quite a few purists who seem to be chauvinistic about their OS. It’s either Linux sucks or Windows (windoze) sucks. The truth is that both have their pros and cons, as it must have been clear from the previous discussion. I feel that we need both. The threat from OSes like Linux, OS X etc would prompt M$ to make better product, hence survive and continue giving malware writers a good scapegoat ( 😉 )
Then there are purists who either stick only with GUI or with CLI. I feel that each has their use and we need both.
I dual boot with XP (even though I don’t use it much). It’s good for games. I’m planning on upgrading the ram in my laptop and it feels good that I’m not doing because I want to run a spendthrift OS.
2)”I’m (001, (0$ I u$3 @ l33t OS”
Some people use Linux just to satisfy their egos. These are the jerks that I’ve mentioned earlier. They’re unfriendly, make you regret you ever asked them something and consider anyone who doesn’t do the l33t talk to be an idiot(the extreme cases)…. Ignorant folk I must say. Fortunately they’re only a minority. If you are one of the ‘l33ts’, please, you are just driving people away and harming the community.
3) M$ monopoly:
I keep wondering why M$ has such a huge market share. I think it’s mainly because of good marketing(FUD), familiarity(vendor lock-in), looks and OEM tie-up(if it works, why change?).
first of all, marketing, M$ is a major corporation and they have advertised their products quite well. Just like any other ad, they implant thoughts in your head, and most people find Windows synonymous with the PC (they don’t know what an OS is though). So, this propoganda is one of the main reasons for the huge market share. They apply psychology on certain other places as well (ever noticed that the logging in part of boot up is done before startup tasks are completed? makes it seem faster)
next, the familiarity. I grew up using windows, and like every other user, the main hinderance was doing stuff in a new way. It didn’t really matter if the alternative is better. I guess it was pretty accurate when they said that humans resist change even if it did them good. On a more serious note, they apply the EEE(Embrace, Extend, Extinguish, M$ is not the only ones guilty of it though) and lock you into their products (eg Frontpage and it’s extensions for web servers). It’s a good policy as far as business is concerned though.
About the looks, apparently M$ puts this way ahead of everything else when they make the OS, everything else(including efficiency, security etc) are secondary. From a technical point of view it sucks, but it’s a nifty business trick. They say “don’t judge a book by it’s cover”, but all(almost) of us do just the opposite. Looks sells! kinda reminds me of how they use nudity to boost movie sales.
and finally OEM tie ups. Lots of people have not idea of anything about comps, not even the basics, they treat their pcs like switches. Press a button and presto… magically something happens. The kind of people who would call up tech support for instructions on changing their screen saver. The thing is, they don’t care what is on their system as long as they can do their usual stuff… pretty reasonable. Windows comes pre-installed on most branded PCs, this is another reason for it’s dominance.
Despite being a ‘defector’ 😉 I still do have a certain respect for Windows and M$. They really know how to do business. They worked(pls turn a blind eye on what kind of work) hard to become the most dominant OS developer, besides, we can’t ignore the king of desktop OS can we?
Lotsa people have trouble deciding which OS to use. But honestly, I don’t care if you use Linux or Windows or OS X or whatever, just use whichever fulfills your needs. Seriously I’m sick of hearing/arguing for one OS. I don’t mind helping people who are willing to try Linux out but you gotta be flexible, unlearn old stuff, adapt to new ways of doing stuff. It’s not hard, but different.
You might as well start with it, that way you won’t have to unlearn old stuff. New comer distros like Ubuntu are quite user-friendly, and they don’t cost you much(0$). Give it a run, but do the transition gradually, starting with a dual boot with windows. Check this site out, it has got some good advice.
Well, that’s about it. I’m done expressing my point of view. Now all of you trolls, flamers, critics out there … start fighting over this as well 😉