What an amazing time! I lost count of the number of deep conversations I had that actually helped me reformulate and solidify my thoughts on countless things.
Things that stand out are: predicting one of Joe O’Brien‘s answers during the pre-conference experts panel. I don’t remember the question, nor the answer. What I do remember is seeing Joe grab for the mic, and thinking “I’ll bet Joe is going to say this!”. I leaned over to Steven Bak, who I was standing next to and said so. It turned out, I was right!
When I talked to Joe the next night over drinks, we had some excellent conversation about the differences between the java, ruby and .NET communities. As a member of the .NET community – but one who follows some of the java and python happenings – this conversation with Joe and Michael Letterle really helped me solidify and rethink the .net community and some of the “alt.net” stuff.
My current thinking. The Java and most other language communities are led by the open source leaders. Contrast this to the .NET world where the community is largely led by Microsoft. IMO this alt.net movement is largely an acknowledgement of this difference. The solution is easy. We need more non-Microsoft community leadership. What do I mean by this? After all, Microsoft already has programs in place to encourage this kind of activity. Basically these are the MVPs and RDs across the US and the world. These are great programs but they are limited.
In the Java world there is no Sun endorsed community leadership programs (are there?). In the Ruby and Python world there is no corporation or there are many of them, but its the community, not some giant entity like MS or Sun that shape the future of those languages.
So far I haven’t really mentioned any problems. Much of the discussion on the alt.net various mailing lists seem to suggest that some problems exist. I don’t think that they do. There is plenty of room for a healthy MS led community the coexist separately, but not independently, from the growing MS-independent community. It already exists. It already happened. When Roy Osherove first posted his “HOT and NOT” list in the context of alt.net, it could almost be mapped to a list of Microsoft endorsed technologies and a list of “other”.
There very splendid thing about this situation is that there is plenty of room for both. So, I’ve given up caring. I’ll encourage anyone to talk about and promote anything which they feel works for them and works for others. Anything which makes us better as developer is a good thing!
Getting back to CodeMash, this is why I was very happy to be able to present CastleProject at CodeMash. I apologize to anyone who saw my talk. I thought I could pull of talking about all of Castle as a whole. Maybe one could do it, but I could not. My talk was disorganized and I rambled a bit. That said, I still think that looking at CastleProject as a whole is VERY useful.
Even if you don’t use ActiveRecord, MonoRail or Windsor (I like to call these the big three), there is probably something in Castle which you would find useful. DictionaryAdapter alone is something that any .NET developer would benefit from at least knowing about. Being able to toggle between log4net and NLog without recompiling is a single compelling reason to use castle’s logging library. I’ve used both and IMO each one has its areas of excellence, so I do see a need to be able to toggle between the two.
My brain is still whirling from all the CodeMash conversations. If I can formulate any more thoughts into anything more coherent than the above, I’ll try to do that. No camera this year. I decided against photos. I promise that no matter what anyone tells you, there was more to CodeMash than this: