Dream Machine – Alexander MacGregor

Computer science is no more about computers than astronomy is about telescopes.” – Edsger W. Dijkstra

Coming into this course, the above quotation would have been incomprehensible to me. How could computer science not be about computers? These intricate, abstruse, blackboxed machines need a discipline as rigorous as a science to understand and interrogate. While I haven’t been completely divested of the latter sentiment, I am now far more confident in the universality of computational concepts than I was before. I believe it was receiving a grounding in semiotic concepts that set the stage for this transition in thinking. The ideas found in Peirce’s writings were absolutely instrumental in understanding the basic processes that are taking place whenever we interact with a computer. As was the information we gained about Morse and the history of binary. It now seems to me as though computers are just devices that we, as humans running OS Alpha, use to augment functions and processes we’ve been performing since time immemorial.

This is not to understate the importance of the mechanization of computers, particularly the “microcomputer revolution”. As we have tracked the history of computing, from the human computers of the Napoleonic Wars that inspired Babbage’s Difference Engine to the iPad, we see that the technological mediation of computational devices has been prismatic. The ability to cognitively offload tasks to machines capable to executing them at a far faster and more powerful rate has been crucial to constructing our present. The history of interface design has also been imperative in making use of these computational machines as widespread as it has become. From Vannever Bush’s Memex to Ivan Sutherland’s Sketchpad to Douglas Engelbart’s WIMP innovations, we see how design concepts like affordance and extended cognition have played a vital role in shaping our computational landscape.

One word I keep coming back to is abstract. I have found the process of de-blackboxing the “computer” to necessarily be an act of abstraction. Going from thinking of computers as simply mechanical devices to a “universally applicable attitude and skillset”, as Jeanette Wing puts it, has been enlightening for me, and has helped to expand the realm of what I considered to be computationally possible. I now consider computational thinking as more of a philosophy than a strict set of concrete rules governing inputs and outputs to machines. This pliability is important when thinking of possible phenomena arising out of the dissipation of computers into our surroundings. As society moves from conceiving of computers as metal encased box of wires and chips to potentially every item we see around us, computational thinking will need to be applied in order to tackle to the problems of tomorrow.

One last point I wanted to make was related to this quote from the Dennings reading:

Many of us desire to be accepted as peers at the ‘table of science’ and the ‘table of engineering’. Our current answers to this question are apparently not sufficiently compelling for us to be accepted at those tables.”

It seems to me as though a natural result of the spreading of computational thinking would be the dissolution of this ossified hierarchy that seems to be implicit in these “communities of practice”. We learned how important these distinct communities were during the early years of computing, and how their fingerprints can still be seen on our modern devices, but I believe that once we gain a deeper grasp on the ever-present computational processes surrounding us, “computers” will no longer be seen as being native to the disciplines of science or engineering, but will rather be as intrinsic to all fields as reading and writing are.

In conclusion, as I try to synthesize all the concepts we’ve learned so far in this class, I come to the question of how will the computational interface and system designs of tomorrow integrate historic design concepts, and interpret semiotic concepts such as extended cognition, affordance, and distributed cognition, to create a more intuitive computational relationship between the user and the machine in order to meet our new computational desires and needs? I’m particularly excited to see these developments as they apply to Artificial Intelligence via concepts like parallel computing and artificial neural networks. As computing continue to become a ubiquitous presence in our lives, breaking down that prevailing “man-machine” illusion may produce even more radical consequences to the way we not only perceive computers, but the very world around us.


  1. Irvine, Martin. “Introduction: Toward a Synthesis of Our Studies on Semiotics, Artefacts, and Computing.
  2. Simon, Herbert A. ” The Sciences of the Artificial. Cambridge, MA: MIT Press, 1996.
  3. Denning, Peter. “What Is Computation?” Originally published in Ubiquity (ACM), August 26, 2010, and republished as “Opening Statement: What Is Computation?” The Computer Journal 55, no. 7 (July 1, 2012): 805-10.
  4. Murray, Janet. “Inventing the Medium: Principles of Interaction Design as a Cultural Practice.” Cambridge, MA: MIT Press, 2012.