Friday, August 15, 2008

The Evolution of Linux

Mark Shuttleworth, a noted personality in the Linux world, has been much quoted lately for comments he made at OSCON regarding the OS X desktop and the need for Linux to exceed its usability. While those comments have merit, it is to Linux's credit and advantage that it has focused more on the foundation of the OS than its GUI interfaces.

Throughout their histories both Apple and Microsoft have concerned themselves more with presentation than substance. While that has helped them win market share on the desktop, it has left their products riddled with security holes.

While few seem foolish enough to defend Microsoft products' security, Apple aficionados often claim a superiority the facts cannot sustain. Independent security surveys of the OS X code commonly find that Apple's coding practices introduce great numbers of vulnerabilities into the underlying OpenBSD code. To Microsoft's credit, they are far less dismissive of their failings than Apple.

Linux, on the other hand, like Unix before it, has been more concerne
d with the strengths of its foundations and has evolved its user interfaces in this light, rather than despite it. Those who assert that Linux and Unix aren't intrinsically more secure than Windows just don't understand the effect such a fundamental difference in philosophies produces.

While I applaud Shuttleworth's goal of producing an improved desktop user interface, the Mac paradigm is not one I'd care to see embraced. In all too many respects the saccharine Mac UI purposely isolates the user from the chance to understand what is going on with their machine and its software. The attempt is to produce addiction, more than provide real ease of use, and it is often effective. Ultimately, however, to use a tool without understanding its function is to invite accidents. In that respect, Steve Jobs is more Pied Piper than emancipator.

Wednesday, August 13, 2008

Open Source and the "Innovation" Trap

For decades now in the software industry, when a company lacks for a legitimate criticism of its competitors' products, they level the charge that those competitors lack the ability to "innovate". So it was when Apple Computer alleged that Microsoft had stolen the idea of the GUI from Apple, when in fact Apple had purloined it from Xerox's PARC labs. When confronted with this fact, Apple did the obvious thing: They sued Xerox to assert hegemony over the desktop GUI. Unsurprisingly, Apple lost. As the Bard said, "Truth will out."

Most recently proprietary software vendors have made this assertion against Open Source. It is a specious allegation that deserves no attention whatsoever. Unfortunately, many in the Open Source movement have become distracted by this FUD.

The innovation chimera does provide a useful marketing tool to approach those easily seduced by "new and improved". Unfortunately, in the software business, "new and improved" often means change simply for the sake of change, with little real benefit and, in many instances, a reduction in usability and transparency.

Recent examples of questionable decisions in OSS projects include the KDE 4 attempt to eliminate folders from the desktop and Firefox 3's redesigned bookmarking system. Both are classic examples of "fixing what ain't broke". Although some small benefit may derive from the application of these new regimes, the cost is in relearning and lack of intuitiveness for those with prior experience. This is despite the fact these were relatively minor changes and only serves to illustrate the greater hazards assumed with less modest modifications.

It should be said that open software is not alone in susceptibility to this contagion. Both the ribbon interface in MS Office and the need for the Alt key to reveal the menu in IE 7 result from a blind pursuit of "innovation". Neither has done anything significant to enhance productivity and both have frustrated and confused experienced users.

Ultimately, while it certainly has its place in software development, innovation is a commodity that should be applied sparingly and cautiously to software. Those who develop for Open Source projects should not be befuddled by the desperate assertions of those threatened by the greatest innovation in the history of software development, the Open Source collaborative development paradigm, itself.