From Blocks to Code - An Introduction to Programming CPD Session (On Behalf of Computing At School)
These resources are from my CPD session entitled 'From Blocks to Code - An Introduction to Programming'
Overview
This practical hands-on session focused on understanding, developing and delivering the programming strand of the new Computing curriculum. The session aimed to demonstrate how to turn simple algorithms into code and explored different strategies and tools for introducing programming from KS2 to KS4.
PROGRAMME
During the session, delegates explored ways to introduce algorithms using a variety of activities from flow charts to card tricks. Delegates were also given hands-on experience of a variety of programming tools from BYOB (Build Your Own Blocks) programming languages, such as Scratch, Blockly and Daisy the Dinosaur to higher level languages, such as Python and TouchDevelop. The session also explored alternative ways to introduce programming using tools such as Sonic Pi and Minecraft Pi.
Curriculum Mapping:
KS2:
KS3/KS4:
Overview
This practical hands-on session focused on understanding, developing and delivering the programming strand of the new Computing curriculum. The session aimed to demonstrate how to turn simple algorithms into code and explored different strategies and tools for introducing programming from KS2 to KS4.
PROGRAMME
During the session, delegates explored ways to introduce algorithms using a variety of activities from flow charts to card tricks. Delegates were also given hands-on experience of a variety of programming tools from BYOB (Build Your Own Blocks) programming languages, such as Scratch, Blockly and Daisy the Dinosaur to higher level languages, such as Python and TouchDevelop. The session also explored alternative ways to introduce programming using tools such as Sonic Pi and Minecraft Pi.
Curriculum Mapping:
KS2:
- Design, write and debug programs that accomplish specific goals; solve problems by breaking them into smaller parts. Select, use and combine a variety of software on a range of digital devices to design and create a range of programs.
- Use sequence, selection and repetition in programs; work with variables and various forms of input and output
- Use logical reasoning to explain how some simple algorithms work; detect and correct errors in algorithms and programs
KS3/KS4:
- Use two or more programming languages, at least one of which is textual, to solve a variety of computational problems.
Introduction
Introductory presentation used during the session.
from_blocks_to_code.pptx |
Starter (Introduction to Algorithms)
Magic Card Tricks
Using Magic Card Tricks to teach Algorithms
Flow Charts
Making the Tea
making_the_tea_task.docx |
making_the_tea_print.docx |
making_the_tea_solution.docx |
More Flow Chart activities
Alternative activities
- Here are a set of Flowchart tasks for simple activities (making tea, coffee, pizza, lasagna etc.) courtesy of David Barnard (via CAS). Includes a differentiated version of the making tea exercise. (Requires you to login to the CAS community - FREE)
Alternative activities
- Jam Sandwich Robot
In this exercise, pupils are asked to create an algorithm from set commands to program their teacher (sandwich bot) to make a jam sandwich. Pupils must write a set of working instructions, using commands such as Pick Up and Put Down, which their teacher has to follow precisely in order to make a jam sandwich. Tip: If you're not a big fan of mess, I suggest replacing the jam with something less messy such as cheese or ham however, it’s nowhere near as much fun! To find out more, check out this lesson plan, courtesy of Phil Bagge, CAS Primary Master Teacher (@baggiepr): Jam Sandwich Algorithm (programming teacher bot) Video: https://www.youtube.com/watch?v=leBEFaVHllE
- The robot game
Ask for volunteer (Inform them that they will be blindfolded!) Tell the volunteer that they are going to act as the “the robot”. Next, ask someone to secretly position an object (e.g. pen or sweet etc.) somewhere around the room. Tip: Don’t make it too difficult or dangerous! Once the object has been placed, ask for another volunteer. Inform the second volunteer that they are going to program the robot, using only the given commands to guide the robot to the object, as efficiently as possible! Commands: Forward x spaces, back x spaces, left turn, right turn.
Introduction to Programming - BYOB (Build Your Own Blocks)
Tutorials
Kodu
Tutorials
Kodu
- Kodu Classroom Kit - The Kodu classroom kit is a set of lesson plans and activities for educators. The entire kit is available as a single download (.zip file) or as single lesson plans.
Scratch
- Creative Computing - a design based introduction to computational thinking - This guide, from the creators of Scratch, provides an introduction to creative computing with Scratch, using a design-based learning approach. It is organized as a series of twenty 60-minute sessions, and includes session plans, handouts, projects, and videos.
- LearnScratch.org - Series of lessons and online video tutorials for introducing / learning scratch for the first time
- Scratch Jr - Series of lessons for introducing programming at KS1/KS2 using Scratch Jr for the iPad
- Teaching Dance with Scratch - Series of learning videos, from the Digital Schoolhouse, for using dance to teach Computer Science with Scratch
Tutorials form CPD session:
introduction_to_scratch.docx |
intro_to_scratch.ppt |
Blockly
Daisy the Dinosaur
- Blockly games - Blockly Games is a series of educational games that teach programming. It is designed for children who have not had prior experience with computer programming. By the end of these games, players are ready to use conventional text-based languages.
Daisy the Dinosaur
- DaisyTheDinosaur.com - Official website for the 'Daisy The Dinosaur' app
Introduction to Programming - Higher Level Languages
Tutorials
Python
Tutorials
Python
- Python Lessons - One off Python lessons linked to the new Computing PoS
- KS3 SOW Python - Scheme of Work for teaching Python at KS3 (Requires login to TES - Free)
- Introduction to Python Booklet - Complete introduction to Python 3 courtesy of Mark Clarkson
TouchDevelop
Sonic Pi
Minecraft Pi
- TouchDevelop Challenge - 15 week Scheme of Work for teaching TouchDevelop
- TouchDevelop Tutorials - One off tutorials for introducing TouchDevelop to students (Tutorials from CPD session)
- TouchDevelop Lessons - One off lessons linked to the new Computing Programme of Study
- KS2 SoW - KS2 Scheme of Work for TouchDevelop courtesy of Ray Chambers
Sonic Pi
- Sonic Pi Lessons - Series of lessons for teaching Sonic Pi courtesy of the Raspberry Pi Foundation (Includes tutorial from CPD session)
Minecraft Pi
- Getting started with Minecraft Pi - Series of lessons for teaching Minecraft Pi courtesy of the Raspberry Pi Foundation
- Networking the Pi - Lesson which introduces networking using the Raspberry Pi and Minecraft Pi edition
- Setting up a classroom set of Pis - Support for creating a networked class set of Raspberry Pis