What happened in the Wave sandbox

Tuesday, September 29, 2009 | 6:30 AM

Labels:

My favorite day since we started the developer preview at Google I/O? Aug 7th. Alexander Dreiling flew down to visit the Wave team from SAP's research lab in Brisbane. He showed us a 7 min video of Gravity, a Google Wave extension that facilitates real-time, collaborative development of business processes. I never thought I'd see grown men cry over business process modelling.

Why the tears? Alex, Kathrin Fleischmann (SAP Research) and Soeren Balko (SAP NetWeaver BPM development) built a demo that highlights the power of the Google Wave platform to make complex tools live and collaborative. In the video, many team members collaborate in real time to build a model. Each piece of the model is colored based on the person that added it. The team discusses the model. Someone adds another participant midway through the development. That person uses playback to catch up on what they missed. And there is even a robot that checks and fixes semantic errors. In the end, a manager checks the work on her iPhone. Even Lars was floored and he is not easily impressed!

Salesforce.com also gave the team a virtual pat on the back when they sent over this video showing the Service Cloud's rich customer support experience in Google Wave. A mobile phone customer starts a wave with a company-supplied support robot. The robot creates a tracking record and pulls rich help content into the wave based on the customer's comments. When the problem isn't solved, the robot seamlessly brings the matter to the attention of a live agent, who can see the wave embedded in a familiar tool and interact with it there. Private replies let the agent consult colleagues before responding to the customer. All in a single wave.

Since Google I/O, more than 27,000 developers have been prototyping with the Google Wave APIs. Amazingly, these developers persevered, found work arounds, and advocated for new features when our APIs didn't do what they needed. Our APIs have made a fair bit of progress since May. Now you can build robots that control gadgets, providing a mechanism for tight integration with a rich UI. We've also made it easier to build extension installers to help people understand share extensions with their friends. The visual experience for interacting with gadgets has also been improved. We open sourced the Java Robots API. And made lots and lots of bug fixes.

While Salesforce.com and SAP's demos are still prototypes, we are featuring a small set of amazing extensions ready to use today. LabPixies created a Sudoku gadget that lets you compete to solve a Sudoku Puzzle. A happy distraction in the hectic days leading up to September 30th! (Although I wish Lars would let me win once in awhile...) 6Rounds.com has integrated their rich video conference experience into Google Wave. It has amazing effects like making it snow or even simulating fire! AccuWeather has built a neat extension that lets you add weather forecasts to your event planning waves. Voice conversation is one of Google Wave's most commonly requested features, and we were thrilled to see Ribbit's gadget for managing telephone conferences. Lonely Planet built a very rich trip planning tool. Our own Pamela Fox updated the Google Maps gadget we have been using in our demos.

As we've talked about in the past, we're still working hard to improve the documentation and evolve the preview quality APIs to make it easy to build wave-y extensions. We're also working on larger changes like providing anonymous read-only access to embedded waves -- so anyone in the world will be able to see content of published waves. To help foster a strong developer ecosystem, we're exploring plans for a monetizable wave extension store.

To all sandbox developers, thank you for your patience, feedback, creativity and riding the sometimes bumpy waves with us. You will get accounts on wave.google.com tomorrow - check your sandbox account for instructions on how to login. You'll also get invitations to bring on people you want to wave with or have try your extensions. Google Wave is more fun with friends or colleagues to collaborate with so use your invitations wisely!

If you're feeling inspired to build an extension to Google Wave, sign up to give the APIs a spin, check out the developer's guide, and read the design principles. If you come up with something "wave-y" don't forget to let us know when you have extensions ready for users to try.


Stephanie Hannon, Google Wave Product Manager

Google Wave in Internet Explorer

Tuesday, September 22, 2009 | 10:03 AM

Labels:

When we extend our Google Wave preview next week, we will encourage users of Internet Explorer to install Google Chrome Frame, an open source plug-in that brings HTML5 and other open web technologies to Internet Explorer.

On first login to Google Wave, Internet Explorer 6, 7, and 8 users will see this message:

A few clicks later, the user will be running Google Wave in Internet Explorer, but it will be every bit as fast as in Google Chrome!

Google Wave depends on strong JS and DOM rendering performance to provide a desktop-like experience in the browser. HTML5's offline storage and web workers will enable us to add great features without having to compromise on performance. Unfortunately, Internet Explorer, still used by the majority of the Web's users, has not kept up with such fairly recent developments in Web technology. Compared with other browsers, the JavaScript performance is many times slower and HTML5 support is still far behind. Likewise, the many different versions of IE still in use -- each with its own set of CSS quirks and layout limitations -- further complicates building rich Web applications.

In the past, the Google Wave team has spent countless hours solely on improving the experience of running Google Wave in Internet Explorer. We could continue in this fashion, but using Google Chrome Frame instead lets us invest all that engineering time in more features for all our users, without leaving Internet Explorer users behind.

It is remarkable how quickly the browser landscape has changed since Lars and his brother Jens wrote the first prototype of Google Maps back in early 2004. Back then, Internet Explorer was their browser of choice. These are exciting times indeed to be developing for the Web!

Happy waving!

Posted by Lars Rasmussen, Google Wave team manager, and Adam Schuck, Google Wave client tech lead.

Google Wave Extension Updates

Monday, September 21, 2009 | 7:48 PM

Labels:

Over the past few months we've learned more about how extensions are used in Google Wave, and made it easier to create and install extensions. To help you build user-friendly extensions, we've prepared two new documents:

1) Google Wave Extension Design Principles

  • Make it Wave-y
  • Make it Easy to Use
  • Make it Easy to Install
  • Make it Look Good
  • Make it Useful -- or Fun!

2) Extension Installers Guide

  • Understand the extension manifest file
  • Learn about extension hooks and actions
  • Walk through installing an extension
We're looking forward to promoting extensions to users as they get access to Google Wave. If you're building extensions, please check out the above documents, and then let us know when your extension is ready.

The Extension Design Principles are perhaps more aspirational than attainable with our current, preview-quality APIs. We are working hard on making things better. For example, we are adding hooks that let robots be added automatically to the right waves at the right time, we are adding OAuth-based RPC access so robots can initiate requests to modify waves (which among other things will supercede our cron mechanism), and we are adding to gadgets the ability to display diffs when users open waves and during playback.

As always, our goal is to make it possible to write rich, collaborative applications with Google Wave that feel to users as natural as Google Wave's own features. We appreciate the vocal and detailed feedback that we have received during these first few months of our developer preview. Thank you for your patience and testing of the Wave APIs.

Happy hacking!