SCNA 2011 Part 0: Introduction

Also posted at

Last week I had the opportunity to attend the Software Craftsmanship North America 2011 conference in Chicago, IL. I had a blast and I want to make a series of blog posts about my experiences. Since my attendance was very graciously sponsored by Stack Exchange, I will also try to link stuff I learned at the conference back to my “main” site – Programmers Stack Exchange.

I’ve been to two conferences so far: RallyON back in May and TechDays 2011 last month. I enjoyed RallyON, but I was largely in the company of project managers. TechDays was ostensibly of interest to developers, and I enjoyed some of the talks presented there, but the atmosphere was largely that of a sales conference and that made it difficult to connect with anybody. SCNA is the exact opposite from those experiences. It is a conference full of developers who actively want to be there. It’s amazing how much difference that makes.

The conference runs for two days and both days are pretty full of stuff to do. You’re on your own in the evenings, but I haven’t found that to be a problem — talking to a few people during the day more or less guarantees having company for dinner.

This year there were two tracks of talks with an unfortunate overlap between speakers. It wasn’t a problem for me for the most part, but I did have to leave a couple talks before they finished in order to get to the next one on time. There was also an “open space” room set up for hanging out, hacking on random things, and ad hoc pairing.

Despite the name, it wasn’t a traditional open space, well, space. Typically you’d see a board and some sticky notes for people to propose their own mini-sessions. This time, there were a few smaller groups getting together, but I found it difficult to figure out if there was anything special going on at a given time.

Many of the talks weren’t announced ahead of time, which made choosing ones to attend a bit odd. Still, a little mystery never hurt anyone, and I attended the following sessions:

  • The opening keynote by Corey Haines in which he talked about developers: where we came from, where we’re going, and whether or not we are about to repeat some of the mistakes of the past.
  • A demonstration of functional programming style by Michael Feathers.
  • An interesting look at the evolution of programming languages by Gary Bernhardt.
  • The apprenticeship panel that gathered several prominent developers and company owners to talk about why they take on apprentices and what they’re looking for when they do.
  • “Architecture: The Lost Years” by Robert “Uncle Bob” Martin.
  • A demonstration of the Roman Numerals kata in Ruby by Jim Weirich.
  • A discussion of parallels between learning and practicing a musical instrument vs practicing programming by David Chelimsky.
  • A critical look at software development education and propagation of popular methodologies by Zed Shaw.
  • The closing keynote by Chad Fowler in which he talked about the values held by passionate developers.

I’m going to aim to make a post every week or so to summarize and, where possible, interpret each of those talks along with some other stuff that I learned about at the conference that I think is pretty cool (Ruby Warrior!).

So, check back here periodically. I’ll do my best to update this post with links to future posts, but they shouldn’t be hard to find either way.

Leave a comment


  1. I love your wp layout, where did you get a hold of it?


Leave a Reply

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s

%d bloggers like this: