Iron Scripter: Learn PowerShell through code challenges

Hello, friends! Today I want to talk about the Iron Scripter code challenges and the accompanying website. The challenges are excellent for practicing challenging concepts. What’s that you say? Not familiar with Iron Scripter? Let’s get you up to speed.

Iron Scripter: A brief history lesson

The Iron Scripter website is part of the PowerShell.org family and provides material for the Iron Scripter challenge that takes place at PowerShell Summit each year. For those unfamiliar with the Iron Scripter event at PowerShell summit, let me give you a brief introduction.

The Iron Scripter challenge was a concept dreamed up by Don Jones, Jeff Hicks and Richard Siddaway. The concept was to challenge small teams of participants to work out a complex problem through teamwork in front of a live audience with a limited amount of time. Three teams (known as factions) battle to solve the same problem and each present their solution at the end of the allotted time. Each faction must be creative and divide workloads to complete the complex challenge in the scant time allotted. The factions must work as a team to make meaningful progress.

Iron Scripter is one of the most popular events at PowerShell Summit. The winning faction is crowned “champions” and hold the title for a full year until next years’ competition. Many faction members display their affiliation on their websites as a badge of honor.

Learning with Iron Scripter

The Iron Scripter website is used to explain the competition, share code hints, and give general tips to help faction members prepare for the upcoming challenge. But along the way, the Iron Scripter team began posting other challenges that anyone could do on their own. These stand-alone challenges are lesser known in the PowerShell community and are a missed opportunity for people looking to learn basic code principles or hone their skills. Taking part in these stand-alone code challenges can help you get better at writing great code.

The challenges I am referring to are scripting puzzles designed to test your knowledge. You can solve most puzzles using multiple methods, but to do so requires you to dive deep into your knowledge of scripting and code principles to figure out interesting ways to solve the challenges. The challenges are the brainchild of the legendary Jeff Hicks. Jeff has been an integral part of the Iron Scripter competition since its first beginnings. Jeff has been educating people about PowerShell and its usage for system administration for many years. He is revered for his blog posts, books and customized training seminars. His challenges on Iron Scripter are challenging but educational.

Challenges for all skill levels

If you haven’t visited yet, head over to the IronScripter website and locate the tags on the left-hand side of the page. You’ll notice three tags related to skill levels: Beginner, Intermediate and Advanced. Each of those tags will point you toward individual challenges sorted by skill level. Each challenge has a simple set of instructions (rules) for what you are trying to solve, and for each post, there should be comments from community members that have shared their solution to the puzzle.

If you worried that maybe you don’t know enough to take part, don’t let that stop you. The point of these puzzles is to challenge all skills levels with targeted exercises that reinforce basic coding concepts. These challenges help you get better at techniques used to write efficient code.

The brilliance in these puzzles is that they age well. You can try any of the puzzles on the website, regardless of their age, because the basic concepts that these challenges test change little with each release of PowerShell. The puzzles have variations based on skill level with each variation becoming more challenging. This allows you to go back and try the more challenging versions of the puzzles you already completed.

If you haven’t tried the challenges yet, you can dive right in with the latest puzzle and when you think you have solved it, post your solution in the comments and wait for someone to review your answer. If you’re struggling to solve a puzzle, you can peek at previous solutions for how someone else attempted to solve the puzzle.

When learning how to code, it’s important to try unique methods of learning. Books, blogs and videos are fantastic resources to learn from, but real-world problem solving scenarios can offer unique opportunities to see how code concepts work “in the wild”. The puzzles designed by Jeff are building blocks that will help you write better code for your own scripting solutions.

I’ll be featuring Jeff’s code challenges in the coming weeks and months and I hope you take part in trying to solve the challenges and share your work. Watch here for more information on upcoming Iron Scripter challenges!

About Mike Kanakos

Active Directory pro, PowerShell fanatic, sysadmin, contributing author to the PowerShell Conference Book, Co-organizer of @RTPSUG user group, tech blogger AND speaker at PowerShell Summit 2019!!!