MasteringWave selected as developer spotlight on TheShinyWave

For the month of February I was selected to the developer spotlight on theshinywave.com. It is a great honor that David Cook has selected med to perform his feature about. I was quite thrilled when, I got a mail with the piggy back on my blog. The thrill did not get any less when I found the blog.

I really appreciate that David finds my applications useful and they latest gadgets are the best.

If you want to try out our newest flash gadgets, all you need to do is to sign up to our newsletter on the right.

Bookmark and Share

How the opensocial Gadget request works on Wave

Yesterday we had a problem with development of a gadget.

From the gadget we wanted to query a backend server running Ruby On rails. We used Json in the request, which is fairly easy to implement in Ruby and Javascript. The scenario looked like the following.

requestGadget1

We used the code which looked like the following example, which exist on the page Working with Remote Gadgets.

 function makeJSONRequest() {
      var params = {};
      params[gadgets.io.RequestParameters.CONTENT_TYPE] = gadgets.io.ContentType.JSON;
      // This URL returns a JSON-encoded string that represents a JavaScript object
      var url = "http://gadget-doc-examples.googlecode.com/svn/trunk/opensocial-gadgets/json-data.txt";
      gadgets.io.makeRequest(url, response, params);
    };

We had also added some of the authentication types, because we thought a problem was the authentication. Somehow the request did not get the correct response back. So we had to lookinto how the gadget workes.

My thought was the gadget just called the webserver directly. We did intercept the Gadget calls using the Live HTTP Client for Firefox. When we used it there was a call to wave-0-opensocial.googleusercontent.com. The gadgets are also hosted on this site and there are other numbers where the content is hosted.

The request looked like the following instead.

requestGadget2

So all requests to the remote server is done via the googleusercontent, which gives some advantages.

  • Using the opensocial authentication you do not need the users to login to your applications. Authentication can be done by trusting Oauth or the opensocial content (I have not research it fully yet).
  • Building an Appstore will be much easier. When you look at the code there are links to where the gadgets exists. So you could just copy the link to the XML code and then start using it. When all the gadgets have to be displayed from the googleusercontent.com servers, Google has the option of allowing certain url only to be exposed to the individuals how has paid for the service.
  • All data is cached the googleusercontent.com servers, meaning that you will get fewer requests and less load on your sever.  You can bypass the caching by following this guide.

So we learned a great deal about the architecture on this problem. Our next challange is to figure out how we can leverage the Opensocial authentication to authenticate the users on our Ruby on Rails application. If you have any pointers please let us know.

Bookmark and Share

Wave News for 7 september 2009

For this week there has been some interesting Wave blogs.

  • SAP Research in Brisbane had created a screen cast of their first Gadget. A gadget where people could collaborate on creating a process model. After the collaboration was done it was possible to export the process model and implement the model in SAP BPM. The screen cast show how complex gadgets can be and how they can assist with the collaboration. Also see Richards Hircsh response, which contains some insight full comments about the status.
  • LinkedProcess trying to make a more general protocol for Wave. The blog Social Computing or Let the bots talk! Gives a great overview of the technology, which allows the user to submit scripts to be executed on other hosts via XMPP.
  • CodeBot – A Coding Robot for Google Wave contains a demo on how to syntax highlight code in the wave.
  • Eye on FDA: Google Wave, Part 2 Examples on how Wave can be used in the pharmacy industry to help in some of the processes they have. It is always nice to get some concrete examples on how Wave can be used to help organizations.
  • App Engine SDK 1.2.5 released which is not Wave, but has some very interesting perspectives for Wave. It supports XMPP, which could mean that it is possible create wave clients/servers on Appengine.
  • I found the youtube video embedded below on, it is rather old now. It contains some interesting facts. 50 enginers in Google working on Wave. Make sure the protocol is open. Takes 2½ half year with the first wave application, but they hope that other groups will implement servers faster. Google compliments Twitter, and are working on ways to integrate twitter closer with wave.
  • Björn Wibben has created a blog about using jQuery in gadgets it looks quite interesting.
  • 7 Reasons Why Google Wave Is Going To Be Awesome
    has some interesting summerization of the features of Wave.

Bookmark and Share

Coming changes to Google Wave API

Tommy Pedersen shared the link to what is coming in the API.

It looks like the developer preview will stop on September 30th, and then we must hope we can get an account on the production system. So we will not float without wave access for a long time.

What is interesting is that Douwe Osinga from Google is sharing, what they believe they can achieve before the end of the developer preview.

The things I think is the most exciting news are the following:

  • The Robots can use other addresses that name@appspot.com. That could mean you could have more robots on the same application making the robots tailored to the user. Also we will see that robots will exist on our own servers and not app-engine.
  • A better integration between robots in to Wave, so they robot can perform tasks even the wave is not active by a user.
  • Gadgets better support for using Google Web Toolkit, will make it easier for everyone (how is not a Javascript master) to make Gadgets. This is probably lower the barrier to create Gadgets.
  • OpenSocial integration for both robots and gadgets. That is something that I’ll need to look more into.
  • Insert simple HTML into the waves. This is not possible now, so the robots can make some better looking content easy. Then we need to consider using CSS on the document.
  • Open source the robot API it does not matter much now, but for the adoption that will probably make things easier.

I’m impressed with the plan Google has created for the development of the Google Wave API. I hope they have made some of the improvements already otherwise they will have a hard time implementing them all.

Bookmark and Share