The Year of the Open Source DesktopFeb 08, 2008, 23:30 (21 Talkback[s])
(Other stories by Brian Proffitt)
By Brian Proffitt
It's that time of year again, when I am forced to use the Windows operating system.
This is not to imply that I only use Windows once a year; would that that happy reality were true. But, when traveling, or visiting a public terminal somewhere around town, I do use Windows because I (a) haven't got my Linux laptop or (b) it's faster to just grit my teeth and perform the task rather than wait for Linux to boot up.
Those are instances of using Windows by choice. This is the time of year, however, that I have to use Windows.
Yes, it's tax time again. All my forms are in, and I get to perform my annual rev up of TurboTax. I have been using it for many years, and honestly it's one of the nicer applications I have ever run on any operating system. I must be honest in that respect and give Intuit their props (except for that DRM issue a couple years back). I just wish they'd port something over to Linux.
About here, some of you will say, but you still have a choice, Brian. You can try one of the open source alternatives to TurboTax, or just have someone do your taxes for you. In the strictest sense, this is absolutely true. But, having tried Open Tax Solver and poked around at the Tax Code Software Foundation, I have to say that these solutions don't yet meet my particular need: I am not an accountant, and I need to be asked baby-step questions to fill in my tax info.
As for hiring a tax preparer or accountant, remember that I am a journalist, and therefore am not loaded in the moolah. I am also cheap. Not to mention such a person would be using some Windows-base app anyway, so it's not like I'm reducing the proprietary "footprint" upon world.
It would be easy to turn this column into yet another plea to Intuit to port their annual taxware over to Linux. But in reality, my irked feelings about this project made me start pondering this whole notion of interoperability. What do we mean when we bring up the "I" word?
For me, cross-platform development is just one aspect of interoperability. Other aspects include format sharing or server connectivity. It's a pretty broad topic to try to tackle, no matter which aspect you focus on. So, here's my question: is the IT community taking the right approach to to really solving the interoperability problem?
Much of the effort in handling interoperability seems to be focused on getting differing technologies to talking to each other. This is done either through emulation or building a common technology upon which all sides can work. In managing Windows/Linux interoperability, it seems to me that emulation is the more-used approach. Want to run an app from one operating system on the other OS? Use Wine or cygwin. Want to connect servers? Use Samba.
There's nothing wrong with this approach, per se. But it does seem to give a lot of control to the operating system that's being emulated. When Windows apps change to run better in Windows, it also usually leaves them unable to run in Wine, until Wine is updated.
I am wondering if perhaps a common-platform technique that all apps could work with might not be a better idea. Something that would run on top of Linux, or OS X, or even Windows. Something ubiquitous; not a mere emulation. A platform tied directly into the operating system. Apps would be designed to run on this platform, and would not care what OS was running underneath.
Hmm... I wonder... what could such a thing be?
With the rapidly progressing work of porting KDE to Windows and OS X, we may indeed have ourselves a true cross-platform shell soon that could allow for really smooth cross-platform work and interoperability. The KDE team isn't just shifting the environment over--though that would be good. They're also getting KOffice ported, too. That's pretty significant, since even OpenOffice.org does not run well on all three Oses.
Imagine a desktop shell with a full-fledged office suite that could run on all three of the major desktop operating systems. Suddenly the whole notion of cross-platform migration becomes moot. Build an application that runs on the KDE shell, and you can install it on any machine with that shell. This could be a very attractive prospect for independent software vendors. Promote KDE as a shell to install over your current operation system, and now you can write one application to KDE to get potential customers on all three operating systems.
As always, there's some catches. Running a shell on Windows is not hard. The XP and Vista interfaces are just shells running on top of a Windows kernel. But, here's a potential catch: it will be interesting to see how Microsoft reacts when customers start installing KDE in place of their Microsoft shells. This kind of cross-platform capability to kill their operating system revenue. Why pay $x00s more for Windows when you can just buy a less expensive machine with Linux and KDE installed?
Suddenly, the game has a potential to change in a huge way. This applies to Linux as well: if the shell becomes the common platform, then Linux is rendered moot, too. This could be a good thing, since cheaper more secure Linux will become very attractive, or not-so-good if users say "why bother switching when my Windows/KDE machine will run the same programs?"
But if this scenario plays out, then neither possibility would be outright bad. Because if KDE or some other environment can become The Common Shell, then it's a win for open source.
So instead of the Year of the Linux Desktop, perhaps "Year of the Open Source Desktop"?
Something to ponder.