Python, Java and Go are all "open" languages and don't limit you to Appengine, and Google allows you to download your data without restriction. The only lock-in is the APIs, and even there the datastore API is the only one that isn't built on a very standard interface. Given the datastore is distributed and therefore can't expose an exact replica of the MySQL API, how could Google lock you in LESS? Oh, and lets not forget that you can run your code UNCHANGED on Appscale or Typhoon AE on any IAAS or VPS you like.
This article is right - Google needed to make Appengine pay for itself. And when you factor in how much it costs to provide a scalable service from redundant servers, Appengine is still good value. For example, most of the grumblers are muttering about migrating to AWS, but when they realise that they need at least two instances in diverse locations; or make that two instances in each location if their service might become too popular for one server to handle; and ELB to route requests to the servers; and how tricky it is to keep their data consistent on all those servers; and what a hassle a serious backup regime is; and how much time it takes to manage the whole thing... I'm picking they'll suddenly go rather quiet.
Or maybe they're happy to run their site on a single AWS instance. In which case, they should do just that - Appengine is not the right tool for them anyway.
I run several profitable apps on Appengine, and until now paid cents a month to Google. I've always known that isn't sustainable for them, and that they'd have to get serious about pricing someday. I for one am happy to pay a couple of orders of magnitude more for the certainty that my platform will persist.