Coding Curriculums: Part 4

December 29, 2015 by wendy

Computer Strands
Computing strands in A Guide for Secondary Teachers.

We’ve seen from the National Curriculum in England and their guide for primary teachers that computing consists of three main strands:

  1. Computer Science – How computers can be programmed to solve problems
  2. Information Technology – How computers work and how to use them
  3. Digital Literacy – How to use technology critically, responsibly, and safely

The guide for secondary teachers suggests that in key stage 3, children from ages 11 to 14 should shift their focus towards computer science, but that doesn’t necessarily mean more coding. Computer science is primarily about computational thinking:

  • Breaking down problems into smaller pieces
  • Recognizing and generalizing patterns
  • Abstracting details
  • Designing algorithms

Strategies for computational thinking can be demonstrated through unplugged activities without computers.

Model real-world problems

Truly understanding a problem means that you can model it in different ways. Ask your students to create representations of real-world, physical systems. For example, they could model the solar system, draw a map, or create storyboards that describe a process. Afterwards, ask them to consider how closely their models match real life and how their models can be used to make predictions.

Design algorithms

An algorithm is a precise list of instructions that solve a problem. You can design an algorithm in many ways, such as writing the steps down in English or drawing a flowchart. Have your students design algorithms to solve a specific problem and have them compare their solutions in terms of complexity and efficiency. They should see that multiple algorithms may solve the same problem, and that there are trade-offs with each solution, that is, there is no one right answer.

Study searching and sorting algorithms

Bubble Sort Visualization
Bubble Sort Visualization from VisuAlgo

Searching and sorting algorithms are well understood in computer science and reflect key aspects of computational thinking, such as pattern generalization and abstraction. Have your students execute linear search and binary search algorithms. For example, they could search for a specific card in a deck of cards or for a letter in a set of alphabet tiles, and then record each step using pencil and paper. To study sorting algorithms, ask your students to try different sorting algorithms on the same set of objects. In both cases, ask your students to compare the algorithms they tried in terms of complexity and efficiency.

Binary arithmetic

Binary arithmetic is another way to illustrate algorithms. Have your students convert binary numbers to decimal numbers and vice versa. Through this exercise, students learn that numbers can be represented in different ways as well as terminology, such as bit, byte, and nibble. You can also demonstrate how computers use numbers to store information. For example, a number can describe the colour of a pixel in an image. Have your students create bitmap images using squares to represent pixels and numbers to represent colours like colouring by numbers.

Computational thinking with computers

Even though many concepts in key stage 3 can be taught through unplugged activities, students should still have hands-on experience with programming and various technologies. In our next post, we’ll discuss what students in key stage 3 should learn when they have access to a computer.