I was listening to a podcast recently (which one doesn’t matter this time) and they mentioned a university which put down a big expanse of grass down between two buildings — and did not put any paths through it. Instead what they did was wait for students to wear paths where they walked constantly and then put the ‘proper’ paths there.

It turns out that the school in question was the University of Oregon and this was documented in The Oregon Experiment and the idea of having people first tread where they want the paths to be is called Desire Paths. Desire Paths have been replicated elsewhere which lead Larry Wall to once say:

When they first built the University of California at Irvine they just put the buildings in. They did not put any sidewalks, they just planted grass. The next year, they came back and put the sidewalks where the trails were in the grass. Perl is just that kind of language. It is not designed from first principles. Perl is those sidewalks in the grass.

I’m actually a bit amazed that it took me to hear about Desire Paths as they seem the perfect metaphor for Iterative development processes. The application is the untrodden field and with each sprint the paths created by the small, incremental feature development and acceptance slowly gain more permanence and become the final means to get from point A to point B.

Landscapers/planners who utilize Desire Paths in their work don’t pretend to have the conceit of knowing how their customers will really use their designs. Agile shops also don’t hold that conceit, not being able to predict the future; of the product, of the market, of the economy, of …

So put Desire Paths into the toolbox of teaching methods. For me, this was a huge find (and further solidifies my argument that the big learning for the craft will come from outside Testing). Hopefully it will be for you too.