Forums, Community Code, and The "Tyranny of Or"

I really love our Forums. Any community is subject to Metcalfe’s Law where the power of the network is proportional to the # of users. Forums is still in its infancy and with the recent development of the community answering more q’s than Microsoft full-time employees, I think we’ve hit a possible tipping point where the community feels less nervous about answering questions. Personally, I remember being on bulletin boards in my previous life as a dev and seeing people from MS answering questions and not wanting to answer for fear of being inferior to them—“I don’t work for MS, so somebody from MS should really answer the question”. I think our Forums have moved way beyond that and I am excited about where the year ahead...

That said, there are a lot of expectations of Forums as part of the Microsoft.com Communities strategy and I've been resistant to place all of our eggs in that basket. Here’s a question I've been debating with a colleague—do you use Forums when you are just starting to learn a technology (“what is LINQ?”)? I use my days as a developer (cue the music to Bruce Springsteen's "Glory Days") as my litmus test and I don’t think I used support forums nearly as much as I stole, er "borrowed", code from sites like GDN (this was before GDN existed of course, but I don't even recall the sites I used other than MSDN, of course). I loved free code and would often print out reams of it and review it at night in front of the TV (this is before I had a laptop) to see what people did to make their code run. I even went through parts of the Linux source code to understand and learn how to write leaner C code (for the record, this is WAY before I started at Microsoft)...

When I started at Microsoft after business school, to push myself back into the techie mix and re-learn the competition, I took a course on Java Distributed Computing through the Harvard On-Line Extension Program . The wealth of code I was able to “borrow” blew .NET away at the time (for the record, I got an A ;-) ). Again, I didn’t really use forums to start off each assignment nearly as much as I went on-line to SF.net, Java.net, etc. and looked at what they did to get some techniques on where/how to get started. In this case, I didn’t even steal the code as much as looked at what libraries they used and some syntax around writing Java manifests (which were a pain to write properly). I used the Java on-line forums (who am I kidding? I used Google and they took me to the forums) when I hit errors, but I definitely didn’t start there and I wouldn’t say I learned anything as much as found a healthy detour (whereas I definitely learned from the code sites)...

Perhaps that’s why I am so gung ho about the code sites and sometimes downplay my excitement for Forums. Trust me when I say I know that they are both important, but developers ALWAYS love free code and I think the community provides the best free code. I am always looking for ways to support that, which includes GotDotNet CodeGallery and some interesting stuff that you'll be seeing from us in the next couple of months. I think we've closed that gap on the Java space a bit, but it still exists. That said, this is NOT an either/or and we need to support both. I want us to continue to drive better Forums experiences, but if I have my way, the ability to share more code in the community will continue to get easier as well--and neither is necessarily more important than the other. There are lots of ways to learn about .NET and learning from the community can be the most effective way--a broader way of sharing "tribal" knowledge. I just want to open as many doors as possible for this to happen.

I also believe there are ways that we haven't even come up with yet--but that'll be the community's job to let us know what we need to do. Distributed innovation--now there's a concept I can get into...