circles & squares (Codevember 2016), Eliza Struthers-Jobin

P5XJS // Mindstorms — week 3

Since the beginning of July, p5.js’ diversity initiative has been holding an interactive book club in collaboration with Princeton StudioLab.

Eliza SJ

--

Pre-script: This post will be more casual than my other writing here on Medium — so far, most of the work I‘ve shared has been generally ‘academic’ or journalistic in tone — but I wanted to be able to talk about broader ideas & projects that don’t necessarily call for so much formality. So if you’re into it, keep reading!

An important part of becoming a good learner is learning how to push out the frontier of what we can describe with words.” -Seymour Papert

For the third week running, about twelve of us hopped on an open call to discuss Seymour Papert’s Mindstorms, a book that is both a classic and yet so incredibly timely. (Check out last week’s rundown here if you’re curious.)

With recent news of Facebook’s struggles to teach their AIs to speak english, I couldn’t help but think of Papert’s own assertions that contemporary language isn’t concentrated enough to adequately structure how we talk about the learning of skills. Apparently Facebook’s AIs have been bypassing our language’s convoluted shortcomings by inventing their own optimised dialect. It would seem Facebook’s engineers have been having a bit of trouble speaking the computer’s language well enough for the AI’s to in turn master our own (in this case, English.)

Something else that really struck a chord this week was Papert’s mention that on their first encounter with the concept of recursion, things seemed to really click for the children using Turtle Geometry. Recursion and the power to dive into infinity with just a few simple keystrokes is something that I’ve always found pretty fascinating and it’s what inspired my code response this week.

As a child, I’d stand in the family bathroom which had a three panelled mirror that I loved to play with. I’d fold the two outer panels inward, reflecting the three mirrors off one another. I loved playing with the angles, watching myself dive what seemed like deeper and deeper ‘into’ the mirrors, my face becoming smaller and smaller, the light growing darker and darker. I always felt like I was staring straight into infinity and forever. Code available here.
Left: Rosa uses Using Scratch to create #ObjectsToThinkWith, featuring spoken quotes about learning & creative expression pathways Papert interesting and engaging. Right: Sharon created an interactive color wheel, colors changing and moving with mouse movement.

A Mathematics Made for the Language of Learning

Code is a type of communication with it’s own universe of languages, (there are lots of code languages and each comes with their own set of debates about which version of the language to use… and that’s not even taking the framework debate into account. #tangent) that you can’t precisely translate into contemporary non-mechanical syntax and structure. Which might be why there exists an ocean’s worth of computer science analogies and metaphors, Papert’s Turtle Geometry being one of them.

“A child (and, indeed, perhaps most adults) lives in a world in which everything is only partially understood: well enough perhaps, but never completely. For many, understanding the Turtle’s action so completely that there is nothing more to say about it is a rare, possibly unique, experience. For some it is an exhilarating one: We can see this by the children’s eagerness to explain what they have understood. For all it is a better model of the crispness of analytic knowledge than most people ever encounter.” — Mindstorms, p.117

In chapters three and four Papert goes on to raise some pretty interesting questions to challenge his very own theory: does a description in procedural language truly grasp the essence of the process? And could grasping the essence be somehow overlooking its complexities? In the end, could Turtle Geometry do more harm then good?

TL;DR: No. In fact as Papert reminds us, a huge part of what being a scientist entails is understanding the validity (or lack thereof) of an idea or concept on an intuitive level.

Some of the ideas that stood out to me from our discussion of chapters three and four:

  • Contemporary language falls short in structuring the way we talk about learning and the learning of skills. Programming languages on the other hand can do just the opposite. They provide both a means of control over the computer but also a highly descriptive new way to reason about things that extend far beyond the computer itself. As steeped in technology as we are, this idea seems all the more timely today. Papert suggests that there will be a bleeding over into the general culture, and I would argue it’s already happening. “Programming as a source of descriptive devices, that is to say as a means of strengthening language.” (Mindstorms p.98)
  • Misunderstanding the importance of repetition as a brute force approach to learning. Trial and error without a deliberate problem solving approach is almost primitive, and is definitely unproductive. As the LOGO Turtle proves, in tuning into what’s going on, and taking control by articulating and analysing behaviour we are lead to intuitively assimilate an idea/concept.
  • Component skills that students can stack one on top of the other, leading them to uncover a wider array of problem solving possibilities. This is incredibly powerful if not just because it gives students the ability to not only divest themselves of erroneous skills along the way, but understand why they’re no longer needed.
  • The pressure of having to know the answer off the cuff and the shame that comes with making a mistake versus the empowerment in talking out the reasoning behind a potential solution.
  • The belittling of children confronted by an all-knowing teacher. In fact students know the teacher is pretending not to know what they are trying to get the children to solve themselves. But should a student catch a teacher making a mistake, the power dynamic in the classroom breaks. This separation of what is appropriate for students to learn and when, removes the possibility for either teacher or student to be vulnerable. However debugging does just the opposite, allowing everyone to learn on the same level. Teachers become human, students become their intellectual equal.
  • Humans as variables a.k.a life-long learners — when things change (context) our answers change. Then ‘mistakes’ aren’t in fact wrong, but simply bugs to understand and solve. There is no one right answer. The ubiquity of the internet now makes this idea so important to consider in education. Teachers and students both have access to a wide breadth of human knowledge in a way that just wasn’t true decades ago. The system needs to adjust for this — can educational spaces be restructured to allow for teachers and students learn along aside each other?
  • Papert’s “…be as dumb as the Turtle” reminds me of Rubber Duck debugging where you explain line by line what your program is trying to do to an imaginary duck. Nine times out of tend you’ll realise what you should have done/where the error is before you get to the end of your explanation. In both instances you’re forced to frame your thinking to match the computers mode of functioning.

All this talk of language has me coming back to the idea that not all concepts can be translated across spoken languages — it’s something that I find really interesting since it means that certain notions just can’t always be shared, and since the way we all see the world is largely structured by the language we use to describe it, Papert can only be right when he says that in a computer-rich world, the influence of computer languages will carry over into our culture somehow.

Of course that brings us back to last week’s more political slant on the matter — will we let our culture be forever influenced by the GUI and contend ourselves with only a partial understanding of how all this technology we’ve come rely on pretty much 24/7 actually works? I wonder too, about how an increasingly diverse world of coders might finally tear down the stereotype of the programmer who ‘lacks social skills’ and is uncomfortably blunt because he/she is only used to communicating with computers. As the types of uses for code evolve and spread through different atmospheres — like the creative sector for example — I would expect our human desires to influence computers just as much as their language needs might affect us.

Also worth checking out is this rundown about how the p5.js diversity initiative got started. It’s creator Chelly Jin was inspired by Lauren McCarthy’s experience creating the p5.js library, which saw a slew of inclusive individuals come forward to contribute to the endeavour. In what feels perfectly appropriate, my own reticence to get into code was pretty much squashed after I discovered how all-in the creative coding community truly is during my first Processing Paris workshop back in 2012. Processing(older sibling of the p5.js library) pretty much blew the lid off what I thought programming could be about.

LINKS

#diversityp5js #mindstorms

--

--