I attended an awesome workshop last weekend entitled, The Slowest Computer on Earth, hosted jointly by CSNYC and EyeBeamNYC. As per the event’s description:
Kaho Abe and Ramsey Nasser, media artists and teachers, run the Playable Fashion Afterschool Program for high schoolers in collaboration with Eyebeam in Sunset Park, Brooklyn. With support from CSNYC, Kaho and Ramsey are running a workshop for teachers on a module from their program called “The Slowest Computers on Earth.” Two teams of participants will form into two “computers” competing to execute code as fast and as correctly as possible. These computers use pen and paper for memory, a grid of sponges for a screen, human minds and bodies as processing units, and a simple turing-complete assembly language as their instructions. A stack of printed code will be given to each team to execute, and clock speeds in Hertz will be measured and reported.
This embodied exercise aims to foster a visceral understanding of computation in the abstract. By not involving actual computers, the exercise avoids the distractions of contemporary operating systems and programming languages, and instead focuses on the underlying concepts that are timeless and platform-agnostic. By running this exercise before teaching actual programming, Kaho and Ramsey aim to give students a foothold into reasoning about what the machine is actually doing when it is executing their code. Following the workshop, participants will discuss how an exercise like this can be incorporated into existing computer science curricula.
Kaho (@kahodesu) and Ramsay (@ra) collaboratively developed many modules for teaching creative computing, coding, wearables, game design. Their workshop on Sunday was all about The Slowest Computer on Earth, and it was truly remarkable.
- Attendees split into groups of 4 at tables. Each table had a big bucket full of classic kitchen sponges (yellow with a green scrubbing side), a few pads of post-its, and some markers.
- We placed 100 sponges yellow side up in a 10×10 grid with no gaps in between.
- We labelled along the top of the grid 0-9 with a number corresponding to each column (this is the x-axis). We also labeled this axis COLUMNS so as not to be confused later.
- We also labelled along the side of the grid 0-9 with a number corresponding to each row (this is the y-axis). We also labeled this axis ROWS so as not to be confused later.
- We tacked additional larger post-its to the table below our sponge grid. These were labelled a to p in two rows. The top row was for a – h, and the bottom row was for i – p.
- We were handed reams of paper bound with two binder clips at the seam like a book. The pages were full of instructions.
- As a group, we followed the instructions – this is where the users are “slow computing”. These instructions mimicked loops, calculations, if-then statements, and more.
- At some points, we were assigned or we had to calculate different values to the variables a to p. Different commands were to turn over the sponge at a designated (column, row) coordinate. Since we laid them out with the yellow side up, when we turned over a sponge, it’s visibly green due to the scrubby side.
- Each group competed to complete the given activity first. We were timed, and these finish times were calculated into MHz (the equivalent speed a computer would take to execute the same program).