I gave 3 presentations at the first Philly Code Camp over the past weekend, and things went very smoothly (from my viewpoint anyway) for a first time event. Not many Code Camps will be able to compete with Philly’s facility. They used the Community College Of Philadelphia’s Center for Business & Industry’s building (which is perfect for events like this). The only issue I had was the temperature in the sessions. It was very hot in the rooms, and then they turned off the AC at 6PM on Saturday night. Since 2 of my 3 sessions were after 6PM, and I tend to get hot while doing my thing, it was very hot. The last thing anyone wants is a bunch of geeks, who spend more time behind a keyboard then at a gym, striping down to their underwear because it is so damn hot.
I gave 2 presentations that I’ve done various times before, Encrypted Connection Strings, and Fun With Attribute Based Programming, Extending Enums. For those that missed the Extending Enums session, you can read my article on it. The idea behind that session is to really get people thinking about why they write code the way the do. Using attributes over enums to create stored proc parameters is a pretty radical departure from the “old fashion” way of doing it with static methods, but it is just about as fast, and a lot less code. During the session, I had some time and went into my rant over forcing types to be relationships in the database, which is a lot of fun to drop onto a bunch of data geeks (hint, until SQL 2k5, use constraints not tables for types). If that doesn’t get you rethinking the way you do things then nothing will (I’ll follow up this post with one going over that issue, soon).
The third talk was a new talk I created at the request of Terry Weiss, and was on my Send Messages Not Serialized Object Graphs rant I had a couple weeks back. Since that post, Aaron Skonnard had the first part of his Contract First Service Development article published in MSDN Mag, which sort of ties into my rant. Then, just before the Code Camp, Dare replied to Aaron’s article with Contract-First XML Web Service Design is No Panacea. With my Serialize Messages Not Object Graphs session I tried to impress upon the audience that it is the message that matters, and why this is different from the RPC approach. I don’t know how much of the talk will come thru with just the presentation, but I posted it anyway. A lot of the talk is driven from the audience (which IMHO, is the major difference between presenting at a Code Camp and at a regular conference).
I do have one suggestion for future Code Camps (everywhere). If you have available rooms, use 2 or 3 as cabana-like rooms for people to congregate in and talk shop. These rooms should be used in lieu of a speaker lounge, and then speakers should be encouraged to hang in those rooms when they are not speaking. The idea is to have a place for place to hang when there isn’t a session that interests them, and use it to foster more community involvement. Philly didn’t have a speakers lounge (which I sort of like that aspect), but had plenty of room to just hang around, which did deter from a more community feeling. Philly did have free wireless internet, which is a big plus.