Story-thinking, computational-thinking, programming and software engineering
Abstract
Working with stories and working with computations require very different modes of thought. We call the first mode "story-thinking" and the second "computational-thinking". The aim of this curiosity-driven paper is to explore the nature of these two modes of thinking, and to do so in relation to programming, including software engineering as programming-in-the-large. We suggest that story-thinking and computational-thinking may be understood as two ways of attending to the world, and that each both contributes and neglects the world, though in different ways and for different ends. We formulate two fundamental problems, i.e., the problem of "neglectful representations" and the problem of oppositional ways of thinking. We briefly suggest two ways in which these problems might be tackled and identify candidate hypotheses about the current state of the world, one assertion about a possible future state, and several research questions for future research.
Turn this paper into a lesson
ArcXiv compiles a structured reading guide from this paper's metadata: plain-English importance, contributions, prerequisite concepts, which sections to read first, flashcards, and a quiz. Grounded in the abstract, never invented.