Google Wave is a project that was born right here in our Google Sydney office, created by the engineers that made Google Maps. It's now in early preview stage, and everyone's wondering what it is and how they can use it to make their world a better place. The answer is different for everyone, but I want to share my ideas about how it can improve our geo world.
Email 2.0? Let's start with the basics. Google Wave is a communication and collaboration tool. It's been called "Email 2.0" or "what email would look like if invented today." If you just look at the main screen after you're logged in, it kinda even looks like a remixed Gmail.
Nested Trees of Blips But that first impression is deceptive - it's much more than that. Google Wave lets you create conversations with your contacts, and create a nested tree of replies in those conversations. Those conversations are called waves, and the messages inside them are called blips.
Playback Private Replies If you decide that you don't like the contents of a blip - no matter who created it- you can edit it yourself. If you want to fork the conversation, then you can create a private reply. At any point, you can play back the conversation and see when people and blips were added. It's revision history made easy, and fun.
Late CCs! Typos! Long Nested Threads! This doesn't seem that revolutionary, but it actually solves many of the problems that email poses. You don't have to worry about making stupid unretractable typos, trying to figure out who is replying to what where, or getting CCed onto a 40-message long thread and trying to interpret the flow of conversation.
So, yes, Google Wave can be thought of as Email 2.0. And just like anyone can set up an SMTP server and send messages across email servers, our goal is for anyone (well, any engineer) to be able to set up a Wave server, and share Waves across servers.
Operational Transforms* Data Model In order to federate Wave, we need to document our protocol and open-source the essential components. There's the operational transforms code, which is what we use to enable real-time collaboration of participants, and there's the data model, which defines the structure of the XML documents that we perform the operational transforms on.
Client/Server And to let people create their own Wave clients, we are open-sourcing the client/server protocol for retrieving and sending Wave operations, and rendering them on the client. Hopefully, we can open-source enough code that people can have a consistent user experience across Wave clients on different servers.
Developer Platform HTTP Plugin Visual REST | RPC Google data APIs Adwords API Geocoding API Google Maps API Google Visualization API Google Charts API Google Web Elements OpenSocial Gadgets Spreadsheets Gadgets Wave Gadgets/Robots But now, my favorite part, and the part most related to geo: the developer platform. At Google, we know the power of making extensible platforms, as we've seen how developers have added value to products like iGoogle and Maps in ways that we could have never imagined. That may be why we now have more than 60 APIs.
Embed API Robots Gadgets Extensions APIs And for the developers… Our Wave developer offerings include an Embed API, which lets you embed an interactive Wave on your own webpage, and an extensions API, which lets you create robot participants and collaborative gadgets that can be added to Waves. So, you can either take the content out of Wave, or you can put your own content into Wave.
Cluster Gadget Shared State A Wave gadget is basically a mini-webpage with a shared state that can be modified and retrieved by all the participants. It lets you extend Wave beyond textual communication onto visual communication... like maps! For example, the super-simple map cluster gadget visualizes the locations of all the participants.
Map Gadget View Edit This map gadget allows for more free-form map creation. When editing, you can add or modify markers and shapes, and set the shared viewport. When viewing, you can read infowindows and pan around the map without anyone seeing what you're doing. Privacy, and the distinction between edit and view, is fundamental to Wave.
Trip Planning The LonelyPlanet trip planner gadget adds the dimension of time. You can create a trip for a given location, and then add places like hotels and restaurants to that trip. You can schedule places for particular days, and everyone on the Wave can comment and rate each place.
Playback Gadgets+Gadgets Gadgets+Blips The cool thing about all these gadgets is that they are just a part of a larger collaborative document in Wave. So you can use map gadgets in conjunction with other gadgets, converse below the map gadgets about what you're making, and watch how the maps were created in playback.
Place Locator Bot A robot is basically an event listener on a Wave, reacting to events like the user typing by doing operations like adding blips, editing text, or inserting gadgets. A hypothetical place locator robot could search for places in a blip, and offer to insert a collaborative map gadget for all of the places it found.
Upcoming Events Historical Events That place locator robot could be even more useful by finding dates and times associated with all of the places. If it found a list of historical events, it could insert a collaborative timeline map. Alternatively, if it found a list of upcoming events, it could offer to add them as entries to your calendar.
Competitive Robots pamela meanmachine Robots can help you out - but they can also compete against you! A robot could insert a place-guessing game, and then try to beat you and your friends. A robot is better than human friends though, because it can be configured to any level of difficulty (like ridiculously easy), or track how well you're doing and adjust accordingly.
Analyst Pub-crawler History Teacher Wave is a powerful platform for a wide range of use cases, from the casual to the serious. The average person can use it when they're planning a pub crawl. The GIS analyst can use it to quickly visualize the places and data in their business conversations. The history teacher can use it to quiz their students on the curriculum.
Disaster Mapping Even more crucial in our recent time of crazy natural disasters, volunteers could use it to map an ongoing emergency, plotting casualties or rescue shelters, and discussing all the pieces of news as they are coming in.
Baby Wave New Wave Now… Future? Wave is still very new, and a baby in the web world, but I think it has great potential for geo. These are just my ideas after a few months playing - now I want to see what all of you come up with.