KCDC2011–That’s a Wrap!

KCDC2011_Closing_SessionOn Saturday June 25th, 2011 I had the pleasure of speaking at my first Kansas City Developer Conference (KCDC) event.  This is the third year that this event has been held and by all accounts it has grown ever-larger each subsequent year.  This year’s event had over 230+ attendees and seemed a great success (seen here is a photo of the closing ceremonies).

The event was held at a perfectly-suited facility, the Regnier Center building on the Overland Park, KS campus of the  Johnson County Community College.  Every time I attend one of these conference-style events elsewhere in the country, I am continuously impressed with the level of facilities that are available to host such things.  One of the constant challenges we face in organizing the NYC CodeCamp is that space in Manhattan is at such a premium that its very difficult to find space to accommodate large groups.  I’m repeatedly envious of some of the facilities that are available for such events elsewhere in the country, and the JCCC spaces for KCDC were certainly no exception.

The organizers of this event did a stellar job – as both a speaker and an attendee, the event appeared to me to have come off without a hitch.  As an organizer of the NYC CodeCamp, I know that no event goes off without some problems, but what separates the men from the boys in this kind of thing is whether anyone other than the organizers is ever aware of what’s gone wrong and what’s being done to fix it in a mad chaotic scramble.

I never noticed a thing going wrong so that’s my measure of successful event-planning!

Why KCDC?

imageThere are lots of conference-style events in the world, “Why KCDC?”, one might ask.

A few years ago, I had the opportunity to spend some time at the MVP Summit with Lee Brandt, who is one of the organizing team members for KCDC.  At the time, Lee and I were two of a rapidly-dwindling breed: Microsoft Solutions Architect MVPs.

The Solutions Architect category has since been (disappointingly and misguidedly IMO) removed from the MVP program entirely and as existing award terms for Solutions Architect MVPs were expiring back then, existing awardees were being considered for (re)awards in different categories.

This put people like Lee and myself into a bizarre kind of Ten-Little-Indians situation where we were all being ‘picked off’ one by one as our MVP award terms were expiring.  The result of which was that there were precious few remaining Solutions Architect MVPs at that year’s summit so Lee and I were forced to get to know each other Smile.

Lee had a standing invite for me to submit some talks for KCDC and this year the schedules all seemed to align in a way that permitted me to accept his offer to deliver two separate talks at the event.

Telerik Insiders Program to the Rescue!

telerikLogo-web-122x48pxBut with talks accepted for the event, how to fund my travel costs?

I enjoy publicly speaking and sharing what I know with the rest of the world as much as the next guy, but its obviously cheaper for me to get from NYC to Boston or Philly (or even Washington DC) than it is for me to get to Kansas City.  Fortunately, Telerik has a way to help with that problem: the Telerik Insiders program.

About two months ago, I was fortunate enough to have been accepted into the Telerik Insiders program.  Their website does a much better job of describing the program than I can, so here’s an excerpt…

The Telerik Insiders Program is an independent speakers program for the developer community. The group is made up of exceptional, passionate speakers interested in contributing to a bigger cause – educating the community in their free time. These elite speakers travel to user group meetings, code camps and other community driven events alike to deliver sessions on cutting edge technology. Sponsored by Telerik, they are provided with new opportunities to speak on their preferred topics and assistance with travel and logistics.

Sounds like exactly the ticket I’d need to help fund my trip to KCDC – and it was!

Telerik is really to be commended to their efforts in this area of assisting with the travel costs for community speakers such as myself –with their support, I was able to make the trip to KCDC and help represent the public face of Telerik’s support of the .NET developer community.

Without their assistance, I literally would not have been able to make this trip and contribute to this event, so if you want to thank them directly for funding my ability to participate, send Emily Parker a friendly thank-you e-mail (but don’t tell her that Steve sent you Smile).

Domain Driven Design Implementation Patterns in .NET

imageMy first talk was Domain Driven Design Implementation Patterns in .NET.  I’ve delivered this talk several times at user groups in the past but never in the context of an event like KCDC.  The real reason for this is that the talk always takes more than 2+ hours to deliver and so the only real way it could ever work at a conference-style event is as a half-day seminar or at least a pair of back-to-back 1+ hour session slots.

I admit to being somewhat surprised that KCDC accepted this talk and did just that: booked it into two back-to-back one-hour time slots to give me the time needed to deliver the content.  In my experience, very few conference organizers seem willing to gamble on content that takes more than ~1 hour to deliver and the KCDC organizers deserve real kudos for their being willing to do so with this talk.  Hopefully, the success it was met with will encourage them to do so again in the future and perhaps even serve to make other conferences consider doing the same sometimes when the content warrants it.

FWIW, I’m grateful that this talk was assigned the first two slots of the day so that both myself and the attendees had enough energy to make it through the whole thing Smile.

In addition to my surprise that this session was accepted at a conference at all, there were two other things that really surprised me about this session…

The first was that when I asked for a show of hands about the attendees familiarity with DDD concepts, only about 5 attendees raised their hands.  Usually this talk is attended by people with at least a passing familiarity with most of the concepts of DDD.  Fortunately, the talk doesn’t actually assume familiarity with DDD and so it was possible for me to spend a bit more time on some foundational concepts (slides for which I always have at the front of the deck for just such occasions!) before digging into the code.

That first surprise made the second surprise even more curious to me: the 40-seat room was packed into standing-room-only, with people sitting in the aisles and standing in the hall outside the doorways!  Chairs had to be brought in from adjacent classrooms to seat everyone and by the end I think the attendance was closer to 50-60 (though I admit to not making a hard head-count of my own).  The large turn-out seemed very peculiar to me when you intersect that with the first surprise about the attendees’ relatively low level of familiarity with DDD in the first place.

I’m honestly not certain what the attraction was for so many to attend this talk.  Whether it was myself as an out-of-town speaker making people extra curious, attendees’ interest in what a 2+ hour session might be able to offer, or emblematic of an increased interest in the entire area of DDD among .NET conference attendees I honestly cannot say.  But I am intensely curious as to why this session was so unexpectedly popular.  At a minimum, it encourages me to consider submitting it to more conferences with similar attendee demographics.

The good news, both for myself as a speaker and for the attendees that came to the session, seems to be that the talk was very well received (nearly all 5s across the board and few 4.8s thrown in to keep me humble Winking smile).

All kidding aside, I got a lot of extremely positive comments both for the content of the talk and its delivery, making me feel very good about the effort I put into it.  Its grueling to deliver a 2+ hour ‘performance’ like that, but so long as the feedback tells me that attendees got good value for their time, I feel that it was worth the hard work!

Thanks again to those who attended this talk and to those that offered constructive feedback about how to improve it in future deliveries.

If you attended this session at KCDC and have not yet done so, I would really appreciate your rating and providing comments on this talk.

As always, the slides and code samples can be downloaded for reference.

Unit Testing Patterns and Anti-Patterns

imageMy second talk of the day (though with the 2-session talk in the morning it felt like my third!) was Unit Testing Patterns and Anti-Patterns.

I’ve also delivered this talk in several past user groups and events and its usually very well attended and this delivery was no exception.  There were perhaps 50-60 attendees in this session and despite the mid-afternoon time-slot for this talk, it appeared to me that they were alert and engaged and interactive the whole time!

I barely had enough time to get my laptop booted up and connected to the projector before the session started – I was engaged in a complex discussion with some attendees in the central hall area and only barely noticed that my session was about to start!  Note to self: SET AN ALARM ON YOUR PHONE FOR 10 MINS BEFORE YOUR SESSION STARTS NEXT TIME, YOU IDIOT! Smile

Despite that slight hiccup in getting started (sorry, folks – rookie mistake that I admit being a bit embarrassed having made after all the talks I’ve delivered!), we got started just about a minute late and were still able to plow through the material in the time allotted.

Feedback for this talk was also almost uniformly positive, garnering me ratings of 4.5 and above by nearly all attendees.  As with any talk, I’m much less concerned with my ratings for my sake than I am in using them as a measure of whether the attendees got value out of the talk for their time or not and so I consider these ratings a good indication that I probably wasn’t wasting anyone’s time with this content!

Thanks again to those who attended this talk and to those that offered constructive feedback about how to improve it in future deliveries.

If you attended this session at KCDC and have not yet done so, I would appreciate your rating and providing comment on this talk.

As always, the slides and code samples can be downloaded for reference.

Whither KCDC2012? Smile

imageI had a really great time both speaking and attending KCDC2011 and hope to be asked back by the organizers again for next year!  To those of you who extended your hospitality to me during my brief visit I just want to say a bit THANKS – you really made the trip enjoyable for me!

And to those attendees who offered me feedback on my sessions, challenged my assertions in public or private, or otherwise took the time to share your input and experiences with me, I also want to say a big THANKS to you as well – when I attend conferences you will rarely if ever find me spending time in the ‘Speakers Lounge’ because the real value to me in participating in such events is in interacting with the attendees before, during, and after my talk(s).  Those of you that engaged with me helped make the trip worth my while too and for that I’m both thankful and looking forward to the possibility of seeing you at next year’s KCDC if you’ll all welcome me back again!