So, How Are the 2012 Scripting Games Going Thus Far?

Summary: Microsoft Scripting Guy, Ed Wilson, provides a look from inside the trenches about how the 2012 Scripting Games are progressing.


That is about all I have got to say. Perhaps that is because I am struggling to catch my breath. How are the 2012 Scripting Games going so far this year? Well, from a numbers perspective, we are seeing a significant increase in participation. In fact, for Event 1 (for which submission closed at 12:01 AM Redmond time on April 9, 2012), we have seen a submission increase of over 50 percent. For Advanced Event 1, we saw an increase of over 150 percent! Clearly there is an increased interest in the Scripting Games, but perhaps more importantly, this also indicates an increase in interest in the awesome technology called Windows PowerShell.

How about the scripts themselves? There is another thing that is really cool (or maybe more important)the increase in scores. As a judge who has already graded literally hundreds of scripts this past week, I can tell you the increase in scores is NOT due to grade inflation. It is a result of superior scripts being submitted in both categories. In fact, the average grades in the Advanced category increased by 33 percentclearly an awesome achievement. But perhaps more exciting is that the average grade in the Beginner category (a category clearly aimed at beginners with no scripting experience) increased by 58 percent!

These two points (the dramatic increase in the participation in the 2012 Scripting Games and the dramatic increase in the quality of scripts submitted) tell me that Windows PowerShell is becoming a mature and established technology that is rapidly being adopted by IT Pros. But besides merely adopting the technology, they are embracing it, and they are becoming increasingly proficient with this technology.

Cool. Very cool indeed.

Ed Wilson, Microsoft Scripting Guy

Comments (12)

  1. Anonymous says:

    I have a love hate relationship with the 2012 scripting games. I love it when I write a good script that gets the full 5 points and hate it when I only get one. When I read about the games on the last day of registration, the only thing I know about PowerShell was that I put off learning how to use it long enough. I entered the games because the blog was very compelling. It said that contestants from all over the planet would be entering and had been studying months in advance for the beginner competition. I figured I would register just to get my name on the roster somewhere. The first script I have ever written in any language was in Beginner Event 1. Now I find myself staying up late trying to figure out the next event, and getting up early so I can start thinking about the “Script for the day.” I have definitely been bitten by the PowerShell bug. For me the games are getting harder and harder. I am not sure I will be able to complete all of the scripts in this competition, but I am starting to see where I can apply some of these skills at work. Looking back that is a very big improvement for just one week. If I never submit another script in the 2012 games I am still very happy with my introduction to PowerShell.

  2. Anonymous says:

    I'm really enjoying the game but I'm finding the grading to be a bit disheartening.  There doesn't seem to be a clear 'this is a 5 star solution' amongst judges; for example a script I submitted for Beginner Event 2 got 3 stars, but it's nigh identical to a couple of them that got 5 stars, the difference being they'd used alias' whereas I'd purposefully avoided them.

    Now I'm not in it for the scores and am just enjoying the challenge to learn new things but I can't help but be a little put off when something like that happens.  I know the judges are really helping out and I'm thankful for that but I think there needs to be a more uniform means of 'judging' that doesn't grade almost identical scripts by a difference of 2 out of 5 stars.

  3. mredwilson says:

    @W. Sterling hang in there. Also, I really appreciated your comment – in fact I forwarded it to the Scripting Manager 🙂

  4. mredwilson says:

    @SoCalDavis I am glad you have had fun, and have learned a TON in the past 5 days. For scripts I agree with you, you should not use aliases. But one of the great things about PowerShell is that you CAN have a very short very easy to type command. It might not be very readable, but it can be very short. Part of learning to use PowerShell effectively is learning these aliases. I have not written ANY write the shortest most obscure code events. In the one-liner events aliases are permitted, but they are neutral — I do not count or count off for them.

  5. mredwilson says:

    @Aaron I am glad you are enjoying the games. I am also glad you are learning a lot. My suggestion is to pay really close to both the scenario AND to the design requirements. As with real life, you often have to dig a bit to figure out exactly what is required. Unlike real life, you do not have to be a mind reader. The scenario lays out what the problem is, and often gives hints to an acceptible solution. The design requirements tell you how your script will be graded. Some things will add points, other things will subtract points these are the keys to getting a good score. BUT if you do everything in the design points, BUT your script does not meet the scenario you will only get 1 point for not turning in a script that meets the requirements.

  6. mredwilson says:

    @Mr Killian I am glad you are enjoying the games. Every year there are complaints about the grading. In fact one year, I did not even do grading — then there was reallying a lot of complaining. I have written a 25 page judges guide this year … but in the end it is the individual judge who assigns the grade. With 35 different judges, you will get different results. We see this in the Olympics where, I imagine, they have an even more established grading guide that we have — and yet the grades assigned to a particular athletes performance will vary greatly. The good thing is that you get a different perspective. From a question of fairness, one can assume that the same judge will assign the same type of script the same grade — so it all balances out in the end. Keep in mind, that grades can, AND WILL change during the course of the games. This is because any script can be graded at any time by any judge who has not previously graded it. As far as your statement about aliases, if a scenario specifically calls out that the event is an interactive one-line type of script, then aliases are permissible. I do not count off NOR do I add points for aliases in these types of events. However, in a SCRIPT I will count off for use of aliases. I may, suggest that a person could use aliases to shorten the command, but IF I post such a comment, it does not mean that I counted off points for not using them.

  7. mredwilson says:

    @Jarheadf23 Yes, judging several thousand scripts is always a challenge. With 35 judges, it is also possible there will be a divergance of opinions … this is a good thing. If I did not value that diversity of opinion, I would simply write a script to autograde each script. But the nice thing is that we all learn from having the opinions of 35 TOP NOTCH people in the Windows PowerShell world. In fact, we have MOST of the authors of Windows PowerShell books on the panel grading your scripts. Also, as with every year in the scripting games, I learn things every day … both from grading the scripts I did not think would run — but that actually did, and also by reading the comments and blogs from the other judges.

  8. Anonymous says:

    This has been so much fun so far! I have learned a TON in the past 5 days when I started the games.

    I agree with Mr Killan regarding alias. My suggestion would be: Don't allow alias' for "Beginner" events (unless specifically specified in the Design Points section). I feel the beginner events should encourage people to write easily readable code so that any other beginner could fully understand it. To me, this helps other beginners learn. The alias' will come, and should be considered for maybe the "Advanced" events.

    Again, this has been so much fun, and can't wait to try out the Advanced events next year!

  9. aaron says:

    Thanks for putting these on.  I'm learning a lot.  I agree with the first comment that it's difficult to know what's expected but I attribute that somewhat to only having a couple months of experience using Powershell.  The comments are extremely helpful as there are some tricks and shortcuts I just haven't run across yet.  Thanks Scripting Guy and all Judges.

  10. jarheadf23 says:

    Thank you for putting on these games it is a great experience. I have to disagree about the judging though because I can show you a prefect example of the issue look at my beginner 2 entry and look at one of the people who got rated a 5. His script is exactly like mine, in my opinion his is more complex than mine but he got a 5 and I have a 3.5. My issue with this is how can this happen if all the judges are supposed to be grading in the same fashion. I guess its just frustrating to put time and effort into something and then be told its not as good as someone elses when its the same.

    Once again THANK YOU! I have helped put on events like this before so I know that this takes a lot of the judges time and effort and it is appreicated.

  11. Bubex says:

    I just want to take a minute and thank you for doing these scripting games. I've just started using PowerShell like 3 days ago literally (we barely even saw it in class and I wanted to learn it as it's a vital skill to have, especially if I want to manage Core installs) after watching the 5 part videos PowerShell Essentials for the busy admin. So I'm really a beginner at this, and I've got to say I've learned a LOT these past few days with all the Events. Sadly I was too late to fully participate in this year's games, but I most definately will next year 🙂 Keep up with the great work!

  12. Tony M says:

    "Unlike real life, you do not have to be a mind reader."

    I have to disagree there, it feels like you need to know what solution the judges had in mind to get a full score. For example, in Advanced Event 1 there were a pair of common solutions:

    1. $notepad.Refresh()

    2. $notepad = {get-process notepad} and then executing the script block inside the loop

    The former typically received a 5 star grading while the latter typically received three and a half star grading.

    Clearly the first solution was favored over the second even though the second solution has fewer changes than the first, and the first solution has a flaw:

    If 'get-process notepad' returns more than one process object the script will break when Refresh() is called.

    While I'm grateful that the judges give up their time and can appreciate the difficulty in consistently reviewing the large number of submitted scripts, I agree with other commenters that this outcome can be very disheartening.

Skip to main content