Today, I found myself featured on the Linux Haters Blog. I've heard of this blog before, but didn't give it much thought, as most of the posts coming from the author are nothing more than Microsoft fan-boy fanaticism. It's hard to take any of the posts seriously. After reading his post regarding a couple of mine, I just thought to myself, "Oh, brother. Is this guy for real, or is he all about the press, leading many, many readers on?". I spent some time on the blog, digging through posts and comments, and I could find nothing intellectual stimulating conversation above "Linux SUX, Windows RULES!". So, this post is challenge the author to produce something intellectual that will actually show some logic behind his posts (and maybe the commentators behind their comments).
My challenge is a simple question: What does it take to make a stock Microsoft Windows install usable? Let's take a look, comparing a stock XP Professional install with an Ubuntu 8.04 install, and see who wins out.
First, let's look at the installer itself. I'm a system administrator, and I want to get XP and Ubuntu installed as quickly as possible on as many machines as possible. What flexibility do I have with the Windows XP Professional CD as far as meeting this need? Well, as far as I can see, I only have the CD to do the install. I have to sit through each screen by hand, clicking through the dialogs one by one until the install finishes. During this install, I am plagued with entering in a different serial number in each computer, unless I was able to purchase a multi-install key, which I still have to enter by hand on each machine. Because I'm limited to only optical media for my installation method, it will take about 45 minutes to complete a single install. Of course, most administrators would use some disk imaging software, like Norton Ghost, but that means I need to purchase a 3rd party utility to make this task successful. With Ubuntu however, I have the ability to install the operating system automatically using a few built-in utilities. Kickstart, Pressed and the hybrid Kickseed give me the ability to completely automate the install hands off. Further, Ubuntu gives me the ability to use repositories where the software for the operating system exists. I can access these repositories via HTTP, FTP or NFS. Just being on a 100baseT full switched network will be incredibly faster than CDROM. I can complete a fully Ubuntu 8.04 desktop install in less than 15 minutes-- on ALL machines.
Second, let's compare security on the operating systems. With Ubuntu, by default, if services are setup, they are only listening on the local interface, localhost. Coupled with AppArmor, I have a Mandatory Access Control system keeping my processes in check with my files. A default firewall is disabled, but can be enabled with the Netfilter kernel module, and built easily with the uncomplicated "ufw" command. Users created on the system are not administrators, so system-wide security vulnerabilities introduced through the user and highly improbable. Antivirus software, as well as software needed to remove malware, spyware, etc. is not needed, as the security design behind the operating system does not let this software grow beyond the user's home directory. Updates will most likely be waiting on first boot, to patch any security vulnerabilities and bugs with the system. Updates will be ongoing frequently throughout the time using Ubuntu. On the other hand, Windows XP has left me with absolutely nothing. No firewall software. No MAC software, although Vista with UAC addressed this. Newly created users on the system are administrators by default, so creating havoc on the box, and even the network, is as easy as getting online. The latest service pack will be waiting for me, and updates will be continuous throughout my use of XP. Windows has shown a bad track record with viruses and badware, yet on a default install, I'm left with nothing to guard myself. Sure, there are third party utilities to help me address these issues, but I will need to purchase them separately, and get them installed after XP finishes its install. Further, the default services are listening on all interfaces, making me vulnerable to an attack.
Now on to productivity software. After installing these machines, I need them ready for the corporate environment. I'll need email clients to synchronize with my backend servers, regardless of what they're running. I'll need office productivity software in the way of word processing and spreadsheets. I'll need PDF creators and viewers. I'll need a compressing utility, as well as encryption, due to the nature of sensitive emails. Instant messaging is a must for internal communication. With Ubuntu, OpenOffice.org is shipped and installed by default providing the employees the necessary tools to begin working. Evolution is provided for email communication, which gives me the ability to connect to POP3(s), IMAP(s) and Exchange servers. Ubuntu ships with Evince as the default PDF viewer, and a PDF "printer" is installed by default, giving me easy access to create PDFs. Three compression utilities, zip, gzip and bzip2, coupled with GNU tar, give me the ability to archive and compress anything on disk. GnuPG is installed by default for encrypting those sensitive emails. Lastly, Pidgin is my mult-protocol application for using instant messaging, giving me the ability to connect to Jabber, MSN, Yahoo, AIM, ICQ, Novell groupwise, and many, many others simultaneously. As for Windows, I have Notepad and Wordpad installed for my "word processing". There is no spreadsheet application installed. Outlook express is available as a minimal email client. There is no PDF creator or viewer. Zip is provided for compression, but no encryption application is installed. A Windows Messenger application is installed for instant messaging. Of course, many third party utilities can meet many of these needs, but none of them are provided by default
Lastly, the need for remote administration. Being a system administrator, I'll need the ability to connect remotely to each machine, and administer it as needed, whether stuff breaks, I need to install/remove software, or other administration tasks. XP Professional has given me the ability to utilize the RDP protocol through remote desktop. RDP uses encryption by default, however, due to the nature of XP, I can only login via RDP when the user on the other end has logged off. XP only allows a single user logged in at any given time. Unfortunately, however, there is no scripting language provided by the operating system, so writing simple scripts to automate tasks for me is not possible. Again, I can install plenty of third party utilities to meet these needs. On the other hand, Ubuntu has given me OpenSSH, which also does encryption by default. Further, because Ubuntu is a mult-user operating system, I can administer the machine while the user is still using it. Installed are several different scripting languages and compiled languages to make automating tasks a breeze. Perl, Python, BASH, C and C++ are all installed by default.
Looking at these comparisons, Ubuntu 8.04 comes well ahead as a usable desktop on a default install where Windows horribly fails. This recalls to mind the Mac and PC commercials. Remember the first commercial, where Mac and PC were "born" by being unboxed? Mac was ready for primetime, while PC had service pack updates to process, third party utilities to install, and security software to configure. It was going to be a while before PC could be on the same usable level as Mac out of the box. I'm seeing the same thing here.
After a default install, I could see several scenarios where a default install just wont meet my needs, but third party utilities will. Norton Ghost, Microsoft Office, McAfee Antivirus, Windows Defender, Lavasoft Adaware, Spybot Search and Destroy, PGP, PDF utilities, better IM client, scripting language, and so forth. The third party list for getting a usable Windows desktop gets long fairly quickly.
So, I guess Linux must be laughable. It sure isn't an operating system defective administrators would want to use. It just makes life too easy, both for the user and the administrator.