QCon London : day 5
Friday was a morning keynote-free day and it was straight into the conference sessions. I stuck to the Ajax track throughout the day and it was certainly the right decision. I learnt *so* much about Ajax that I didn't know before and I've finally been truely motiviated to take my knowledge to the next level.
First was Dave Crane's Ajax and design patterns : Do we need a client tier?, which showed how you can use some of JavaScript's dynamic language features to implement some of the common design patterns you typically associate with a client tier. I have to say, JavaScript is much more powerful than I ever thought but it scares the cr*p out of me! Oh my word, some of the things Dave showed were just crazy.
In a change of direction, Bruce Johnson's Google Web Toolkit: What, Why, and How was a nice introduction to GWT. I've heard a lot about this on the Java Posse podcast, but haven't played with it myself. From a Java developer perspective, being able to write cool Ajax apps using Java code is very compelling. Couple this with a neat little standalone environment in which you can *debug* your Ajax application and you have to wonder whether you need to write JavaScript ever again. Of course, the thing that Bruce pointed out was that GWT isn't a widget library - it's a toolkit for building Ajax based webapps in Java. For widgets and graphical effects, you need to look at something else.
And that something else might be Dojo. Eugene Lazutkin presented Modern web applications with Dojo: the cutting edge. Dojo is a JavaScript framework that includes a whole host of utilities for JavaScript development, in addition to a widget library for simplifying the more graphical aspects of your application. Dojo sounds quite impressive but, with a lack of actual demos, I was left wanting to see what Dojo can actually do.
Thankfully, Thomas Fuchs' Prototype and script.aculo.us: Spending the weekends at home again session satisifed my need to actually see some funky effects in action. Prototype and script.aculo.us are two JavaScript frameworks that provide utility functions and widgets respectively. I've heard the names of these frameworks before but have always resisted taking a look. I don't know why, but I think I just expected that they would be incredibly hard to get into for some reason. Having now played with script.aculo.us in conjuction with some DWR integration that I'm doing with Pebble, I wonder why I didn't look at this stuff before. It's very easy to get started and can become quite addictive. There's a really useful guide to some of the effects you can achieve with script.aculo.us here and I recommend taking a look if you're starting out. I think that this was one of my favourite presentations - interesting content and some nice eye candy to really motivate and enthuse people to go and try it out.
A final keynote session wrapped up the QCon London 2007 conference, and this was a panel with Diana Larsen, Jeff Sutherland, Martin Fowler, Dan North and Erik Meijer. I really enjoyed listening to these five people discuss some of the issues they come up against, most of which had an agile slant. Examples include people claiming to do agile but not (something that I've written about before) and teams being more pragmatic about choosing a development process. Also, there was some really interesting discussion about something close to my heart at the moment - whether you can continue with a technical career rather than moving into management. Somebody made a very good point that our industry will lose mentors if the really good technical people move away from what they are good at and that mentors are essential for growing other people's careers. Makes perfect sense to me and I think I'll be blogging about this topic in the near future when I've thought through some other stuff.
So that was QCon London 2007 and I was kind of glad it was over to be honest. It was an excellent event but I was shattered by the end of Friday. That's the end of my day by day coverage (I'm on holiday at the moment, so better late than never!) but I have some general thoughts about the event that I'll post next week. Until then...
Simon is a hands-on software architect who works within