The Dérive and mob programming

About a year ago, I went to the Agile New England conference on Mob Programming (https://2018.agilegamesnewengland.com/index.php/mob-programming-conference). For some reason, I had booked crazy flights. I headed out from home at 3:30am to get to Boston... So I arrived in a fairly wired state. I took the bus out to Burlington. Because why wouldn’t I? Of course, I then found myself walking along the edge of the freeway for half a mile. And felt even more out of place. 

The conference itself was amazing. But the highlight was Jessica Kerr’s keynote on the Camerata and the origins of Opera (https://the-composition.com/the-origins-of-opera-and-the-future-of-programming-bcdaf8fbe960). I spent a great evening in the bar that night talking to Jessica and Llewelyn Falco about teleportation, beer, symmathecy, museums, healthcare... It was a good night. 

After the conference, I went through to Boston with a couple of other folk, and spent the day walking the Freedom Trail. This was a lovely guided walk that meandered through central Boston, guiding you into unexpected nooks and crannies, as well as famous tourist sites. And then I flew back to Europe on another badly booked flight.

I transferred in Paris first thing in the morning, but with a five hour wait. So I headed into Montmatre, walked up to the cathedral, and sat in the morning sun drinking coffee and eating crepes. And then I walked randomly around Paris, thinking of Paris ‘68, Guy Debord, Symmathecy, Complex Systems, walking... And then I finally flew home. 

And those few days have been bouncing around my head ever since. 

The previous year, I had read “The Old Ways” by Robert Macfarlane. This is a lovely book about walking, and embedding yourself in a landscape. I became fascinated by the idea of allowing your mind to expand into the landscape around you. And, by extension, deliberately placing yourself in an environment with the right shape for my mind. 

This idea merged in with my thoughts and impressions from Boston and Paris...

Guy Debord wrote about the “Theory of the Dérive” in the late 50s. It is a revolutionary, experimental way of being in the city. A Dérive is a deliberately unplanned walk, a drift, through the lived (urban) environment. The idea of a dérive is to allow the city to guide you, to let it draw you in certain directions, and to observe both the terrain, and yourself, as you wander and wonder. It is a deliberate practice for increasing the chances of interesting interactions, or situations: Guy Debord was a Situationist. 

Some practitioners of the dérive use maps from the wrong city to guide them, to deliberately lead themselves in the wrong direction, and into places they would otherwise never go. I once walked from Dundee bus station, using a map of Aberdeen to guide me to the train station. I ended up walking through lovely posh houses on the Law that I had never been to before. 

The dérive was created as part of the growing movement of psychogeography: the art of exploring how the built environment affects the human psyche. We create our own built environment, and it in turn creates us, in a continuous interplay, a feedback loop...

Cities are complex systems, and they impose constraints on their component parts, such as us. We have habits and routines, rules that we follow. These are, in many ways, necessary for the city to function. But they restrict us. They constrict us. 

A dérive is a method of breaking out of that routine and observing how that change affects us. Complex Systems tend to be stable, but they can be pushed or disrupted into new patterns. Sometimes these will be stable too, or sometimes the system will fall back to its previous stable pattern. By deliberately changing how we respond to the city, we disrupt our mental model of the city, and new patterns can emerge. By paying attention to these new patterns, we can better understand both the city and ourselves. 

One fascinating part of the history of the dérive is that Guy Debord recommended going in pairs or groups, or even multiple small groups, and then discussing the findings. 

And that brings me software. Large scale software is complex, and difficult to comprehend. We tend to fall into habits in how we deal with it. With mob programming, we constantly discuss the code that we see. We discuss how the code makes us feel, and how we can respond to it. We collaboratively respond to it. And especially on large legacy systems, you often have to wander around randomly, just to get a feel for the shape of the system. We perform a dérive in order to observe the code, its structures, its shape. We perturb our mental models of the code, in order to create new patterns, new insights, and a better intuitive grasp of the software. This is best done in a group, so that we can verbalise these insights, and make them more concrete. 

And this is one reason I really like mob programming. 

Comments

Popular posts from this blog

We always start from where we are

Mobodoro

Gilded Rose Katas