Linux myths, lies and truth and why I like Debian

Before this blog starts to seem like a travel blog, let me post something I found immensely interesting and not related to travels and treks and such.

Greg Kroah-Hartman's keynote speech at this year's OLS was about debunking myths, setting straight some truths and quashing lies about Linux, the OS.

It's a must-read. He explains things including, but not limited to:
- Why the kernel development model works and is better than other software models
- Why we don't support binary modules (or closed-source modules)
- How to start Linux kernel development. Newbies to kernels will find this helpful (as if there were no resources earlier)
- Plug-and-play does work on Linux.
- Maximum number of architectures and devices supported
- Many more

On a slightly different note, I've always liked the Debian GNU/Linux distribution, and have been using only Debian for the past 4 years. I've recently switched to Kubuntu, but only because it's based on Debian. I do intend to have a Debian setup as well, but have not gotten around freeing enough disk space on my h/d or buying a new one. I now have a good setup where I believe I can start doing something worthwhile in my spare time, and I don't want to break it. And of course, I can continue my Debian (and other open source) contributions while being on Kubuntu.

The reason I raise Debian here is that it's the only distribution that supports the maximum number of architectures as its first-class citizens. This means if you're on an x86 box or a sparc box or a Mac or some ARM board, you'll get a consistent view of the system. You're guaranteed all the commands you're used to on your desktop will also be available and work and more importantly, supported, on some obscure board that you're working on that has an ARM / PPC CPU. This is a very, very big advantage.

Also, the community around Debian makes sure it stays free and secure and stable. They might have long release cycles; but there's a guarantee that it's going to be stable. And we'll continue to get security updates. I've recently switched to Kubuntu (frankly, because my Debian installation was just too old to do an apt-get dist-upgrade with the kind of bandwidth I had and I got Kubuntu CDs from shipit) and I'm getting all the benefits of using a Debian-based box. If I'm not happy with what Kubuntu gives me, I can, at any point of time, update my /etc/apt/sources.list to point to debian mirrors and I would have a debian install. No hassles. If the slow release cycles bother anyone, they can try out Ubuntu/Kubuntu. If they want stability and not very bleeding-edge software, but great support and peace of mind as far as administering the system is concerned, they'll get Debian.

A testimony to how good Debian is: in my previous company, I started out as the only Debian user. There was one user earlier, but he didn't continue using it because he couldn't keep it up-to-date with the kind of bandwidth we had then. At least, that's what I got to hear. Anyway, I installed Debian, showed the power to everyone else, and in the company of 25 people, I had at least 13 people using Debian in around 6 months. I also set up an apt proxy, so that already downloaded packages could be used by others. It worked really well and everyone was happy. Just the power of apt drew everyone to Debian. And we all ran the 'unstable' branch. I made sure no one asked for a package that was < 3 days old in the Sid repository. If it was, there was a high chance of something breaking (sometimes unstable really being unstable), and I didn't want to administer their systems for free. This model really worked well. So much so, people even installed Debian on their laptops.

Yes, GNU/Linux does work on all sorts of hardware. It's just some vendors who don't agree to make drivers open. As Greg mentions in his slides about the article Arjan wrote on a hypothetical scenario where binary modules would be accepted in the Linux kernel, the day wouldn't be far when all our systems would become unusable and Linux would no longer be the OS that we could run seemlessly on varied hardware.