Technical news and updates related to the APIs and protocol

Upcoming US Events with Google Wave Presentations

Wednesday, November 4, 2009 | 3:26 PM

Similiar to the Google Wave European tour, we're stopping by several developer events in the states:

  • LISA 2009
    • Nov. 1-6, 2009, in Baltimore MD
    • Nov. 4 (today!) - "Google Wave Federation Protocol" with Joe Gregorio
  • SF Java User Group
    • Nov. 10, 2009, in San Francisco, CA
    • "Google Wave APIs: Now & Beyond" with Marcel Prasetya
  • Dreamforce
    • Nov. 17-20, 2009, in San Francisco, CA
    • Nov. 19 - "Ready to Ride the Google Wave?" with Dan Peterson
  • Massachusetts GTUG Wave Hackathon
    • Nov. 21, 2009, in Boston, MA

All of these events are still open for registration - so grab a seat while you still can. See you there!

WaveSandbox.com: Federate This

Monday, November 2, 2009 | 10:13 AM

When we first unveiled Google Wave a few months ago, one of the fundamental concepts we discussed was the vision for wave as an open communications protocol. We are happy to announce that the developer instance of Google Wave is now available for experimental interoperability testing with other wave providers. This means that if you are interested in building a service that uses the Google Wave Federation Protocol, you can begin prototyping with a tool like FedOne against WaveSandbox.com.

Since Google Wave Federation Day, there have been a number of developments:

If you'd like to dive in and get started, please check out the introductory docs. You can learn more by reading the more detailed status note on the wave protocol forum. Please keep in mind that things are early, and there will still be many changes, so your feedback is important. You can also contribute to the development of the growing open source reference implementation -- check out this guide to submit open source code.

Given the goal to build out a distributed network of providers, we're glad to be taking this step today and opening up the federation port for development purposes. We look forward to working with you to continue iterating on the protocol, developing an open source production quality reference implementation, and, of course, federating wave.google.com with many wave providers in the future.

Happy Hallo-Wave-een!

Saturday, October 31, 2009 | 7:46 PM

I moved down to Australia a year ago, and just a few weeks ago, decided to stay here indefinitely because it's an awesome country. It has beaches, forests, cities, shark-eating-shark, kangaroos, and drop bears. What more could you want? Well, there is one thing: Halloween. I am a huge fan of any holiday that revolves around dressing up in ridiculous outfits and being rewarded with candy for it. Heck, I have two permanent (and really nasty looking) scars from trick-or-treating incidents, and I still love the holiday. (Tip: If your witch cape is held on by a shoestring, make sure you don't get the end of the cape caught under the wheels of a car when it revs up.) So, I've decided to show the Google Wave team what halloween is all about, first by dressing up like a faceless robot avatar (in honor of the recently resolved issue 335), and second by collaborating with Austin, another displaced American, to create a trick-or-treating extension for Google Wave.


The "Tricky" extension uses all of the Wave APIs together to create an interactive Halloween experience. First, the extension installer gives you an option in your New Wave menu to "Go Trick or Treating". When you click that, it creates a new wave and inserts a gadget (try clicking around that to see what surprises await). Then, whenever a user types 'trick or treat', the robot fetches an image from Google Image Search for either a yummy candy bar, or well, something not that yummy. Now, all of you world-wide developers can go trick or treating together, by visiting this WaveSandbox.com sample wave -- and learn the Wave APIs at the same time, by browsing through the code.

Have fun, and let us know in the forum if you found other wave-y ways to celebrate Halloween.


Google Wave is headed to Europe: Join us!

Tuesday, October 20, 2009 | 6:14 AM

Back in May and June, members of the Google Wave team traveled the world meeting developers in the SF Bay Area, Asia, and South America. Now, we're heading to Europe, and we're eager to meet all the European developers that are hacking on the Google Wave APIs.

There are many upcoming events — with links for registration and more details:

We're looking forward to updating you on all things Google Wave, chatting with you about what you've already built, and hearing what else you'd like to do with Google Wave APIs.

Google Wave at GTUG London: Monday, October 26

Monday, October 19, 2009 | 2:53 AM

I'm happy to announce that the Google Wave team will be presenting at a specially-arranged London GTUG meetup on Monday, October 26. Stephanie Hannon and Lars Rasmussen will give a talk about Google Wave and the APIs that are currently available, and discuss some of what we've learned as a result of the developer preview and where we're headed next. There will also be ample time for Q&A, and you're welcome to submit questions beforehand. We hope to meet a lot of current WaveSandbox.com developers, and inspire others to get started building great extensions. No need to wait for the talk though — you can jump in and check out the docs and the samples.

The event will be held at the Google London office at 6pm on Monday, October 26. We have limited seats, so act fast to request yours. Please sign up here.

We look forward to seeing many of you there! If you're in Europe, but can't make it to London — stay tuned for another post talking about the rest of the European tour.



Google Wave Samples Gallery: Best Practices & New Features

Thursday, October 15, 2009 | 6:11 PM

The Google Wave Samples Gallery has been a great way to see what developers have been creating and find starter code to build on. We added a search box to enable developers to find what they're looking for, but we heard that it still wasn't easy to find examples of code that uses a particular class/method or does one particular task. So, we've added a few new features to the gallery:


Best Practices


Some samples just demonstrate a fun and inspiring use of the API, but others demonstrate a nice use of a particular API feature, like how a robot can set the state of a gadget, or how a gadget can store per-participant keys. We wanted to call out these samples and make them easier to find, so we've added a "best practice" badge, highlighted these samples on the front page, and added a filter. We've also added a form field to the submit page, so that developers can tell us what aspects of the APIs their sample shows off.





Indexed Code Repositories


When a developer submits a sample, they must also submit a URL that points at their source code. Most of the time, this URL is to a public SVN or GIT repository. We've now added these URLs to the custom search engine that powers the search box, so that when you search, you'll also get results from code files. This makes it easier to find usage of particular parts of the API. Search for "GetDocument" as an example.


Code Snippets


When a developer submits a sample, they can specify that they're submitting a "Code Snippet" or a "Working Sample". With a code snippet, instead of providing links to the robot address, gadget XML, or installer XML, they need only to provide useful lines of code. You can use this to share some bit of code that you've written, even if you don't want to share the whole sample. And if at some point you want to change a snippet into a working sample, you can do that. Check out my Send Email from a Robot snippet for an example.


We hope that you will find these new features useful while you're designing your own Wave-y extensions. And, don't forget to subscribe to the recent samples ATOM feed to find out about new samples in the gallery.


What happened in the Wave sandbox

Tuesday, September 29, 2009 | 6:30 AM

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