Thursday, July 30, 2009

Open or closed?

Apple banning Google Voice application from its App Store was the topic of this earlier post. I'd just like to tell you about what I think about open and closed platforms and open and closed formats. The problem, in my humble opinion, reduces to this.

Open doesn't always mean free (as in beer)

Open doesn't always mean free (as in beer). I can, and I would, pay services based on open technologies. And I would obviously pay a song encoded with the FLAC codec (an open source free lossless codec). The openness of a technology such is FLAC guarantees me that I would be able to use it in whichever platform or device I chose (between those where an implementation would be feasible, of course).


Deciding between an open or a closed platform is a choice. A choice which must be checked against your requirements. I'd been a happy Solaris user since Solaris could be run only on top of Sun Microsystems' machines. That, then, was a closed platform. Nevertheless, it perfectly fitted my needs.

Dozens of example could be made and I'm not going to digress any further. I'm also perfectly aware that these are just personal tastes but the point I want to make clear is that, as far as it concerns end users' everyday lives, what's bad aren't the platform themselves. Closed platform are a legitimate choice as far as they don't reduce my freedom to act (which is a characteristic of the iPhone I'm complaining about). I'm running several platforms nowadays including Sun Microsystems' Solaris, Microsoft Windows (yeah...) and Debian GNU/Linux. Microsoft Windows isn't exactly open and I run it because I need a couple of programs which are essential for the client I'm working for. I don't feel absolutely coerced when running Windows. It's my and my client's choice. Moreover, I didn't need to dedicate a machine to Windows, I just virtualize it on a Solaris box using Sun xVM VirtualBox.

So what? Well, as you see I don't think that closed platforms are necessarily a bad choice. What I do think it's a bad choice is using a closed format. Closed formats are bad.


I think that closed formats are evil because I don't think it's safe relying on a third party to access the information I'm storing in such a format. I wouldn't buy music, nor store photographs, nor doing anything else, using a closed format (or when an open one could fit my needs.) Closed formats limit the domain in which I can do my choices. If I chose, for example, an Apple proprietary format to store my music or my own personal video, I would be running the risk of depending on the availability of an implementation for the OS (or the device) of the day.

Things get worse when purchases are taken into account. Back in the 80's, you could buy an LP or a book and then go home and enjoy your purchase. You wouldn't even worry about "Could I be able to play it back?"-like statements. You would be buying a physical support, that's true, but you were interested in the information it contained. The medium was just that: a medium. The big difference is that no matter the manufacturer of your Hi-Fi appliance, you could bet you could listen to your record! And no matter the paper type, you could just read it with your own eyes.

Years passed by and information is more and more often sold without physical mediums. You're probably already buying online the records of your favorite singer. Maybe you're even buying electronic books.

This introduces the first problem, which is the major one: the format the information is packed with.

When you have to send a document by email, you probably think about the file format you're going to send. Maybe you know that the guy you're sending the mail to is a Microsoft Office user. Maybe you don't want anybody to edit your file. Maybe you don't even care. The fact is: you have to choose a file format amongst the available ones.

No matter the OS, you can probably read PDF files and examine TIFF files. You can probably play an MP3 file without much hassle. You wouldn't worry sending, receiving or archiving such files on your hard disks. These format are mainstream formats (in their domain). Even so, portability sometimes can be an issue.

Other formats may also me considered de facto standards, as maybe is the case of the Microsoft Word file format. Nevertheless, the odds of you having portability problem with Word files is still high nowadays. Microsoft never wanted its Word file format to be portable, before the format war against OpenDocument (and still I have some doubts...) The point is: you use Microsoft Office, you know whom you can interact with. But: would you buy a book in the XPS format? Would you encode the video of your wedding using a Microsoft's of Apple's codec? I wouldn't, because I want to reduce dependencies from proprietary technologies which, tomorrow, couldn't be available on the devices I'll be running. Or they couldn't be available at all.

Piracy and DRM

The problem with multimedia file formats is even more acute, though, because anti-piracy measures sort of obliged distributors to use some sort of DRM. DRM shouldn't be reverse engineered but if a public specification isn't available (because it would defeat its primary intent), you're left alone if you run an unsupported platform. You'd probably think twice before choosing a closed format, in this case. Unfortunately sometimes, you're left with no choice, as was the case with the old iTunes DRM file formats. No way to play them back in an unsupported platform. So we're back to the question: what did I buy? The medium? The information? A file is an ordered stream of bits. But I'm not buying the bare bits. I thought I bought the right to listen to my music whenever I can but the reality is that I must be running this or that platform or the file I paid for will be unusable. I'm buying the right to enjoy that song. When I buy a CD, I can bring the CD with me and listen to it wherever I want.

It's a chicken and egg problem: you want to prevent me from committing a crime (piracy) by limiting my freedom. Including the freedom to break the law, which is something I personally would not do.

I might understand why they do that, but I am not satisfied with such an answer. That's why I go buying my songs where I can avoid worrying for such details. Orwell's 1984 is a good reading nowadays: DRM sounds like psychopolice prevention to me.

To be fair in the case of Apple the DRM problem has been almost solved, but still you're marrying with the platform where you can run iTunes if you want to access the store and we know that Apple, despite its flagship OS being an UNIX, is not pampering so much the GNU/Linux community. Let alone the Solaris' one: we're still waiting for QuickTime... That's why I'd buy from Amazon, rather than from the iTunes store.

Can it get worse than this? Sure. Have you ever bought a CD or a DVD just to discover that you'd run into problems while trying to reproduce its contents on your computer? Yes, I have. And if you're running an UNIX, reproducing a DVD may be an odyssey. My Solaris post-install scripts have a "compile libdvdcss" section, just after installing Sun Studio. Once more: I might understand the reasons of the IP's owners but, since I paid for my DVD, I would like to reproduce wherever and whenever I want, rather than being subject to such kind of coercion whose ultimate (and only) reason to be is prevent me from breaking a law (including when there wouldn't be any law to break).

Different problem, different solution

The previous sections might make you think I'm absolutely against closed platforms and closed formats. Well, that's not exact. As I said, the more it concerns everyday's life, the more I support openness of formats. Choices often imply compromise.

For a bunch of valid reasons, I'm running a pretty great set of services on top of the Solaris platform. Since the 90's. My reasoning is that the implementation (Solaris and Sun's servers) is analogous to the physical support. The value is the services themselves. And I never ran into any problem accessing them from whichever platform I was running: Microsoft Windows, GNU/Linux, *BSD, etc. Solaris was just like the plastic the record was made with. Just a medium. And the medium was chosen with requirements in mind, such as resilience.


I hope I made it clear. While I think that openness is a virtue in absolute value, I do recognize the benefits of running a closed platform, depending on your requirements. That said, I stress the importance of your freedom. The platform should never be an hindrance and should never be limiting, or annihilating, your possibility of choice.

When I bought the iPhone I was perfectly aware that I was buying a closed platform. More closed than many others we're used to, nowadays, despite what many people may be thinking. This was a test to assess if, and how much, the platform could fit my needs. And there's no better assessment than trying ourselves. After trying I do not feel free. I'm not free to use the programs I'd like because Apple is deciding for me. I'm not even free to develop and distribute a program of mine, because the gate to the App Store is Apple's filter which, as we saw, seems to be based on commercial decisions and partners' pressure rather than fair competition. I'm not even free to plug the iPhone on my computer because I'm not running a supported platform! While this is Apple's choice, it doesn't seem fair to me (the user) preventing me from using the phone as an USB storage device. Not even to download my own photos and videos.

No comments: