Computational Thinking in the Classroom

The best way to bring computational thinking into a classroom is through educational tools that have low thresholds and high ceilings.

According to Janette Wing, Corporate Vice President of Microsoft Research and Columbia University’s Director of the Data Science Institute, computational thinking “involves solving problems, designing systems, and understanding human behavior, by drawing on the concepts fundamental to computer science.” Its applications reach beyond computer science, including answering social questions and solving general problems. Yet it can be difficult to introduce computational thinking skills to K-12 learners.

The best way to bring computational thinking into a classroom is through educational tools that have low thresholds and high ceilings. A low threshold means learners are able to quickly see results of their activities. This encourages continued engagement with the tool. A high ceiling gives learners the ability to create more sophisticated material using the same, basic educational tool, which keeps them from becoming bored and continues their learning.

Likewise, programming languages for novice computational thinking need to be easy to manipulate, as well as capable of supporting complex work. The Wolfram Language meets these parameters. As a knowledge-based programming language, it fulfills the need for an accessible, yet sophisticated, language that can be used to introduce novice learners to computational thinking. The Wolfram Language forms the basis for a newly developed tool at Wolfram Research that can acquaint learners with computational thinking: Wolfram|Alpha Open Code.

Many students of all levels, including K-12, already use Wolfram|Alpha to help answer questions for their studies.

Wolfram|Alpha Open Code was invented by Stephen Wolfram “to give the millions of students who use Wolfram|Alpha every day a taste of the power of code, and what can be achieved if one learns about code and computational thinking.” Wolfram|Alpha Open Code allows users to see what happens behind the scenes of the popular Wolfram|Alpha tool. There is no barrier to access, meaning any user can see the processes taking place behind their questions. Since students are already familiar with Wolfram|Alpha, they do not have to learn a new software, which can increase their levels of comfort once the code appears. When learners feel confident, they are more likely to start experimenting and exploring their own ideas.

The process for using Open Code is very simple:

1. Input a query into Wolfram|Alpha. For example, the length of the Leonard P. Zakim Bunker Hill Memorial Bridge.

2. Click on “Open Code.”

3. See what happens “behind the scenes” of the question.

4. Play with the code to see what else you can do.

Within Open|Code, a learner can experiment with the information contained in Wolfram|Alpha. Keeping with the subject of Leonard P. Zakim Bunker Hill Memorial Bridge, a simple drop-down menu reveals several different “properties” that can be explored about this landmark. When a property is run, the answer, along with the underlying code that generates that result, is displayed.

One of the most difficult things for novices, especially visual learners, to understand about computational thinking is what all those lines of code mean. It’s easy to get lost in the parentheses, brackets, and strings of letters without knowing that each one has a purpose. By using a tool like Wolfram|Alpha Open Code, which visualizes each step of the process, new users can see how their inputs affect outputs.

Too frequently, computational thinking is confined to the realm of the computer classroom. Since Wolfram|Alpha contains information from many disciplines, Open Code can be used in a variety of classes. For example, the bridge query could be utilized in a geography exercise. Where is the longest bridge in the world? What other bridges are in Boston, Massachusetts? Students can use the tool to find other bridges in Boston, then compare the length of those bridges.

Being able to visualize and change the code behind the scenes of their queries can help students start to use computational thinking to answer their questions.

Also important to consider when deciding to integrate this particular tool into the classroom is that most students are already familiar with it. Many students of all levels, including K-12, already use Wolfram|Alpha to help answer questions for their studies. This means the tool is already known to most learners, and this familiarity can help reticent learners become more comfortable since they already know the environment.

Making the connection between this well-known tool and the fact that each question has code behind it can be the first step to introducing students to computational thinking. Being able to visualize and change the code behind the scenes of their queries can help students start to use computational thinking to answer their questions. For example, how does changing the property about the Leonard P. Zakim Bunker Hill Memorial Bridge change the lines of code seen on the screen?

Of course, students will probably make mistakes when using Open Code to create new queries. This is an excellent time to explain that mistakes are lessons, not punishments. Once students know that they won’t be penalized for a line of code not working, and that they can replace a line of their “bad” code with a “good” one, then a different kind of problem solving can begin. How can a student manipulate code to generate the result they want? As soon as a student has attempted to make the Wolfram Language work to answer their research question, they have engaged in computational thinking.

Simple projects like these allow novices to engage with computational thinking on their own terms and for their own purposes. By giving students access to computational thinking outside of a computer science classroom and making the concepts relevant to their interests, Wolfram|Alpha Open Code can help learners make connections for computational thinking across the K-12 curriculum and build intellectual bridges between the questions they ask the computer and the code that underlies these queries.

Have you tried Wolfram|Alpha Open Code in your classroom? If so, please share your experience!

Note: This post is based on the article “Wolfram Language for Teaching Computational Thinking to K-12 Learners,” published in the January-June 2017 International Journal of People-Oriented Programming (Volume 6, Issue 1).

About the blogger:

Alyson Gamble

Alyson Gamble is a doctoral student in Library and Information Science at Simmons College in Boston, MA. As the editor of Tech-Based Teaching, she enjoys helping give educators an opportunity to discuss technology in the classroom.

--

--

Tech-Based Teaching Editor
Tech-Based Teaching: Computational Thinking in the Classroom

Tech-Based Teaching is all about computational thinking, edtech, and the ways that tech enriches learning. Want to contribute? Reach out to edutech@wolfram.com.