Last weekend saw me attending DDD Melbourne for the 5th year running and it also was the 5th year that I was attending as a speaker. I feel pretty honered to have been there all 5 years as a speaker, especially since it’s a community-voted event. The team even got me a new laptop bag, although I’m not sure what they are implying with the slogan :P
I want to have a bit of a look back at my time.
In the beginning
The first DDD Melbourne was back in 2010 and at the time I was a reasonably unknown developer working for an agency in Sydney and having only recently moved from Melbourne to Sydney. Also I wasn’t really much of a conference person then either, I’d only been to one in the past. I was following a bunch of Readify developers on twitter at the time and they all started tweeting about DDD Melbourne, submitting talks, etc. So on a Friday after a few beers I decided “sure, I can totally present at a conference”, so I sat down and wrote an abstract, submitted it and waited to see.
Evidently I bribed enough people, err, made an exciting enough a proposal and it got voted in.
Well shit, that meant I actually had to write the talk and get up in front of people to talk. At the time I was a pretty shy guy, and while it seemed like a good idea at the time in the sober light of day the idea of being up in front of people speaking was nerveracking.
But I knew my material (it was an introduction to Umbraco) and people had voted for me to be there so if I could fake confidence well then I’d probably make it.
What really surprised me was just how friendly everyone was. There was a bunch of people I’d only ever chatted to on twitter there. By the time I’d got to presenting I’d basically forgotten I was surrounded by people who were “strangers”, I was there with a bunch of mates who were there to heckle and be heckled (hmm… maybe that’s where my notoriety came from :P).
Making a return
In 2011 I jumped at the chance to submit to DDD Melbourne, this time it was a JavaScript talk that I was doing and looking back I think it was my most risky talk to date. Rather than being a traditional talk where you have slides and stuff this was basically a pure coding session, exploring some fun things you can do with raw JavaScript. I still remember the rush of creating a pub/sub library front scratch in about 5 minutes and having people going “how the hell did you just whip that up?!”.
I also learnt the peril that is live coding. Seriously, live coding for 1 hour is really hard work (for the record, I did have notes on another device, but still I had to at least transcribe everything).
What I learnt about flaky internet
When I came back in 2012 I brought a talk that taught me another valuable lesson about relying on the internet during a talk. This talk was adaptation of a lightning talk I’d given about doing everything in the browser, from coding to debugging, tests, CI and deployment. With a combination of Cloud9, GitHub, Travis-CI and Heroku I had a Node.js application that I was deving, testing and deploying. But with a 3g connection as my only bandwidth and being inside a lecture hall it wasn’t helping my cause.
But through the good natured audience that you get at DDD Melbourne, some good quality heckling and deliberately over the top hipster take on the concept meant that people saw the talk as as how it was meant to be seen, a look at things to come.
It’s kind of funny thinking back to that talk and realising that now it’s not such a bizzar idea in the .NET space through VSO and Azure!
Reverse heckling the keynote speaker
Last year for my 4th talk I was doing a more deep-dive coding talk and back to my roots with a JavaScript talk. This time though it was more of a pre-canned set of examples rather than doing everything on-the-fly.
Except one thing. Last year’s keynote was given by Joe Albahari, the author of LINQPad, and in his talk about parallel processing there was a code snippet he showed on how to generate prime numbers using LINQ. Well part of my talk was on an idea that I’d been playing with, creating LINQ in JavaScript using ES6 generators.
So not to be out done during the keynote I quickly whipped up the same code in JavaScript! As fate would have it Joe was in my talk and I was like “Oh here’s Joe’s keynote snippet in JavaScript”, to which he countered “Can you make it run in parallel?”. Well no, JavaScript is single threaded, but he’d seen through my heckle (although I have worked out a way that involved generating web workers on the fly and such).
The year that was
And this leads up back to 2014 and my 5th talk. It was a bit of a departure from my usual this year, I went down the route of a less technical, more philosophical talk this time, exploring the concept that there are no bad ideas so long as you learn something. I used a few examples of “bad ideas” that I’ve developed recently.
This was a lot of fun a talk to give and present, there’s nothing better than talking about learning and encouraging other people to not be scared to tackle something they’ve always thought would be just a bad idea if they think they can learn something from it.
Conclusion
What a journey it’s been, from a guy who was freaking out about getting up in front of an auidence to someone who can’t wait until next year and is already planning their talk submissions. DDD Melbourne has to be one of my favorite conferences out there. A big thanks to the team behind it for each year they out do the last one. An equally big thanks to the community who keeps having faith to bring me back each year.
Here’s to another 5 years!