A few years ago I ran across the Advent of Code challenge. It’s an interesting set of puzzles that you are asked to solve. Most are at a scale that wouldn’t be practical to solve manually. Once you solve a puzzle, there is usually a second part that’s unlocked (you must put in the solution) and then your progress is tracked on the site. A new puzzle is released every day leading up to Christmas, but you can skip around and solve puzzles as you like after that. I had fun in 2016 working through puzzles in T-SQL, PoSh, and Python. I need to go back and work the 2017 items.
Recently I was trying to brush up on some Python skills and ran across the PythonHow challenge. Before going on to rework some exercises and coursework, I decided to see what I remembered. The puzzles are easy, but one leads you to the next. In other words, you start with pythonhow.com/start, when you solve the puzzle, you get a letter, say “r” (that’s not right). You change the URL to pythonhow.com/r/ and you get the next challenge.
That’s a neat way to get build a flow. I could imagine that as a way of teaching someone new skills. Maybe you want to help someone learn R (currently our Wednesday Questions of the Day) or window functions. Give them a problem, and once they solve it, the answer leads them to the next puzzle. A puzzle game, but one that paces you according to your understanding of a topic.
I wonder how many people might like learning like this, or perhaps might be frustrated when they can’t solve something. Maybe this is a nice addition to something like a Stairway Series, giving readers a chance to practice skills. Do you think this is a good idea? Not a super hard, challenge the experts, but maybe a way to help those that are beginners or intermediate SQL people learn to code better.
Maybe some of you would like to build some small puzzles in T-SQL that we could link together? This might be a fun way to set up a T-SQL Advent calendar one year. Feel free to submit some to me.
The Voice of the DBA Podcast
Listen to the MP3 Audio ( 4.0MB) podcast or subscribe to the feed at iTunes and Libsyn.