- August 28th, 2009
- 5:43 pm
Last Tuesday was the day of the first Wave Hackaton in Århus, a small event arranged by Tommy from Miracle where we were going to get some more hands-on experience with Google Wave. I had been asked to talk a little about Gadgets and how GWT is used for the client.
Unfortunately, the GWT client is not open sourced yet, but I hope that will come soon – it will be interesting to see exactly how GWT is used internally at Google.
Wave gadgets, on the other hand, are described on the Google Wave APIs page – at least somewhat. It seems that no matter what you do with Google Wave, you have to be prepared for it not to work as described. Google Wave itself seems somewhat unstable – speed is not always good, there’s often more latency than you’d expect, robots work sometimes and sometimes not. In other words: It’s alpha-state. No surprise there, but it can be pretty frustrating.
At the event, we didn’t really accomplish much. I had created a small gadget beforehand to show off some of the gadget functionality (the gadget shows the participants and a color for each of them which each participant can change. The idea was that participants could express their opinion about the wave. It’s available at http://braindump.dk/wave/profile.xml). We started some work on a new robot, but ran into problems pretty quickly: What are the possible elements and values in capabilities.xml, NullPointerExceptions in the wave API jar file, unexpected behavior, and so on. Debugging is pretty hard, and the development cycle is somewhat long also: Edit code, deploy to AppEngine, wait for it to be ready, open the browser, interact in the right way to trigger the robot, check benavior, see that it does not work, open the AppEngine log files, change level to debug, expand log entries, find the right one, descramble large JSON request and response, see if anything makes sense, when it doesn’t, insert more debug statements, repeat. At some point something might work, but probably not as you had envisioned.
Luckily, I get to go to the Wave Hackaton in Copenhagen also (registration required, no more seats available), so I can bring some of the lessons we learned.
For now, here are some of the main features I look forward to:
- Ability to run robots anywhere, not just on AppEngine
- Ability to initiate requests from a robot. As it is now, a robot can only do something based on a user action in a browser.
- Better debugging
- Better documentation – or at least no misleading documentation
Just a short notice about two events you might want to attend – they’re free, and I’ll be presenting at both of them.
First, there’s the first Google Wave Hackaton in Denmark, arranged by Tommy from Miracle. At this hackaton, we will explore the features in Google Wave and do some experiments. All suggestions are welcome, if you have any, go to the Google Group, and if you want to sign up, send an email to tpe (at) miracleas dot dk. It will be held in Århus on August 25th and in Copenhagen on September 10th, although I might only make it to the one in Århus. Oh, and everybody will receive a Google Wave Sandbox account.
The second event is with the Danish Spring User Group. On September 8th in Århus and September 17th in Copenhagen, I will be talking about the new features in Spring 3.0. Spring 3.0 is available in milestone 3, and contains some nice new stuff, summarized nicely here: http://blog.springsource.com/2009/05/06/spring-framework-30-m3-released/
To attend, join the Spring User Group DK on LinkedIn, where the complete schedule for the event can also be found.
One week in San Francisco is over, and I’m slightly jetlagged. However, it was a nice little trip, and the Google I/O conference was actually pretty good. I’d feared that it would turn out to be a complete fanboy conference, but luckily it wasn’t that bad, and most of the talks I went to were of pretty high quality. I mostly went to the GWT talks about the upcoming features in 2.0, and how to structure large GWT applications.
As most people know by now, the conference wasn’t entirely without hype. First, there was the Google Android phone giveaway, which I must admit was pretty sweet. I’d thought about buying an Andriod-based phone, so getting a free one couldn’t be any better – especially because it came with a 1 month subscription and in unlocked condition. I’m still getting used to the phone, but I like it more than my iPhone – probably mostly because I’m not tied in to the 2nd evil empire.
The second hype-event was the Google Wave presentation. Also some pretty sweet stuff, especially considering that it was all a web application based on GWT. Time will tell if Google Wave will live up to the quite large amount of applause given at the presentation, but it seems like it has the potential to have quite an impact. I’m certainly looking forward to getting access to the sandbox environment, and even more to getting a look at the source code when it becomes available.
The conference was only two days, so there was time for some sightseeing and shopping. Just in case anybody else doesn’t know it: Playstation 3 games for region 1 (USA) can be played on a region 2 device (EU). Oh, and if you rent a convertible, you should probably consider putting on some sunlotion before driving around the entire day with the roof off.
- February 4th, 2008
- 11:23 pm
My favourite choice for mail has long been Thunderbird, but I’ve never really found a calendar application which I was satisfied with. This has changed, thanks to the Lightning extension for Thunderbird. This solution, together with the appropriate provider, integrates Google Calendar with Thunderbird. For some reason, I’ve never really found the web-based solutions usable, but integrated in Thunderbird, it’s much better, and I’m actually using a calendar now – something I haven’t been doing for quite a while.
Of course, this has in no way stopped me from scheduling several meetings at the same time, but now I at least find out about it a little sooner.
As an extra bonus, it’s possible to find public holiday calendars, for example the Danish holidays. Sweet.