New features simplify development platform, let users focus on code.

Google’s platform for building Web applications is getting a half-dozen or so updates today, bringing Google closer to its goal of taking the drudgery away from building applications and letting developers focus on their code.

Like Amazon’s Elastic Compute Cloud (EC2) or Microsoft’s Windows Azure, Google App Engine is a publicly available cloud platform that can be used by customers to build and host applications without owning their own infrastructure. But even more so than its major rivals, Google is focused on abstracting away all the complexity of building Web apps.

The aim is to make developers’ lives easier in the long run, but some potential customers are scared off by an initial speed bump.

When asked why App Engine hasn’t rivaled Amazon in terms of the size of its customer base, App Engine Senior Product Manager Greg D’Alesandre told Ars that it’s harder to move code into Google’s service than it is into Amazon’s. There are benefits to using Google in the long run, but Amazon’s model of providing virtual machines with just about any operating system a developer might use makes the first step easier.

“It’s easier to take code running on a machine under your desk and put it on a virtual machine than it is to put it into App Engine," D’Alesandre said. “Now, if you put it into App Engine you get an enormous amount of benefits from that, but as with any sort of bigger jump it takes longer for that adoption curve to happen. We’re seeing incredible growth but Amazon has been around for a long time.”

You will find no virtual machines here

In the cloud industry, Amazon is considered infrastructure-as-a-service because it provides access to the underlying infrastructure—not the physical hardware, per se, but the virtual machines and operating systems running on it. This allows a greater range of freedom, but Microsoft and Google have gravitated closer to the platform-as-a-service model in which infrastructure is abstracted and optimizing the developer experience is key.

Microsoft has taken steps toward becoming an all-things-to-all-developers cloud with Azure, letting users deploy their own Windows and Linux virtual machines on Microsoft hardware.

Google’s Java- and Python-focused App Engine, meanwhile, offers no access to virtual machines (except for the Java Virtual Machine), and with announcements made today at the Google I/O conference is moving further into the realm of abstracting away physical resources. Not every announcement is focused strictly on simplifying ease of use, but all of them should make App Engine more useful (as one would hope). Here are some of the highlights:

App Engine is expanding from North American to European data centers, so developers with lots of European customers can serve up pages faster.

Google Cloud Endpoints, which simplifies the process of building a back end for a mobile application. Annoying tasks like supporting the OAuth 2.0 authorization protocol are handled automatically.

PageSpeed, which lets App Engine sites serve up static content much faster than they normally would. PageSpeed already existed, but now it’s integrated into App Engine and can be turned on with just a few clicks.

Google’s Cloud SQL isn’t quite ready to lift the beta tag, but it’s now more broadly available, with signups open to anyone.

Application code limits are being raised from 150MB per application version to 1GB.

Server Name Indication lets multiple domains share the same IP address while allowing separate certificates for each domain. Developers can now also buy a dedicated IP address for use with their applications.

Taking the pain out of mobile app development

While most of the above-mentioned features are available today to everyone, Cloud Endpoints is initially just for a limited group of testers. That’s also one of the features that will simplify the lives of developers, according to D’Alesandre. Developing mobile applications that connect to a back-end service (like a social network) can be difficult, and Cloud Endpoints will take care of a lot of the nitty-gritty tasks.

“We make sure there’s authentication going on between the back end and the mobile app,” he said. “We take care of client libraries to make it easy to integrate the back end with multiple versions of a product in multiple languages. We essentially take a lot of the drudgery, the operational parts of building a back end out of it so you can focus on building your mobile app.”

“There’s all this operational stuff that is painful, that developers shouldn’t have to do,” he said. “Learning about OAuth 2 is really unpleasant. I know, I’ve done it. And to expect every developer who wants to build a simple mobile app with a back end to learn about OAuth 2 is just crazy.”

D’Alesandre is also proud of App Engine’s new SSL for Custom Domains feature, not only because of the functionality it provides, but also because it required a large time investment in Google’s data center infrastructure.

“Google’s infrastructure way back when was built for search, it wasn’t designed with this notion that people could run random applications via custom domains through that infrastructure," D'Alesandre said. "It was built with the notion that you could run lots of independent applications, but this notion of having custom domains that people could arbitrarily attach to it was not originally conceived of.”

As Google observers know well, the company has a tendency to release lots of products and services—too many, because a lot of them end up getting shut down. D’Alesandre said App Engine has to be sustainable in terms of revenue, one reason it hasn’t yet provided 24/7 phone support.

While he couldn't release revenue figures, he said App Engine is "a sustainable business within Google," and he thinks Google’s willingness to change its infrastructure to suit the needs of App Engine “is a clear sign that Google is really behind this product."