The Scripting Games: Here's What's Happening

I know a lot of folks have been wondering about when the next Scripting Games will be. It's a complicated answer... so bear with me for a minute while I unburden my soul to you. If you prefer to just skip the explanations, you can skip a bit to see what we're doing, part 1.

The Background

I'm not sure how long Microsoft's Scripting Guys ran The Scripting Games, but it goes back at least to 2006. Back then, the focus was on VBScript, it wasn't until a year or so later that a parallel PowerShell track was started, and another year or two before VBScript was discontinued. The Games back then were... well, games. They weren't always terribly real-world, but they were fun, and they made you think.

In 2013, Last Scripting Guy Standing, Ed Wilson, turned the Games over to PowerShell.org. Ed was, to put it bluntly, exhausted. Coming up with nine events in two tracks, let alone grading the thousands of entries, wrangling the assistant judges, begging for prizes - it was a couple of months out of his life, during which he was still expected to do his full-time job. So we stepped in, mindful of the trust he was placing in us, to take over and keep the tradition alive.

We've tried some variations on the Games, but two things became abundantly clear:

1. The real value people like in the Games is getting the individual expert feedback and scoring.

2. The one thing we simply can't feasibly provide is individual expert feedback and scoring.

Seriously, we'd go out and recruit a couple of dozen judges, but it's just mind-numbing to look through entry after entry after entry after you've already put in a full day of work at your job. YOU wouldn't want to do it. So in the end, it'd always be the same 4-5 stalwarts who slaved away for 40 or more hours - not kidding - to make sure everyone got a grade and a comment. It's just insane. None of us who've done it for a few years ever wants to do it again, even if it's the one thing that would save us from our robotic conquerors. We can't handle it.

We tried to do community scoring and that was a huge non-popular-thing-to-do. People wanted "the experts" giving feedback, not some schmuck from the next cube over. Which we understand, but it doesn't mean we can physically deliver what people are after.

What We Thought About Trying

So we thought about a Games where we went back to focusing on puzzles. Believe me, the original Scripting Guys weren't reviewing, grading, and commenting on every submission. Most entries went in via e-mail, and they picked the ones they thought were winners. But the Games evolved to the point where people expected that individual feedback.

So when we shared our draft plans with a few folks, their knee-jerk reaction was universally, "WTF?!??" They struggled with the idea of a Games that didn't include individual feedback. And once we started being honest with ourselves, we could appreciate the value in that, and how people would react when the Games eliminating the judging.

But we still can't do the individual judging. There just aren't enough experts with enough time. We've all got 50-hour a week jobs just like you do, and we're talking THOUSANDS of submissions that we're supposed to do instead of hanging out with our friends and families.

So... there we were. Kind of stuck between a rock and a hard place.

Here's What We're Doing, Part 1

We're going to pivot the Scripting Games into a monthly event, sort of. Each month, we'll publish a puzzle. They won't all necessarily be real-world, but they'll all be designed to make you think about something important. We'll try to describe why it's important, too, since in some cases it won't be super-obvious. You'll get a full month to work on your entry, and you'll be encouraged to post it (we'll provide posting instructions).

We're encouraging user groups to occasionally or regularly make the monthly puzzle a part of their meetings. We're encouraging them to publicize when they're doing so, and if they allow virtual visitors, then you'll have the opportunity to share your solution with a group of peers, work on a solution together, and give each other feedback in real-time. That's a hugely valuable exercise, by the way, and I encourage everyone to take advantage of the opportunity if they can. You don't work in this field alone - start to make some friends and colleagues, even if they're across the globe.

The following month, we'll post a new puzzle. We'll also post a wrap-up for the preceding month's puzzle. In it, we'll offer a sample solution and an explanation for it. When possible, we'll offer Celebrity Participant solutions, often from members of the PowerShell team or from other MVPs. And, when we have volunteers willing to do so, we'll post a "stream of consciousness" article that shares how that person tackled the problem and came to their solution. Finally, we'll include some analysis of the entries people posted, including things we especially liked, and things we didn't like so much.

All of that should provide the learning opportunity that the Games were originally created for. You'll have to use some critical thinking, some out-of-the-box skills, and some cleverness. You'll get to see how other people approached the problem, and gain some new perspective. No, you won't get an individual score or commentary - but this isn't a certification exam, and it isn't intended as a personal benchmark for YOU. It's a way for us to all learn together.

And, best of all, the Scripting Games' monthly puzzle will create an opportunity for the Games to resurface on The Scripting Guy's blog, as Ed has offered to run the monthly puzzles.

Here's What Else We're Doing, Part 2

We haven't given up on the idea of an annual, fast-paced event that includes individual feedback. It's going to have to be a new set of volunteers who tackle that, though, and we have a few people thinking about it. I imagine it'll be a larger-scale challenge, so that you can exercise several sets of skills and knowledge and once, and get feedback on something that's perhaps more real-world than a puzzle. I can't offer any timelines or promises on this; it's a huge undertaking, and we're still running ideas around. Heck, if you think you have a solution, share them in Web Site Feedback forum on PowerShell.org.

However, if you offer an solution, be prepared to volunteer to implement it. What we don't want are, "here's what I'd like YOU do to, and I'll just sit back and consume that." "Solutions," for us, are PEOPLE, not ideas. I myself am not a community, nor are my fellow PowerShell.org Board members. ALL OF US are a community - so if this is something the community wants, the community has to pull together to build it out.

A User Group CALL TO ACTION

Do you run or participate in a PowerShell User Group? Well, today's your lucky day. First - why not make the monthly Scripting Games puzzle a part of your user group meetings? Invite remote visitors to come along for the ride - increase participation by putting code front and center.

And here's a special offer just for user groups: We'll be publishing the monthly puzzles on the beginning of the month (likely the first Saturday). As a user group, you can send your best join submission right to Ed Wilson, The Scripting Guy. He'll select the most noteworthy user group submissions, publish them, and comment on it, raising visibility for your group and its members. He'll also publish selected excerpts that he finds noteworthy from other user group entries. Caveats, here: only the registered user group leader will be able to submit the group's entry. So if you're not listing your user group on PowerShell.org, consider doing so.

So now there's a HUGE reason to get involved with a user group, since it's another opportunity for you to work on code together, and have that code published in one of the highest-profile PowerShell blogs in existence!

And to sweeten that pot even more - the user group that has the most entries selected over the year will be eligible for a grand prize, courtesy of PowerShell.org. You see (and this was all Ed's idea), we really want to give people more reasons to create, run, and participate in user groups. They're really the best way to make community happen. It all starts at a local level, even if you're attending remotely.

Here's Something YOU Can Do To Help

Offer to write the monthly puzzle. Seriously. Drop a line to Admin over here at PowerShell.org, and include an RTF (not Word, please) document with your monthly puzzle. You'll get credit, and you'll be giving back to the community that's supported you as you learned PowerShell. Do it for the children.

Here's Something Else YOU Can Do

We've heard over and over that expert reviews are valuable to people. You know, you can probably have an expert review without having a Scripting Games. Get together with a handful of colleagues, and invite your favorite PowerShell expert to a Code Review Hour. Have some code ready for them, and do a Skype screen-share or something and let them pick apart what you've done. PAY THEM. Offer $100 or $200 an hour, which is a going rate depending on the level of expertise you're getting. You and your friends can pool your funds. Heck, with five people offering $20 each, you've got $100, right? And if that expert review is truly valuable to you - well, "valuable" means you can put a value on it, and $100 an hour ain't much.

If PowerShell.org can do something to facilitate these, like helping you contact interested experts, let me know in the Web Site Feedback forum, and I'll figure something out.

In the Meantime

So while you're waiting on that first Scripting Games, Monthly Edition (expect it in July), start thinking of the kinds of puzzles you'd like to see. Ones that make people think, even if they don't necessarily have one-and-only-one correct answer. Don't just CONSUME community, help CREATE it by offering to write one of the monthly Puzzlers. And start thinking how you, and we, all together, can do a better job AS A COMMUNITY of providing peer code reviews, code feedback, and other elements. I look forward to your ideas.

About Don Jones

Don Jones is a Windows PowerShell MVP, author of several Windows PowerShell books (and other IT books), Co-founder and President/CEO of PowerShell.org, PowerShell columnist for Microsoft TechNet Magazine, PowerShell educator, and designer/author of several Windows PowerShell courses (including Microsoft's). Power to the shell!

5 thoughts on “The Scripting Games: Here's What's Happening”

I think this approach is definitely a step in the right direction. I will admit I saw your post looking for experts to manage the Scripting Games and as much as I enjoy looking at different approaches, I imagined looking at a forum question that had 1000 solutions and reading through each one. That made me cringe in fear because reading posts and providing solutions is time consuming. If the Scripting Games was a team sport, you would get much stronger entries and each team would be teaching one another throughout the development process.

Hopefully, the puzzles will have different levels of complexity and have sufficient requirements for a challenge. I might have some ideas I will email. Thanks for looking for solutions because I think puzzles like these are invaluable for learning. Although there are many ways to tackle an issue, efficiency and best practices are always up for debate.

I would recommend changing the group submission requirements to not just be registered user groups with Powershell.org. There are other communities out there that want to participate, but are not structured like a normal user group and don't need the scheduling, blogging or extra features that Powershell.org offers.

Please open up group submissions to any group that wants to register as a participant of the games.

I like the idea of a monthly edition. As well as puzzles submitted from the community, I'd like to see some of the Microsoft product teams (Exchange, Active Directory, SQL Server, System Center, Hyper-V etc.) producing the occasional puzzle. Even puzzles from PS heavy, non-MS products such as VMware would be welcome.

While puzzles designed to solve problems with specific products are not really suited to a fast-paced games I think they could work well in a monthly format. It would likely expose us to new technologies and new cmdlets and also give the product teams a way to demonstrate how their products can be managed with PowerShell.