Coding Dojo

Edit on Github

Participants: BrenoFranco , DaniloSato , FabricioSousa , HugoCorbucci , JacquelineMarchetti , MarianaBravo , RodrigoKumpera , ThiagoColucci and Yoshi

Scribe: DaniloSato

Kata: Sokoban in Python (


20:15 ~ 20:30 Choosing and Discussing the Problem

After we decided to solve the Sokoban problem, we started discussing about it. We should not focus on an algorithm to actually solve a given level, but actually build a command interpreter and the game engine to simulate a Sokoban game. We agreed on the conventions for the symbols used to represent each item in a Sokoban level such as : the man, a box, a storage, an empty floor, and walls.

20:30 ~ 22:00 Coding Session

The problem was solved in Python in a RandoriKata style, switching pairs every 7 minutes. We came up with a TO DO list of things to implement. At the end of the Randori session, we were not able to finish the Kata, but it was possible to parse a level, walk and detect invalid movements. The code is available at

22:00 ~ 22:15 Retrospective

Some of the lessons learned from the session were: some Python tricks (such as using list comprehensions and split); it was difficult to start coding and the problem was not as simple as it seemed; it was good to have our red/green gadget working again. Some of the things that could be improved: we would be able to finish if we had more time; there was a lot of talking in red; some people suggested a more object-oriented paradigm to tackle the problem.