If anyone ever wanted to know what programming was like, without actually doing it, then I would recommend them to play the indie game Minit.
For the uninitiated, Minit is a truly fascinating game in which players only have sixty seconds to explore the world and complete tasks, before their character dies and they have to restart from a home point. This means the player only has a short amount of time to find and complete objectives. Thankfully, completing quests and earned items do carry across between lives, providing some relief.
Suffice to say, Minit is a tense experience. As I played, I found myself constantly building mindmaps of where I needed to go, and what I needed to achieve.
Very early on in the game, you find a bar-owner who needs you to kill some crabs. Sounds easy enough. But with only sixty seconds on the clock, things can get quite tricky. First, you need to find all the crabs, secondly memorise their positions, and then finally create a route to allow you to do everything on time. Gathering pieces of the information, putting it all together and finally executing a strategy is not dissimilar to programming.
In the film The Social Network, various characters talk about being “wired-in”. This is described as the act of being in a state of intense focus while programming. Whilst I’m unsure if programmers use the exact term “wired-in”, the sensation is as-described in the movie. As you program, you’re creating what feels like endless mind-maps as you analyse and troubleshoot code. In this way, programming and Minit are not dissimilar.
Several games over the years have tried to teach programming, or focus on creating mechanics which are based around core tenants of the profession. These games are great for people who enjoy programming or wish to learn it, but for those who don’t have that interest they can be overly daunting. This is where Minit succeeds, as it dilutes down the core traits of the profession into gameplay: research, bringing all the aspects of your research together to build a plan, and then implementing your plan.
I doubt Minit’s creators intended for the game to represent programming, but I feel pretty confident in saying that if you hate playing Minit, then coding shouldn’t be your day-job.