Last year, while cleaning out the basement of my childhood home, I discovered a plastic storage bin marked "Calcusoft." Inside were piles of notebooks filled with sketches, storyboards, and lines of code, and buried beneath it all, a TI-83 Plus graphing calculator.
I bought the calculator the summer before eighth grade, when it was included on a list of required supplies for students entering algebra. At the time, owning a graphing calculator was a small but significant rite of passage for a junior high student. It was a sign of academic sophistication. It announced to younger peers that the equations you were expected to solve outpaced the primitive features of meager, four-function devices. But most importantly, graphing calculators were programmable, which meant they were equipped to play games. While possession of a traditional handheld gaming system constituted a brazen breach of school rules, playing games on a calculator maintained the appearance of genuine scholarly work. A graphing calculator was like having a school-sanctioned Game Boy.
Calculators did not always have this allure. The earliest handheld models were only "programmable" in the sense that they used rudimentary code to complete repetitive computational tasks more efficiently. It wasn't until 1990, when Texas Instruments released the TI-81 graphing calculator, that the medium became a feasible platform for game design. Unlike earlier devices, the TI-81 was equipped with a simple yet versatile programming language called TI-BASIC. Anyone willing to learn a few elementary commands could create text, graphics, and movement in minutes.
A decade had passed by the time I purchased my graphing calculator, and in the years between a robust online community had formed. These programmers -- many of them high school students -- had even figured out how to program their calculators in more complex source languages. Unfortunately, accessing such games required specialized knowledge and equipment, making the best programs precious. I wanted more of these high-quality games, and I wanted to learn how to make them.
For me, it began with "Mario" -- a TI-BASIC game based loosely on its Nintendo-trademarked namesake. In the program, users guided an "M" around obstacles to collect asterisks (coins, presumably) across three levels. Though engaging, the game could be completed in a matter of minutes. I decided to remedy this by programming an extended version. I studied the game's code, copying every line into a notebook then writing an explanation beside each command. I sought counsel from online tutorials, message boards, and chat rooms. I sketched new levels on graph paper, strategically placing asterisks in a way that would present a challenge to experienced players. Finally, after a grueling process of trial and error, I transformed my designs into code for three additional stages. Seeing my classmates play my extended version of "Mario" was so fulfilling that I soon began creating and coding original games under the moniker "Calcusoft" -- a juvenile attempt to brand my programming work.
Eventually I advanced from TI-BASIC to computer-based languages to tackle more ambitious projects. By senior year, I developed an elaborate role-playing game set in a virtual re-imagining of my school. The protagonist wandered through pixelated, monster-infested versions of real-life classrooms and hallways, battling for the safety of students and teachers. Due in part to the game's subtle nods to familiar school-wide jokes about the building's architectural features and eccentric faculty, the program spread quickly among classmates. They expressed satisfaction in seeing a familiar environment transformed into the virtual stage for an apocalyptic battle, and I took pride in seeing my work enjoyed and shared by friends and strangers alike.
After graduation, my interest in calculator games was supplanted by more collegiate pursuits. Truthfully, I'd almost entirely forgotten about my foray into programming until I discovered the "Calcusoft" storage bin in my parents' basement. In the years since, I'd become a high school English teacher and started a PhD in education. As such, even though paging through piles of code and illustrations was a pleasant nostalgia trip, I was most struck by the volume and depth of learning my TI-83 Plus had enabled.
If you had asked them, most of my high school teachers would have called me an unmotivated student or said that I lacked discipline and didn't take learning seriously. And yet, that abandoned storage bin told another story: with the aid of my calculator, I'd crafted narratives, drawn storyboards, visualized foreign and familiar environments and coded them into existence. I'd learned two programming languages and developed an online network of support from experienced programmers. I'd honed heuristics for research and discovered workarounds when I ran into obstacles. I'd found outlets to share my creations and used feedback from others to revise and refine my work. The TI-83 Plus had helped me cultivate many of the overt and discrete habits of mind necessary for autonomous, self-directed learning. And even more, it did this without resorting to grades, rewards, or other extrinsic motivators that schools often use to coerce student engagement.
In light of this, I've now begun to see Texas Instruments graphing calculators as unique among educational technologies in that they enable learning that is couched in discovery more than formal teaching. Though they are still largely used as devices for computation, their programmability affords uses that exceed traditional calculators. These uses, in turn, can be marshaled in service of two very different yet interdependent aims of education -- convention and subversion.