Tuesday, May 1, 2012

The 2012 Powershell Scripting Game(shows) in review


Over the past few weeks, those around me know that I’ve been talking a lot about Powershell, how much it can improve your life, and about the 2012 Powershell Scripting Games. Nearly everyone I’ve shared with has asked “What are the Scripting Games?”

My answer to them was and will always be “It’s a bunch of geeks learning new stuff by attempting to solve 10 real-world scenarios by using Powershell.” For the less technical, I would follow that up with “It’s kind of like a reality game show only with computers and stuff.” Oddly enough, that made sense to most people, so I’ll continue with that theme as I share a few of my observations below.

“Survivor” it was not

When others around me (both technical and non-technical) heard this was titled “Games”, the near immediate response was “What do you get if you win?” Before feeling compelled to look it up, the first few people got the answer “I don’t know…” I really didn’t know, and I wouldn’t be surprised if others competing would have had a similar response. Never did I feel like the other competitors were in it to beat me – I know I wished no ill will on any of the other competitors. To the contrary – unlike Survivor – I found that those who were participating did their best to help everyone else while not giving up the actual solutions. The Powershell community is a group of people who like sharing knowledge, not a bunch of people who want to out-wit their peers, clamoring to win. Even as the games came to a close, the winners were grateful for their recognition.

“Wheel of Fortune”

Growing up, my Papaw Neier was an avid wheel-watcher. He would watch Wheel of Fortune every night. If we were at his house, it was mandatory to watch it with him. Each of us grandchildren would sometimes randomly scream letters at the TV, but Papaw would always be there to offer sage advice on what letter combinations made the most sense and guide us to the correct solution, never letting on that he knew the answer. These games, as in real life as an IT professional, were a lot like Wheel of Fortune. The initial event description provided the basis – the RSTLN and E. However, it didn’t stop there. We weren’t left to blindly guess with only the letters first put on the board. A lot of the information was available, but it was the comments to the posts that helped to complete the picture. Scripters would ask questions and someone, usually IamMred, would clarify the requirements, but always without giving up too much information as to give away the solution. Without this careful dissemination of information, some of these events would have been difficult at best. This is a good practice to take back into real life – always be ready to help out someone else, but be slow to give up the answer. Encourage learning, not leeching.

“Beat the Clock”

During the first week of the games, I was able to get the scripts turned in within a reasonable time frame, some within the same day. I even won one of the daily prizes donated by O’Reilly Media! As the second week came, life happened. I had to leave the games on the back burner, not knowing whether I’d get back to them or not. As the second week ended and life returned to normal, I realized I still had time to get all the events completed, but it wouldn’t be easy. I had work to be done and leaving the family to fend for themselves favor of the scripting games was not an option. Each evening, after everyone was in bed, I began working feverishly into the early morning (fortunately, Eastern time-zone) to get the events completed just minutes to hours before each of the deadlines. I did my best to make certain that my wife and kids were only moderately affected by my own personal game of “Beat the Clock”. I knew the task, I knew how much time I had to get it done, and I knew no one else could do it for me. As a microcosm of real life – we only have so much time, so use it wisely, do it right, and don’t forget those who love you.

“Dancing with the Stars”

I’ve tried on multiple occasions to get through an entire episode of “Dancing with the Stars” without success. While I’m certain that it has significant entertainment value to others, I have never been able to enjoy watching it. However, the premise of the show seems clear – learn from the expert and you’ll do better. I am incredibly grateful for the time that the expert judges took to not only analyze and run our scripts, but take the time to comment and offer advice in the process. In Event 2, it was suggested to me to avoid using Read-Host and switch to using PromptForChoice() by Boe Prox. I had never heard of this before, but soon realized how cool it was, implementing it in Event 8. In the comments of my Event 3, Bartek Bielawski introduced me to the ConvertToDateTime WMI method, which I have used professionally already. My scripting and therefore my career are now better off having been granted the privilege of “Dancing with the Stars” during the scripting games. These guys are masters of the craft. For as much time as I put in just writing 10 scripts, I can’t imagine how many hours these judged sacrificed to make each of us better at what we do – for free. They deserve an award.

Thanks again to the Scripting Guys, all the judges, and their families for creating an environment where we can all learn to do our jobs better, for free, and have fun doing it. Congratulations to the winners and to everyone, both beginner and advanced who competed.

I look forward to gaining more knowledge and experience next year!

About Kyle Neier
Husband of a magnificent woman, father of 5, SQL Server geek, IndyPASS Vice President and Food Guy, DBA automation zealot, amateur Powershell evangelist. Follow Me on Twitter