Skip to content

Instantly share code, notes, and snippets.

@sleepyfox
Created May 29, 2024 12:25
Show Gist options
  • Save sleepyfox/21b72630481351556aa08d5e4d080617 to your computer and use it in GitHub Desktop.
Save sleepyfox/21b72630481351556aa08d5e4d080617 to your computer and use it in GitHub Desktop.
Software storytelling
author: @sleepyfox
title: Software storytelling
date: 22-May-2008

Software storytelling

Many cultures had, at their pre-industrial stages, a rich oral tradition of storytelling as a means of communicating knowledge, before literacy became widespread.

Bards would gather people around the fire and tell rousing tales, inspiring and edifying a new generation of citizens with their practiced craft of passing along knowledge, morals and cultural values using the medium of entertainment. It seems that now, certain sub-cultures have developed 'secondary orality' as Walter Ong1 calls it, the creation of an oral transmission that exists alongside and is enabled by modern media, radio, television and the Internet. I propose that professional software developers can use the ancient art of storytelling to enhance their daily working practices.

I remember reading in Alistair Cockburn's excellent book 'Agile Software Development: Software through People'2 that Xerox discovered that their copier repair engineers didn't actually get most of their working knowledge from training or reading technical manuals, instead their operational knowledge was mostly gleaned from sitting around drinking coffee with senior copier repair engineers who would tell them tales of how they diagnosed or repaired difficult or obscure faults with particular models, whilst waiting for the next call-out.

When reading the original Gang of Four book on Patterns3 I realised that a chord had been struck with my early teaching experience (I taught Computing at a local college of technology after finishing post-grad studies), namely that people learn better by example. I have not however noticed a particular culture of software professionals 'telling stories' or 'describing patterns' in casual conversation around the water cooler in many of the places that I've worked, as usually people are so pressured that they talk only about the current task at hand. Discussion of 'patterns' tends to be limited to a sub-set of concrete formalisations rather than a contributory or exploratory activity.

In the UK, particularly in London where I work there is however a culture of going out for a drink down the local pub with your work colleagues, and there we do start to talk about previous experiences and start to share knowledge by communal storytelling - but surely this kind of information exchange should be encouraged at work rather than being left to the ad-hoc and time-constrained nature of an occasional after-work outing?

As an example of how this might work, whilst I worked for Hutchinson 3G we had a weekly 'architecture group meeting' (there were more than forty architects at H3G during the pre-launch build phase), organised during the lunch break, where we would bring our sandwiches and listen to a presentation by a different group member each week and ask questions, it was a good forum for knowledge exchange and one in which we could explore architecture patterns and discuss better ways of working.

In further posts I'd like to elaborate on how the craft of 'storytelling' fits in with the tool-kit of the software professional, and how we can leverage this skill to help us both become better individually and to increase the organisational capability of the team you work with.

References

Footnotes

  1. Oral tradition, Walter Ong, Wikipedia Article

  2. "Agile Software Development: Software Through People", Alistair Cockburn, 2001

  3. "Design Patterns", Gang of Four, 1994

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment