The Limits of Metaphors
All metaphors break down with sufficient mileage.
[And they often break down quite quickly, like that car metaphor I just made.]
Because metaphors break down, it's worth pondering the fact that most of humanity only comprehends software through the use of metaphors.
- The metaphors most users experience are graphical user interfaces (desktops, folders, round-rect app icons, back buttons, etc.)
- The metaphors our friends and family hear include our own attempts to describe how writing software is actually quite a lot like crafting sturdy Amish furniture
- The metaphors conveyed to business people—at least, the ones that pay to have software developed—are as boundless as they are inane (and they're usually quite inane)
- The metaphors that software developers themselves are steeped in are perhaps too complex to ever escape. We stand on the shoulders of giants: building domain-specific metaphors that rest atop dozens of other metaphoric layers. [If you're inclined to disagree, then I suppose that implies you can yet derive the 1's & 0's backing the software you use; or the logic gates; or the assembly operations.]
My proposal today is that we start treating software metaphors with greater skepticism.