NYC CodeCamp Winter 2010: That’s a Wrap!

>Whew!<  After a pretty crazy January and February of preparation leading up to the event, I’m really pleased to announce that the 4th Annual NYC CodeCamp is officially OVER (Thank God!).  This past Saturday March 6th, 2010 we held the actual event and I have to say that based on just about every metric I can use as a measure, the event was a great success!

Some Numbers

By way of just some idea of the size of this event, here are some numbers from a variety of categories:

  • 400 Registered Attendees
  • 175+ Wait-listed Attendees
  • 300+ Attendees actually showed up 🙂
  • 85+ speaker submissions
  • 40 sessions accepted
  • 37 Speakers
  • 8 concurrent 75-minute sessions during ea. session slot
  • 85 Pizzas
  • 240 Bottles of Water
  • 144 Donuts
  • 144 Bagels
  • 200 cups of coffee
  • 3 XBoxes
  • 2 ZuneHDs
  • 1 Partridge in a Pear Tree

I’m of course kidding about that last one – though things were a little chaotic throughout the day, so who can be sure?

“Well, Gentlemen, looks like we just had our glitch for this mission.” – Jim Lovell, Apollo 13 Mission Commander

About the only near-catastrophe happened right after the Opening Session and, if not resolved quickly, threatened to throw the whole event into complete chaos.  Right after the Opening Session where we kicked-off the event, addressed some logistics, and were addressed by the event’s two Platinum Sponsors we needed to extend the mechanized movable partitions that can be used to divide the larger space into several smaller rooms for the subsequent CodeCamp sessions.

Of all the things that I considered in advance and had a contingency in mind for, having the mechanized walls move only about 2/3 of the distance needed and then grind to a complete halt without properly subdividing the larger room wasn’t anywhere on my radar screen!  Sure enough, that’s what happened: the walls stopped moving about five to eight feet shy of where they needed to be to finish subdividing the larger room into four smaller quarter-sized rooms.  If we couldn’t get them to move, there was no way we could hold four simultaneous sessions in these rooms without them being properly acoustically isolated.  Everyone in each of the four rooms would be able to hear everything happening in each of the other rooms at the same time!

Here’s a riddle for you:

“How many software engineers does it take to extend a movable wall system at 9:00am on a Saturday morning?”

Answer:

Apparently about 300, based on my empirical evidence!

Fortunately we were able to puzzle out that the sets of walls had to be extended in a very specific sequence or else each of their safety-sensors would be blocked in turn by the other of the moveable walls!  After a bit of a panic, we realized our error, reversed the walls, and then re-extended them in the proper sequence in short order.

Despite this near-disaster to start the day, the first CodeCamp sessions in those four newly-subdivided rooms started only about 2-3 minutes late (>whew!<)

Other Challenges Throughout the Day

There were some other surprises throughout the day, but they were pretty minor compared to The Great Movable Wall Disaster of CodeCamp 2010

  • One of our speakers for the first session at 9:15am was unable to attend at the last minute and we had to scramble quickly to find a replacement.  Fortunately Steve Andrews was in attendance and able to whip out an “Intro to TFS 2010” talk he had on-hand.  It was hardly a like-for-like swap with the now-missing talk on Iron Python 🙂 but we were glad to have him step up and fill the void so capably with very little notice.
  • Getting 300+ people past building security in 30 minutes was an interesting challenge and did lead to some bottlenecks.  Fortunately, we CodeCamp organizers were lucky to have several volunteers who really stepped up and took on the challenge of efficiently processing the mass of attendees in what I think was about the most expeditious manner possible – thanks, guys, you really helped out in a pinch there!
  • Another of our speakers, who unfortunately was assigned TWO talks on Azure, was called away out of town on urgent business just Friday afternoon before the Saturday CodeCamp and in his hurry to scramble to get packed and fly out on such short notice he failed to remember to call us to tell us!  Imagine this cell phone conversation, an hour before his first session:

Us: “We notice you haven’t checked in at the speakers’ table yet and your session starts in an hour…”

Him: “Uh…I’m in Texas right now…”

It all worked out in the end and we were able to give the slots to a couple of other stand-by speakers that just hadn’t quite managed to fit into the overall schedule otherwise (since we had nearly 90 submissions for barely 40 spots) but it made for some quick last-minute session-juggling, to be sure!

Event Photos

UPDATE: When I originally wrote this post, I was aware that the photos had been taken by Lorri Freedman, wife of fellow CodeCamp organizer Mark Freedman, but I was unaware that Lorri was a professional photographer (though the high quality of the photos should have been a tip-off for me!)

I’ve since been advised that Lorri has an online presence of her own and more of her work can be found here.  She’s got some really great photos there — as an ex-architect I particularly enjoyed the cityscapes from around NYC, but there’s lots more there too!  Lorri also has her own blog where she offers all kinds of useful tips + tricks on photography as well as post-processing with Photoshop and more!  Check it out!

There were plenty of photos captured of the event too – following are a few choice ones that caught my eye when rifling through them afterwards…

Here is a shot of our ‘Dynamically-Adjustable Schedule Wall’.  Despite the apparent inelegance of the blue Painters’ Tape, this flexible approach permitted us to easily relocate sessions dynamically to larger or smaller rooms later in the day as we observed attendance ebb and flow in same/similar-focused talks.  We were also able to quickly substitute talks for ones that had to be canceled for one or another reason.

IMG_0016

Here you see the schedule wall in action during one of the 15-minute breaks between sessions (my apologies to the gentleman in the foreground of the first image for having been embarrassingly caught yawning so obviously – that’s what happens when you get 300+ developers up to start an event at 8am on a Saturday!  I was skeptical that 300+ people would be able to wander past this thing during the 15-minute breaks without overcrowding, but I was pleasantly proven completely wrong and I have to say that the idea worked out really well in practice.

IMG_0034 IMG_0037

On the wall opposite the schedule wall, we posted the Speaker Bios and Detailed Session Abstracts for each session so that attendees could inspect them in some detail beyond just the titles listed on the schedule wall itself.  This seemed to work out pretty well too even though I was also skeptical that this wouldn’t become a bottleneck between sessions.

IMG_0051

Some sessions were held in classroom-style rooms where we removed the worktables to make more room for attendee seating.  Here, Dane Morgridge prepares to deliver his session on Entity Framework.

IMG_0052

Other sessions were held in the Multi-Purpose Rooms (once the trouble with the movable walls was resolved and the larger room was successfully-divided into quarters).  Here Andrew Brust is getting ready to deliver a talk on PowerPivot in one of the Multi-Purpose Rooms.

IMG_0060

Personally, I have more fun in the Speaker’s Lounge of CodeCamps and this one was no exception.  Here we see many of our speakers putting the finishing touches on their presentations (including me on the right) while all kinds of interesting conversations go on around them.  From left to right are: Mark Freedman (CodeCamp co-organizer), Surpriyo “SB” Chatterjee, Edwin Ames (who also graciously stepped up and filled a spot filled by an unexpected cancelation), John Feminlla (in the blue shirt, nearly obscured), Jason Farrell (standing in front of the projector screen), John Baird (back to the camera), Carl Franklin (behind John Baird), JP Toto, and myself.

IMG_0063

Here’s another shot of the conversation in the Speakers’ Lounge showing (left to right): Ben Dewey – another of our NYC ALT.NET Organizers, myself (foreground), Supriyo “SB” Chatterjee (standing), John Baird, and Carl Franklin of DotNetRocks fame.  Far from discussing anything Earth-shattering, IIRC Carl was demonstrating his webcam that could be remotely controlled to focus on a fish tank and track the fish’s motion over the Internet 🙂

IMG_0080

Conversations happen outside the speakers’ lounge too.  In this photo, Todd Snyder of Infragistics and Jess Chadwick –another of our speakers at the event– converse with several attendees who stopped by the Infragistics sponsor table to investigate their products.

IMG_0068

There were other sponsors who sent staff to the event as well.  This year the CodeCamp was pleased to welcome Lab49 as one of our Platinum Sponsors.  Here a passerby stops during the break between sessions to get more information about the company and its services.

IMG_0046

With Microsoft’s recent remodeling of their office spaces in midtown Manhattan, they added a larger number of informal seating spaces – all of which also make great places for impromptu conversations.  Here Milan Negovan, Don Demsak, and others are relaxing in between sessions in one of the lounge seating areas.

IMG_0058

It wouldn’t be a CodeCamp without plenty of pizza!  The logistics of trying to feed 300+ people with 85+ pizzas in under and hour are…interesting!  Here we see how we co-opted the Microsoft office’s renovated sushi and wine bar into becoming a makeshift pizza servery for the lunch hour.  Despite my fears about how difficult it would be to pull this part of the event off, I was pleasantly surprised at how well lunch seemed to have gone over.

IMG_0010

Sitting space for 300+ to eat pizza all at once was another matter, however!  Here one of the many smaller conference rooms not being used to deliver sessions is pressed into service as a lunchroom.  On the far left is CodeCamp co-organizer Mark Freedman taking a much-deserved rest for a moment in the middle of the day.

IMG_0013

Here we are at the Closing Session.  That’s NYC Region Microsoft Developer Evangelist Peter Laudati in the orange shirt on the far right addressing the room and thanking the speakers (assembled in front of the crowd on the left) for their contributions to the event.  If you squint hard, you can see me standing behind the podium obscured by Andrew Brust 🙂

IMG_0113

After thanking the speakers at the Closing Session, the next (and final) task of the day loomed: distributing loads of donated SWAG in an efficient manner.  Here we see our attempt to organize the collection of give-aways to raffle off.  From left to right are: Rachel Appel (our recently-hired second NYC Regional Microsoft Developer Evangelist), and CodeCamp co-organizers Mark Pollack and Mark Freedman with the prizes arrayed in front of them.

IMG_0109

Giving away three XBoxes Elite 360s, 2 ZunesHDs, 10+ TekPub subscriptions, a pass to the upcoming Devscovery conference, 20+ Infragistics NetVantage licenses, multiple copies of JetBrains’ Resharper and DotTrace, DevExpress’ CodeRush and DXperience UI control suite, Telerik’s RADControls Suites and lots more in an efficient manner is no easy task!  But like a well-oiled machine, we somehow managed to work assembly-line style to get all that SWAG distributed in just a mere 30 minutes.  In these photos that’s me with the microphone describing the prizes as Mark Pollack picks names and everyone else helps the attendees come up to claim their prizes.

IMG_0114 IMG_0115

After a hard day’s work (volunteering!) we were lucky enough to have sufficient sponsorship for this CodeCamp to be able to afford to take the speakers, volunteers, and, yes, even the organizers out for a complimentary dinner and drinks at Connelly’s Pub, a local Irish watering hole just a scant six blocks away from the CodeCamp site.  A special shout-out to Chris Williams from INETA who not only spoke at the event but also contributed to making this after-event dinner possible on our limited budget!  Here we see some of the volunteers sitting (finally!) and getting a chance to relax after a long, hard day’s work.

IMG_0116

Leave it to a bunch of geeks to be seated around a table, having ordered food and liquor, and still be checking their smartphones.  A geek and their PDA shall never be parted, apparently!

IMG_0118

Hey!   Look!  I can order my dinner on my iPhone!  There’s an app for that!

IMG_0119

As the night wore on, here we see Miguel Castro’s eyes begin to glow red (as they often do as the alcohol begins to take affect <g>)…

IMG_0121

Not sure why, but Miguel looks happier in this photo than John Baird does…

IMG_0122

Meanwhile, the four-way debate at the end table about who has the best PDA continues unabated…

IMG_0125

Here’s (left to right) speakers Steve Andrews, Chris Love, Dane Morgridge, and JP Toto sitting with several of our day-of volunteers (without any of whom we never would have been able to pull this event off).

IMG_0129

Lastly, here’s a shot of myself and co-organizer Mark Freedman stealing a rare moment of relaxation in between one of the afternoon sessions.  We’re discussing what was working so far, what wasn’t, the nature and future of CodeCamps in the .NET ecosystem, what motivates someone to volunteer for such torture, and other points of philosophical interest.  Actually, I threw this picture in here at the end because I figured it would just confirm for everyone what I’m sure you all already know: putting on a successful CodeCamp is really pretty easy: you just show up and sit around all day and it just happens all around you 🙂

IMG_0021

What Next for this Intrepid Explorer?

Well, there’s talk of holding another NYC CodeCamp before the next year (perhaps in the Autumn of 2010).  We’ll see if I have it in me to participate to the degree I did for this one.  Time will tell.  Part of me really wants to be able to put what I learned (the hard way) from this one about what to do and what not to do into practice again on another one.  And part of me wants to run screaming in the opposite direction as fast as humanly possible! 🙂  Time heals all wounds, they say, so let’s see if that’s true by the time the next of these might come around for me to consider being involved with.

I’m already committed to another Agile Firestarter event that I’ll be co-organizing for March 27th with the rest of the NYC Alt.NET Organizing Team.  That’s barely three more weeks away and so soon it will be nose-to-the-grindstone time for me on the logistics for that event.

And we’re tentatively planning to also hold an entirely different kind of event that right now we’re calling the ‘Agile CampFire’ – a sort of blending of a CodeCamp and the Agile Firestarter with much more emphasis on hands-on lab experiences than presentation-style content.  That’s looking like it will be hot on the heels of the 3/27 Agile Firestarter on either May 1st or May 8th so soon that too will be into hard-core focus-time for me.

But for now, its time for me to wrap a bow around this one, put it up on the shelf, and call it done.

It Takes a Village…

It takes a village to raise a child, and it takes a community to pull off a successful community event like this.  Thanks so much to everyone who contributed to making this event the success it never could have been without you: speakers, volunteers, organizers, and even attendees!  A successful community event requires all of these things and so we should all be collectively proud of how well this one came off.

That’s a wrap!