In July 2008, Amber Settle and Ljubomir Perkovic, associate professors in the College of Computing and Digital Media, were awarded a two-year grant from the National Science Foundation for “Computational Thinking across the Curriculum”— a study of how computational thinking can enhance teaching and learning across disciplines. The grant tacitly recognised DePaul’s unusual ability to cross-pollinate new ideas, as faculty across the university share expertise and insights to improve the educational experience for students and teachers alike.
All of which begs an obvious question: “What is computational thinking?”
In answering, Settle credits Jeanette Wing (professor, Computer Science, Carnegie Mellon University): “Computational thinking is the automation of abstractions. Abstractions are our mental models for things, our way of representing the world, and automation of these representations can involve any sort of computer, whether a laptop, a phone, or a person. Computational thinking involves choosing the right abstractions and the right ‘computer’ for a particular problem.”
In their project, Settle and Perkovic aimed to build a consensus about how computational thinking could be incorporated within liberal studies courses.
“Computational thinking is pretty obvious when you think about classes in computer science, but scholars in the humanities can also use it to process information differently and to see patterns that might not have been obvious before,” says Settle. “The real purpose of our grant was to experiment and increase awareness. We worked with 18 faculty members to introduce some kind of activity, lecture, or assignment that involved computational thinking. I think, in the end, some of these teachers got better, more thoughtful final projects from their students.”
One of the faculty was Brian Boeck, associate professor, History.
“The first thing I asked when I heard about this project was, ‘Do I have to know any math?’ I was reassured that I did not!” he says. “I like to think of computational thinking as a recipe — the steps that have to be taken to create a final product — this much of A, that much of B. That makes sense to me: don’t look just at the final product; look at the steps it took to get there.”
Boeck used computational thinking in two classes, European history and world history, to examine how textbooks assign or allocate space to periods, events, and people in creating historical narratives.
“I wanted the students to come up with the recipe for how Peter the Great is represented, again and again. Is there an implicit, unwritten formula that every writer unconsciously adopts when talking about him? I created a series of questions to capture the writers’ underlying assumptions: my students had to count space allocated to one topic versus another, search for valence (were events talked about in a positive or negative way?), and represent (preferably graphically) the choices that had been made.
“After going through the steps, they could see the textbook from the inside out rather than the outside in. Patterns of allocation emerged; we could see the decisions to give more weight to one event or fact over another, to spend one paragraph on a topic or only a sentence. The students began to see ‘facts’ not as given but as chosen. Computational thinking produces a more active form of reading, and it fits with the ‘students creating knowledge’ part of Vision twenty12.”
Joshua Jones, assistant professor, School of Cinema and Interactive Media, introduced the concepts of computational thinking in his animation classes:
“Several of the principles of computational thinking are relevant in 3D animation, which is a very process-oriented medium. For example, when making a forest, an artist does not want to model and build every single tree. Rather we make one tree — a ‘module’ —and then duplicate it using an ‘algorithm.’ Then, with ‘randomization’ we introduce variations so that the forest looks natural.
“In class, students had to create a warehouse space using simple, primitive objects to give the illusion of size, space, and complexity. A pallet of boxes was the ‘module’ which could be copied and manipulated. While these terms might mean something slightly different in computer science, that doesn’t really matter; it’s the concepts that we’re applying.
“I found computational thinking was a good way to focus my thoughts; it enabled me to explain tasks a little more clearly. My hope is that students will apply the concepts of computational thinking in their future problem solving.”
Perkovic defines the significance of the project’s results: “Right now, we’re still in a long-term ‘vision‘ stage, but we did develop a blueprint for integrating computational thinking in coursework across disciplines. Now, we’re looking at ways to do the same in K-12 programs.”
Settle agrees: “Computational thinking, like reading or writing, is a fundamental skill that should be part of any education, for every student, at every age.”