So you might guess I am glad that I am able to use Free Software in my computer desktop. That's right. But lately, as a consequence of my job and the demands of it, there is an obstacle, a tiny hindrance, if you want to call it that, I have found with Free Software desktops. It is something that does not stop you from working, but nonetheless it can grow to be a real nuisance in those special days when you need to Get Something Big, Complex and Mission-Critical Done By Yesterday.
The problem is a question of interoperability. Let's say I need to create an organization chart. OK, I fire up Kivio (a flowcharting tool that is part of KOffice, the KDE Office suite). I painstakingly draw the org chart, complete with subtle relationship among different levels and what not. Now I'm ready to use it. I would like to include it in a report that I'm writing on OpenOffice.org Writer. I then select everything in Kivio, copy it, and then paste it in OpenOffice.org. Boink. Real ugly, folks. All I can see in OpenOffice.org is a sort of XML gibberish I don't understand. To make things worse, Kivio is unable of exporting its diagrams in a portable file format (such as SVG). So I have two options: Import the full report written in OO.o Writer (which includes, among other things, embedded spreadsheets written in OO.o Calc) to KWord and feel the pain; or go back to zero with the org chart, and start a brand-new drawing with something like OO.o Draw.
In fact, there are several workarounds. One of them, for example, would involve printing your Kivio org chart into a PostScript file and then converting it to an EPS image using the ps2epsi utility supplied by GhostScript; you then would be able to embed the EPS into your OO.o document. There might be others, one more clever than the other. I could have used other program (such as Dia) that is able to export its drawings to a decent file format. But that's not the point, folks. The Free Software desktop runs on a collection of diverse applications, built on different toolkits, for different desktop environments, and using different architectural principles. Contrary to what a lot of vocal folks say, I regard this diversity as a strength; but sometimes the price to pay is too high, as in this case.
The point is that I am unable to smoothly embed data from one application into another. Of course, you could embed your Kivio org chart into Kword; or a KSpread spreadsheet into KWord; or an OO.o Draw logo into your OO.o Writer document. But there's no way into you could copy and paste data from OO.o Draw into KWord, for instance. And this is a definite disadvantage. In most proprietary desktops, you are able to smoothly exchange and embed data among applications without much trouble. The mechanisms that enable this feature (such as DDE or OLE in Windows) might be a kludge, a hack, a performance sucker, or you name it; but this functionality is surely convenient and intuitive. We need this convenience in our Free Software desktops, and I look forward to the day where we can enjoy it.
There's a group that is working to solve issues such as these: freedesktop.org. They've made significant progress with interoperability regarding copy/paste and drag and drop issues among different desktops. The technology necessary for achieving this kind of interoperability might already be present in our desktops. It might be CORBA, DCOM, or whatnot. Whatever it might be, I encourage Free Software desktop developers, freedesktop.org members, desktop environments and GNU/Linux distributions to see a way to solve the issue. We certainly can do it together.