A recent Free Software Magazine article lays out the case for open-source and free software in web applications. I agree with the arguments, but I also want to add another one that I feel is important.
The author touches on data portability, saying that:
“If the users can’t get their data out they will be more reluctant to put it in and they will tell others.”
The issue is more than just getting your data out. Let’s take the example of e-mail. Say I use Thunderbird (if anyone cares, I actually just use the Gmail web interface). I can export my data from Thunderbird to another email client, but it is a hassle. It is perfectly usable if you plan to switch to that new program full time, but if you want to use both or want to try one out, exporting your data is not going to be a workable solution. What you need is a protocol for syncing and exchanging data between multiple applications (in this case, IMAP).
Without IMAP-like protocols for transferring data across web applications, working with web applications from different companies is going to be hard. Why does this require open-source? The answer lies a couple sentences back: “working with web applications from different companies is going to be hard.” Why would you put in effort to make your software work with the competition, particularly if you are Google, Adobe, Microsoft, or any of the other big players? If your application is open-source, though, someone else can do it for you, no matter if you like it or not.
As I have said before, without good data exchange across all web applications, the web app scene is either going to be a monopoly or a disaster. Thanks, but I think I will take the good data exchange option.