A Strategic Approach To Teaching Programming at KS3
A Strategic Approach To Teaching Programming at KS3
Background
Hobbyist, O-Level, College, work, kids, self-employed, MSc, teaching
https://en.wikipedia.org/wiki/ZX_Spectrum
Teaching experience
After-school clubs (KS2) 3 years
College lecturer 2 years
University lecturer 4 years
Secondary teacher 2 years (state and private sector)
Algorithmic solution
Accurate coding
Thorough testing
Insist on debugging
Use Bebras, Cybersecurity Challenge, Robot Grid World etc. as well as programming
games such as Hour of Code, Lightbot, Code Combat etc. to embed skills
Some Primary and Preparatory schools are now offering a fantastic curriculum
However
Much focus on Maths, English and Science
Decomposition
Natural language
Algorithms
Computational Thinking
Natural Language
Dr John Snow exercise
The lady hit the man with an umbrella.
Abstraction
Generalisation
He gave her cat food.
I saw her duck.
A STRATEGIC APPROACH TO TEACHING PROGRAMMING AT KS3
YEAR 7
THINKINGLIKEACOMPUTERSCIENTIST
Used Compute-IT (Mark Dorling) as a
starting point
Guardian article also interesting
Decomposition
Natural language
Algorithms https://www.youtube.com/watch?v=B1H8XsOxw28
Computational Thinking
Natural Language
Dr John Snow exercise
The lady hit the man with an umbrella.
Abstraction
Generalisation
He gave her cat food.
I saw her duck.
A STRATEGIC APPROACH TO TEACHING PROGRAMMING AT KS3
YEAR 7
THINKINGLIKEACOMPUTERSCIENTIST
https://www1.udel.edu/johnmack/frec682/cholera/snow_map.png
https://effectivesoftwaredesign.com/2016/09/28/the-cat-as-a-metaphor-in-object-oriented-software-development/
https://scratch.mit.edu/projects/145686320/
YEAR 7
PROGRAMMINGFUNDAMENTALSII USINGTHEMICRO:BITS
What is a micro:bit? What features does it have? Input and Output
Introduction to the programming environment
Responding to button presses with icons and phrases
Compilation
Designing your own icon variables
Animation: iteration
Sensors: shake, pin input, light level, accelerometer, compass
Algorithms and pseudocode
Selection: ifelse if else
Iteration: while-do and for loops
Networks: Home networks, routers, IoT, firewalls, smart home, Bluetooth
Using the radio: sending and receiving communications
MY APPROACH
YEAR8
Algorithms
Debugging
Sequence
Selection
Iteration
Bebras All
Computational Thinking
Programming (Scratch) Year 7
Programming (micro:bit) ()
Flowcharts Year 8
Mobile app development ()
Year 9
Pre-GCSE programming (Python) ()
Making mistakes and learning from them is a normal and important part of
programming
In order to debug our programs we must be methodical and resilient
1. What should it do?
2. Where exactly does it go wrong?
3. Explain your code to a coding partner
4. Make it simpler
5. Add print statements to test your assumptions
6. Ask for help to find the error but expect to be asked questions!
Simulated robot grid world
ROBOT GRID WORLD Control the robot with Python (and more)
Free
FLOWGORITHM
Build up and run a
flowchart
Generates code in
many languages
including Python,
Java and C#
Free
http://flowgorithm.org
SUMMARY
At KS3, develop:
problem-solving
methodical approach
resilience
understanding of basic concepts: sequence, selection and iteration
Bebras - http://www.bebras.uk/teachers.html
Flowol - http://www.flowol.com/
Flowgorithm - http://flowgorithm.org
BBC micro:bit website - http://microbit.org/
Robot Grid World contact Dr Mick Walters, University of Hertfordshire
[email protected]