I’m sure that most people can easily find any of the blogs of the official judges from the 2013 Scripting Games. I recommend reading those blogs whether you’re competing in the scripting games or not since there’s a wealth of great information contained in them. The best place to find those blogs if you don’t know already is the Judges Notes section under the Scripting Games area on PowerShell.org so there’s no reason to duplicate them here. There are also a number of people who are competing in the Scripting Games that are writing blog articles of their own blog sites. A couple of the ones that I’m aware of are listed below and while they’re my competition in the advanced class and have links promoting their Scripting Games entries in their blogs (I do the same thing),  I don’t mind promoting their blog articles because there’s some great information to be found in them. I’m actually glad they provided links to their entries because both of these guys are excellent PowerShell scripters and you could learn a lot from viewing their Scripting Games entries. Ultimately the scripting games is all about the community learning more about using PowerShell best practices in a friendly competition that’s just for fun. Click here to be redirected to the original post of this article on the author’s blog site where you can read the remainder of the article. µ
I want to point out some changes that are being made to the Games: Effective immediately, entry author names and current scores will not be shown for events that are still open for new votes. This is intended to help ensure everyone submitting a score isn’t influenced by other people. I’ve seen a bit of ganging-up that I’d rather not see. Archived events - those completely closed and for which prizes have been awarded - will display full information, including user names of comment authors. The new event viewer, which is currently under development, will display comment author names. These will be visible to an entry’s author immediately, and to the public once the event is no longer open for voting. Entry authors: This means you won’t be able to see your score while it’s still open for voting, unless you use the new beta viewer (which I’ll be wrapping up this weekend).
If you’d like a quick peek at something, log into the Scripting Games Web site, and go look at the entries in Event 1. Your URL should look like this: http://scriptinggames.org/entrylist.php?eventid=11 Change it to this: http://scriptinggames.org/entrylist_.php?eventid=11 This is the new viewer I’m building. It isn’t rigged up to accept votes or comments, yet, but I’m working on that. It’s being developed for Firefox; I’ll test the other major browsers once it’s a bit more complete. This is under development, so it may be offline or unreliable. Don’t tell me about it - I’m already working on it . You can probably use this on Event 2 as well. The voting and commenting should be working. Note that you must vote before you can comment, and right now it’ll only accept one comment per person. That will probably remain the case for the current iteration of the Games based on some back-end dependencies. However, you CAN tie a comment to a particular line number or range of lines, and when viewing the comment it’ll highlight those lines. It’s pretty neat, I think. Oh, and I know the coloring on block comments is wonky. I need to dive into the color-er’s regexes and see if I can tweak that. Any regex wizards who want to volunteer to help with that, drop me a line. Right now the PowerShell syntax in the color-er is a little primitive. Actually, there are probably several regexes we could add to this to spruce up the listings. And yes, I know the comments now show the author’s user name. That’s been a big back-and-forth. I’m not a huge fan of anonymous commenting, and right now it’s just your username anyway. Hopefully nobody said anything truly offensive simply because they thought they were anonymous :). Back to work.
This time of the year always feels like someone is holding down the fast forward button. I blinked and here we are Friday morning another week of scripts in the rear view. I spent most of my week in the beginner class this week, and was greeted by a combination of beginners and scripters who weren"™t quite ready to step up to advanced. More of the latter if I"™m to be honest. This was a pleasant surprise as it"™s another sign of the continuing growth of our community. Now on to the scripts I knew when I signed up to do this, that at least one of these weeks I"™d talk about formatting. It"™s one of those best practices that you don"™t appreciate until you"™re asked to review someone else"™s code. Don"™t Crunch the Code, and for the love of all things, Hit Enter! I did not deduct any points for readability, but you didn"™t make my good list either. Personally I find it disrespectful to share an ungodly one-liner, but it"™s downright wrong if that single line has semicolons!  We"™re not printing these scripts the crunch gets us nothing. I"™m not going to call out the litany of scripts that were manually formatting the data directly which is even worse, but consider the following.
Event 3 will be open for entries in about ten minutes, but I thought I’d share some Event 2 information. Keep in mind that Event 2 is open for voting until the 14th, GMT. Our Beginner Track had 120 entries this time, while the Advanced had 124. That contrasts with 165 and 159 from Event 1 - a perfectly normal falloff that’s occurred during every edition of past Games. Folks get busy, maybe get discouraged, but we’re keeping right on the trendline. Voting is down… that happens, too, as the thrill of event 1 falls off. We had 3,966 Beginner votes and 2,775 Advanced votes in Event 1; so far we’ve gotten 1,446 Beginner and 1,131 Advanced in Event 2. Of course, we still have almost a week of voting left to go in Event 2, and in Event 1 we took a lot of votes up to the last minute. The good news is that Event 2’s votes have, so far, included a much higher percentage of comments. Event 1 Beginner has about 55% comments, while Advanced had 58%. In Event 2, Beginner is tracking to 63%, while Advanced is at 59%. Good job, guys - those comments are a big help. As you know, we’ve also put up some general guidelines to help keep everyone on the same page with what the score levels mean, so hopefully that’s helping, too. Something’s sure helping. The average score in Event 1 Beginner was 2.5585, and Advanced 2.3870. Event 2 is up a notch, at 2.6957 and 2.6631. That’s a 5% jump in Beginner scores and over 11% jump in Advanced scores. I know, people are tough on the scoring. And in some cases, I’m seeing comments that indicate the comment author had some misunderstandings. That’s okay - it’s an opportunity for us all to learn together, especially after the Games complete and we can start diving into this mess of data. I hope you’re already to start on Event 3! Our fastest entry so far is just over 51 minutes, and I might be saving some special prizes for the overall fastest entry (don’t worry - I’m going to look at it to make sure it’s decent). May the Games be Ever in Your Fav… ugh, sorry. Don’t know where that came from. Good luck!
Jan Egil Ring is a multiple-year recipient of the Microsoft Most Valuable Professional Award for his contributions in the Windows PowerShell technical community. He has a strong passion for Windows PowerShell, and regularly writes articles on his blog. He occasionally also writes articles for others, such as the PowerShell Magazine. As a judge in the Scripting Games, he will be writing articles on his blog reviewing both good and bad observations in the reviewed scripts. Clean formatting and avoidance of using aliases in scripts is among the things he will be paying attention to.
I continue to be amused by folks’ reactions to the Games this year. There’s been some buzz on Twitter this morning from folks who feel some of their comments - and the corresponding low scores - aren’t warranted. In a couple of cases I’ve looked at, they’re right - their entries are being downrated for reasons that are actually not best practices; by following the best practices, these entries are getting lower scores. This reinforces a point I keep trying to make: The Games aren’t about YOU. They’re about US. **** Let me put it another way: if you’re getting comments from folks whose opinions are founded in a misunderstanding or misconception, that’s an opportunity to educate. Not to attack that commenter - which is why commenter names aren’t shown - but to educate the community in general. The community took the time to give you comments, and although some of them might be misguided, you can take the time to offer a productive counterpoint and perhaps lay some misunderstandings to rest. That’s the point of the Games: to learn. Maybe not for you to learn, but maybe for you to help someone else learn. Or to put it another way, I haven’t received Microsoft’s MVP Award for ten years straight because I got a good “score” on something. I got it because I look for teachable moments and try to offer explanations. Being able to teach something shows that you really know it. Think of your Games entries as a honeypot. If you can attract some folks who don’t quite get what you’re doing, then through the comments you’ll spot broad areas of educational opportunity, or what I call “teachable moments.” Seize on those and help bring the community as a whole to a higher level. Does that mean the educational opportunity has to come at the cost of you getting a lower score? Yup. Will that score in any other way impact your life? Nope. It’s not going on your permanent record. Human Resources will never know. It won’t affect your salary, or your ability to choose which movie you will see this weekend (Iron Man 3, BTW). Thicken up that skin a little - every vote isn’t a personal attack on you. Every “unqualified” comment is not a stain upon your honor. I really wish I could use some of the cooler interjections from Spartacus here, but none of that stuff is suitable for a professional environment :(. In short: Cool yer jets. Take the opportunity to educate. Not on Twitter. Man, you guys with the tweets. You don’t have a blog, drop me an e-mail and I’ll give you authoring permissions right here on PowerShell.org. Help us, as a community, educate each other. And hey, remember not ALL of your comments are non-constructive. Learn from the ones you can, tune out the rest. Like watching CNN. Ever notice how, on a slow news day, the talk about Atlanta’s traffic? Exactly.
We’re pleased to announce the winners for Event 1 of The Scripting Games 2013! Winners: You can log into The Scripting Games Web site and go to your Profile page to see your prize. You will be given a prize redemption code and either a URL where you can redeem it, or an e-mail address of the prize provider (they will need the redemption code). All prizes must be claimed by the end of July 2013. I will list winners by username; if you used your e-mail address as your username, then a portion of that will be truncated for your privacy. Anyone can log in and check their Profile page to see if they’ve won a prize.
Event 2 has closed for submissions and will open for voting later this evening. Good luck! And voters: remember that quality comments will vastly increase your chances of winning a prize!
Right now, I’ve got the Scripting Games Web site built to only make comments visible to a entry’s author. Some of the comments have been a little snarky, and I don’t want to create an online argument forum. I’m curious what folks think we should do as a next step. I could, for example, make comments visible to everyone once voting has ended for an event (I don’t want to make comments visible while we’re still accepting comments, because it’ll run a big risk of creating a discussion, which isn’t the intent). We do have a plan to dump all the entries into static files for long-term reference; I could insert entries’ comments at the end of each entry, in a PowerShell comment block. Or, we could just leave comments visible to the entry’s author. That provides a learning experience for the author, although not for the public, and only until we purge the database for the next event. Thoughts?