In this chapter, we’ll spend some time further familiarizing ourselves with the Google Wave Client, and we’ll discuss the use of more complex extensions. This will be the last chapter that deals directly with the Google Wave Client, because the next chapter moves on to a discussion about the Google Wave APIs.
Tip
As I mentioned in the previous chapter, you can view and
participate in public waves quite easily by searching your inbox for
with:public
(you can also follow or unfollow these waves).
If you’re looking to start a public wave or if you want to convert an
existing wave into a public wave, you can do so by adding either
public@a.gwave.com or easypublic@appspot.com to the wave. This
will allow anyone to find and join your wave.
The ability to include various types of media in blips adds even greater value to our dialogue with other participants on a wave. I won’t get into clichés about pictures and numbers of words, but I am pretty sure you will agree that media, especially images and videos, can enhance the quality and context of a conversation in a wave.
There are various ways of adding media to a wave, and in Chapter 2 I briefly discussed how Google Wave supports media and attachments. The Google Wave Client makes it extremely easy to add media to a wave. And because media is displayed at the blip level, rather than at the general wave level, participants are able to more readily understand the context of the media as it relates to a particular part (or parts) of a conversation.
Let’s try some of the ways in which we can add media to a wave using the Google Wave Client. Create a new wave titled Media Integration Wave, and then start a reply to your initial blip.
First, we’ll add an image using the integrated Google
Search available in the rich-text toolbar. Click the G+ icon to bring
up the Google Search gadget, and select the Images tab. Just for fun,
type O’Reilly Python
into the search box.
You should see various book covers with a mouse displayed in the
search results, and you can add any of these images to a blip simply
by clicking it (see Figure 4-1).
Not bad. We’ve added an image from the Web without much fuss (see Figure 4-2). Notice that the image you added is automatically displayed as a thumbnail. Clicking the thumbnail will open a new Google image search page that references the image you added.
Tip
You can also “preview” an image added to a blip by clicking the plus icon that appears on the top right of the image thumbnail when you hover your mouse pointer over the image. Clicking the plus icon will enlarge the image to fit within the blip. A minus icon can be used to minimize the image back to its thumbnail.
Next, we’ll add some media to a blip via the attachment button in the rich-text editor toolbar. We’ll simply click the attachment icon (a paper clip) and then select a file on a local or network drive. Notice that adding media to a blip is just like adding an attachment to an email, except that once uploaded the image is immediately added to the wave and thus is accessible to all participants. In this instance, clicking the thumbnail will open the full-size image as an overlay on the Google Wave web page (see Figure 4-3).
Figure 4-3. Images added as attachments to a wave are opened as overlays directly on the web page, allowing for easy access to the image without leaving the Google Wave Client.
If you have Gears installed, you can also simply drag and drop media files into a blip from your desktop or any accessible local drive. This is essentially the same as using the attachment button, although obviously it is a bit easier and more visually intuitive. Also note that you can drag and drop multiple images (and files) into a blip at once using this technique, rather than uploading them one at a time as attachments.
Tip
You can view all the uploaded images on a wave as a slide show by selecting “View as slide show” from the Images drop-down menu on the bottom right of the conversation pane. You can also use the same drop-down menu to download all of the images on a wave at once.[23]
You can add a movie to a blip either by using the Google Search gadget (in much the same way as adding an image) or by adding a URL to a blip that refers to a YouTube movie. The Google search results include video from a variety of sources, and when a selection is made from the search results, a hyperlink to the movie is added to the blip.
When you add a hyperlink to YouTube, the Google Wave Client automatically recognizes it as a movie, and a “tip” icon (a lightbulb) displays next to the hyperlink (Figure 4-4). Clicking the tip displays a drop-down menu that allows you to embed the movie (as a gadget).
Figure 4-4. Images added as attachments to a wave are opened as overlays directly on the web page, allowing for easy access to the image without leaving the Google Wave Client.
Go ahead and try it yourself. Find a movie on YouTube you like, and copy/paste its URL to your blip (or you can use the Google Search gadget and find a movie from YouTube). In Figure 4-5, you can see that I added a movie of the spectacular Iguazu Falls on the Brazil-Argentina border.
Figure 4-5. A YouTube movie embedded inline in a blip on my test wave. Other participants have access to the movie directly in the conversation pane.
The ability to quickly add movies like this and have them display inline in a wave is great, but unfortunately this feature is limited to movies available on YouTube (at least for now). However, as with the Google gadget search results, you can always add a hyperlink to a movie’s URL.
Working with attachments in the Google Wave Client is quite easy. Adding attachments to a blip can be accomplished in the same way as adding images. You can drag and drop files, or you can load files locally from your computer.
File attachments are displayed using a small file thumbnail (Figure 4-6). The Google Wave Client aptly titles the attachment with the original filename, but you can rename the attachment with a more user-friendly title by clicking the title text and entering your own title.
Figure 4-6. Attachments added to a wave appear at the blip level. Remember that as a dynamic document, waves serve as a centralized repository for information, including file attachments.
Tip
The Google Wave Client displays a thumbnail of the first page of Adobe PDF files. Thus, it is possible to give a PDF document a quick visual scan prior to electing to download it (Figure 4-7).
Downloading file attachments from a wave is as easy as clicking the file thumbnail in a blip. If the file type is natively supported in your browser (e.g., PDF files in most browsers), then the attachment is opened in a new browser page. Otherwise, you can download the file locally just as with other file downloads from the Web.
Warning
Unless you start a new wavelet via a private reply, any attachments you add to a general conversation in a wave will be available to all participants.
Table 4-1 provides an overview of how different media types are added to a wave.
Table 4-1. Media integration cheat sheet
Type | Added by | Added as |
---|---|---|
Images | Google search gadget; file attachment button; drag and drop from desktop | Google image search results added as thumbnail and linked to image preview page; uploaded images displayed as thumbnail and displayed as image overlays (including slide show). |
Movies | Google search gadget; pasting URL as text | Google video search results and non-YouTube movies added as a hyperlink; YouTube movies can be added inline as a gadget or as a hyperlinked thumbnail (that links to the YouTube page for the movie). |
File attachments, including ASCII and binary files | File attachment button; drag and drop | File attachment; thumbnail of first page displayed for PDF files, other files are displayed with a generic file thumbnail. |
Google Wave recently began to support groups, a special type of contact that makes waves accessible to members of those groups. The basis for these groups is Google Groups, an enhanced mailing list service that allows for various types of content and membership management. In essence Google has leveraged the membership and permission settings available in Google Groups to provide a relatively easy way to manage access and communication with waves among members of a group.
One of the nice things about this approach is that access to waves and the ability to add a group to a wave are based on the access settings of a particular Google group. Thus, if a Google group is set up to be viewable by anyone, then waves for that corresponding group will also be viewable by everyone. And if a Google Group is set up to allow posting of messages by members only, then only those members (participants) will be able to edit a group wave.
You can create a new group for Google Wave by creating a new Google group (you’ll need to give the group a name, add members based on their email addresses, and configure the access settings). Either way, whether you’re creating a new group or adding an existing group, you’ll use the group’s wave address to add the group as a contact. The group’s wave address is based on its name and the googlegroups.com domain so that, for example, the Google Maps API group would be added as google-maps-api@googlegroups.com (see Figure 4-8).
Note that once added, you’ll be able to start a new wave for the group (the same as with other contacts), and you’ll be able to use a “Group waves” button to view all waves with that group (see Figure 4-9). Remember that you’ll need to follow any of the waves you find in order for them to show up by default in your inbox. Alternatively, you can also search your inbox for group:<group name>@googlegroups.com to find waves for a particular group.
Fortunately the Google Wave Client isn’t limited to clicking and dragging with your mouse. Keyboard shortcuts provide a great way to become more efficient with navigation and participation, although it may take a little while for you to memorize the shortcuts.
The following are keyboard shortcuts supported as of the writing of this book.[25]
These are the shortcuts you can use in the inbox pane:
- Ctrl+click (Command+click on Mac)
Opens a wave as another instance in the conversation pane (i.e., the conversation pane can have more than one wave, although only one wave has the focus at a time).
- Space bar
When you select a wave in your inbox, cycles through the blips added to the wave since you last viewed it. Note that blips are selected/highlighted in chronological order.
- Shift+Space bar
Cycles through blips in reverse order (i.e., does the opposite of pressing the space bar by itself).
- Shift+Enter
Creates a new reply to the last blip on the wave currently open in the conversation pane.
These are the shortcuts you can use in the conversation pane:
- Ctrl+R
Creates a reply to the currently selected blip. This is the same function as using the Enter key.
- Ctrl+E
- Ctrl+Enter
Creates an inline reply at the cursor location within the content of a blip.
- Ctrl+Space
Marks all unread blips as read in the currently selected wave.
- Enter
- Home/End Keys
- Shift+Enter
Creates a new blip as a reply to the currently selected blip in a wave. If you are editing a blip, this shortcut will save your blip (the equivalent of clicking the Done button).
- Space bar
Cycles through the blips added to the wave since you last viewed it. Note that blips are selected/highlighted in chronological order. This is the same function as hitting the space bar in the Navigation pane.
- Up/Down arrow keys
Sequentially selects blips moving up or down the list of blips in a wave.
These are the shortcuts you can use for editing and formatting blips:
Tip
Even if keyboard shortcuts aren’t your thing, I still encourage you to try them as a way to further familiarize yourself with the client and its features.
Remember the search bar at the top of the inbox pane? Well, in addition to doing global keyword searches on waves in your inbox, you can use certain operators as prefixes in the search bar to get more refined and precise search results. You may have already noticed this when using saved searches or custom folders. For example, you may have noticed that the search bar contains the text By:Me when you click the By Me folder in the Navigation pane.
You can search by keywords, the status of a wave (e.g., unread), participants, dates, and much more. The following are common search operators used in the inbox search box (keep in mind that you can combine multiple operators and/or expressions).[26]
These are the search operators you can use to find waves with a particular participant or participants:
- from:[address]
Finds waves from the participant identified by the [address].
- from:me
- by:[address]
- to:[address]
Finds waves that encompass a conversation between you and the participant identified by the [address].
- with:[address]
Finds waves that have the participant identified by the given [address] explicitly listed.
- owner:[address]
Finds waves created by the participant identified by the given [address].
- only:[address]
Finds waves to which only the participant specified by the given [address] contributed.
- is:active
- is:note
Finds all waves that have you as the only participant and contributor (i.e., sole participant waves).
These are the search operators you can use to find waves based on dates and date ranges:
Available date terms:
day
week
month
year
[n]days (e.g., 3days); can also be abbreviated as [n]d (e.g., 3d)
[n]weeks (e.g., 3weeks); can also be abbreviated as [n]w (e.g., 3w)
[n]months (e.g., 3months); can also be abbreviated as [n]m (e.g., 3m)
[n]years (e.g., 3years); can also be abbreviated as [n]y (e.g., 3y)
These are the search operators you can use to find waves that contain attachments:
These are the search operators you can use to find waves that contain gadgets:
Expressions can also be used in combination with the search operators listed earlier. Here are some of the common expression searches that can be used:
- term1 and term2 (or term1 & term2)
Finds waves with both terms, regardless of position. You can skip this operator altogether if you want, because it is set as the default type.
- term1 | term2 | term3
Finds waves with at least one of the terms.
- -term1
Finds waves that do not contain the term.
- “term1...term2”
Finds waves that contain the exact phrase between quotes.
- “[term1 term2]”
Finds waves that contain one or more terms in sequential order.
Here are a few sample searches to give you a better idea of how to use the operators and expressions listed earlier:
- by:me has:image
Finds waves in which I have created blips and that contain at least one image.
- “Google Wave: Up and Running”
Finds waves that contain the title of this book.
- “Andres Ferrate” previous:month
Finds waves from the previous month that contain my name.
- in:APIS is:unmuted past:10d
Finds unmuted waves in my APIs folder from the past 10 days.
- Oregon & (California | -Washington)
Finds waves that contain Oregon and that either contain California or do not contain Washington.
Tip
As with keyboard shortcuts, even if you prefer to use point-and-click functionality in the Google Wave Client, I strongly suggest you become more familiar with the search box and the use of operators and expressions. It may take a little bit of time for you to memorize some of the operators and expressions, but they can save you time when you are navigating around an inbox and folders filled with a multitude of waves.
Although the wiki-like editing capabilities of Google Wave represent a valuable feature, there is some debate about whether participants should edit other participants’ blips or their own blips. The underlying issue is whether editing a participant’s blip after the fact is an effective way of contributing to a conversation. Because Google Wave is so new, an accepted protocol or approach to dealing with this issue has not emerged per se.
Currently, it seems that a balance can be struck with regard to establishing a protocol for editing blips. It seems that the best use of the editing feature in the Google Wave Client is for correcting small errors in text, deleting outdated information, and/or adding updated information. However, there is also the question of whether edits or deletions of a blip likely are best left to the original author, with the rationale that participants can reply to the blip in question and ask the author to take action.
There is also a subtle nuance for authors of a blip when it comes to making edits to their own blips. In the same light as making edits to others’ blips, it seems that the editing capabilities are most applicable to small edits, whereas larger edits may best be handled by an author replying to their own blip. The reasoning for this is that a reply to a blip is more explicit and thus more easily discernible.
As your use of Google Wave increases, you will be able to determine your preferred approach for edits, including your comfort level with regard to having others edit your blips or other participants’ blips. Subsequently, this may also depend on whether a wave is being used more as an ephemeral running conversation rather than as a reference document.
In the course of using Google Wave to communicate and collaborate with others, you likely will find yourself in conversations that include dozens, perhaps even hundreds, of participants. Keeping track of all the action in several threads, including who wrote what and what they wrote, can become an overwhelming experience.
Typically large waves have more than a single thread, and as participants add blips, more and more threads emerge. This is a great facet of Google Wave, but it can also limit the effectiveness of a conversation if these numerous threads grow to encompass too broad a conversation.
Warning
The dynamic and open nature of waves is great, but it can easily lead to waves that grow to be unmanageable, especially if numerous unrelated or disjointed threads emerge within the general theme or topic of a wave.
One way that you can manage these types of waves is to create a new wave to continue a conversation from an unrelated or irrelevant thread. Once you start a new wave and add other participants as needed, you can add a link to the new wave on the original wave, and vice versa. This is a good way to keep the valuable information that emerged during the conversation of the parent wave, while at the same time isolating and reducing the amount of unrelated information in a wave.
Tip
You can add a link to another wave by dragging and dropping a wave from the inbox to an editable blip in the conversation pane.
If you are interacting in a wave as more of an observer than an active participant, you can use the playback feature in the conversation pane to get an idea of the latest activity. Rather than using the space bar to cycle through blips, you can play back an entire wave, or you can skip ahead to view some of the recently added (or edited) blips.
[23] As of the writing of this book, Gears is supported by the following browsers: Firefox 1.5+ (Windows XP/Vista and Linux), Safari 3.1.1+ (Mac OS X Tiger/Leopard), and Internet Explorer 6.0+.
[24] Based on “How Do Google Groups Access Settings Interact with Waves?” (http://www.google.com/support/wave/bin/answer.py?answer=168248).
[25] This list of shortcuts may be subject to revision and expansion as the Google Wave team incorporates additional features to the Google Wave Client.
[26] Based on the Search Cheat Sheet wave created by Google Wave Team member Gregory Dalesandre during the developer preview release of Google Wave.
Get Google Wave: Up and Running now with the O’Reilly learning platform.
O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.