Extreme Pair Programming
Tomorrow I am running an afternoon-long session for our engineering team in order to try and improve our collective skills. The idea is that it’s meant to be collaborative and allow us to share our knowledge, as well as hopefully being pretty fun. Usually for these sessions whoever is running them does some kind of prep beforehand and produces some test cases that have to be made pass and a kata to go with them, but this week I haven’t had the bandwidth for that, and so instead I have come up with what I am going to call “Extreme Pair Programming”. The concept is (I hope) pretty simple:
- Participants are arranged into pairs; Alice and Bob are paired together
- Alice receives a coding problem. She cannot tell Bob what the problem is.
- Alice is not allowed to see the code.
- Bob is writing the code, and he is not allowed to see the problem.
- Alice can ask Bob questions, but he can only answer “yes” or “no”.
- Once Alice asks Bob if he thinks the solution is ready and Bob answers “yes”, the code is run against a suite of tests and the pair can find out whether or not they succeeded.
The fact that Leetcode can be used to facilitate this and let me get away not only without writing any code beforehand but also without even thinking of any problems, is a massive timesaver, and means this session could be run whenever (and that I can participate without having any kind of advantage from having studied the problem beforehand). I also think it has a lot of potential to be a hilarious disaster. I’m sure I’ll report back tomorrow.