The London Python Dojo was a bit different again this time. We’ve had randori katas with all of us taking turns at the one computer connected to a projector. We’ve had a series of talks showing us some of the interesting things that exist in the Python world and this time we split into teams and tackled a problem we defined on the night of writing a text based adventure.
We were split into teams of roughly 5 which meant that we were able to all talk in our smaller teams. This was certainly useful for me as I’m still so rusty with Python and I don’t know my way around the large libraries that come with it. Having Toby suggest the cmd framework for doing our command interpreter saved us a lot of time and gave us the wow moment of the night during the show and tell with our tab completion for the commands. I’ll have to look into a bit more closely and see what else it can do. I’m not sure I entirely like it as a way of doing text adventure interaction, but it did get us going very quickly for the night and had the advantage of working.
There were the usual debates around data types and design which is a big part of what I enjoy about programming in groups. People seemed to be more interested in how it worked as a graph problem with the rooms of the world. I’m thinking I’m more interested in combat tables and initiative, but I think that is just the old D&D gamer coming out. Maybe for a future dojo we could work on a combat system. Plenty of Freely (d20, GURPS) available systems to steal rules from out there.
On the night I said that I still preferred having one pair and the rest of us kibitzing/heckling. It was a problem for me as most of the time I wasn’t actually able to see the screen that the code was on so I wasn’t able to think about the code as we went along. I think the solution to this might be setting up 2 monitors for each of the teams so that a group of 5 can actually see what is going on. Having external keyboards might make this easier too. That way we can still have small teams, but allow everyone on the team to see what is happening. Not being able to see the code made me feel detached, so the 2nd monitor might solve that problem.
I really liked seeing the different solutions the various teams came up with and I’m looking forward to reviewing the code on github. As always I learned a load and it was great seeing and being part of such a welcoming and friendly group.