New Google Wave Robot API v2

Finally there is an update to the Google Wave robot API. In the blog Introducing Robots API v2: The Rise of Active Robots the new features are described.

It is really nice to see that a lot of new features has been delivered. It is a long time since the last release of any updates on the API, so it looked like the development or patching had stopped. But this new release solves many of the problems that have exists. I have written my comments to all to all of the functions.

  • Active API: In v2, robots can now push information into waves (without having to wait to respond to a user action). This replaces the need for our deprecated cron API, as now you can update a wave when the weather changes or the stock price falls below some threshold. You can learn more in the Active API docs.

This features is really useful for enterprise contexts, where it is required that you will be able to update the wave based on external events. With this features you can get a new Wave, when something happens that you need to react to. From the SAP perspective there is Universal Worklist where all events that you have to process are. With this Wave you can achieve some of the same ideas.

  • Context: Robots can now more precisely specify how much information they want to get back from a particular event. If only the contents of the affected blip needs updating and you want to reduce your robot’s bandwidth, then you can specify the new ‘SELF’ context. On the flip side, if you do need all the information in the wavelet, you can specify the new ‘ALL’ context. You can learn more in the Context docs.

With this enhancement it will be much easier for robots to interact with the wave, because they can get a much better control of what the data is need in each instance. This will make the development easier because you got the date that you need and it will specify the data you need.

  • Filtering: In a similar way, with this new API, the robot can specify what events it needs to respond to, conserving valuable bandwidth — and ignore all those that don’t apply. You can learn more in the Filtering Events docs.

With this function you will only get the events that you need in your robots. Simply create a regular expression and then only the entries matching the expression is sent. This is quite useful if you only want events, when a large number of capital letters is written.

  • Error reporting: Robots are now able to register to receive errors about failed operations, such as insertion on non-existent ranges. You can learn more in the Error Reporting docs.

This function will make it possible to make better and more stabile robots. The use requires that you work, how the robot should interact when an error is created.

  • Proxying-For: Robots can now convey to Google Wave that their actions are actually on behalf of a different user, via the proxyingFor field. For robots like the Buggy sample, which connects with the Google Code issue tracker, this means that the wave can be updated with attribution to users on non-wave systems. You can learn more in the Proxying-For docs.

I can see that this function will be really interesting when working with one place to monitor all of your solution. It will also make collaboration with external partners much easier.

With all of this information it looks like the robots have been much more decentralized and acts as regular clients. So in the principle the new features will allow you to create a client to Wave using the robot API and some proxy functionality.

There is still room for improvements in the API. This is the two things that I see that currently are missing.

  • Better form handling and the ability to apply styles to the forms, so they don’t look as 90ish.
  • UPDATE: This is also possible. Integration with Gadgets, so the robots can update the gadgets with new information. With the Active API is this even more interesting. It is now possible to update the statistic gadget when you get a new expression.

Pamela Fox has created a great presentation describing what how the features connect.

Bookmark and Share

Interview: Using Wave in a large company

I was speaking with a large company (LC) about around Google Wave. I talked around different areas of Google Wave and how it could relate to LC usage. The audience was very keen to help with their take on the different concepts presented in the document.

A large pain was that it was difficult to get approved new programs by IT. So it was not likely that they could get Firefox installed easy because it had to be tested on other applications. The same is true for new service. They had to be approved, before it could be implemented in the organization. I think that this will be valid in many organizations. IT doesn’t want to support too many features or services and want to consolidate on fewer services. Consolidation has been a mantra for many IT architects to get a environment, which is easier to understand. So there needs to be a lot of reasons to install a new implementation.

The company is currently using Microsoft Communicator and Sharepoint. It seems only to be really well used in some departments. The usage depends on if they have found it useful and their colleagues also are using it. Collaboration without anyone to collaborate with is not fun. It will probably also be true for how Wave can be implemented, the usage will vary much based on the departments. If you know that nobody in marketing is using Wave, then you don’t want to start a Wave with them because you will never get a response.

It could be difficult for find a single use case, where Wave will have a business case. There might be lots of smaller, but it was not easy to find. It would be easier to get wave implemented if it could help customer service with saving x minutes pr call.

They looked for a unified product for communication. If they had to continue to have Email, Skype, MS communicator, Facebook, Sharepoint and portals along with Google Wave, it will be to take some extra time for organizing. They would then have to check all inboxes at the same time.

We also talk around cloud computing and SaaS. LC is currently using offsite project management system to control their implementations. They feel confident in this tool and that their data are safe. It is a kind of interesting to see they are 100% secure in a product they have used for a long time, even it is run at remote hosting partner probably using a shared service. In general LC is not into SaaS, because of the potential security risks or lack of control.


The Wave modelling tool created by SAP.

LC is a large SAP shop and have implemented SAP for all their businesses. LC have not selected any BPM suite at the moment, but was looking into different options. I showed a short demo of how the Gravity gadget works; they were impressed with the collaboration part. LC is currently using Ids Sheers ARIS for processes modeling, which is a modeling tool with a lot of integrations to SAP.

  • Use of Gravity requires a lot of process knowledge. Currently the business uses cannot define the processes them self. To define the processes business users are meeting with the process architects and trying to agree on a process model.
  • Aris is currently standard for modeling in the company. The problem is that Aris models are used in different ways across the organization. So it is difficult to use a common model. Gravity or an easy collaboration tool could be interesting for having a single place for documenting the model.
  • Gravity and Wave can be a place where process documentation is made. If the correct meta data is create it easier for the users to find the relevant process information.
  • Gravity should be easier for the business users to use, so they have a fair chance of drawing processes. With Aris it is a bit difficult to get started with modeling. It was unclear, if the business could draw the whole process them self or if they needed help. The business was able to make changes to the process already created.
  • There was a focus on creating the process model as a collaborative process. After the model was complete, the model should be handed over the development department. Development should do the implementation of the processes. That way it will be possible for all parties to be involved.
  • It would be nice with two way import/export features, but it did not seem like the most relevant. Especially not since they have not selected a BPM tool.
  • It could assist over telephone or other ways to help the business remote with designing their processes.

I did talk with a medical firm about their needs for sign their processes model. They need to be sure the process was reviewed by somebody to pass the requirements in various medical laws. Currently this is not possible using Gravity, but it could be possible to make some steps and a place to have your processes.

Bookmark and Share

Novell Pulse

At the Enterpise 2.0 conference yesterday Novell announced (wave from presentation) that they would launch Novell Pulse. eWeek has covered the release in Novell Pulse Launches with Google Wave Support for Real-Time Collaboration, with some interesting insights.

Novell engineers was excited about the Federation protocol and had been working on the product for a while. According to the eWeek article they worked on an internal project (Codename cockpit), but found that Google Wave was on the same path as they wanted to go. Google and Novell has been working together on making the protocol work, so Pulse will work with Wave. (Question will there be a Wave client certification?). At first glance Pulse just look like an ordinary group wave solution, but is has the Wavelets/blips and real time editing. It was a really smart move for Novell to use the hybe from Wave instead of creating their own protocol. It will defiantly get more attention that way.


Screen shot from the video. They have not rebranded the product on the video.

Pulse will be avaible in first half of next year as a SaaS solution and then in the second half it should be available to a on premise solution. It will be intersting for companies to have alternatives to using Googles Wave.

Novell has been making groupware for ages, so they know how users interact and groups. When you start pulse for the first time it has all the persons or groups you need to talk with. This is done by using the identify and user administrative systems Novell has. It will be more interesting to have a list of all the people, you are going to start conversations with from the first day you use the tool.

You are able to subscribe to a list of persons groups and get their status. This is much like twitter or the Esme project. If people write their problems then it will be easier for other to interact with them and help solve the problems. Wave has the option of saving searches, but it is not feasble to search for 10 people easy. Google Wave group functionality is currenly not very good, hopefully Google will be inspired by the content of wave.

To see a demo of pulse see this video, that gives a really nice view of how Pulse works.

The video does not show anything on how Robots or Gadget will work. It will be interesting to see if they will work. It can be one of the features which currently have not been developed, but they will also need to at least support the gadgets. If not it will be strange to collaborate from Wave to Pulse, if the gadgets cannot be seen from Pulse. Robots can have a seperate API since they can be developed inside the Enterprise.

Bookmark and Share

Wave News for 15 September

In this week there has been some interesting blogs about Google Wave and Enterprise.

  • The Fedone Book has been created by James Purser. It contains a description on how to install the example wave server and getting started with using it.
  • GoogleWaveBlogger has created a blog about Google Wave + Google Voice = The Holy Grail. He gives ideas on how a mashup of Wave and Voice could be. With this post in mind, it looks like Wave can be mashed up with many different technologies to make new killer apps.
  • A wave forum has also been created, where it is possible to talk about Wave applications and usages.
  • Dagfinn Parnas has created a SAP Blog about how to embed waves in SAP enterprise portals. This gives some really nice examples on the usage of wave in portals.
  • Talking about embedding Waves in pages, I wrote a blog about embedding Wave in wordpress. The story was picked up by Mashable and also on other sites.
  • The last I found was an example on a robot to integrate with Salesforce. The blog by Kyle Roche, is a tutorial which go in details with how to create the robot. I like the API to Salesforce; it looks really easy to get started with compared to using Webservices.
  • A wave hackathon was held in Copenhagen, I blogged about it and it was also written on Version2 a Danish media.
  • DJ Adams has also created an example on how Wave can call a SAP REST service to get data about transports.
  • Process-One made a demo of their Wave server. It should be implemented in Erlang and had realtime updates between users. So users can see each other’s key stroke as they type. The UI is not as impressive as Googles but Process One have probably been working on the protocol. They are using the ejabberd to the XMPP/Wave communication and it looks promising. Their server could be one of the first third-party wave servers created.

If you have any comments or know any post that I have missed, please comment on this post.

Bookmark and Share

Google Wave and HR

Wave is really interesting especially on how it can be used in organizations. One way is in the HR processes. Some parts of HR is ordering a lot of unstructured conversations. They could be hiring processes or performance reviews. The other part of HR is hard facts like name, addressee, organizational position and salary. The hard facts need to be kept in a ERP or HR system because they are needed to create payrolls or reports.

The first part of HR, which deals with a lot of unstructured data, is a prime candidate for using Google Wave space. People involved can collaborate easy with each other and see changes. Also it is possible to have private conversations in the Wave, this allows to participates to discuss the other persons involvement. I could imagine this will be helpful in a hiring process, where applicant is part of one wavelet, while people involved in the hiring also is a part of the other.
Continue reading Google Wave and HR

Bookmark and Share