So I’m presenting at the AAF in Sydney June 27th, and Melbourne June 29th. The topic is about dealing with legacy software, peppered with learnings from a couple of client projects. It’s a topic I feel strongly about and an area that we’ve done some great work, so you’d think I’d be excited about being able to share my views in a breakout session at the conference.
Well I’m scared witless. I’m a software tech lead, application architect, very comfortable standing in front of a whiteboard addressing a team of familiar peers. I can be opinionated and loud, sometimes argumentative, most of the time quite comfortable. In front of a large group of strangers I’ll be quivering like a lost little boy. *sigh*
Why would I subject myself to this pain and humiliation? I want to learn how. I want to know that I gave it a go. Wish me luck…
I recently went along to a meeting of the Melbourne Ruby User Group, the first user group type of meeting I’ve been to for years. ThoughtWorks now hosts the meetings and supplies pizza and soft drinks, so I really have no excuse not to attend given my interest in Ruby and Rails. For some reason I didn’t expect to get much out of the experience, but I was wrong. Two chaps, including Mark from RedBubble gave a slick presentation of their experience at RailsConf 2007, which sounded like a blast – I gained a lot of context of the direction of the Rails community and industry from their presentation. After pizza Pete Yandell discussed using RSpec with rails to unit test controllers, and showed an interesting technique he has devised to separate the stub behaviour of faked collaborators from the assertions about stub methods were actually called.
It took me a moment to grok, but it’s a clever thought – with jmock in java the expectation e.g.
.expects("blah") is always in the same place as the outcome of the call e.g.
.will(returnValue(foo). Pete has implemented an RSpec modification that means you can create the stub behaviour of a collaborator first, call the real code under test, then assert after the fact that the calls to the collaborator were made correctly. It does make the test code a lot easier to read, although it still doesn’t quite feel right. Nifty I’ll have to have a think about that.
I guess I didn’t expect such a good technical talk at a user group like this, I hope it’s like this all the time. It was good to hear Steve Hayes piping in from the background with wise words also. I enjoyed going along to the group – I’ll try to go along again next month. Especially as we did go for beers afterwards…
Correction: the two chaps presenting on railsconf were not both from redbubble. Sorry Marcus, thanks Steve.
I’m definitely going. Agile is so 2005.
There’s some gems:
FIT Testing In When You Can; Otherwise Skip It by Ward Cunningham
User Stories and Other Lies Users Tell Us by Mike Cohn
Okay I’m convinced. I still find our current Powerbook G4 a bit painful. But my next notebook will be one of these.
I’m writing this on my wife’s 15″ powerbook. I hate it.
I love it – it’s all shiny and sleek. I hate it – it’s soo slow – I mean how can it really be that slow to run apps, even to scroll through web pages? I love it – the display looks awesome, colors, icons, everything so pretty. I hate it – it’s ridiculously overpriced for what it is. I love it – when it’s in suspend mode the light on the front pulses! I hate it – where’s my right mouse button? I love it – it’s unix… only gorgeous. I hate it – running Eclipse is unbearable. I love it – when you get your password wrong it shakes it’s head…like far out! I hate it – what does the green jelly bean mean again? I love it – how about that user-switching effect?
It goes on from there. Love hurts sometimes.