"Computers are dull and boring; humans are clever and imaginative. We humans make computers exciting. Equipped with computing devices, we use our cleverness to tackle problems . . . and build systems with functionality limited only by our imaginations." [6]


In 2006, Jeannette Wing (quoted above) presented a compelling case for making computation thinking "common place," and sparked many initiatives toward this end. One example is the Computational Creativity group at the University of Nebraska at Lincoln. The team submitted two student-facing exercises to the EngageCSEdu as part of their dissemination plan. Not surprisingly, reviewers found the exercises highly creative and engaging. I recently sat down with two members of the Computational Creativity team, computer science professor Leen-Kiat Soh and art professor Liz Ingraham, to learn more about the project. (The following transcript has been edited for clarity and length.)

Where did the idea for Computational Creativity come from?

Leen-Kiat Soh: This came out of our Renaissance Computing project, an NSF C-PATH planning grant. We wanted to better engage students by developing introductory computer science courses for different disciplines. We had co-PIs from biology, from educational psychology, and from the humanities. The idea was to teach the same core CS1 topics but to modify the exercises, the labs, the examples to meet the unique needs of different disciplines.

But we soon realized that there is something underlying all these things, more than just the computer science topics. It's problem solving. For example, biology faculty tell us, "I wish our students knew how to look at something and plan the steps like computer science students would do with an algorithm." And other faculty say, "Students need to be able to see patterns, and then from patterns derive some sort of conclusions from those observations."

At that time, computational thinking was starting to receive a lot of attention. Different people have different definitions of it, but I think it was all triggered by Jeannette Wing's 2006 article [6]. I saw that Liz, in Art at UNL, was teaching this creative thinking course. I thought, "Heh, what if we develop something creative for students to do that doesn't just address the underlying techniques known as computational thinking but adds creative thinking?"

But we soon realized that there is something underlying all these things, more than just the computer science topics. It's problem solving.

Liz Ingraham: Leen-Kiat called me up, we met, and I joined the team! At that point, the team was Leen-Kiat from Computer Science, Duane Schell from Educational Psychology, Brian Moore from Music, Steve Ramsay from English, and me from Art.

Leen-Kiat: We recognized that creative thinking is another tool for solving problems. So together we said, "Why not combine creative thinking with computational thinking?"

Tell us about the exercises your team has developed

Liz: Our collaborator, Duane Schell, introduced us to Robert Epstein's Generativity Theory and it's become our scaffolding in developing the exercises [1,2]. Epstein posits that creativity can be learned through the use of specific strategies. Our idea is that we would come up with hands-on exercises that would require students to do both kinds of thinking: Computational Thinking and Creative Thinking, or "Computational Creativity."

We have developed a suite of exercises, and recently we developed a stand-alone course. None of the exercises require any coding or programming, and all of them require students to collaborate. They've been used in CS1 courses, but they've also been used in non-CS courses, such as my honors course, Creativity 101. The nice thing about these exercises is there isn't a barrier—like prior programming experience or access to technology—to doing them.

In these exercises, we're getting students to flip or reframe a familiar situation or an ordinary object; we force them to take a new point of view. For example, for our Everyday Object exercise we started with "wouldn't it be fun if you took something that already existed, like an umbrella, and pretended you were the inventor?" In a patent application, you need a written description. What would you need to be able to say, "I have an umbrella"? It forces you to practice abstraction, a key component to computational thinking.

Each exercise has an analysis and reflection segment. First, you do something. Then, you analyze what you did. We also help students see how the activity connects to the real world and to computation through "light bulbs" in the exercises. For example, in the Everyday Object exercise we have a light bulb that connects it to functions.

How effective is this approach?

Leen-Kiat: We have significant positive relationship between doing these exercises and performance in the course, as measured by final grade. If we compare good students in the treatment classes to the good students in the control class, we see improvements for those in the treatment group. The same is true for "not so good" students in the treatment group; we also see improvement [5].

Liz: As a matter of fact, one semester my students in that creativity course—a course had nothing to do with computer science, but they did the creative thinking exercises—scored higher on the end of semester knowledge test than the engineering section of CS1!

Why should other instructors use these exercises?

Leen-Kiat: The first aspect is that sometimes when we teach introductory courses we are too focused on the syntax, on how to program correctly. We lose sight of the goal of learning how to solve problems methodically, more systematically, and as a professional. These exercises help students learn to stop before they jump into coding, and look at how to effectively break down a problem. Look at the patterns. How can you do abstraction? How can you do generalization?

For me, this is more fundamental to computer science than programming. We sometimes lose sight of that when we teach. There are so many topics and we want to make sure our students can program well so they can intern and get good jobs. But solving problems is more important than programming. However, sometimes faculty don't have enough resources to figure out how to teach that. "How am I going to teach pattern recognition?" I think these exercises can help. The second aspect is the synthesis between computational thinking and creative thinking.

Liz: Yes, in Computational Creativity, you practice these two ways of thinking. As Leen-Kiat always says, computational thinking makes your problem solving more rigorous and creative thinking makes your problem solving more imaginative. So together you have more powerful tools to solve problems. Who wouldn't want to do that?

"Computational thinking makes your problem solving more rigorous and creative thinking makes your problem solving more imaginative. So together you have more powerful tools to solve problems. Who wouldn't want to do that?"

"Computational thinking makes your problem solving more rigorous and creative thinking makes your problem solving more imaginative. Together you have more powerful tools to solve problems. Who wouldn't want to do that?"

Leen-Kiat: It allows you to look at problems from different angles. This is important because I find that our students are sometimes too rigid, and many don't think of themselves as creative. But we can help students understand how to use creativity to solve problems better, to innovate. It's a skill that is trainable. I would also like computer science faculty to think about this: Creative thinking can help our students learn better and do better.

Liz: In today's world students aren't well served if they are too rigid and too focused on "what's the quickest, easiest way to get this done?" Our problems are so complex, ambiguous, and open-ended. They are interdisciplinary and require teams of people to work on them. We expect, and need, innovation. We've got to prepare our students to think more powerfully, more flexibly, and more imaginatively. But at the same time, they need to bring rigor to their investigation and their process. They need both.

Learn More about Computational Creativity

Check out the Computational Creativity Exercises in the EngageCSEdu collection:

  • Computational Creativity Exercise (CCE): Everyday Object [3]
  • Computational Creativity Exercise (CCE): Storytelling [4]

To learn how to effectively implement Computational Creativity exercises in your courses, join the University of Nebraska team at their Saturday afternoon workshop, Computational Creativity Exercises for Improving Student Learning and Performance, at SIGCSE 2018.

Submit Your Own Materials

Have you developed engaging introductory CS materials as part of a research or development grant? Consider using EngageCSEdu as a way to disseminate your work. Contact [email protected] for more information.

• Acknowledgements

EngageCSEdu, funded by Google, is a project of the National Center for Women & Information Technology. The Computational Creativity work discussed here is supported by the National Science Foundation under Grants No. 0829647, No. 1122956, and No. 1431874. Additional support was provided by a University of Nebraska-Lincoln (UNL) Phase II Pathways to Interdisciplinary Research Centers grant.


1. Epstein, R. Generativity Theory. in Encyclopedia of Creativity, edited by M. Runco and S. Pritzker (Cambridge, MA: Academic Press, 1999), 759–766.

2. Epstein, R. Capturing Creativity: How to enhance the creativity of a person and figuring out the mysteries of the creative process. Psychology Today (July 1996); https://www.psychologytoday.com/articles/199607/capturing-creativity. Accessed 2017 November 16.

3. Soh, L., Ingraham, E., Miller, L.D. Computational Creativity Exercise (CCE): Everyday Object, EngageCSEdu Collection; https://www.engage-csedu.org/find-resources/computational-creativity-exercise-cce-everyday-object. Accessed 2018 January 10.

4. Soh, L., Ingraham, E., Miller, L.D. Computational Creativity Exercise (CCE): Storytelling, EngageCSEdu Collection: https://www.engage-csedu.org/find-resources/computational-creativity-exercise-cce-storytelling. Accessed 2018 January 10.

5. Soh, L., Shell, D. F., Ingraham, E., Ramsay, S., and Moore, B. Learning through Computational Creativity, Communications of the ACM, 58, 8 (2015), 33–35.

6. Wing, J.M. Computational Thinking. Communications of the ACM, 49, 3 (2006), 33–35.


Beth A. Quinn
EngageCSEdu Project Director
National Center for Women & Information Technology
University of Colorado at Boulder,
CB 417
Boulder, CO 80309
[email protected]


F1Figure 1. Leen-Kiat Soh

F2Figure 2. Elizabeteh Ingraham

F3Figure 3. Students doing a Computational Creativity exercise

Copyright held by authors.

The Digital Library is published by the Association for Computing Machinery. Copyright © 2018 ACM, Inc.

Contents available in PDF
View Full Citation and Bibliometrics in the ACM DL.


There are no comments at this time.


To comment you must create or log in with your ACM account.