Seriously this time, the new language on App Engine: Java™

Today, we're very excited to announce the availability of a new programming language for Google App Engine. Please welcome the Java runtime!

When the two of us first heard the promise of Google App Engine, we realized that the chance to bring this kind of simplicity to Java developers was too good of an opportunity to pass up. When App Engine launched publicly, we were excited to see that Java language support was both the first and the most popular request filed in the Issue Tracker. We were also thrilled to see that this enthusiasm extended beyond the Java language to all of the various programming languages that have been implemented on top of the Java virtual machine -- not to mention all of the popular web frameworks and libraries.

But we also knew that Java developers are choosy:

  • They live by their powerful tools (Eclipse, Intellij, NetBeans, Ant, etc.).
  • They try to avoid lock-in and strive for re-use. Standards-based development (defacto or otherwise) is key.
  • They harness sophisticated libraries to perform language feats which are nearly magical (GWT, Guice, CGLIB, AspectJ, etc...).
  • They even use alternate languages on the JVM, like Groovy, Scala, and JRuby.

We wanted to give developers something that they could be ecstatic about, but we knew we would have to marry the simplicity of Google App Engine with the power and flexibility of the Java platform. We also wanted to leverage the App Engine infrastructure -- and by extension Google's infrastructure -- as much as possible, without giving up compatibility with existing Java standards and tools.

And so that's what we did. App Engine now supports the standards that make Java tooling great. (We're working on the tooling too, with Google Plugin for Eclipse). It provides the current App Engine API's and wraps them with standards where relevant, like the Java Servlet API, JDO and JPA, javax.cache, and javax.mail. It also provides a secure sandbox that's powerful enough to run your code safely on Google's servers, while being flexible enough for you to break abstractions at will.

There is a vast amount of Java code out there, much of it written without consideration of sandboxing, and we can't test it all. We know that there will be some rough edges when it comes to compatibility, but we're looking forward to working with you to smooth those out. To that end, we're giving the first 10,000 interested developers an early look at Java language support, so please sign up, give it a whirl, and give us lots of feedback.

The team has also been working on many other improvements to App Engine, which we're really excited to launch to you as well:

  • Access to firewalled data: grant policy-controlled access to your data behind the firewall.
  • Cron support: schedule tasks like report generation or DB clean-up at an interval of your choosing.
  • Database import: move GBs of data easily into your App Engine app. Matching export capabilities are coming soon, hopefully within a month.

Last but not least, the App Engine team will be at the upcoming Google I/O developer event on May 27-28 in San Francisco, so please come meet us in person.

We look forward to seeing your applications. Get coding!

Java is a trademark or registered trademark of Sun Microsystems, Inc. in the United States and other countries.

Mobile Web Calendar for iPhone and Android, now with event management

It's probably no news to all you parents out there, but as a new dad I only recently found out just how busy life gets with kids. So I was thrilled when I was able to view my Google Calendar on my phone. Being able to check the week's schedule is great. However, I've been missing a way to respond to invitations and change my attendance status on the go. And I haven't been the only one. The number one idea on Google Product Ideas was the ability to edit Google Calendar on mobile devices.

That just became possible with the new mobile web version of Google Calendar, available on iPhone and Android-powered devices. If you're like me, you'll quickly find just how useful it is to edit events from your phone. Just go to google.com/calendar/gp from your mobile browser to see your schedule. Select an event to change your attendance status, edit the details, and add or remove guests. One more bit of news - even if you're on a flaky network and your phone can't establish a connection, the new Calendar will still start up and show your last viewed events.

To make the web-based Calendar as easy to access as any other app on your Android-powered device or iPhone, I recommend adding it to your home screen shortcuts. The new Google Calendar for mobile supports iPhone OS 2.2.1 and up and all Android-powered phones. It's available in English only for now, but more languages will be supported soon. For Apps users please go to google.com/m/a/yourdomain and click on Calendar.

Gmail gets a new engine for iPhone and Android-powered devices

Today, we're thrilled to tell you about the improvements we've made to Gmail for mobile, running in the iPhone and Android web browser. First, you'll notice that it's a lot faster when performing actions like opening an email, navigating, or searching. And if the data network drops out on you, rest assured that Gmail won't. You'll still be able to open recently read messages and to compose over a flaky, or non-existent, network connection.

All this is achieved with aggressive caching and by leveraging new browser technologies, like HTML5 and Gears. The full impact of this new architecture isn't visible yet, but it will enable us to significantly improve performance and quickly roll out new features in the near future. We're really excited about the potential impact this change can bring - so excited, in fact, that our VP of Engineering, Vic Gundotra, shared the news and demoed these new capabilities at the February 2009 GSMA Mobile World Congress event in Barcelona and last week at Web 2.0 in San Francisco.

The new Gmail for mobile will also help you tackle your inbox faster. Gone are the days when you had to archive multiple messages by selecting each one, then scrolling all the way up (or down) to reach the archive button. Our fingers were getting sore with all the scrolling and we're willing to bet yours were too. Now when you select a message, a floaty bar appears near the top of the screen with options to archive, delete, and more. In fact, the floaty bar stays with you as you scroll through your inbox, so you can easily archive, delete, or view more options no matter where you are.



Lastly, we improved the look and feel of messages. Labels are easier to read and are more in-line with the familiar Gmail labels you see on your desktop. We also moved the search menu up into the top header, making it more accessible.

Go to gmail.com from your mobile browser to give it a try, and stay tuned for feature additions and improvements. For easy access to your Gmail, create a homescreen link. If you have any feedback or ideas, please let us know.

*Please note: The new Gmail for mobile only supports iPhone/iPod Touch OS 2.2.1 or above. If you have an older firmware version, you'll be directed to the previous Gmail for mobile. All Android-powered phones are supported. New Gmail for mobile is available for English only. The roll out will occur over the course of a day, so please check back later if you don't see the updated user interface right away

Check out the video below to see new Gmail for mobile in action:



If you are a Google Apps user, go to mail.google.com/a/yourdomain.