The TechNet Guru Competition is a monthly contest. Each month people who post an article to TechNet Wiki can propose their article for consideration in that month's awards. The top three articles each month win a "virtual" gold, silver or bronze award. Winners are promoted across the community in forums, blogs and interviews. Winning a Guru medal also contributes towards TechNet Wiki Ninja Belts.

The competition is split over a number of categories. Each category has at least 2-4 specialist Microsoft employees or MVPs who are experts in that category, as well as 2-3 TechNet Wiki Community Council members. Therefore each category has between 5 and  8 judges. The MS experts and MVPs assess the technical content of the article. The Wiki Councillors are also judging content, but they also looking at the format, layout, readability and design of the article.

How it works

Each month, a new Wiki page is posted, where contributors add a link to their articles. Contributors edit the article, adding a new bullet line containing a hyperlinked reference to the article and author, in their selected category list of contributions.

At the start of each new month, the previous month's Wiki article is marked as "closed" and I run a WPF "import tool", which crawls the page and pulls out the articles and authors from each category.

At the same time as closing the previous month's contest, I also post a new Wiki page for that new month's contest.

The new Wiki page is posted in a special "call-to-arms" style announcement of that months competition and "stickied" to all relevant MSDN/TechNet technology forums. A list of forum announcements is then added to the Wiki submissions page.

Once the previous month's submissions are imported to the database in Azure, I email all of the Guru Judges to "Go Judge".

The judges then have about two weeks to find some time to review their category's contributions.

By about mid-month I close the judging phase, calculate the winners, concatenate the feedback comments and announce the winners in a TechNet Ninja blog, and is also posted back to all relevant forums, as above.

The closing date for judging is therefore around mid-month. I usually post a reminder email to judges that have not yet judged in the last week of judging. I sometimes delay closure by a day or two, if judges reply asking for extra time.

The Import Tool

has developed a WPF tool which crawls the contributions Wiki page and extracts the articles, authors and links for each category. Once the import data is confirmed, it uploads the data to an SQL database in Azure.

Because we have no control over the Wiki contributions page, the tool has to "crawl" the page HTML to extract the data. This means it scans the HTML looking for category names and hypertext links for article and author.

It is important therefore to ensure the format of the contribution page and the titles do not deviate from the initially posted format. Don't change the titles, for example do not even change "and" to "&". Each contribution should consist of "Article Name by Author Name". Article Name should be hyperlinked to the Wiki article. Author Name should be hyperlinked to the TechNet profile page of the author.

The Judge Tool

has developed a Silverlight application that feeds from a WCF service of a website on Azure, which also feeds from the same contributions database as above.

The judges use this tool to sort the contributions in the order of awesomeness. They select their name from the list and get presented with the imported submissions. If a judge covers several categories (like the Wiki Councillors) they then choose a category from the next dropdown. Judges order the articles with their favourite article being the top listed row. There is also a textbox for each row where we encourage judges to write a sentence or two in response/feedback of the article.

As the Silverlight tool can be run within a browser from a URL, or installed as an out-of-browser application, run from the start menu.

The tool allows judges to open each article. When I judge, I open a new tab for each article, then order the tabs in the order of preference as I review each article. I then copy that tab order back to the order of the rows within the Silverlight judge tool.

Rows can be dragged up or down, or moved using the up/down/top/bottom buttons for each row.

If an article does not meet basic standards of article layout/content, or is technically wrong, a judge is able to add a mark to the article, by checking a checkbox. This opens a new textbox where we ask judges to explain the problems with the article.

This may cause the article to be removed (if for example it is found to be plagiarized). Or it may just cause the article to drop down this list. We often take or reword the comments as feedback to the author, but it is not attributed, nor is it obvious who posted the negative comments, as that may discourage genuine feedback.

Once the order is set and the comments are added, judges must click the "save" button to send their votes back to the Azure database.

Judges are asked to please provide feedback for at least their top three articles. However, because their top 3 articles may not be the overall winners, we ask judges to add some comment, even just a few words to every article. All comments for all articles are posted in feedback to all competition entries, so as to encourage those that do not make the top three medal positions.

Comments are very important feedback for the contributors, both good and bad. We hope judges can find the time to add at least a few words for each article. We also ask judges not to write too much, as we have to collate all the comments into one response area of the results blog.

The Results Tool

When all the votes are in from judges (about mid-month give or take a few days) I then run the Results Tool. This is an ASP.Net page on the same website as the Judge Tool web services, pulling from the same submissions/vote database.

I use some fairly hefty SQL to produce a list of final results. It sums up and orders the articles by "score". The top article gets 1 point, the second gets two points, etc. The article with the lowest score therefore wins top prize, and so on down the list. Judge comments are also concatenated into one string of text.

The concatenation also pulls in the commenting judge's name (or initials if they decide to remain anonymous) and formats it all in the style needed for the final HTML results.

Results are then generated out as HTML with categories, tables of winners and bulleted lists of runners up.


Peter then spends even more time tidying the resulting HTML, and adding extra comments and post to the TechNet Wiki Ninja blog

See also

In this section you can find some more useful links for you as a judge in the TechNet Wiki contest.