Technical Lead of Content Acquisition 

What we talk about when we talk about software

Programmers often use figurative metaphors to help others understand their novel designs. Research by cognitive linguists, such as George Lakoff, indicates that metaphors are more fundamental to the way we think – the only way we can conceive of and communicate about abstract concepts is to relate them, by metaphor, to our physical selves. And you don't get much more abstract than software! We usually do not notice the metaphors we are using when describing software. Our use of metaphor can help or hinder how we design software, communicate about software design and organise ourselves to collaborate on software development. I'll share some of my own experiences of metaphor on software projects, both successful and unsuccessful.