What Netflix's "Bandersnatch" Teaches Us About STEM Education
by Gerald Friedland
Netflix recently released a multiple-choice movie branded to be part of their Black Mirror series, called Bandersnatch. The protagonist is a teenage programmer working on a contract to deliver a video-game adaptation of a fantasy novel for an 8-bit computer in 1984. The multiple storylines evolve around the emotions and mental health issues resulting from a reality-perception mismatch between a new generation of computer-savvy teenagers and twenty-somethings, and their care givers. For me, the movie also raised a very interesting question about the root cause of the narrated conflict, which I am going to explore in this blog post. In other words: How is it that teenagers were able to become professional computer game developers through self-education? In today's world, this would be considered an amazing accomplishment.
So, what can we learn from the history behind the story as we are working to empower the next generation in the science, technology, engineering, and math (STEM) disciplines?
Taking a step back, when it comes to STEM education, many people have opinions and even more companies have solutions. Of course, everybody has their own reason for engaging in the topic and it's a valid endeavor: The next generation of scientists, mathematicians, and engineers needs and wants to be trained early. When it comes to teaching the skills of programming, an increasing number of people agree that starting in high school or even college is too late. But how young can we actually start?
A myriad of initiatives, from code.org to Kickstarter campaigns, on various games and tools seem to suggest as early as age 4 (pre-K). Looking back at my own personal history, I started at age 7 because my mother had bought one of the remaining Commodore 16 machines from a supermarket chain in Germany. She had hoped to use it to do accounting for her business. As it turned out, however, this machine was not good for that and so the curious boy that was me started growing an interest for the idle magic box in the basement. The remainder is history that I don't want to bore the reader with. The more interesting questions is: What was this machine actually made for?
Commodore's mission in the 1980s was to bring "Computers for the masses, not the classes". Indeed, PC's weren't popular yet and very expensive, so the only access to computers was using terminals to a mainframe in either a university or a medium to large company. This created the niche for a computer that was better than a pocket calculator but not as powerful as a mainframe. Furthermore, adding an entertainment component such as interesting sound and color graphics to a machine that could be connected to a standard TV made these 1980s home computers appealing to the masses. Commodore and others shipped their computers with textbooks on how to learn BASIC, a programming language that was specifically made for beginners. (BASIC stands for Beginner's All-purpose Symbolic Instruction Code). Commodore itself also marketed different BASIC dialects, like Simons' BASIC, which was written by 16-year-old British programmer David Simons (very Bandersnatch). Long story short: Commodore's mission was what we would call STEM education today. Now, how successful were they?
Commodore's C64 was the most-sold single-piece computer until Apple's iPhone came out. However, the C64 had the worst version of BASIC. The home computers with better BASIC, the Plus/4, the C16, the C128, or the ZX Spectrum (see: in Bandersnatch), were all present but didn't have the same impact. Nevertheless, this generation of computers - the 8-bit home computers - shaped a generation of programmers. We often refer to ourselves as the 8-bit generation. This generation is the one that is featured in Netflix's multiple choice movie: Code-wielding teenage programmers who created entire commercial games on their own. Before they became game programmers, though, they had to learn programming by teaching themselves autonomously, because there was nobody else to teach them. I would argue that this provides strong evidence that home computer systems were pretty successful at being educational. So what is it that makes them so great?
Here is my quick rundown:
- The computer turns on and within milliseconds you are in a programming environment. There are no distractions, there is no need for other connectivity.
- The same environment allows beginners to work with the system in three ways:
- you can 'doodle' using the keyboard (which had added extra non-ASCII symbols for drawing purposes)
- you can interact calculator-style, using direct commands like PRINT SIN(3.1415/2), and even create hi-res graphics this way
- you can write programs in BASIC and run them
- The BASIC language is a simple-to-learn programming language that has access to the entire system without having to load libraries for sound, graphics, math, etc.
- The focus of the programming language is on efficiency. One command does one thing immediately (i.e., COLOR 0,6 turns the screen green). I challenge the reader to implement this function in Python.
In my mind, this makes the 1980s systems especially great for an elementary school programming experience. For an elementary school kid who is just learning to read and write, the sensation of causing an action simply by typing a word is priceless. At the same time, their motor skills aren't ready for extensive mouse drag and drop yet. Finally, I don't know about you, but I am too much of a helicopter parent to give my 8-year old unattended access to the Internet so that she can use one of the web-based programming education portals.
Granted, the 1980s weren't all paradise: Loading and saving programs, especially on cassette tapes, was a pain we do not want to expose our kids to. However, in 2019, all home computers can now be emulated, and so we benefit from the solid-state drive of the host computer. So, why not configure a Raspberry PI to boot into an 8-bit emulator and put it into the kids room? Help your children make the first programming steps in an 8-bit emulator while enjoying some nostalgic parent-kid bonding time! Speaking from my own experience, it's definitely worth a shot.
As many of us growing up with 8-bit computers can share some variant of the messages conveyed by the show Bandersnatch, let's show our children hands-on what this home computer experience was about. It's a story about generations of technologies and humans. At the same time, through the strong sensations that these machines create, we may spark that flame of interest that creates the next scientist, engineer, or mathematician. After all, home computers are a STEM education concept that has proven to work so well that Netflix even released a movie about it!
About the Author
Dr. Gerald Friedland is Principal Data Scientist at Lawrence Livermore National Lab and Adjunct Assistant Professor at the University of California, Berkeley. He leads a group of multimedia researchers, mostly focussing on acoustic analysis methods, machine learning, privacy and education. Dr. Friedland has published more than 200 peer-reviewed articles in conferences, journals, and books. He lead the creation of the teachingprivacy.org portal and authored a textbook on Multimedia Computing together with Dr. R. Jain published by Cambridge University Press. He also co-authored the edited research book “Multimodal Location Estimation” with J. Choi, which appeared with Springer. Dr. Friedland is the recipient of several research and industry recognitions, among them the European Academic Software Award and the Multimedia Entrepreneur Award by the German Federal Department of Economics. Dr. Friedland received his doctorate (summa cum laude) and master’s degree in computer science from Freie Universitaet Berlin, Germany, in 2002 and 2006, respectively. Dr. Friedland is also very engaged in the maker community. Together with his business partner Bertrand Irissou, he created the MOVI offline speech recognition Arduino shield (audeme.com) for which he received a Blue Ribbon Award at the Silicon Valley Maker Faire 2015. After the projected was successfully funded on Kickstarter two years ago, the board is now sold by Amazon, Arrows, and MicroChip.
This article was contributed by Gerald Friedland, author of Beginning Programming Using Retro Computing.