> we often focus on how x is analogous to y, but skip over the part where we think about how x is not like y.
Yes! Regardless of whether Djikstra is 100% right or wrong about "radical novelty", software engineering is relatively more novel than more familiar activities (is that phrasing tautological?). Analogies are comforting, because they make a strange thing look less strange. But we have to take both sides of the cut: we can compress our knowledge based on these similarities, while carving away those same similarities to highlight the differences in their own right.
A well-posed set of analogies can surgically lay out the internal structure of a concept. (But we still have to grapple with the pieces!)
Here is an interesting study showing that our solution to a problem greatly depends on the metaphors used to describe the problem. This isn't necessarily good or bad, but it does mean we may think we are coming up with solutions to the problem but be unaware that we are greatly constrained by the words used to describe the problem.
Ooooh, yes, I remember talking about this article with a coworker some months ago.
> we are greatly constrained by the [metaphors] used to describe the problem.
Linguistic relativity might be controversial, but this, I feel, is a "correct" kernel of that idea. (Forgive the slight recombining of your sentiment!)
If you use for example category theory words like “monad” you know what it can do but even better, what you can’t do which is very important when building algorithms. Sure you can say tacos instead but something gets lost.
Yes! Regardless of whether Djikstra is 100% right or wrong about "radical novelty", software engineering is relatively more novel than more familiar activities (is that phrasing tautological?). Analogies are comforting, because they make a strange thing look less strange. But we have to take both sides of the cut: we can compress our knowledge based on these similarities, while carving away those same similarities to highlight the differences in their own right.
A well-posed set of analogies can surgically lay out the internal structure of a concept. (But we still have to grapple with the pieces!)