Last fall, I wrote a review of Google’s App Engine, a product designed to help developers easily host and run Web applications. I praised the service’s engineering but warned that developers should be careful about getting locked in. I wrote:
No matter how quick and easy building Web applications is with App Engine, and no matter how good Google’s infrastructure is, the service’s lack of openness remains a serious drawback. While Google’s representatives say that they want to avoid locking companies into their system, the reality is that as long as important components such as the database remain proprietary, developers will have limited flexibility…
While it’s possible to get data out of App Engine and move it somewhere else, Stocky says that not all the features that would allow an application to be transferred to some other system have been built yet. In the meantime, a developer who wanted to move away from App Engine would have to find a way to deal with, for example, losing the Google database system and having to move back to one like MySQL. A developer who was taking full advantage of Google’s database would have to do a lot of work to make the application function well on a different one.
Earlier this year, Google launched the Data Liberation Front, a team of engineers who work on the technology needed for people to get their data into or out of Google’s products. The team recently took some important steps toward opening App Engine, publishing a guide to “escaping from App Engine” and “escaping to App Engine.”
“Google App Engine was a very important product to liberate, because if we’re going to get you as a developer to use App Engine, it means you’re going to put your users’ data in our systems. We don’t want to lock you and your users in,” says Brian Fitzpatrick, who leads the Data Liberation Front.
This is a great first step, and I’m glad to see Google making good on its promises. This doesn’t, however, remove all the concerns I expressed in the review. For instance, an app that’s tailored to take advantage of Google’s system would likely still suffer if it were moved. Lori Macvittie has also noted that the stored data often isn’t the only thing needed to successfully move from one service to another.
That said, Fitzpatrick’s team seems to be making a good faith effort. Macvittie points out that sometimes “liberated” data comes out in an inconvenient format, particularly when there isn’t a real open standard. But that’s more the result of immaturities in the industry than the specific failings of Google.
Fitzpatrick wants to “let our code speak for itself.” I’m looking forward to seeing further developments to App Engine and other Google products. And I hope efforts like this will spur the creation of more true open standards where they’re needed.