This series of posts aims is aimed at UK secondary school teachers to give some free ideas and resources in order to help make computing lessons engaging and inclusive in order to help attract more and more students to continue with the subject at GCSE and beyond.
When students are choosing their GCSE options they seem to love asking teachers why we chose to teach our subjects.
Often, I can almost see the cogs turning inside some of my students’ heads, weighing up whether they should choose Computing over Art; ticking off the benefits of each subject as they make the first real choice that might affect the rest of their lives.
Whatever they use to make up their mind – who teaches the subject / what their friends are choosing / what they’re good at / what they enjoy – there’s clearly a lot more that we can do to promote Computer Science as a viable, challenging, enjoyable and worthwhile option. The national figures show a pretty poor GCSE uptake of GCSE Computer Science compared to other eBacc subjects and an abysmal uptake by girls. Boys, whilst outnumbering girls at KS4 and beyond, are being outperformed by girls from KS2 onwards. So there’s definitely something not right there that needs addressing.
I’ve been slowly working through the brilliant advice on the CAS #include site about how to ensure that my Computing lessons aren’t just catering for people like me and it strikes me that the way to be inclusive for all also looks and sounds like the way to be engaging and stretching for all. This post aims to share some of the mistakes I’ve made as well as some of the things I’m trying to put right to make sure that all students get the most out of their computing lessons, hopefully also boosting recruitment at KS4 too.
I’ve come up with 6 Cs to use as a checklist for planning engaging and inclusive computing projects:
Summary: I don’t think GCSE CS is too hard for all students but the data here shows that steps need to be taken to make Computer Science more accessible to the students from the whole 9-1 ability range.
This shows that nationally, the 67,100 students who took a Computing GCSE in England in 2018 achieved around a grade better in English and Maths than they did in Computing.
Why do students achieve a grade lower in CS compared to English and Maths?
I’ve heard many possible explanations for this but I’m not thoroughly convinced by any of them and so I’ve been on a quest to try to understand that 1 grade difference between Computer Science and English / Maths.
I want Computing to be a subject where any student can see their hard work pay off with similar outcomes to any of their other GCSE subjects. Computing should be accessible to students of any race, religion, background, gender or prior ability.
I’ve been teaching for 12 years and in that time I’ve been asked to teach over 12 different subjects. My background is in Electronic and Computer Systems Engineering so whilst I enjoyed teaching the-now-defunkt-ICT, I’m loving teaching its replacement Computing (KS3) / Computer Science (KS4-5).
I started my teaching career specialising in vocational subjects for students with special educational needs / disabilities and I’ve always loved seeing how ‘weaker’ students can defy the odds to succeed and create opportunities for themselves.
Vocational ICT qualifications are few and far between now but used to be hugely prevalent. The skills-based ICT curriculum could be very creative and practical but the vocational qualifications which assessed them became almost synonymous with schools ‘gaming’ the league tables to quickly get large numbers of students multiple GCSE equivalent grades. ICT departments could get results that were the envy of every other department through qualifications such as OCR Nationals and ECDL which were seen as far too easy and in no way ‘equivalent’ to other GCSEs despite historically counting as such in league tables.
I suspect that the grade boundaries for the first cohort of Computer Science at GCSE were deliberately set harshly to make sure that CS was seen as a rigorous alternative to ICT.
The problem is, the distribution of students achieving each GCSE grade is preserved from one year to the next by exam boards in the interest of fairness and comparability. Exam boards attempt to keep the percentage of students achieving each grade the same from year to year. This means that even if Computing receives more curriculum time or every student is taught by an experienced specialist, future cohorts of students can still expect to under achieve in Computer Science compared to their other subjects unless something changes in the way GCSE CS is assessed.
How does the distribution of grades in CS compare to other subjects?
I personally think GCSE Computer Science should be accessible to students of all abilities but I understand why many schools are selective with their cohorts. Computer Science is perceived as a difficult subject and many schools only allow higher ability students to enter the course.
I don’t have any data to back up that statement about many schools being selective by prior ability so I wanted to see if the if the proportion of each grades awarded at GCSE was skewed towards the higher grades.
Figure 2 shows the proportion of students achieving each grade in 2019 in England only.
I’ve included German in all graphs as it was the only subject where students under-performed more significantly than Computer Science compared to English and Maths.
You can see that whilst German grades are skewed towards the higher higher grades (many lower-prior-ability students won’t be entered for language GCSEs), Computer Science is slightly skewed towards the lower grades. This doesn’t look significant – Computer Science has a fairly normal distribution of grades from 9-1.
The shape of the CS grade distribution curves would imply that there’s a fairly standard distribution of students of all prior abilities being entered for GCSE Computer Science, but is that the case?
What is the prior ability range of students entered for GCSE Computer Science?
Dave Thomson (who wrote the FFT article at the top of this post) kindly provided me with a link to national GCSE results for 2018 compared to their KS2 starting point. Data for 2019 is only provisional at time of writing.
The graph below shows the prior ability (at KS2) of the 2018 and 2019 cohort of students entered for Maths, English, German and CS GCSEs:
‘Average’ KS2 results were around a 4b so the shape of the English Language curve on Figure 4 is what you’d expect if all students were entered across the whole ability range. The little spike on the left of the graph is because levels W, 1 and 2 are not split into sub levels but are all grouped together rather.
You can see that both German and (to an even greater extent) Computer Science are skewed towards more high-prior-ability students being entered. You can see that reflected in Figure 3 for German because the grey line has been shifted across to the higher grades but you can’t see the same shift for Computer Science.
Figure 4 and 5 show that lower prior ability students aren’t being entered for GCSE Computer Science as frequently as higher prior ability students. They don’t explain whether lower ability students opt out for themselves or whether their schools don’t give them that opportunity but they do show that it’s an issue for both boys and girls (slightly more significantly so for girls).
How accessible is Computer Science to lower prior ability students?
The initial graph from Dave’s FFT article shows that on average students can expect to achieve around a grade lower in CS than their other subjects but I wanted to know if that under-performance was consistent across the whole ability spectrum. Do lower-prior-ability students under-perform more significantly in CS or is that 1 grade difference the same regardless of their prior ability?
Next, I used the DfE transition matrices to work out the work the most frequently occurring grade at GCSE for students of each KS2 starting level. As you’d expect, students with a higher starting point (horizontal axis on Figure 6) can expect higher GCSE grades (vertical axis) for each of Maths, English, German and CS.
The red (Computer Science) line trails below every other subject (except German for high prior ability students). The gap between English/Maths and CS widens for lower ability students (then narrows slightly)
Figure 7 is similar to Dave’s original FFT chart (Figure 1) showing the difference between a student’s GCSE results in CS, Maths and German compared to the average of their grades for Maths and English. However, Figure 7 splits this relative over/under performance down by the prior ability of students entered for each subject.
The brown line (English and Maths average GCSE grade) is flat, at 0, as you’d expect and is included for reference as all other curves are relative to that average of English and Maths grades.
It’s interesting to see that higher-prior-ability students in German under-perform more significantly than lower-prior-ability students but the opposite is true for Computer Science students: lower-prior-ability students under-perform more significantly than higher-prior-ability students.
Figure 8 shows that whilst higher-prior-ability girls underperform less significantly than higher-prior-ability boys (relative to their English and Maths grades), the difference between higher-prior-ability and lower-prior-ability students is more significant for girls than it is for boys.
What does all this mean?
I’ve deliberately avoided trying to explain the reasons behind this data to avoid emphasising my own opinions instead of establishing the facts.
My conclusions are that the Computer Science GCSEs as they are currently assessed are not as accessible for lower-prior-attaining students as they are for more able students:
Students of all prior-ability can expect to achieve a lower grade in GCSE CS than they do in English / Maths (Fig 6).
Fewer lower-prior-ability students are being entered for GCSE CS than higher-prior-ability students (Fig 4).
The few lower-prior-ability students who are being entered under-perform relative to English and Maths more significantly than the majority of higher-prior-ability students (Fig 7).
These issues (above) are more pronounced in girls.
If schools only entered higher-prior-ability students for GCSE Computer Science they would currently see better results (in terms of pupil progress from KS2) than schools who allowed all students to take GCSE Computer Science. This cannot be allowed to continue if we want Computing to succeed as a subject which is accessible to all students.
What can we do?
As Computing teachers we need to ensure that we differentiate our lessons as effectively as we can. The vast majority of CPD for teachers has so far focused on subject knowledge. It’s encouraging that there’s now plans for a shift towards pedagogy CPD so teachers can learn how to support weaker students as well as stretching the most able.
As heads of department, parents and governors we can campaign for Computer Science to be offered to all students as a point of principal. If a student is willing to work hard they should be allowed the chance to study the subject regardless of how well they did at Primary school.
School leaders should make sure that relative performance between subjects nationally is taken into account when judging the ‘success’ of individual departments. Computing departments should be given time and support so that teachers can access bursary funded high quality CPD and learn from each other.
Exam boards and Ofqual should review the grade boundaries for Computer Science to ensure that the prior ability range of each cohort is taken into account and students can expect comparable outcomes in each subject. They should ensure future changes to assessment material contain a sufficient balance of questions aimed at grades 1-3 as well as higher grades.
The DfE and Ofsted should ensure that schools are given an incentive to increase the timetable allocation for Computing at KS3 and that future Computing KS4 qualifications are fully accessible to the whole 9-1 ability range.
Individual students should ignore all of the above. Students are individuals not statistics. National trends can be (and frequently are) proved wrong by hard working individuals. If you work hard in Computer Science you can achieve a higher grade than any of your other subjects. It’s a hard subject but that makes your ultimate Computer Science grade ‘worth’ even more than any other subject.
I don’t have all the answers here so I’m going to open it up to debate. I’d love to hear what your suggestions are in the comments below.
I’ve just added C# alongside Python and VB.NET to type.withcode.uk which means you can learn new code snippets and improve your typing speed by racing through competitive challenges online.
Type.withcode.uk is free to use with no signup required – I designed it for my students to be used as a quick starter activity as a different way of learning and remembering code snippets whilst also encouraging them to become efficient touch typists.
For each programming language you can choose a random code snippet or one from any of the following categories:
Variables and constants
Built in functions
Input and output
Repetition / Iteration
Procedures and Functions
Each challenge provides some code with an explanation of what it does which you then have to type out as fast as you can. There’s an onscreen keyboard to encourage your to touch type without looking at your fingers:
16th September 2019 is the start of National Coding Week so it’s an ideal time to for anyone to have a go at writing code for themselves.
To celebrate, here’s a free interactive activity that anyone can use to have fun writing code without needing to download any software or create any accounts.
It doesn’t matter how old you are, how much experience you have (or haven’t) got or what your gender is, hopefully there’ll be something in this python flappy bird challenge that will give you a taste of what’s possible with a few lines of python code.