In the last few years there has been a long list of people judging the Scripting Games. Those people were expected to view as many entries as possible, preferably all, and score the entries as well as providing feedback on the individual entries. That is a ton of work especially when you consider that the judges were all volunteers. This time round we’re attempting to spread the load somewhat. Mike Robbins has done a superb job recruiting coaches for the Its their job to look at the entries and make suggestions and hints to the teams - if the teams wish to take advantage of this option. Looking at the list of coaches - I know I would take advantage of their assistance if I was competing. That leaves judging. This time we’re using a small group of judges. We have prepared scoring criteria for the events with some additional style points available to the judges. This will make MOST of the scoring objective but we’ve a bit of subjectivity available for individual judges to pick out, and hopefully comment on, things they like or don’t like. The judges are all very experienced PowerShell practitioners with more books written, talks given, blog posts created and classes taught between them than anyone would want to count. In alphabetical order your judges for the Winter 2014 Scripting Games are: Don Jones - founder and CEO of powershell.org. Author of several PowerShell books including the highly recommended Learn PowerShell v3 in a Month of Lunches and co-author of PowerShell in Depth. Don is a PowerShell MVP, PowerShell educator, columnist and course creator. Jason Helmick - Board member of powershell.org. A PowerShell MVP and author of Learn IIS in a Month of Lunches which includes lots of PowerShell. Jason also delivered the recent two-part Introducing PowerShell MVA sessions with Jeffrey Snover. PowerShell educator, columnist and speaker. Jeffery Hicks - Board member of powershell.org. PowerShell MVP. Co-author of PowerShell in Depth, lead editor of PowerShell Deep Dives and author of other PowerShell books. Jeffrey is also a PowerShell columnist and educator Ed Wilson - The Scripting Guy. Ed runs the Hey! Scripting Guy Author of several PowerShell books including Windows PowerShell Best Practices and Windows PowerShell Scripting Guide. Ed also delivers PowerShell classes and is a much in demand speaker. The list of judges is completed by Richard Siddaway - Board member of powershell.org. PowerShell MVP. Co-author of PowerShell in Depth and author of PowerShell in Practice and PowerShell and WMI. Frequent blogger on PowerShell related topics. Between them the judges have accumulated over 30 years of PowerShell experience that is focussed on judging the Games. They are all looking forward to the Games and hope to see your entries.
A few weeks ago, just before the announcement to start recruiting your team for the 2014 Winter Scripting Games, I was contacted by Don Jones and Richard Siddaway about an opportunity to become the Head Coach for the Winter Scripting Games. I was honored to have been contacted and I’m a firm believer of taking advantage of opportunities when they emerge, especially when they’re PowerShell related, so I graciously accepted. One of my first responsibilities was to recruit a small team of coaches. I immediately went to work before potential coaches committed themselves to participating on teams. We had a huge number of people in the PowerShell community who had volunteered to be a coach and while we would have liked to have selected everyone who volunteered, we only had a specific number of positions to fill. Without further ado, here is the list of the coaches for the 2014 Winter Scripting Games:
We’ve had an outpouring of support for the upcoming games, with more volunteers than we know what to do with! At this point, we have our judging panel completely full; we’re operating with a fairly small group of celebrity judges this time around. Games Master Richard Siddaway will introduce our judges in a few days. We’ve also filled our roster of Coaches, and Head Coach Mike Robbins will provide that lineup soon also. If you’ve volunteered but not heard from Richard or Mike, then you should definitely start recruiting a team for when registration and team formation opens in a couple of weeks!
We’re now seeking volunteer Coaches and Judges for the Winter Scripting Games! The Games are tentatively scheduled to run for 4-6 weeks starting January 6th, 2014. There will be 4-6 events, each lasting one week.
Coaches
Coaches have access to all teams’ entries and private discussion threads for the week while entries are being developed and accepted. Coaches are meant to log in throughout that one-week period, evaluate what teams have submitted so far, and offer comments and advice in the in-Game discussion thread. Coaches’ comments receive a special flag, helping teams focus on them quickly. Note that teams are not required to use the in-Game discussion thread - they can discuss via email or elsewhere. Teams are also not required to continually submit entry files for coach review, so for some teams, coaches will have nothing to offer. Team discussions are private to the team members and coaches; discussions will not be made public. We’ll accept as many coaches as want to participate. Note that you cannot be both a coach and a judge, and coaches are not permitted to participate on a team as a player.
We’re tentatively scheduling the 2014 Winter Scripting Games for 4-6 weeks beginning January 6, 2014. Right now, we’re running functional tests on the platform (which will be all-new and much-improved), and soliciting scenarios from MVPs and PowerShell celebrities. As previously announced, players will work in teams of 2-6 in this edition of the Games, and it’s never too early to start finding friends to form a team with you. Because you’ll be working in teams, and because you’ll have a full week to complete each scenario, expect more complex scenarios! You’ll have to practice breaking down tasks and assigning them to team members. You’ll also need to think about how you want to collaborate as a team. We’ll be providing a very basic private in-Game discussion thread for each team, but you’re welcome to use Git, PoshCode, e-mail, MailChimp lists, or whatever for your collaboration. You’ll be able to submit your entries’ files whenever you like, and revise them to your heart’s content right up to the entry submission deadline.
I’ve been busily working on a new interface for the Scripting Games - we’re still planning a Winter Games event - and wanted to share progress. You can click this thumbnail to see the full image.
The new Scripting Games features movable, resizable panes
The new layout features movable, resizable panels, allowing you to position them however works best on your screen. No, they’re not especially mobile-friendly. As you can see (at least in implication), entries can consist of multiple files, as in a complex script module. There’s a team-level discussion as well as (as shown) discussion threads for each file. Any player on the team can add new files, delete files, or modify existing files by uploading a replacement. This view shows that I joined the team “Aliens” after the current event had started, which is why I’m unable to contribute new files. Your team won’t be restricted to using the Scripting Games Web site. In fact, you can collaborate and communicate however you like. Use Git or PoshCode for your scripts, and e-mail or a discussion list for communications. It’s your choice. We’ll be recruiting a team of Coaches, who will browse whatever you’ve added to the Scripting Games Web site in advance of the event deadline, offering their own comments - you can see that Coach comments are highlighted for easy recognition. It’ll pay to drop code into the Web site every day so our coaches have something to comment upon, and to check in daily for any coach comments that may have been left. The upcoming Games events will be more complicated - you’ve got a team to work with, so we figure you can handle an extra challenge. Event scenarios will be authored by a team of community all-star volunteers, including The Scripting Guys and various MVPs and enthusiasts. That should give each scenario a slightly different flavor, exposing you to a wider variety of real-world challenges. Judging of team entries will involve a more complex scoring rubric than our past 1-to-5-stars technique - giving you a more detailed scorecard. Keep in mind that each team will be able to submit only one combined entry, which will give our judges fewer to look at - and more time to look at each one. The new rubric will still allow judges to express some personal tastes and opinions, so you shouldn’t expect to be able to please everyone every time! Team assembly will allow you to form your own team, or be automatically assigned to a team that needs players (teams MUST have 2 players to participate). We’ve rigged the system to ask for your time zone, and to display the average time zone offset of potential teams. That way, you can look for a team whose players are geographically close to you, helping to facilitate any real-time collaboration you might set up (via YouTube, Google+, or whatever). If you choose auto-assignment, the system looks for a team whose players are geographically close to you, relatively speaking. Local user groups are encouraged to form their own team, and to have their own members join - that way, the Scripting Games can be the topic of a monthly meeting or two. Things are still evolving and under development, but wanted to share this early look!
So I’m continuing to work through some logistics regarding the Winter Scripting Games (and no, there’s no dates set). The intent of these Games, as I’ve written before, is to offer a collaborative experience. You’ll work in teams of (proposed) 2-6. You have two ways to join a team: Pick an existing one that needs players (you’ll be shown the average time zone offset, in minutes, of the existing players, so that you can choose a team near you) or create a new team from scratch - which others can then join. You’d be welcome to “recruit” for your team using social media. NB: Collaborate does not mean _live online collaboration. _Your team could do a Google Hangout or whatever optionally, but we’re only providing asynchronous collaboration. You will be able to leave your team up to a point. That is, you could always LEAVE your team, but each event within the Games will have a deadline for joining - meaning if you’re not on a team when the event starts, you’ll have to wait for the next event to re-join a team. My question right now revolves around the collaborative process. The idea is that the team has a single, shared code repository, meaning everyone on the team can see it. I want you to visualize this in your head, and then describe to me how you think it should work. The overall idea is that your team works on the assignment together, and then forwards (by the deadline) a final team entry for judging. Would you start by allowing one team member to upload an entry, and everyone would collaborate on it? Or would every member have the ability to upload a potential entry, and you’d all discuss which one you wanted to use as the team’s starting point? If there can be multiple parallel entries, how will the team decide, and then indicate to the system, which one is the “final” one? Remember, the team only sends ONE entry up for judging. NB: We will provide private team discussion threads within the system. You will not necessarily be able to comment on a given script file _per se, _but we’ll provide a means to reference lines of code within the team discussion threads. That keeps the discussion in one place, but allows you to refer to specific wodges of code. How will the code portion of the collaboration work? That is, when someone wants to provide a revision to the team entry, would they upload/paste an entirely new entry? Or would we provide a text editor so that you could edit the code that already exists? I’ll note that we’re NOT NOT NOT providing an ISE experience - so a Web-based text editor might well leave room for unintentional errors. We won’t help you with those. If we use a paste-in text editor, we’d enable you to paste in an all-new entry, or to simply make quick changes to an existing entry, right in the Web page. That might be convenient. The new system will recognize the concept of a given entry consisting of multiple files - e.g., a script module that includes a .psm1, .psd1, and .ps1xml file, all working as a unit. Do we version-control this? That is, if everyone’s uploading revisions, do we just keep ’em all, and indicate which one was most recent? That way you could always access older versions? Again, if each team gets a single entry, and each member can paste in new code or edit the existing code, this seems workable. We’d keep old versions so you could “roll back” if needed. If we did that, would you NEED a version-to-version comparison tool? If so, the complexity of that may mean we don’t run the Games this Winter. So think real hard about WANT vs. NEED. We COULD provide a way to download, in a ZIPped folder hierarchy, all versions of the entry, meaning you could then use local comparison tools on your computer to compare revisions. Your thoughts? What do you think is the best workflow for this kind of Games?
**Congratulations to our top winners, **determined by our expert judges (and in this case we also considered their CrowdScores), mikefrobbins and taygibb, who have just won a free pass to Microsoft TechEd Europe or Microsoft TechEd North America 2014. Instructions are in your profile for claiming your prize. It is transferrable, but must be claimed/transferred by the end of July. Congratulations to our top voters/commenters, Klaus_Schulte and Poshsg0606. They were chosen randomly for this award, although I did review their comments and scores to ensure they were all meaningful and consistent. They’ve won free passes to the PowerShell Summit North America 2014; these are transferrable and must be claimed/transferred by the end of July. Thanks to everyone who participated in The Scripting Games this year. We’ve received a lot of feedback from you, and very much appreciate the time and spirit you spent to offer it. We’re taking it all into consideration for our next event.
We’re pleased to announce the winners for Event 6 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.
As the Scripting Games begin to wind down, I know that we’ve come across a number of divergent opinions, especially in the comments. “You shouldn’t use .NET classes!” says one comment, “you should have done this with a .NET class” says another comment _in the same entry. _Fun. It’s great to see those differences - but it’d be better to discuss them. So I’m asking everyone in the Games: Go through your comments on all of your entries. Find comments that you disagree with - but that you could possibly see someone making an argument for (and that you’d perhaps argue against). Post those here as a comment, or email me (there’s a contact form on the Site Info tab). I want to collect these, and start a series of discussions where we can, jointly, start to hammer out some patterns and practices that we, as a community, feel work well. Some of those may have exceptions (rules always do) - “never use a .NET class _when there’s a cmdlet that can do the same thing, _but otherwise go nuts” is one example. Fire away. For now, you don’t need to put your argument for or against - I’m just collecting the topics that we’ve seen disagreement or differing opinions on. Discussion will follow! The result of this will be a community-guided Best Practices ebook, which I’ll assemble and we’ll give away for free. I might even build that, initially, as a wiki, so that folks could contribute to it over time. Will see - that’s a bit of extra software.