[...] the experience of programming seems to be somewhat different. Ellen Ullman (1997) expresses it this way: "You write some code, and suddenly there are dark, unspecified areas. All the pages of careful documents, and still, between the sentences, something is missing" (21). Rather than becoming mechanical or predictable, over the course of time the flows of information managed by software become more dynamic, complex and unstable. Increasingly, programmers interact with worlds that are not abstract, mechanical, formalized, or in any simple sense, globalized [...]