Programming Languages

Computer programs are sequences of instructions that the computer must follow. There are hundreds of computer languages, but all involve giving clear and unambiguous instructions to a devices that doesn’t understand meanings.

This activity demonstrates some of the issues that arise when we try to give precise instructions to achieve a desired outcome.

Straight Path

Activity description (PDF)

Related Resources

  • Mordechai (Moti) Ben-Ari from the Weizmann Institute of Science, Israel has programmed the Marching Orders Unplugged activity in Scratch which can be downloaded in a zip file of the complete set of activities. Please read the ReadMe.txt for documentation.
  • Computing Science Inside Workshop has an activity Algorithm Development which is a nice extension activity to this topic. In this workshop pupils will experience writing and following algorithms. They will be introduced to the concept of an algorithm and be asked to develop basic instructions to complete tasks considering factors such as order and preciseness in their solution. Pupils will have the opportunity to follow a given algorithm and compare their end product with others to assess the effect of ambiguity. The results will show pupils the difficulties that arise from unclear instructions and emphasise the importance of being precise. Pupils will realise the value of accurate, well-tested algorithms through the activities in this workshop, they will become familiar with the process of designing and executing algorithms and its place within Computing Science.
    Note: You will need to apply and register in order to recieve the Workshop Pack for this activity.
  • A nice extension to this module is a Kinaesthetic Learning Activity (KLA) activity developed by Paul A. G. Sivilotti to introduce CS concepts to high school girls is Software Engineering: “Mars Pathfinder”. This activity illustrates the fact that a program is a series of instructions that tells a computer exactly what to do. So, a computer scientist must design the program carefully, to be sure that the computer will do the right thing. Please note that this activity requires the use of a Lego Rover robot.
  • An engaging extension of the Marching Orders activity, developed by the PINY team in Seoul, Korea. As well as introducing programming, it exposes students to the idea of open-source development, and also programming language design.
  • Programming Paradigms – Computerphile


Curriculum Links

Great Principles of Computer Science [info]
  • Automation
ACM K12 Curriculum [info]
  • Level I (Grades 6-8) Topic 9: Demonstrate an understanding of concepts underlying hardware, software, algorithms, and their practical applications.
New Zealand Curriculum [info]
  • Mathematics Level 1: Position and Orientation
    • Give and follow instructions for movement that involve distances, directions, and half or quarter turns
  • Mathematics Level 1: Shape
    • Identify and describe the plane shapes found in objects
  • Mathematics Level 3: Probability
    • Investigate simple situations that involve elements of chance by comparing experimental results with expectations from models
  • English Level 1: Speaking, writing and presenting
    • Recognise how to shape texts for a purpose and an audience
  • Technology Level 2: Planning for Practice
    • Develop a plan that identifies the key stages and the resources required to complete an outcome
  • Technology Level 3: Technological systems
    • Understand that technological systems are represented by symbolic language tools and understand the role played by the “black box” in technological systems.