I’ve given my “Comics” Is Hard talk about five times now, and the feedback consistently fell into one of two buckets:
- Some people wanted to see more of the domain modeling part, either because they still weren’t convinced that comics, etc., are hard to model relationally, or they enjoyed seeing me get riled up.
- Other people wanted to see more of the alternative database part. Generally, these people already knew that some domains were hard to model, or they had other needs that were pushing them towards a NoSQL solution and they wanted more background and examples.
Given that feedback, I finally bit the bullet and split the talk into two, each of which will hopefully please one audience. RubyConf was the first time I’ve given either of these, and I’m thinking that NoSQL: Death to Relational Databases(?) was a success. First, the slides:
I think the slides from this talk are more capable of standing alone than many of my more recent decks, so I won’t go into much detail here. Basically, I spoke about five reasons people are looking at NoSQL solutions now, described four major families (key-value stores, column- and document-oriented databases, and graph databases), showed how those families generally stack up for the aforementioned reasons, and gave a quick example of how to use one or two systems from each family (e.g., Redis, Cassandra, MongoDB, Neo4J), all before wrapping up by describing several scenarios that might demand hybrid solutions. I tried a couple of different things in this talk. I’ve looked at integrating the backchannel before (taking questions over Twitter, etc.), but with the conference wifi in a pretty bad state that wasn’t possible. I’ve also been thinking about ways to keep the backchannel going after the talk itself, which Twitter, IRC, and the like can’t handle. To that end, I’ve set up a Google Wave for the talk - if you’d like to join in the discussion, try this link (if it doesn’t work, you can search on ‘with:public NoSQL Death to Relational Databases’ and it should pop up). I also decided to provide a few explicit next steps for the audience. Much too often, speakers leave their goals – what they want the audience to do as a result of their talk – implicit, expecting the audience to pick it up by osmosis and be instantly motivated to do it. Unfortunately, that never really happens, so I went ahead and stated my goals outright. I got some great face-to-face feedback after the talk, and I was very happy with how it went. SpeakerRate hasn’t been as uniformly positive, however, and I’m afraid that the wifi situation prevented a number of people who attended from rating and/or leaving a comment – at the moment, I’ve only got nine ratings, when the room was mostly full. All in all, though, I’m encouraged by the talk, and I’m looking forward to giving it again (updated, of course) at CodeMash in January.