Instant Legacy Code
When we ran our recent Coderetreat, one session I really wanted to try was one I picked up from a workshop I did earlier in the year with Kevlin Henney and Jon Jagger. The basic idea is to show people how quickly you can create Legacy Code.
We had a 45-minute session. For the first 20 minutes, we asked people to pair up, and solve Conway’s Game Of Life from scratch, with no other constraints.
But 20 minutes in, we asked one person from each pair to stand up and move to a different partner, and carry on.
Then, five minutes later we asked the other person to move as well to a different partner again, and then carry on solving the problem. The code they encountered was only 25 minutes old, but everyone found it incomprehensible and convoluted.
We discussed it at a retrospective afterwards, and people were quite angry at the code they encountered, and at the people who’d left it (who were in the room with them!). And they felt guilty about walking away from such low quality solutions and handing it over to someone else. Emotions in coding are fascinating :-)
Because people were using personal laptops, we wanted to make this a safe session. We were using Cyber Dojo (https://www.cyber-dojo.org), and each session has a six-character hash in the URL. We made a note of each hash, and left it on the table where the code was being worked on. Then, when people moved, they could take their laptops with them, and pick up the new URL, and thus the new code, on their new table.
And this opens up a new possibility. Maybe we could swap URLs with another city during a Coderetreat!
"...people were quite angry at the code they encountered...And they felt guilty about walking away from such low quality solutions and handing it over to someone else"
ReplyDeleteThis is fascinating indeed!
It showed me the problem under another angle, though. I think everyone of us have found them selves on either side or on both at the same time.
Thanks for the article!
This comment has been removed by the author.
ReplyDeleteOoh yes, this is a great idea!
ReplyDelete@ClareSudbery