I'm at the O'Reilly Open Source Convention all week and will be posting impressions and news as I come across it. I've spent the last two days in tutorials on Ruby on Rails, the Apache Web Services toolkit, and Best Practices for Object-Oriented Perl.
I've not programmed anything larger than "hello world" in Ruby, but I did enjoy reading Why's (poignant) guide to ruby with cartoon foxes a few weeks ago, so I felt qualified to go to the Rails tutorial. I needn't have worried. The language never was an issue. Rails was built by David Hansson to help build Basecamp, an online project management system. I was impressed by Rails as something that automates a lot of the framework stuff that developers typically do as part of setting up a Web application. There's other frameworks, and I don't know that Rails is significantly better than they are, but I got a number of good ideas from the presentation. I've got detailed notes on Rails on my blog.
The tutorial on Axis and its support for the WS-* standards was informative, but sometimes uninspiring. Part of that was that I was already familiar with parts of Axis. Some of it was my increasing lack of patience with Java. Some of it was because I'm increasingly wondering whether .Net doesn't just own this whole Web services space. Nevertheless, I was interested to hear about jUDDI, the Apache UDDI registry, and the overall architecture of Axis, which I hadn't understood very well until today. I was hoping to see some cool things to have my students do in my distributed programming class this fall, but that hope was in vain. Again, I've got detailed notes on the Axis tutorial on my blog.
The last tutorial I went to was Damian Conway's presentation on best practices in object-oriented Perl. If you're not a Perl programmer, you wouldn't know that there are lots of ways to do most things and setting up an object is no different. Damain, who's always entertaining, put forth a set of do's and don'ts that he feels make the resulting code more readable, more like what the programmer would expect, more robust, and, often, more efficient. These, and best practices for other parts of Perl all came from Damian's book, Perl Best Practices. Here's some detailed notes from the tutorial on Perl best practices.