Google Wave Seminar Report
Google Wave Seminar Report
SUBMITTED ON:
INTRODUCTION
A recent trend in developing innovative eLearning environments is to
combine or create mashups of existing software components,
applications and services. Such an approach increases possibilities for
widening the set of learning scenarios and allows high degree of
personalization. Also, more attention is concentrated on architectures
for supporting personalized learning: through empowering the
functionality of given eLearning environment (integrated approach –
e.g. Elgg) or using individual applications (distributed approach – e.g.
start pages, feed readers, wikis, blogs, etc.) [1], [2], [3], [4]. From
pedagogical point of view eLearning environments are collaborative
and non-collaborative depending upon the way knowledge is created
either through collaborative learning activities or through performing
stand-alone tasks. These environments are controlled, when educator
or institution controls the resources and learning paths and non-
controlled, when learner self-arranges his/her learning environment. In
the blogosphere is started discussion about the difference between
personalized learning and personal learning. Personalized learning is
recognized as controlled and tailored approach where the educator
keeps control over subject area and directs students do the right
learning content, while personal learning is related to self-organized
and life-long learners, e.g. non-controlled approach [5].
Terminology
Wave Gadgets
First: almost any iGoogle or OpenSocial gadget can run within Google
Wave. That means thousands of applications that have been already
created will work in Google Wave. Second: a gadget built within Google
Wave can take advantage of live interaction with multiple users. This
means something like a live online game with active participation from
all users. In that way, it has similarities to Facebook or MySpace
applications, which take advantage of your friend network to make
games, quizzes, and applications more meaningufl and useful.
Wave Robots
Robots are the other type of Google Wave extension. Robots are like
having another person within a Google Wave conversation, except that
they’re automated. They’re a lot like the old IM bots of the past,
although far more robust. Robots can modify information in waves,
interact with users, communicate with others waves, and pull
information from outside sources.
Because it acts like a user, you can define its behavior based on what
happens in the chat. You could build one as simple as “change the word
dog to the word cat” or one as complex as a fully-functional debugger.
We’ll probably start seeming some very advanced robots in the near
future.
Wave Embeds
Wave embeds are a little more complex than embedding a YouTube
video onto your blog, yet in the end, that’s really what Google Wave
Embeds are: a way to take Google Waves onto a third party website.
Embedded Waves support many of the functions of the actual Google
Wave client, including dragging-and-dropping files.
While the Wave Embeds is still very early stage, Google has already
built two: YouTube Playlist Discuss and Multiple Extensions Embed. The
former allows you to discuss a YouTube video via a wave and the latter
allows for interaction with multiple waves on the same page.
The Google Wave Logo Still can’t get enough of Google Wave? While
information is sparse, hopefullythis collection of links will help you
understand this new product even more.
- Mashable’s Google Wave Coverage: We highly suggest bookmarking
our Google Wave coverage and checking Mashable consistently for the
latest information on Google Wave.
WORKING
Wave offers a user interface suggestive of e-mail and chat but with a
different set of features. A user creates a wave, enters content—a
typed message, an attachment, a web-based widget— and adds other
people to that wave. Although waves appear in a user’s “inbox,” waves,
unlike e-mail, are not sent. Users access waves online, where they can
read and edit existing blips, respond to them, or add new content.
Discussion can be real-time or asyn- chronous and is not necessarily
linear, as those taking part can edit, delete, reply, or insert anywhere in
the conversation. A play- back feature lets participants review the
history of all blips and activities that took place in the wave—like a
movie that shows all the revisions and changes. Wave supports drag-
and-drop of media from the desktop or other applications, such as
interactive maps, trip planners, a weather service, or informal polls.
Adding a blog to the contacts list will allow users to publish a wave to
the blog while retaining complete Wave functionality. Inside a wave,
users can respond to specific blips with “wavelets” (subordinate
conversations) that can be open to all participants or “sent” pri- vately
to selected individuals. Developers are being encouraged to produce
applications that work with Wave through automated processes,
known as robots, and add-ons called gadgets. One Google robot, for
example, allows Wave conversations to occur between people using
different languages with text translated in real time.
http://code.google.com/p/wave-protocol/wiki/Installation
The wave server is started separately from the OpenFire server. Before
the wave server can be started, Openfire needs to run.
$ cd /opt/wave-protocol
$ ./run-server.sh
Note that the default installation does not let the run-server.sh process
detach from the terminal. So, the wave server will terminate when the
user who started run-server.sh logs out. For this POC, the run-server.sh
has been modified so that the java process it starts is detached from
the terminal and all logging is sent to console.log file. See the modified
run-server.sh in Appendix B.
Stopping the wave server means looking for the java process belonging
to the wave server (do a "ps -ef |grep fedone-server") and killing the
corresponding process id. Note that stopping the wave server removes
all waves and users from the server. The wave server does not use
permanent storage for these.
Using the wave client console
The client console can be started on this machine (it will only work from
localhost) with the commands:
$ cd /opt/wave-protocol
$ ./run-client-console.sh <username>
Note that if the username does not yet exist, it will be created
automatically.
1) Make sure the wave server is accessible for other wave servers over
the internet. Make sure the XMPP domain and the wave extension of
the XMPP server both have a DNS A record and point to an IP
address on the server. In the setup as described here, we are using
wave.surfnetlabs.nl for the XMPP domain and
wave.wave.surfnetlabs.nl as the DNS name for the wave extension,
both resolve to 192.87.110.93. (note that in a default installation, the
wave extension is called "wave", so this is pre-pended by Openfire to
the XMPP domain name, which in this setup results in wave.wave...).
Design
A Java wave robot was created called “CMIS publisher” by using Eclipse
as the development tool. Robots for Google Wave need to be hosted
and for now, only the Google App Engine is supported. The Google
Wave API Java Tutorial4 was followed for creating and setting up the
Eclipse project. The address of the CMIS Publisher is:
This robot consists of several Java source files and uses the Apache
Chemistry CMIS client library for contacting a CMIS repository.
When the CMIS Publisher robot is added to a wave, the root blip is
modified to show the configuration fields for the robot (see Figure 2).
These fields are pre-filled with default values from a publicly available
Alfresco CMIS repository. A wave participant needs to complete these
values before the content of a blip can be published. The text field
below the “Publish document” button is a field that provides feedback
messages for the participants. When not all configuration fields have
been correctly filled or when something goes wrong with the publishing
process, this is where informative, warning or error messages will be
shown.
The content of the marked blip is stored in the App Engine’s datastore
and constantly updated whenever the blip is submitted by clicking the
“Done” button or by focussing the mouse on another wave element
The CMIS Publisher robot performs extensive logging to the App Engine
logfiles, including the interactions with the CMIS repository. Most of
these
Issues
As for Google Wave, it is clear that the available API’s do not yet cover
all necessary functionality needed for a robot like the CMIS Publisher.
For this robot, the most pressing issue is the inability to get formatted
text from the blip. Publishing a document to a CMIS repository without
formatting is almost useless. The inability to host a robot on a hosting
platform other then Google App Engine limits the tools available to the
developer. But these are all things Google has acknowledged and is in a
way the result of going public with wave in such an early stage
Conclusion
Google Wave is not specifically designed to support teaching and
learning activities, but it has the desired features that can be used to
support personalized and directed learning environments. This paper
demonstrates that Google Wave technology can be successfully used to
assists learning according to student’ needs and learning goals of given
engineering courses. Different learning methods during the semester
are utilized, including collaborative learning in groups, working on
students’ projects via sharing, discussing and revising. The Google
Wave platform is flexible and extensible allowing extensive
personalization and customization as needed to tailor the need of
eLearning environment. Its use was well liked and accepted by the
students. A model for personalized learning is created and it leads to
basic understanding of the main factors impacting the personalized
learning, its social aspects, and to students’ assessment of eLearning
technology - what they like, prefers and utilize in practice that
possesses features for learning facilitation in the context of
personalized learning needs. This exploration is worthwhile despite the
decision of Google team to not continue development of Google Wave
further as a standalone product. They are in the process of
incorporating the technology developed for Google Wave in other
Google projects that can find use in PLE. Also, the technology is
available in the form of open source and can be used for free in
different educational contexts
References
http://code.google.com/p/wave-protocol/wiki/Installation
http://reports.jiscemerge.org.uk/Benefits-Realisation/View-
category.html
http://opensourceschools.org.uk/social-networking-elgg-alton-
convent.html
http://teachweb2.blogspot.com/2010/08/personal-vs-personalized-
learning.html
http://www.jisc.ac.uk/media/documents/publications/
heweb20rptv1.pdf
http://hp.telecomtv.com/mobileworld08/collateral/
Service_Delivery_Platform_Mash- up/SDP.pdf
http://www.marklogic-news.com/images/
MarkLogic_Flatirons_07_Using_DITA.pdf