2019-09-13, 12:00–12:30, Ferrier Hall
How can you help Pythonistas learn a new code base more quickly and level up their Python skills? One way is with a 'code walk' — talking through a code base while reading the code together. I will talk about how I like to structure a code walk and its benefits.
How can you help Pythonistas learn a new code base more quickly and level up their Python skills? One way is with a 'code walk' — talking through a code base while reading the code together.
Over the last five years I have spent a lot of time doing 'code archaeology' i.e. trying to understand how and why someone else's code works! Of all the techniques I've come across, code walking is one of the most unusual, but it has excited me the most, and I want to share my ideas on how to do it with you.
I will talk about how you could structure a code walk, starting with the overall structure of a code base and how it interacts with other components, to highlight what is more or less important, what is standard, and what is special or weird, and drilling down into the code to discover typical usage, entry points, core code, the flow of execution, and more.
I will talk about when, or if, to use diagrams, debuggers, introspection, and simply reading code to understand what is going on. I'll also mention some of the benefits that a code walk might bring to your team, such as helping beginners to level up, bringing new starters on board, helping old hands structure their knowledge into digestible chunks, and kick starting communication amongst team members.