We asked Dr. John Harris, valued GI alum from Computer Science and founder of the Playful Pixel, to tell us the story of his collaboration with the Ideas Clinic, a Software Engineering initiative that offers creative crash-courses for first-year students. Dr. Harris stepped in to support the clinic in designing and delivering a game experience. Read on to discover the results of this unique interdisciplinary collaboration and find out what “Games as learning sandbox” means.
How it Started
The Engineering Ideas Clinic approached the Games Institute in the Spring of 2018 looking for someone who could help them design one of their "Ideas Clinic Activities" for the Software Engineering program. They were looking to develop an activity for the Software Engineering program (that did not have an activity yet) and thought that perhaps programming video games could provide an engaging learning context. As I was the defacto "game maker" at the GI back then, the Ideas Clinic was directed to me and I worked with them over the course of the summer to devise the new activity.
These activities are meant to give incoming 1st year classes bite-sized exposure to the variety of topics that they'd then experience more fully over the course of their degrees. So, for example, with the Mechatronics activity, students would break into teams and work to program and control a small "ping pong ball launcher" (just some simple microcontrollers and small spinning motors) over the course of 3-4 days. At the end of the 4 days, each team would compete to knock over some stacked plastic cups. In effect, this was like something of a "Mechatronics summer camp".
Since the entire class of students would suspend their regular lecture schedule for the duration of the Ideas Clinic activity, faculty buy-in from their regular professors was also important. The Ideas Clinic, as I understand it, exists "beside" regular engineering teaching but most of the faculty are on-board because the Ideas Clinic can achieve certain unique forms of teaching/activity due to their special format/resources.
What we developed
The activity that we developing for the software engineering students ended up taking the form of "collaboratively programming the A.I. of an interstellar colony ship". Each ship was broken down into 4 sub-systems (defence, propulsion, navigation, sensors) and each sub-system would be iteratively programmed by teams of 4-6 students. The actual software engineering focus was on how to get all these different sub-teams writing and sharing code, communicating with each other, designing systems that would interoperate with each others' systems, and so on. The whole spaceship angle was just fun window dressing.
As an added bonus, the challenge presented by each of the sub-systems was modeled around some classic engineering problems: "solving" defence required some geometry and predictive trajectory calculations, propulsion required implementing some proportional/differential controllers, navigation required learning/implementing simple graph traversal algorithms, etc.
To add more fun, at the end of each day, each ships' sub-teams could combine their code together and demonstrate their overall progress to the whole class as part of an exhibition. So, once the students' uploaded their code, the instructors could "press play" on the simulation/game and the whole class could watch as each ship autonomously navigated through the sandbox galaxy we'd made for the students. Full of asteroid hazards, warp gates, and uncharted planets, we provided an increasingly challenging series of sandboxes so that students could test their progress in a sort of obstacle course. The sandbox "game" we'd made was just a simple, top-down 2D game ala Asteroids, but it was at least more entertaining than your standard algorithms course slides.
Besides designing/developing it, I helped run the activity live in September 2018. They subsequently ran the activity again in September 2019 but I was busy wrapping up my PhD at the time.
Planning for the COVID-19 Pandemic and the future
Fast forward to today: Due to the COVID-19 lockdown messing up so many other courses' usual in-lab activities, the Ideas Clinic has approached me again to help adapt/offer the spaceship activity to classes outside of just software engineering. The students don't have access to all the usual rad hardware their professors and TAs would normally use to demonstrate engineering theory, so the Ideas Clinic is trying to help out and adapt the spaceship activity to accommodate mechanical, electrical, systems design, and electrical/computer engineering classes.
At the end of the term, the director of the Ideas Clinic (Sanjeev Bedi) is also looking to write a paper about how game tech was used to help solve education problems in the face of the pandemic.
For the next 2.5 months, I will be working with the Ideas Clinic to design, adapt, and deploy the spaceship activity to at least five different engineering classes. Looking even further ahead, the Ideas Clinic has plans to adopt a similar "games as learning sandbox" approach for some of their graduate level engineering courses. I'm much less aware of the details of those plans at this point however.