Learning Through Abstraction: Beyond Learning to Abstract in an Integrated Computing and Science Classroom

Aakash Gautam
7 min readMar 5, 2020

--

This is a summary of an upcoming SIGCSE’20 paper titled “Abstraction Through Multiple Representations in an Integrated Computational Thinking Environment”.

There is some consensus that it could be advantageous to introduce computers to students at an earlier age. However, how it should be introduced remains open to debate. Approaches range from computer-less introduction to computing ideas to story-telling systems to dedicated computer science classes.

Contextualizing the introduction seems critical as seen in projects like Media Computation and CT@VT. We take an integrated approach where we have designed computer-based models and simulations, and accompanying curriculum for instructors to use in their science classes.

There are advantages in integrating computing with existing science classes. The integrated approach expounds on the idea that computers are tools to do things. If carefully designed, computing can facilitate instructors to deepen student engagement.

Further, there are pragmatic reasons to integrate computing into existing classes. There is limited, if any, room in an already overloaded K-12 curriculum to add computing classes. Also, many schools have a shortage of teachers and resources to teach dedicated computing classes. Given that computing skills are increasingly becoming central in the modern workforce, there is a risk of widening inequity if we cannot provide students with rich learning environments that provide opportunities to learn fundamental concepts of computing.

What are those “fundamental concepts of computing”? It depends on who you ask. But in almost all cases, abstraction will be present. In this work, we look at ways in which we can leverage different representations of a scientific phenomenon to facilitate abstraction learning and, more critically, learning through abstraction.

Our Integrated Approach

Our curriculum presents multiple representations of a scientific phenomenon. These include the following:

  1. Hands-on experiment or a digital simulation of a familiar macroscopic representation of the phenomenon.
  2. Standard scientific representations such as chemical formulas.
  3. Macroscopic and microscopic phenomena in relation to one another as shown through animated, modifiable simulations.
  4. A modifiable code-based representation that created the simulation.

For example, our third unit introduced students to the natural carbon cycle. It began with a digital simulation of cow(s) grazing and plants growing (somewhat rapidly). Students could modify elements of the simulation such as the number of cows and plants, the initial amount of carbon dioxide, and the amount of energy coming from the sun.

Screenshot of a simulation that shows a cow eating grass under a bright sun. There is a dialog box that say, “Munch”.
A simulation of the natural carbon cycle encountered by the students in the third unit.

Following the simulation, the teacher guided a discussion on various elements of the simulation. In the class that we observed, this involved a discussion around photosynthesis and glucose breakdown. During the discussion, the teacher wrote an unbalanced equation of photosynthesis on a whiteboard.

The students then turned their attention back to the simulation. But this time they were encouraged to explore a feature in the system that overlaid microscopic elements on top of the macroscopic phenomenon.

Same screenshot of a simulation as above but with carbon dioxide and glucose molecules overlaid on the macro elements.
Microscopic elements could be overlaid on the macroscopic elements in the simulation.

Students were then encouraged to examine the code behind the simulation. In our project, we used NetLogo, an amazing agent-based programming system. While writing the code, we focused on scaffolding the students’ exploration. Some of the practices do not necessarily follow software engineering guidelines: the code is verbose, repetitive (to facilitate easy exploration), and ordered to make it easier for students to get a higher-level understanding of the science before diving deeper into the computational mechanics behind it.

A snippet of NetLogo code that shows a set of statements. These statements implement the photosynthesis process.
Code that implemented the photosynthesis process of the plants in the simulation.

The teacher engaged students in discussions about what aspects of the model were accurate or inaccurate and scientifically important or unimportant. Later on, the students added earthworms in the model to decompose dead cows.

Abstraction: A Common Idea in Science and Computing

In computing, abstraction allows us to simplify things, identify problems, and formulate solutions that any computing device can use. In computer science education, students typically first encounter abstraction as a hierarchy. An example of such a hierarchy can be seen in the way we write text, say ‘A’. We have devised a correspondence between the computers’ electronic states and an abstract notation using 0 and 1 leading to a binary number such as ‘0100000’. We then form a programming structure that allows us to move up the ladder of abstraction to see ‘01000001’ as the decimal number ‘065’. We then further create a layer of abstraction in which, if ‘065’ is used in a text, it appears as ‘A’. Each hierarchical layer of abstraction is more removed from the concrete machine and more tied to human purposes, yet each is deemed to signify ‘A’ in some form.

In science though, right from the beginning, abstraction is presented laterally, requiring students to move between different abstract representations at the same time. Take for example a simple chemical equation representing the electrolysis of water: 2H₂O → 2H₂ + O₂.

To understand the process and the equation, students have to navigate through various abstract but inter-related ideas:

  1. The reaction involves the transformation of molecules wherein atoms change arrangements to form different molecules; atoms are neither created nor destroyed.
    This means we cannot have equations like 2H₂O → CH₂ + 2NaOH
  2. Conservation of matter wherein the number of atoms of each element on the left side of the equation has to be equal to the number of atoms on the right side.
    This implies that we cannot have equations like H₂O → 2H₂ + O₂
  3. The subscripts that are used in the equations depend on the energy states of the elements.
    This means, even if the conservation of matter is “satisfied”, we cannot have equations like 2H₂O → 2H₂ + 2O

All three of these principles have to be imbibed by the students to understand why the chemical equation 2H₂O → 2H₂ + O₂ holds.

While computing too requires lateral movements in abstraction, the idea is considered advanced and is generally not presented in the introductory portion. So, in examining integrated computing in science classes we find (1) abstraction as a practice is common in both domains and can be leveraged for synergistic learning gains, and (2) the kind of abstraction important at the beginning in science is different from the kind of abstraction presented to beginners in computing education.

Learning Through Abstraction

When we asked students if the chemical equation: “H₂ + O₂ →H₂O” was balanced, 11 out of the 19 correctly said that the equation was not balanced. They correctly mentioned that it violated the conservation of matter. However, 8 of the 11 struggled to balance the equation correctly. While students were familiar with the principle of conservation of matter, they were not familiar with energetic states and molecular structure that is summarized in the chemical equation without being explicit.

On the other hand, the code-based model explicitly presented some of the implicit aspects of the chemical equation. For example, photosynthesis is represented by “6CO₂ + 6H₂O → C₆H₁₂O₆ + 6O₂”. Just through the equation, students struggle to understand the transformation of the reactants (carbon-dioxide and water). But when they encounter statements like “set plant-water-level plant-water-level — 6” in the code, they can connect the science with the statement.

We observed a group of students move from the mechanics of the statement, “you subtract six” to a higher-level understanding that connected the statement to the chemical reaction. This requires a lateral movement between two different representations i.e. the students were using abstraction to build on their understanding. We observed similar growth in the students who saw the code as a unit representing the science phenomenon, and in turn, saw the science being represented by the code.

Here, the critical aspect was that the students were not only learning to abstract but rather learning through abstraction. This is analogical to reading where students initially learn to read but as they progress, they read to learn.

We believe that learning through abstraction can be a value proposition for integration of computing with other domains.

Implications to Design and Teaching

Building on the experience, we believe that the following practices can help in promoting deeper engagement with abstraction and, through it, with core science ideas:

  1. Present multiple representations in context:
    The varied representational choices encouraged students to think about what is being represented and how they can be represented in different forms. Computers afforded variation.
  2. Follow pedagogical goals while making representational choices:
    Teachers are central to our approach. We designed the system to emphasize exactly the learning objective that the teacher wanted to achieve in their class.
  3. Order the encounter with the representations:
    Simply presenting different representations may not suffice. They have to be ordered such that the students can build upon their understanding.
  4. Ensure cross-representational coherence:
    The representations have to be coherent so that students can see the similarities and differences and pull meaning from one to understand the other.
  5. Allow friction during encounters with representations:
    Students will struggle with some of the representations, especially those that are more abstract. This friction is critical — it encourages students to examine the representations, draw upon their existing knowledge to make sense of the representation, and negotiate some of the elements.

Concluding Remarks

Integrating computing knowledge in existing classrooms can provide an opportunity for synergistic learning of both the domain knowledge as well as computing. To do so requires careful design and collaboration with the teachers such that the technology can be leveraged to facilitate the teacher’s pedagogical goals and create meaningful encounters for the students.

Integrating computing to existing classrooms does not mean that we are toning down the computing experience for those who lack access to dedicated computer science classrooms. In the contrary, by examining practices like learning through abstraction, we are arguing that integrating computing provides an avenue to create synergistic learning opportunities, prepare students for the changing landscape where most modern work requires knowledge of computing, and, more broadly, make small moves to equip teachers with resources that they can leverage where larger institutional changes are not within our capacity.

For more details, please refer to our paper here or, if you are in Portland on March 12th, stop by our presentation at Oregon Convention Center (D133 @ 3:45PM)

--

--

Aakash Gautam

Learner. PhD student at Virginia Tech. Interested in educational technology, design for and with marginalized groups, and issues of power and authority. He/him.