by billhilf on December 14, 2007 06:00pm


It’s been a while since I’ve had a chance to blog. It is usually on airplane time that I do any blogging, and since I haven’t flown in a while, I guess that will be my excuse. I’m on my way to Asia, currently over eastern Russian airspace, which means I’m hours from anywhere, so I’ve opened my ‘blog ideas’ folder and there is literally a books worth of stuff in here so I’m going to cherry pick a few ideas that I think are worth connecting.

Over the past year, I’ve had this ‘six degrees of separation’ phenomenon stuck in my head (I think this idea originated in Milgram’s ‘small world experiments’). You’ve all heard about the ‘Six degrees of Kevin Bacon’ game, and it’s always fun to mind bend weird connections with movie trivia buffs. There’s a web site that does this now with IMDB data called the Oracle of Bacon. It’s been on my mind because of personal ‘degree connections’ in my personal and professional life – meeting a stranger at a wedding in California who sings in the choir with my cousin in a small town in Massachusetts; interviewing a guy for a job at Microsoft who, by random coincidence, had worked on some of my (horrid) code ten years ago and remembered my name from a joke I left in the comments above one particularly nasty function. The latter example only ‘clicked’ for this interview candidate after I told them *the same joke* in the interview: “I actually read that joke before in some old crap C code.” I told him that was my code. He blinked. We had about 30 seconds of weird vibe right after that.

We hear it again and again: ‘It’s a small world.’ – But when a series of these connections happen, you start to wonder and do some probability math*. I’ll save my own experiments for later, but it did get me thinking on how communities grow, shrink, expand, contract and (sometimes inexplicably) persist. It’s the latter part that I’ve been focusing on a lot: what keeps the degrees connected and why are some communities stickier than others?

I think a simple answer is enough ‘matter’ to create a gravity that keeps activity in some type of steady orbit. If there’s enough matter and gravity, not only does the community start to find critical mass to persist, it also creates the environment for further creation - in other words, hacking and incrementing the original theme. This is fundamental to the Architecture of Participation, as well.

If you can suspend disbelief just enough to agree that this ‘six degrees’ concept does happen on certain occasions, and that it can be intentionally fostered (ala MySpace, Facebook, etc.) - then I think that also suggests that one can create an environment designed for powerful connections and collaboration. It’s certainly not the only way to innovate ideas, but it is a proven method realized through online connectivity to other people.

Here’s an example. I play World of Warcraft (WoW), which is a massively multiplayer online role playing game; a sizeable community of about 8.5 million players. To say that it’s a popular video game is an understatement. In fact, ‘world of warcraft’ outpaces ‘open source’ in raw search volume if that’s any indicator ;) (see below)

    open source

   world of warcraft

As it turns out, a bunch of other Microsoft employees play this game too. And we communicate about the game on an internal email alias. Some play on the same servers together, but most of the discussion is idea sharing, questions on items or skills, or general chat about the next patch. It’s a good list. Not surprisingly, a lot of these people are developers or testers or marketers or IT folks - so you get a range of experience outside of the game subjects, with a blending and morphing of ideas about the subject (the game) influenced and shaped by their domain of experience.

As you can imagine, I add little value here other than waxing about my mad skills as a warlock. But a few guys in the Visual Studio team wanted to use their product to make writing World of Warcraft Add-ons a lot easier (essentially, personally created UI extensions that can enhance the game experience). So they did and created a very cool Visual Studio shell for WoW. AddOn Studio for World of Warcraft is a free tool designed to bring a Visual Studio-like experience to building World of Warcraft Addons. The tool itself is based on the Visual Studio Shell, and it’s now an open source project hosted on CodePlex – licensed under the Microsoft Public License. It will make writing Add-ons for WoW significantly easier (and likely more enjoyable). Some key features include:

  •  
    • Custom AddOn Project System – Including support for the Ace2 AddOn framework, TGA texture support, and MP3 files
    • Visual Designer – A visual drag-and-drop designer for designing AddOn Frames including a Toolbox, Property Window, Snap lines and more
    • XML Editor – For those who want to manually editing XML Frames, AddOn Studio includes the ability to map the Warcraft schema file
    • Lua Code Editor – The Lua code editor includes automatic event handling, IntelliSense for Lua and built-in support World of Warcraft functions, Code Snippets for common Lua functions, code colorization, code outlining, and more.
    • Auto Table of Contents – AddOn Studio will automatically build the Table of Contents (TOC file) for your AddOn based on the project files you include and the project properties settings (aka no manual XML).


Here’s a bit on news about it and below is what it looks like

How is this related? It shows how ‘matter’ (in this case a game) created gravity (a gaming community) inside another community (Microsoft employees). As it turned out, there were some WoW players who develop Add-ons who were part of this community*. Some of these folks were in the Visual Studio group and wanted to use Visual Studio to enhance the add-on development experience. So they did. Then they shared this on the email list, for ideas and suggestions (the bug bash happened this last weekend). This ‘chain lightning’ effect will now continue through the broader OSS community. And this is for a video game -- think about the same framework for healthcare, where a community of machine learning experts working on anti-spam related algorithms saw the connection to HIV vaccine research and similarly are creating ‘matter’ with a community (codeplex) in an effort to continue the innovation. Hacking anti-spam algorithms for vaccine research and sowing it in a broader community.

Mark Granovetter's observed that it is "the strength of weak ties" that holds together a social network – and if this is true (which has been demonstrated in network modeling), then the combination of structured, formal communities with ad-hoc or weakly connected communities can be amazingly powerful. We often focus on one or the other (particularly in technical community discussions) and not the intersection, which is where I feel the magic can be created.

It’s particularly interesting to view this beyond the individual, to do this with a team, an organization, or an entire company. Not simply obvious ‘partnerships’ mind you, these are fairly formulaic (important, but well understood), but the intersection of non-obvious connections. In my experience, this is the real magic of community and open source, and I can think of many projects that evolved this way. However, it’s the right community that makes the difference – we often get locked up on other things and forget that the right people and the right forum make all the difference.

>>Picking up this blog again and I am returning from Asia, I sit down to settle in for a long haul flight, turn to my left and meet the stranger seated next to me – turns out he knows my wife’s cousin’s husband, they were childhood friends. I blink. Then (as a test) I tell him the joke I mentioned above – thankfully he’d never heard it before.

Until next time, game on.

-Bill

* Kleinfield has an interesting paper that questions the ‘six degrees’/small world theories here. I love her term ‘intellectual furniture’

* Some of these folks have written more than 7 or 8 add-ons in their personal time, and there’s a load of other projects on Codeplex, from all sorts of people, which further mod, extend, and enhance playing WoW .