Curriculum - CAS Community

advertisement
How to build an
outstanding
computer science
curriculum
MARK DORLING
MAT THEW WALKER
Calling all teachers…
What does curriculum mean to you?
What does creativity mean to you?
What is your vision of a creative
curriculum?
CAS CONFERENCE 2013
Outcomes
Develop a department vision, overcoming challenges
Demonstrate progression through the key stages and effectively scaffold
learning
Creative computing lessons from example schemes of work
CAS CONFERENCE 2013
Challenges
Curriculum that is inclusive – no child left behind
Curriculum that is creative but thorough
Confidence in aligning and interpreting the Computing curriculum
Understanding the technicalities of the curriculum
Showing progression
How to integrate CS, IT and DL into a single scheme of work
Developing a vision for your curriculum
CAS CONFERENCE 2013
Correctly
interpreting
the
curriculum
Digital literacy
National ICT
Curriculum
Statuary document
Computer
CS
Science
Digital literacy
CAS CONFERENCE 2013
ITInformation
Technology
Subject Association
Teacher guides
Non- statuary document
A School’s curriculum
planning
Interpreting the KS1
curriculum
CAS CONFERENCE 2013
Computing
is non-linear
‘Dorling Curriculum Map of
Computing’ available
September 2013
CAS CONFERENCE 2013
Options for September 2013
To do nothing… that is an option!
To integrate one or two lesson of Computer Science into existing Digital
Literacy (DL) and Information Technology (IT) schemes of work.
To plan a half term or term CS SoW for year 7 and then roll out a SoW to
each year group year on year.
To plan a half term or term CS SoW for each year group.
To (initially) plan a term or two term curriculum that integrates DL with
CS year 7 only.
Complete restructuring of all schemes of work
CAS CONFERENCE 2013
Mark’s
model for
September
2012
Why are we focusing on KS2
CS in September?
Resources
KS3
KS2
Extra curricular
clubs
DSH Curriculum
• SSAT Hack resources
• CS Unplugged
• CAS Online
• CS4FN
• Greenfoot/Alice
• Scratch Ed
•Kodu EPL
•AppShed Academy
• Code Academy
• Industry
collaborations
Term 1
Term 2 & 3
Basic functional IT
Skills
Advanced functional IT embedded into a creative
curriculum underpinned by computing
Enrichment
Curriculum
After GCSE
Y8/9 GCSE IT
KS4
KS4
Y10/11 GCSE
Computing
Y10/11 AS Level
ICT
CAS CONFERENCE 2013
Curriculum
KS 2/3/4
National
Curriculum
DfE
Matthew’s
model for
September
2012
Enquiry-based KS3
curriculum (all a
combination of DL, IT and
CS)
Leads to KS4 Option in GCSE
Computer Science
Year 7
Year 8
Why is Facebook
successful?
How do computers
think?
How can I make an
unbreakable code?
Can I teach a
machine to think?
Why are video
games fun?
Year 9
What can my pet
robot do?
GCSE Computer
Science (option)
Who owns my
information?
How can I make pigs
fly?
How does Google
work?
How can I make a
mobile app?
Will computers take
over the world?
All students have one lesson
a week IT in year 10.
Department ‘vision’
School curriculum policy
Student consultation
CAS CONFERENCE 2013
KS4
Year 10 IT
(mandatory,
one lesson per
week)
Strategies
Have strategies for managing the transition
Engage other staff, network managers, SLT, students, parents
Know considerations when making decisions like choosing programming
languages
Have ideas for raising the profile of computing in your school
Know where to get help with clubs
Know where to get affordable and quality CPD
CAS CONFERENCE 2013
Subject Knowledge Challenges
Computer Science is more than just programming
What is computational thinking?
How do I develop in my staff and students a rich understanding of how
the principals and concepts all link together?
How do I teach programming and coding?
How do I assess programming code?
CAS CONFERENCE 2013
Bridging IT and CS
IT & DL
(Driving the car)
tools
Social need
Computational Thinking
(Adapting the car for a given circuit)
CAS CONFERENCE 2013
Computer Science
(Engineering the car)
Algorithms & Programming
We want to make models of the world
to:
◦ understand it
◦ ask ‘what if’ questions and predict the way
it will change
Model
How do we make models?
◦ solving problems
◦ by characterising a problem
◦ mapping the abstractions of a conceptual model
◦ choosing appropriate technology
How do we turn models into programs?
◦ write programs by programming
◦ programming bridges models and
computers
Are they separate or inextricably linked?
CAS CONFERENCE 2013
Every year
and at every
level
CAS CONFERENCE 2013
Implications of the double hump
(achievement bimodality)
Many students (and staff) think the subject is too hard
Progression is seriously hindered
Lesson planning and seeing through schemes of work become a major
headache
Measurable underachievement at KS3, GCSE and A-Level
Success is enjoyable
CAS CONFERENCE 2013
One voice
from
university
“Why is it that some software engineers and
computer scientists are able to produce clear,
elegant designs and programs, while others
cannot? Is it possible to improve these skills
through education and training?”
Kramer, 2007
CAS CONFERENCE 2013
What are we asking students
to do?
1.
Abstract the problem from its
description
2.
Generate subproblems
3.
Transform subproblems into
subsolutions
4.
Recompose
5.
Evaluate and iterate
This represents the most abstract
level of Piagetian abstraction –
formal operational reasoning
CAS CONFERENCE 2013
Lowest
NeoPiagetian
levels of
abstraction
Sensorimotor
inconsistent results
Low
Preoperational
direct manipulation of
the environment
little thought about
relationships between
objects
focus on one abstract
property at a time
working knowledge is
overwhelmed
High
Concrete Operation
abstractions restricted to familiar, real situations
no hypothetical reasoning
Highest
Formal Operational
form links between abstract
properties
CAS CONFERENCE 2013
infer hypotheses with limited or
missing data
rely on chunked long-term
memory
Lowest
NeoPiagetian
levels of
abstraction
application to programming
skills
Sensorimotor
can trace code with <50% accuracy
Low
Preoperational
can manually execute code and determine values
in variables when execution is finished
research indicates >50% accuracy in this skill
needed before students can begin to understand
how to code
High
Concrete Operation
can ‘reverse’ solutions
conserve meaning when program specification is
changed
Highest
Formal Operational
decomposition
CAS CONFERENCE 2013
creating solutions
debugging
Sensorimotor
stage and
magic
“Without the ability to reliably produce
consistent results via tracing, novices at the
sensorimotor stage see code as somewhat
magical. That is, they do not experience an
executing program as a deterministic
machine.”
Ahadi et al, 2012
CAS CONFERENCE 2013
Abstraction
informing
learning
Teach in a way that
encourages students to
develop their ability to
reason under abstractions
“…students who tend to reason
preoperationally about code will gain little
from being forced to write large quantities of
code. Such students can only write code by
quasi-random mutation. For students who are
predominantly reasoning at the
preoperational level… we need to develop new
types of learning experiences that develop
their abstract reasoning without requiring
them to write a lot of code.”
Lister, 2011
Computational Thinking
CAS CONFERENCE 2013
Reducing
abstraction
“…students, when facing the need to cope
meaningfully with concepts that are too
abstract for them, tend to reduce the level of
abstraction in order to make these abstract
concepts meaningful and mentally
accessible… by dealing with specific examples
instead of with a whole set defined in general
terms.”
Students reframe
abstractions in concrete
form
Hazzan, 2008
CAS CONFERENCE 2013
Develop the ability to make
design decisions
Directed learning
Designing
WITHOUT
making
Lots of choice
Little choice
Making
WITHOUT
designing
Autonomous learning
Diagram Source:
David Bartlex, Roehampton University
Designing
AND
making
The balance is dependent on a number of factors:
• The SKUAE of the pupils
• The SKUAE of your staff
SKUA = Skills, Knowledge, Understanding, Attitudes and experience
CAS CONFERENCE 2013
Make it less abstract!
Why use real life problems AND use a graphical programming tool?
Easier to create meaningful questions for assessment
Easier for students to create drawings that represent the execution of a
program
Simpler for students to investigate models
Simpler for students to adapt, reason and create models
Data is not hidden so inspection is simpler
Avoid simulations in Scratch – this can make it more abstract rather
than less!
CAS CONFERENCE 2013
Assessing Programming Code
Does it appear to work?
Does it really work?
◦ rigour of testing, range of data/input
Originality of code
◦ has a student artfully/skilfully reworked known examples or created
something less impressive but original (levels of abstraction)?
Features versus bugs
Looking at the code
◦ layout, comments, structure, logical errors, genuine understanding
Meeting the specification
CAS CONFERENCE 2013
Looking at programming code
BY JOHN
BY MAX
Turnham Green and Acton Town
Where Air Raid huddles laid them down.
Neasden, Willesden, Dollis Hill,
Tottenham Hale and Hearty, still.
Thank you London Underground.
And all your staff, who get me round.
I still find it astounding how deep you are.
When you are off, we’re off on rants
We cram the bus
And as we crawl like ants upon the surface…
then we know
The rich resource that’s down below.
I sat down on the tube.
It was noisy and dirty.
I wanted to get home.
Tea was at 5.30.
Mum would be waiting
Always asking questions.
The tube was my time.
For making up destinations.
I like the tube cus it is cool.
I don't like poems.
CAS CONFERENCE 2013
Which programming language
& environment
Scaffold the learning of computational thinking
Allow for inspection of variables and data structures
Consider skills and experience of staff
Languages currently in vogue:
◦
◦
◦
◦
◦
◦
◦
Python
TNGLogo
Small Basic
PHP
Scratch/BYOB/Panther
VB
Greenfoot (Java)
CAS CONFERENCE 2013
Balanced curriculum summary
Programming isn’t hard when you know how to solve a problem!
Some languages’ syntax and tools are more impenetrable than others
Obsession of “which language” often gets in the way of problem solving
Focus on designing without making… but this isn’t to say that you
shouldn’t use programming model solutions along side problem solving
Ensure, whatever language you choose, you have a plan for progression
(that is more than a tick sheet of language features)
You can never create problems that are scalable enough for children to
solve
CAS CONFERENCE 2013
Vision vs reality
Does our reality of a creative curriculum look different to your vision
for a Creative Curriculum?
Honest reflection: To what extent do you think the following affects how
we (as teachers) design our curriculums?
◦ My preferred learning styles…
◦ My areas of expertise, e.g. subject specialism…
◦ My life experiences…
If you were to teach someone else curriculum would it still be creative?
CAS CONFERENCE 2013
Sample
lessons
taken from our schemes of
work
CAS CONFERENCE 2013
Dinosaurs day out…
CAS CONFERENCE 2013
Police, Camera and
Action!
BREAKING NEWS:
Car chase on streets of French town
CAS CONFERENCE 2013
The binary behind
algorithms
Efficiency of algorithms:
Opt 1:
01,11,11,01,11 = 10 Bits
Opt 2:
10,01,11,11 = 8 Bits
(10)
(10)
(00)
(00)
(10)
(11)
CAS CONFERENCE 2013
Can I teach a machine
to think?
CAS CONFERENCE 2013
A class of code
breakers
CAS CONFERENCE 2013
Drawing Fractals
CAS CONFERENCE 2013
Beautiful numbers
How do these grab you?
3.1416
6.238673?
1.61803399?
Can you spot the pattern?
0, 1, 1, 2, 3, 5, 8, 13, 21
“Wow… Improves
proportion
In art and teaches
recursion!”
CAS CONFERENCE 2013
Why is Facebook
successful?
CAS CONFERENCE 2013
Get with the
algo-rhythm
CAS CONFERENCE 2013
How can I make pigs
fly?
CAS CONFERENCE 2013
Scratch to mobile
CAS CONFERENCE 2013
Questions
CAS CONFERENCE 2013
Download