This programming course has been developed for students of the Swiss specialised upper secondary schools in the occupational field of education (=pedagogy) with the following objectives in mind:
- The students of ‹Specialised Upper Secondary School - Occupational field of education› will later, as primary school teachers, develop their own teaching ideas on how computer programs can support their pupils in learning. Therefore, they should be able to program corresponding apps on their own (e.g., an index of words that the children use in their texts that grows over time; the index promotes the expansion of the vocabulary of the entire class and the weaker primary school pupils can easily "look up" the correct spelling of the words).
- Primary school pupils should be able to use a computer as a tool for exploratory learning in "traditional" subjects such as mathematics, geometry or geography. The turtle graphics approach by Seymour Papert (further developed and updated by Yasmin B. Kafai / Quinn Burke [1]) is well suited for this purpose. The students of ‹Specialised Upper Secondary School› should therefore acquire the concept of Turtle-Graphics, so that they can explain it later to their primary school pupils. As future teachers, they will then be able to set their own tasks that elementary school pupils can solve with turtle graphics.
- The students should also understand how programs and other teaching materials can be published as Open Educational Resources (OER) to make it easier for teachers to prepare and hold lessons. This allows them to use IT applications for contemporary forms of collaboration.
The course is divided into four units at 90 minutes each.
In unit 1, the students will get to know the programming environment of Scratch and the basics of programming by means of a sample project. They will implement a matchstick puzzle (model construction). Without too many theoretical considerations, the students will learn basic concepts of "professional" programming (object and event orientation, process communication). Additionally, the students will get acquainted with a Scratch extension (text-to-speech).
Unit 2 focuses on the concept of turtle graphics and the use of Scratch in primary school. Using the example of "properties of regular polygons", the students can experience exploratory learning with turtle graphics for themselves. In addition, the students learn about and apply the essential "basic building blocks" of programs (sequence, repetition, conditional execution, variables).
Unit 3 introduces the students to the design and programming of multimedia stories / animations in Scratch.
In unit 4, the students deal with the simulation of a robotic lawnmower. They rely on the block concept, which makes their work much easier and provides a clearer outline of the program. Using this example, the students reflect on the problem of the determinacy and correctness of programmed solutions to problems.
[1] Kafai, Yasmin B.; Burke, Quinn (2014): Connected Code - Why Children Need to Learn Programming. MIT Press.