When computer science freshmen first begin their undergraduate degree at NUS Computing, they’re required to take an innocuous-sounding module called CS1101S. There, they are introduced to the fundamentals of computer programming and, in the process, are transported to a whole new world — one comprised not just of 1s and 0s, but of spaceships and alien planets.
The students’ intergalactic adventure comes in the form of the Source Academy, an immersive online virtual world where much of the course material is conveyed. At the beginning of each semester, students register as new cadets in the Source Academy, a sleek metallic-grey spaceship that is “vaguely reminiscent of Star Wars and Star Trek,” says co-creator Martin Henz, an associate professor at NUS Computing.
“The aim is to learn about the power of the Source, which is basically programming,” he says. The storyline unfolds throughout the semester and the cadets are sent on missions by the Academy’s leadership, who “bear a striking resemblance to academic staff,” says Henz with a laugh. Each mission is linked to a key programming concept or skill, and students are graded based on their ability to complete these quests, which range from fixing a broken telescope to obtaining coordinates to send back to the spaceship.
“Ultimately, it’s about learning the structure and interpretation of computer programs,” says Henz. “The central objective is to form mental models that let students understand how computer programs are run.”
Mental models are a crucial part of learning, especially when it comes to concepts that are somewhat abstract in nature. They provide a way for students to visualise how things work in their mind’s eye — similar to how a chemist uses the periodic table to understand the shape and properties a certain atom assumes, or how a biologist comprehends the way a cell produces proteins.
“We built dedicated tools within the Source Academy to support these mental models for computer programming,” says Henz. “A secondary aim, but one that is also extremely important, is engagement. We want to show students how fun computer science is and to expose them to different interesting fields like robotics, graphics processing, video and sound processing.”
The module, which is called Programming Methodology, was once optional for freshmen. But now all incoming students — more than 600 each year — have to take it in their first semester. “I think we should start their studies on a high note,” says Henz. “We should excite them, especially these days when we are recruiting some of the best students to computer science, students who would formerly be attracted to medicine, business, or law.”
“Many don’t have prior exposure to the field, so it’s our responsibility to show them how exciting computer science is and that they actually made the right choice,” he says.
A translation sparks an idea
The Source Academy debuted in 2016, but its genesis can be traced years back, to a textbook called Structure and Interpretation of Computer Programs. But how did a brightly coloured, immersive adventure game emerge from a drab, two-dimensional textbook first published more than three decades ago?
The process began in 2008, when Henz began translating the textbook, considered “the gold standard for computer science 101.” Its authors, MIT professors Harold Abelson, Gerald Jay Sussman, and Julie Sussman, wrote the book using a programming language called Scheme, but “that language has always been at the fringes of computer programming,” says Henz.
Other languages were more mainstream and popular, and Henz “had a hunch it might be possible to cover the same material” using one of those instead. So in his spare time, he began rewriting the book using JavaScript. And when a teaching vacancy opened up for the Programming Methodology course a few years later, Henz said he would take it — on condition that he could use his new textbook.
The department agreed. “My colleague Low Kok Lim and I discovered that we had a unique opportunity to make use of JavaScript’s browser-based setup,” Henz recalls. “And that’s when we set out to develop a system for teaching freshman in a web-based environment.”
Embracing web browsers instead of desktop applications was important, they felt, because “it’s the most common interface nowadays and the main way people interact with the world.” Plus it would mean that students could complete their lessons and assignments conveniently on any device — laptops, iPads, smartphones — from any location, even if they were travelling on the bus or train.
Experiences that enhance learning
To turn the Source Academy into a living, breathing thing, Low and Henz engaged a team of computing students. Tse Pei Ng, then a student at the School of Design and Environment, led the all-female team. Together, they came up with the idea for a space theme, and the talented Ng then sketched scenes of foreign planets filled with maroon-coloured mountains and lush lemon-yellow trees, alongside control centres and cadet dorm rooms on the spaceship that were adorned with sleek lines and clean interfaces. Ng also drew aliens ranging from big green, friendly, Baymax-like creatures to small purple, furry blobs.
The team then brainstormed and developed storylines and missions for the Academy’s space cadets. These have evolved and gotten more complex over the years, says Henz, and now revolve around the spaceship encountering “weird, incoherent things” as it enters the orbit of an unknown planet.
After some investigating, the cadets discover the cause of the mysterious ongoings and meet some of the planets’ inhabitants.
Among the many missions they undertake as the semester progresses is one that involves repairing a telescope located on a nuclear wasteland on the planet. Because of the task’s hazardous nature, the cadets have to send in a robot to do the job. The students work in teams, each writing bits of code which they then combine to successfully navigate the robot through a physical maze in the lab.
Students are also offered the opportunity to complete additional missions to explore topics and techniques that go beyond the core material of the course. Doing so earns them extra credit — something two-thirds of students chose to do last semester.
“Right from the start, we had an ambition to engage students in an immersive online game environment,” says Henz, who is an ardent supporter of such experiential learning. “It’s been proven that when students have meaningful experiences, learning outcomes improve.”
The Source Academy is about creating such a meaningful, experiential learning experience.
And judging from the students’ reactions every semester, it’s been a successful venture. “Freshmen come into the school and they’re just blown away by the tools that we’ve built and how they have this semester-long game where the learning just automatically happens as they spend their days in the Source Academy,” says Henz. “It’s quite a unique system.”
Most recently, the platform won the faculty-wide Annual Digital Education Award for the academic year 2020/2021. It has also been nominated for the prize on a university level, with the winners due to be announced in May.
The Academy gets refined and upgraded every semester, thanks to current course lecturers Low and Boyd Anderson, as well as a handful of alumni. In future, Henz plans to incorporate different robotic systems into the course, as well as introduce a drone component.
“I see the Source Academy as an opportunity to get students excited about the field of computer science,” he says. “And to connect students with the learning objectives through interesting, engaging experiences.”