It occurred to me last week to wonder: in organisations that predominantly do development in Python, do the managers talk endlessly about having to get all their vaguely duck-shaped objects in a row?
Come to think of it, metaphors maybe come duck-typed by default. Say "Have we got all our ducks in a row?", and then (hopefully) whatever someone substitutes in for "ducks" makes sense and is useful but (occasionally) they throw a "Bwaa?" exception :)
Presumably it suffices that they have an iterator which returns nothing but vaguely duck-shaped things and a colinearlity test which returns true for any three objects returned by that iterator?