My first 2 months with Google Wave

I got a comment from Jim Spath, about lessons learned from an early adopter. I feel this is something that I would like to share. I have now used Wave for two months and am getting use to Wave.

At first it was just creating some test waves with other users on the wave. Just to test wave. To many people used the same waves and the system were getting a little unstable. With the release of some service packs it is now much better.

All test users got two accounts a normal and then –test account. So it is possible to test the collaboration with another user if you don’t know anybody in the sandbox. Gave an interesting place to start with development and made it possible to work on projects without disturbing others. It just required to different browsers, but that was easily fixed.

The first couple of times I was using Google Wave, I got some crashes like showed on the screenshot below. Lately it has not been very often. The platform is much more stable and faster now, than when I first started. After I upgraded to Chrome, the browser crashes sometime when the Wave is fully loaded.

When I open the window it takes sometime before the client is fully loaded. It takes around 10 seconds to load the client on Chrome, which is a little irritating. But you can start seeing you inbox while the rest is loading.

I have lately been using Google Wave to some productive tasks. I have used it to write blog posts, that I would like to have multiply editing on. I have also been on the SAP Wave discussion, which shows how collaboration can work. I have not talked with the people on the wave, but we are able to have some interesting discussions. Some of them has been asynchronously.

The documents get really messy if there is a not of comments and nested comments. Currently it is not possible to fold the comments together, but I hope it will be possible. Alternative is to delete the comments and merge the result of the comments into the main documents or threats. It could probably be compared to a governance process.

From the development perspective, things have worked out quite easy. The Java APIs have not changed much in the period. When we did a Wavehackaton in Denmark, the delay between changes in a wave and execution on Appengine took until 10 minutes. Appengine was running really smooth, so it must have been something on the bridge between Appengine and Wave which gave problems. This delay gave some confusion when developing application, is my Robot not working or is it Appengine which is not working.

I always get my mail inbox down to zero mails, with the use of archiving. There was coming a lot of Waves into the inbox, most of them was from some random person sending waves to the public group. Mostly something you did not want to see, hence people have started complaining about spam. I have also created a lot of Waves, when I was testing robots. With the instability in the Wave/Appengine path you where not sure if you robot was working or not, so I had to do some more tests. I often forgot to archive those waves so they are still in my inbox. I would like to be able to mark many Waves and then archive them, so I don’t need to see them all.

I’m not fully comfortable with the usability, yet. It takes some time to get use to all the short cuts and the search options. The Danish keyboard users ALT GR to create @ or { signs, it does not work for me because of some reason. You can only see one wave at the time, but switching between them is easy.

I’m looking forward to the next 2 months of Waveing, where we hopefully will see some larger implementations.

Bookmark and Share

Simple Form Gadget

Creating my first form gadget, I call it “form gadget” because the main idea of creating this post is to simply show the possibility of using gadgets for form transactions inside wave. Form transactions, meaning having a form created in gadget residing inside a wave but sending the data gathered to a robot or a robot can simply manipulate the data once the form is submitted.

NOTE: In this post I will not discuss on how to create a form gadget. However, I will discuss parts of the code and hopefully feature some other ideas on it.

When I first started creating this gadget I thought it would be easy for me to finish. Unfortunately there were a lot of challenges. I think one of the most challenging part, is having an idea on what gadget to build. Until, I came up with an idea of creating a simple address book gadget. I choose address book because it is simpler and much easy to create. It also shows the idea of a form being submitted. I believe there are a lot of potentials using gadgets inside wave, like this one that I have created. It shows the potential of having a transaction from one servlet residing in remote server or other scripting language that resides in a remote server.

Continue reading Simple Form Gadget

Bookmark and Share

Blip debug robot

In the last post I created a screencast of how a debug session, which showed which annotations is created.

Now I have posted the robot so it is possible for others to start using the robot. This will allow all users to investigate how the annotations work. I hope it will help you to gain some more knowledge on how annotations work.

Simply add the robot with the name to you wave, and start modify your application. Just be careful and not add the robot to any large waves. This robot is quite disturbing and should only be used for testing purposes.

The Java code to the robot is in the repository.

The robot is now approved in the sample gallery.

Bookmark and Share

Wave hackathon in Copenhagen

Today a wave hackathon was held in Copenhagen. Tommy Pedersen from Miraclegeekhouse started with the ide and got everything organized. National IT and Telecom Agency (IT- og Telestyrelsen) hosted the event in their nice meeting rooms.

The group ready to start Waving

The day started with an introduction with Tommy, about Google Wave and how to build robots. So everyone got up to speed on what wave was.

Joakim showing how to make gadgets

Then Joakim Recht from Trifork gave an introduction to the gadget api and how to use the shared state in gadgets. It was a good introduction, which made me wanting to code a gadget.

We had a brainstorm before the meeting in a wave. See the embedded wave for more information (sorry none wavers, I felt like this was the time to use the embed plugin).

We had some hectic hours programming on wave in small groups on the subject of our choise.

For the presentation we had some problems namely that the link between the Wavesandbox and Appengine was very slow. We had therefore response time of up to 5 minutes, before robots could interact. The robot demos were therefore pretty lame.

Bjarke Walling and Allan Ebdrup had made a gadget to make freehand drawings in. It was possible to collaborate on drawing in the wave, and both participants could see the drawing. He had some problems with the mouse down and up events, which was a little slow. Also the drawing created a lot of events, so the playback was long.

Bjarke presenting his drawing gadget

I was together with Bo Stendal Sørensen and worked on a robot to record each participant’s contribution to the wave. It mostly ended out in a research project for how to annotations works. It was a pain, but I hope to be able to create a write up about it soon. It might solve some hair lose.

It was a great day, and we all learned a lot from the event. Big applause to the team around the event.

[wave id=”!w+Qx64lCXy%F” bgcolor=”#ffffff”]

Bookmark and Share

WordPress plugin to embed waves

Yesterday I wrote about Wavr plugin to WordPress. This blog was liked to from a number of posts. Offlineblog has a log description on how the plugin functions. Mashable wrote about the applications of the plugin and embedding waves in different media. The last 3 links was exact copies of the Mashable article.

I must admit, I did not do a very good job in research. There is also the plugin wp-wave-shortcodes which does the same. I’m not able to try the plugin on since, they both uses the same codes.

I doubt there is a large difference in the two plugins work at the moment. It is very limited what the Embed API supports at the moment. What will be interesting will be to see how the two plugins will develop with the next release of the Embed API.

I’m sure that I get back to the subject on the WordPress plugins later, where more functions are published. I’m looking forward to include the Waves as comment section or making it work on other ways.

Bookmark and Share