QCon 2011 Day 3

! Warning: this post hasn't been updated in over three years and so may contain out of date information.

QCON2011I like conferences. I only discovered them a few years back, but since then I’ve become hooked. A conference offers a combination of many things: a break from the day job; a chance to learn new things; inspiration; a challenge to pre-conceived ideas; and an opportunity to meet new people or meet up with old friends. They offer one other thing too: a chance to discover that whilst I and the company I work for could be better at software production, things could be so much worse too. Sometimes that comes about by listening to horror stories of how other companies and individuals do things. Other times though it’s simply by a conference day being such a let down that getting back to the day job becomes something to look forward to. The third day at QCon turned out to be one of those days for me.

Keynote:Things I Wish I’d Known, Rod Johnson
The day got off to a bad start for me with the keynote. Rod gave a talk how he had set up his company, the business lessons he’d learned along the way etc. I have absolutely no interest in this topic, I didn’t like his presentation style and I didn’t really appreciate it being a keynote topic. I therefore took the opportunity to finish off day 2’s blog write-up and gave it my first “red card” rating of the conference.

High-performance web applications in Haskell, Gregory Collins
Next up was a talk that one might assume would be about high-performance web applications in Haskell. Sadly it was nothing of sort. Instead it was a talk on why Gregory felt Haskell makes a good choice of language for developing a web server. The code examples were all JavaScript and there was a lot of “my language is better than yours” talk on why Haskell was such a good choice, none of which was very convincing.

On the plus side though, it was a reasonably good primer on the theory of web servers and threads versus round-robin architectures. It was still my second “red card” talk of the conference though.

HTML 5 Design/Development Tooling + HTML and Flash, Christophe Coenraets
I approached the third talk of the day with some trepidation. Whilst it was a talk involving Flash at a “proper developer” conference like QCon, it was by an Adobe Technology Evangelist and it mentioned “Design/Development Tooling” in the title. Was this just going to be an Adobe products sales pitch?

Sadly, the answer was yes. We were shown Dreamweaver, BrowserLab, Illustrator, the Edge prototype and were told about Wallaby. There was even a jerky demo of a 3D scene in Molehill that looked less than impressive.

Three talks down and three red cards. This was not shaping up to be a good day.

Yet another Language? What’s the Point of DSLs in today’s polyglot Programming Environment, Michael Hunger
This was a hurriedly arranged talk that Michael had to prepare overnight. As such, it was a rough and ready mind-map affair, and considering how little time he had, Michael did a great job of very thoroughly covering the topic in his mind map.

I hadn’t really appreciated how reliant on Domain Specific Languages (DSLs) we are. I had thought them a specialist topic, but as Michael pointed out, ANT scripts for example are a DSL. Anywhere where you use a restricted language that targets a specific task, then you are using a DSL.

This would have been a great talk were it not for one thing: Michael is not a great public speaker. He delivered the full hour in a monotone mumble and so it was very difficult to follow what he was saying. I resorted to making notes from his mindmap of topics I should read up on later.

At least it wasn’t a red card talk though and so the day finally picked up.

Using a Graph Database to power the Web Of Things, Rick Bullotta & Emil Eifrem
This was my last talk of the conference and it was another mixed bag. On the one hand, it came across as another product sales pitch, this time of ThingWorx. On the other hand, it was a good description of graph databases and the Neo4j implementation of that technology.

Graph databases sit in the “Not only SQL” (NoSQL) domain as, despite being heavily relationship-based, they are not relational databases in the traditional sense. There are no tables, just nodes that can be decorated with arbitrary properties and relationships (which also can contain properties) between those nodes. If you draw a relationship model on a whiteboard, you can directly replicate that model inside a graph database. It also solves what was beautifully described as “the sweet spot of suck” for SQL databases, namely resolving multiple self-joins on the same table. Finding parent/ child, friend-of-friend etc relationships are its definite strong point.

Maybe it’s because I cut my programmer’s teeth on Prolog whilst at college (there is a real Prolog feel to graph databases), but they just seem to work for me: they are simple to understand, intuitive and mapping reality on the database seems simple. This is definitely a technology I’ll be investigating further.

Conclusion
And so QCon London 2011 drew to a close for me. The last day had proved disappointing, but the first two days were brilliant and more than made up for that disappointment. All in all, this was a great conference: I’d learned a lot of new things, had finally got the point of software craftsmanship and had gained a list of new blogs to follow from some of the more inspirational speakers. So thank you to the organisers and hopefully I’ll be back next year.

One thought on “QCon 2011 Day 3

  1. I didn’t notice that you were going to QCon. I was there too 🙂 Very much agree on the “HTML 5 Design/Development Tooling + HTML and Flash” session/sales pitch – very disappointing.

    When the videos come out, “Secure Distributed Programming on EcmaScript 5 + HTML5 platforms” from Mark S. Miller is worth a watch. Interesting stuff about the security future of JavaScript (or security present – I think EcmaScript 5 is implemented in FireFox 4 and Chrome already).

Comments are closed.