Last Saturday, the 13th edition of the JS Coderetreat took place in the Futurice offices. If you’ve never been to a coderetreat, think of it as an afternoon of practicing your TDD skills around a specific task. It’s usually separated in sessions that look like this:
I’d been to one Coderetreat before and the task at that time was Conway’s Game of Life. It’s a medium size task that gives some room for exploration, while not seeming daunting, and my impression at the time was that it worked pretty well. Every session was different, and I tried different approaches. In the JS Coderetreat, Wolfram wanted to give it a bit of a surprise twist, and so we didn’t do Conway’s. We did Tetris. And it was amazing.
To see why Tetris was so good, let’s look at all the different angles me and my pairs looked at during the sessions:
And that’s just what fit into 5 sessions. Other pairs came up with completely different and amazing approaches. This is why I feel that Tetris was a great choice, even if a bit of a daunting one. It felt closer to what an actual task would look like, and the amount of different approaches was also a testament to the many ways there exist to write good, quality software.
That’s my main takeaway from the entire day. There will always be someone with another, wildly different opinion on how to solve a problem. And only by opening ourselves to the realm of those possibilities can we be certain that we aren’t blinded by our own perceptions.
P.S: Kudos to Wolfram for facilitating and Larissa (couldn’t find her twitter account ☹️) for organising such an amazing event.