Mike Schaeffer's Blog

Articles with tag: linux
November 18, 2006

It's been about two months since I've installed Ubuntu Linux on my Dell Inspiron 6000 laptop. The initial impression was highly positive, but two months later the reality is starting to wear a little thin. After switching to Ubuntu Linux my laptop is slower, less media-savvy, uglier, and less compatible than it was before. The thing that is sad about this is that as much as Linux has improved, it feels like it is lagging behind Windows more than it did ten years ago (the last time I used Linux full-time).

In a way, this relative lag is not too suprising; It is caused by the convergance of two sets of industry trends over the last ten years. Ten years ago, the commonplace Windows was Windows 95, based on the old 16-bit Windows 3.x kernel; In 2006 the commonplace Windows is Windows XP, based on the much more robust Windows NT kernel. Ten years ago, 3D graphics, video playback, and the Internet were only beginning to emerge in the mainstream; In 2006, these applications define the mainstream. Linux's kernel might still be better than Windows, but it's less better now than it was ten years ago, eroding its relative advantage. At the same time Linux's advantage in kernel technology has been eroded, computers are increasingly used for things that essentially require access to propriatary content and technolgy. The Microsoft windows license fee pays for things like high quality fonts, licences for MP3 and DVD CODEC's, and sophisiticated 3D hardware support. It is either difficult or impossible to replace these things in an open source model, so, to the extent they are becoming more important, Linux increasingly suffers in contrast to its closed course, license-for-fee competition.

One example of how this might directly impact people is MP3 playback. MP3 playback is built into Windows: the Windows licence fee enables Microsoft to pay the Fraunhofer institute's license fee for the MP3 patent. in contrast, MP3 playback is deliberately excluded from Ubuntu Linux because it's patented and, despite the fact that Fluendo has paid for a patent licence and written a GStreamer CODEC, the CODEC is not open source and doesn't match Ubuntu's licensing model. Thus, while it is possible to add MP3 support to Ubuntu Linux, it takes the extra step of downloading and installing a CODEC. The same is true for DVD and MPEG video, not to mention that it will be true for Blu-Ray and HD-DVD (assuming the protection mechanisms on those two are ever broken, which has its own ironies).

What is key to realize about this situation is that it is as intrinsic to the open source model as it is to the closed source model. Open source software precludes payment of license fees, closed source requires it; Open source software precludes enforcement of trade secrets, closed source enables it. Neither of these models is necessarily 'wrong', but as our computational lives become more dependant on technology that requires license fees or technolgy protected by trade secrecy, open source will comparatively suffer more and more. No amount of prosletyzing on the benefits of Open source software will change either this fact or the moral right of those who invest their blood, sweat, and tears into propriatary technology to demand payment for their efforts. The best that advocates of openness can do is to act as revolutionaries by living the cause, advocating its values, and hoping that enough people follow their lead to build a critical mass.

However, like other 'revolutions', the Linux/Open source software cause isn't necessarily an easy cause to live. As I've been finding out once more, the switch to Linux is a sometimes painful struggle through mediocre software, bad asthetics, poor integration, and steep learning curves. The question I'm struggling with right now is is it even worth it? The older I get and the more external responsibilities I have, computers seem more and more like a tool for life and less and less like a way of life. The 5-10 hours a week I spent maintaining and integrating my Linux machines back in college is a much higher price to pay now than it was then. No matter how much I might like for my son to live in a world of free, open information and powerful free software, it would be very difficult to justify taking enough time away from him and my wife to make a useful contribution to the fight to make it happen. This is particulaly true if fighting the open source fight somehow comprimises my actual paying job, which is definately possible. I work for a Windows shop, and my management could give a rat's ass about the theoretical benefits of open source if it compromises my ability to serve our clients. One flubbed presentation due to a flaky Linux installation could do just that, and it would be very hard to use the benefits of Linux to explain it away to the folks to whom I sell my time. Maybe the upshot of this is that Linux is, like other revolutions, a young person's battle. However, unlike other revolutions, Linux requires direct participation to reap the benefits; If you aren't using open software, you're still at the mercy of closed software vendors. If this is really the case, and Linux really is for the 'young', then when will it ever become relevant to the broader audience of Windows and Mac OS X users? I just don't know. I will keep up the struggle for a while longer, January 2007 seems like a good time to reassess.

September 15, 2006

I ran Linux for a few years back in college ('94-'97), lapsing back to Windows for professional reasons when I started working full time. After ten years of running Windows full time, I finally got sick of its crap (excuse my French), replaced the 40GB disk on my Dell Inspiron 6000 laptop with a brand new 120GB and installed Ubuntu 6.06. Two partitions: one swap and one ext3. No Windows partition, no dual boot. This happened a couple days ago, and the experience has been almost uniformly positive. To wit:

  • Suspend to memory and (more importantly) suspend to disk both worked properly the first time out of the box, no questions asked. The only 'issue' is that the fit and finish isn't quite as nice as on Windows. Windows has a nice progress bar for the suspend process and on Linux the display goes through a couple corrupt screens full of noise before getting to the desktop.
  • The widescreen 2MP display was recognized immediately. Installing the Ubuntu packages for flgrx got 3-D acceleration on my ATI Radeon X300 working with no trouble at all. All I need to do now is get a nice compositing window manager. Update: ATI's X300 driver deliberately doesn't with the Composite extension necessary to run a compositing window manager. Oh well.
  • WiFi almost worked out of the box, the exception being the Wifi activity light on the laptop's case. It never lights up, which made enabling the radio confusing but doesn't seem to have caused any other problems.
  • The base Ubuntu is pretty sparse, but it was trivial to install 2GB worth of development tools with Synapitics after the install. Synaptics works well enough that I question why bother with Fedora's 5CD install process. (Out of a historical sympathy for Redhat 6, I first tried installing Fedora Core 5 and had a hard time getting Windows XP to do a valid burn of CD 3. This is why I wound up with Ubuntu.)
  • Plugging in USB keys and drives worked out of the box the first time, even for read-only accsss of my NTFS formatted external 120GB disk.
  • A video recorded on my wife's Canon SD400 showed up with a thumbnail in Nautilus and played, with audio, with the default media player.
  • Audio worked out of the box, even the annoying startup sounds.
  • The qemu emulator and tne kqemu accelerator (hopefully, my Windows solution) both compiled and ran easily. Update: All I had to do do boot Windows XP was start qemu with an image created by saying dd if=/dev/sdb of=orig.img. Of course, Windows XP immediately started complaining about not being activated. We'll see if MS lets me reactivate it: I have a license to run XP on this machine, even if the expectation was that I'd run it on raw hardware rather than via emulation. Oh, and it's too soon to really tell about performance, but it looks usable for filling out timecards, etc.
  • I wasn't expecting it, but I've been able to open and work with several work-related Word for Windows documents using OpenOffice.

Of course there are problems, but overall this is amazing. The last time I ran Linux, it took weeks of downloading and compiling source code and extensive script customization to get things to work right. Setting up X11 to not blow up my then brand new $1,300 Sony GDM-17SE1 17 inch monitor gave me night sweats for days. Once it did work, there were half a dozen different widget sets on the screen at any time and your choices for word processing included Andrew ez, groff, and/or TeX. Linux has come a long way.

July 24, 2006

In a recent article on newsforge Toby Richards discusses his pet theory describing why Linux isn't mainstream. You should read the article yourself (it's short), but the basic gist is that 'people' at home want to use operating systems that are compatible with what they use at work, and Linux isn't used at work because there isn't a good equivalent to Microsoft Outlook. The problem is: this reasoning has been tried before.

For over a decade, there's always been some mystical missing piece of technology that was holding Linux back from mainstream acceptance. For a while personal finance software filled this role, later on it was a unified desktop, and later still, when KDE and Gnome reached stability, the need for good office software took up the baton. Fast forward to 2006 and the "one missing thing Linux needs to become mainstream" is apparantly a good equivalent to Microsoft Outlook.

This line of reasoning is seductive to programmers: it basically transforms the question of "What does Linux need to become mainstream?" into the question "What code do I need to write?". After all, if the only thing holding Linux back from mainstream acceptance is a piece of code, then a missing piece of code is easy for a programmer to fix. In fact, since 1997 (the last time I ran Linux full time), basically all of the 'missing pieces' I mentioned above have been rewritten or created anew. If an integrated graphical desktop with a functional office suite was really the key to mainstream acceptance, then Linux should already be there. 10 years ago that was the belief and 10 years later that belief was basically proven completely wrong. When was the last time you saw Linux running on anything other than a server or in some other relatively fixed-function application? Waving a magic wand and integrating Evolution with Exchange won't change this any more than any of the other scapegoats that have taken the blame for Linux's niche status in the past.

It'd be easy to blame this on changing times: after all, who knew that Exchange integration would be so key to Linux's mainstream acceptance a few years ago? Actually, that'd be anybody in IT with a pulse. As Todd points out, Outlook 97 ("It's nearly a decade old, for crying out loud.") runs under Wine and provides Exchange integration. Put another way, the Linux desktop software stack hasn't interoperated natively with the mainstream PC software vendor's e-mail solution for over nine years. This isn't a short-term problem: this is innate. Another example of this kind of long-running problem is the ongoing trouble finding modern video drivers for X11. As much as people complain about ATI's lousy video drivers, it's only a repeat of the same thing that happened with Neomagic and Diamond back in the mid-90's. The names are different, but the problem and result are exactly the same: when buying hardware, caveat emptor if you want modern graphics support.

In both of these cases, it's easy to assign blame to closed propriatary vendors. You could also argue that it's just a symptom of OSS developers wanting to work on whatever's 'coolest', rather than what needs to get done. However, with either explanation the problem is inherent with open source, and the net effect is the same: Linux gets most of the way to where it needs to be, but it gets there late and and fails to go the last mile or two. It's this last mile that's so important to mainstream acceptance, and getting through it is going to take a lot more than one or two pieces of code. I have no doubt that five years from now, Linux will have decent Exchange integration and excellent support for the ATI R300 graphics in my (then) six year old laptop. Too bad the battle for the desktop will have moved on.