Today Google posted the new design principles for developing applications to Wave. This list of principles is to raise the bar for developing applications on to Wave. It requires the developers to think usability in to extensions. The concept is really nice; think about you wave development and create better applications.
The concept wave-y is introduced to help developer on focus tools, which are target collaborative intuitive and real-time components. Developing applications to support these properties can prove to be difficult, because it is a new paradigm for development.
One of the areas the guide touches is about writing commands to robots. The robots should be able to detect when they are needed. This defiantly provide a problem to create robots which listen after the data and works with them. An enterprise robot, which does this, is the robot DJ Adams has created. It listens for indications on a transport name using regular expression. If it finds a match it reacts. But with the right text tools it will be possible to extract some information about the current customer, which is used.
This text analysis will probably requires some better functions for semantic web.
According to the document it should be possible to subscribe to events depending on what is written in the wave. So if the user writes “address” the address robot is added to the wave to process the address.
The extensions (gadgets or robots) should be very intuitive. It should be possible for first time users to use them, without pulling out an instruction manual or now a wiki. It might be difficult to make an easy to use enterprise modeling tool like Aris (if it was a gadget) from IDS sheers, which can be used without a manual or a course.
The document also promotes the use of extension install. I have not used it for any of my robots, but it could prove to be an interesting task to do. It will be much easier to use the robot if it was just a one click in the menu.
The best thing about the document is that extensions have to be fun or be useful.