How to Teach Computing across the Curriculum: Why not Logo?
Because of my recent posts on teaching with Logo and the culture of older programming languages, I’ve been poking around the Logo sites. My most enjoyable find has been the Logo Books page of the Logo Foundation. Remember that it was always part of Seymour Papert’s vision that Logo would be used across the curriculum, not just to teach programming. There was a rich collection of books written to support that vision.
- There were books written to teach discrete mathematics and algebra with Logo.
- E. Paul Goldenberg’s book on linguistics in Logo was wonderfully inventive. One of my favorite exercises: Grab text in each of French, Russian, and English. Now, replace all vowels with “_”. Can you tell which language is which? Then, there are variations, like replacing all consonants with “_”. The point is to get students to think about what characterizes a language.
- Of course, Turtle Geometry is a terrific book, connecting physics, mathematics, and biology . I’ve read the first few chapters, and skimmed other chapters, but I’d have to build up my math chops to finish it. The book finishes with non-Euclidean geometry and Einstein’s general theory of relativity, with turtles.
- I was pleased to see that LogoWorks is actually available in its entirety . Though the book is written for Atari Logo, much of it can be modified for more modern Logo implementations. The chapter on music was my favorite, with code for transposing music and doing ear training.
Probably the greatest treat for me was finding that all three of Brian Harvey’s Computer Science Logo Style books are available on-line for personal use. I have all three volumes in their first edition, and was pleased to see the second edition here. This is such a fun series of books. For example, Volume 2 includes a Basic compiler, and a version of Doctor (think “Eliza”) which is based on Brian’s access to the original source code. Just as we ask questions today like, “Does learning Scratch help you learn Java/C++/Python later?” there was the question years ago, “Does Logo help you learn Pascal later?” Or in other words, “Is the mental model that one develops with Logo helpful in understanding Pascal?” Brian’s Volume 3 kind of addresses that — by building a Pascal parser and compiler, complete with virtual machine! All of this in Logo — in fact, it will all run in the free, cross-platform Berkeley Logo that Brian has made available.
When I told my PhD student, Briana Morrison, about my explorations, she asked, “Why aren’t any of the CS:Principles pilot classes using Logo?” It’s a great question. Logo fell out of favor because researchers were unconvinced learning Logo led to higher-order thinking skills. But that’s not what we ask of computer science classes any more. We want students to learn computer science, and we want that computing integrated into other learning — a form of literacy. Logo is a powerful, Lisp-like language that was explicitly designed to be easy for students to learn. There are lots of resources available for using Logo across the curriculum. Why aren’t we? Is it merely because it’s “out of fashion”? Are we so swayed by what professional software developers think is fringe or “not real” that we will discount a great idea just because it is thirty years old? In other disciplines, foundational ideas are studied and built upon. Why do we ignore ours?