RailsConf Day 1

What I done saw…

Unsurprisngly, after a brief introduction by David Black, DHH kicked off the conference with a keynote speech. Except that having no copy of Keynote on his laptop, he used TextMate instead. Hardcore! He went on to show off the RESTful ideas in Rails 1.2 (due out Real Soon Now™). I’ve done quite a bit of REST stuff at work, and the rails stuff completely kicks the butt of everything I’ve done. It has simple written all over it. But it’s not just the server! They’ve implemented ActiveResource, which is an ORM for REST based web services. So you get client and server! He also discussed the next project, SimplyHelpful which is aiming to clean up the views a bit. Looks really neat, but not scheduled until Rails 2.0. But it’s a plugin if you want it. Lovely.

P.S. deprecation warnings will appear in 1.2 as well. Pay attention; those things are gone in 2.0.

Afterwards, Kathy Sierra talked about passionate users. I have to admit to finding this one a little bit hard to follow. That’s because I do so little design I guess…

I wanted to see Dann Webb talk about the Unobtrusive JavaScript Plugin. Unfortunately, it “sold out” and I couldn’t get in. Instead, I elected to see Dave Goodlad talking about Rails speaks C. This was actually a really nice talk. A single topic well covered. He talked about how to write C extensions in Ruby, and then covered the use of BackgrounDRb for long running processes. Really useful.

Lunch was served in the conference venue itself, which I found a little odd. On the other hand, it was a great way to mingle with all the other delegates. But you inevitably get drawn to people you know… I quickly found Tom and Simon. Given that between us we are PHP, Python, Perl and JavaScript coders more than Ruby, it gave an interesting slant on the talks!

Post lunch, I listened to Jamis Buck talk about all the shiny new toys in Capistrano 1.2 (the shell is the big one, but parallel execution looks real handy too). He finished his talk early and then asked the question “Who doesn’t know what capistrano is?” I ducked out at that point to go and buy a copy of Building Scalable Web Sites from Josette on the O’Reilly stand. Simon mentioned it had a great chapter on Unicode, so I cribbed a few bits I’d missed for my talk. 🙂

For the next slot, I watched Alex Payne talking about “Securing Rails—a whole stack approach”. He covered a huge amount of ground in a fairly short time. From the obvious things like SQL Injection, XSS, CSRF all the way down to databases and firewalls. He gave out loads of tips, which I still need to sit down and digest. #1: Use h() everywhere!

I was really curious to see Simon talking about Django and what Rails can learn from it. I have to say, Django looks hugely impressive. It’s clear that they’ve taken a very different approach to Rails in many ways yet still come out with something similar. Personally, I loved the way in which Django uses very richly specified domain models in the Python classes in order to build up an “instant” admin interface. Really cute stuff.

I’d talked to Till Vollmer beforehand about his talk on Localization. It turned out we had quite a few slides in common. However, the rest of slides gave a good overview of the seemingly myriad array of plugins available for i18n and L10n for Rails.

After the sessions, there were “Drinks and Canapés” served. The drinks were good, the canapés slightly miserly, so I headed off to a noodle bar with a few guys before the evening session. I’m not sure how great the idea of the evening session is. I was alright because of the food, but some people must have been getting really hungry. 🙂

Anyway, with 6 members of the Rails core team assembled, David Black fired off questions submitted by the audience. There were quite a few insightful ones in there, but I liked:

Q: When should you not use Rails?

DHH: Lots of projects come with an “Enterprise” label and are doomed to fail, regardless of technology. Please don’t let Rails be associated with them. 🙂

Post-Q&A, DHH got to give the last part of his talk from the morning, which he hadn’t given because of time constraints. This was basically an extended rant about Vendoritis. He used the recent security incident as an X-ray to analyze the rails community and found it suffering from Vendoritis (entitlement & indignation). He concluded that we have to help make the community a better place in order to try and solve things. Get involved. Make it personal. It’s everybody’s job to keep the rails community healthy.

However, the funniest bit was his translation of the MIT license: “I don’t owe you shit”. (in response to some of the whingers)

Thanks to my ineptitude at advance planning, I had no hotel room, so I had to head back to the train pretty sharpish after that…


Unicode for Rails

I finally gave my talk this afternoon. I rushed through things in 40 minutes; I was planning on 45, but I started a little late due to microphone difficulties.

The talk seemed to go down well; a few people came up to ask questions afterwards. My official hecklers, Tom and Paul were noticeably silent. They didn’t try to pedant-me-to-death afterwards, which is good. Although it probably means I had too much detail in there for mere mortals!

I’d also like to give a huge bouqet of thanks to the hyper-lovely _why for his fabulously encouraging words along the way.

Anyway, please take a look at the slides for Unicode for Rails if you fancy. One thing I added at the last minute and didn’t get a chance to show on screen was the links slide. In particular, I recommend checking out Julik’s Unicode Slides.

I practised by giving the talk to a collection of fluffy toys that we have around the house. We now have the most well-unicode-educated giraffes in existence, I suspect. 🙂

On a slightly less fun note, I’ve just read Tony Finch’s summary of UTF-8 in email, which is far, far hairier than in HTTP (which has most of the complications built in at least). Worth checking out if you do much email.


RailsConf Europe is Over

I’ve gotten back from RailsConf. I actually got back a few hours ago, but went to bed and couldn’t sleep (idea! ping! awake!). So, I thought I’d start writing up stuff whilst I thought of it…

The conference itself was pretty well organised by SkillsMatter and RubyCentral. There were a couple of minor hiccups which caused confusion—the main one being the rescheduling as some talks got a much stronger interest than expected, meaning that they had to be moved to larger rooms. Thankfully, there were helpful little orange elves to answer questions all over the place, so it wasn’t a big problem.

One slightly unfortunate behaviour was the shape of the venue: three tracks were on the lower ground floor; one was on the 2nd floor. So there was a lot of healthy exercise to get the Rails geeks going up and down stairs (the lift was too slow!) But the venue as a whole was very good. Extremely central —200 yards from Tottenham Court Road tube station.

The wireless was terrible. That seems to be standard for conferences unfortunately. It seemed that the DHCP server was handing out 24 hour leases, and then only 100 of them in the main hall, which was a real pain. At least it meant I concentrated on taking notes!

All the talks were recorded and should be up soon, hopefully! I really want to catch some of the ones that I missed. The best thing I can say about this conference is that I was incredibly torn between the choice tracks. They had a fantastic array of people and ideas.