ETC Insights: How Creativity Opens the Door to Computer Science
In this ETC Insights Q&A, Melanie Lam reflects on Randy Pausch's educational philosophy, why storytelling belongs in computer science, and what three decades of Alice have taught us about helping people become creators.
By Shannon Riffe Email Shannon Riffe
What inspires someone to believe they can become a programmer?
For Melanie Lam, director of the Alice Project at Carnegie Mellon University's Entertainment Technology Center (ETC), the answer wasn't a textbook or a programming language. It was storytelling.
Lam, a 2005 graduate of the program, arrived at the ETC with a journalism degree and no coding experience. Through Alice, the educational software created by ETC co-founder Randy Pausch, she discovered that programming could be creative, approachable, and deeply human. That experience launched a career in game development at Activision and Electronic Arts before bringing her back to Carnegie Mellon to help steward one of the university's most enduring educational innovations.
As Alice celebrates its 30th anniversary, Lam reflects on the philosophy behind the software, why storytelling remains a powerful way to teach computing, and what she hopes people remember most.
You came to the ETC without a computer science background. What changed when you discovered Alice?
When I arrived at the ETC, our class was a mix of expert programmers, audio technologists, and artists. Here I was with my journalism degree. It was cool to see students coming in with these amazing skill sets, but it was also intimidating to walk into a setting where individuals could essentially create their own games from day one.
Then I sat in front of Alice. I understood what it could do. I understood the power of it, but I was thinking, "Where do I even start?"
It was made to be friendly to a non-programmer and for anyone wanting to make something interactive.. I ended up creating an entirescene, a whole story. Looking back, I had put all my code into one method, which is not what you're supposed to do, but I didn't know better.
I just saw it as a tool that could tell a story.
That was really cool because it was probably the first week of class, and I was able to use this tool to tell a story and present it to the whole class. It was a little intimidating, but it worked. Making something that works is a powerful feeling.
Randy Pausch believed anyone could learn to program. Why has storytelling been such an effective way to teach computer science?
If you look at the landscape of tools that teach programming, there are so many that help you make a game very quickly. There were much fewer ways where you could tell a story.
You can't tell a story without characters. That's why The Sims character creator was such a powerful addition to Alice 3. It gave people the ability to make someone who looked like them or someone who looked like an alien. Storytelling gives people a reason to create. Even for me, I wasn't thinking about programming first. I was thinking about telling a story.
Alice has evolved dramatically over the past 30 years. What has remained constant?
When it first launched, Alice was actually a VR prototyping tool. It was a way to quickly make a virtual reality world, which was way ahead of its time.
Over the years it evolved. We added storytelling features, viewable Java code, richer characters, and new capabilities. More recently, one of the big things I wanted to do was give Alice a facelift because it still looked like 1996. We wanted it to align visually with the apps that a 10-year-old would expect today.
But the core mission remains the same: helping people discover that programming is something they can do.
Students at younger and younger ages are more capable than we would have imagined. We do a summer workshop at Carnegie Mellon, and you'll have fourth graders that make a VR world in three days. They don't need to be walked through every control. They're more savvy in that way.
How is AI changing the way you think about computer science education?
Computer science education is evolving every day with AI and with new tools and platforms. More than ever before, the future of computer science education is uncertain in some ways. No one can really predict the next five or ten years, but Carnegie Mellon has the right people thinking about those questions.
One thing that's helped us is working with ETC graduate student teams to explore how AI could be incorporated into Alice. We've looked at what a future iteration might look like where you're not even doing drag and drop anymore. You're using voice prompts.
We're also exploring how AI can help modernize Alice's codebase. When you have software that's been around for 20 or 30 years, that's difficult code to improve. If AI can help modernize that code so it's easier to maintain, something that might have taken a human a year could potentially happen much faster.
After all these years, what do you hope Alice's legacy will be?
I don't really think in terms of my legacy. This is very much Randy Pausch's legacy, and I think of myself as a steward of it. I do think he achieved what he set out to achieve.
As part of the 30th anniversary, we've been collecting stories from people whose lives were changed because of Alice. One young girl couldn't afford summer camp, so she attended a free Carnegie Mellon camp where she used Alice for the first time. It showed her what she was capable of. She went on to work at Google, became a Google ambassador visiting schools, and eventually came full circle by teaching Alice as part of a university outreach program.
I'll still run into random people who excitedly tell me, "Hey, I used Alice in high school!"
I'd love to better capture the breadth of that impact. How do you tell the story of 30 years of helping people discover what they’re capable of?
In a way, I see that as my mission.