Preparing for GCSE and A-level Computing – decisions, decisions

There was a time when I was simply told what to teach, what resources to use, and to get on with it.

Now I am making the decisions on what languages to use and they are not all straightforward.

First, A-level Computing:

The group who start OCR A-level Computing in September will (mostly) have used Greenfoot in GCSE ICT.  There will be some who did not do GCSE ICT, and I expect this in future years too.  Greenfoot is suitable for A-level coursework, but that’s not my only concern:

  • At AS, one of their exams is about the basic components of programming (June 2012 paper is here).  This can be taught in practically any language.
  • If I use Java for this, it will be familiar ground to those who have already done Greenfoot.  Those who did not use Greenfoot might feel they are at a disadvantage and allow the ‘experts’ around them to put them off.
  • Java is widely taught, from first principles, in universities.  There is no expectation for students to have done Java at A-level.
  • I did Turbo Pascal at school, then mostly Turbo Pascal for a year at university, (and was bored in Yr 1, as I wasn’t learning much new – when I taught myself C, it was via Turbo C – same environment).  This over-emphasis on one language and one environment was not entirely helpful.  Would my decision to use Java do the same thing to my own students?
  • I am not here to teach Java, or any language in particular.  The main concern is to teach programming principles.
  • Java is a great language to learn, and I have taught it from basics before, at this level.  However, the syntax of Java can be a pain.  Also, graphics handling with Java can be fiddly (unless there is a drag-and-drop interface for Swing – a sort-of VB interface for Java – let me know if there is one!).

So, the more I think about this, the more my mind wanders back to…. Pascal, which I learned at school.   “But Pascal is ancient”, say some.  Yes, it is.  It is also a well proven teaching language and is well used in schools.  It has a straightforward syntax and IDEs don’t have the same confusing clutter that the likes of Visual Studio or Eclipse have.  Remember, the important thing is not the language, but the principles that are taught.  If they are taught properly, these skills will transfer equally well to C, C++, C#, Ruby, etc.  Anyway, it’s not the Turbo Pascal you might be thinking of – it’s Object Pascal, aka Delphi (or the FOSS implementation, Lazarus).

So, that’s my dilemma.  Everything needed to be taught at AS can be taught in Java or Object Pascal.  Which is the most effective preparation for the future?  Should I concentrate on Java, or do something that will make sure they can switch between programming environments and languages (something that was a shock to me, when C++ came along!).

Then there’s the A2 project.  Greenfoot would be lovely for this, and despite GCSE experience, most of the class will have to learn this anew as they’ll have forgotten.  If we have done Delphi, the option of some sort of forms-driven interface for data processing is also going to be there for someone.  If we do Java at AS, anything forms-driven will involve a hairy experience with Swing in Java – the hairiness of this could push students towards Greenfoot.  I have nothing against a pile of Greenfoot games, but the option of other things would be nice.  As it happens, for the past two years the OCR sample project has been a reverse-engineered 1980s game in C# (though Greenfoot is also acceptable).

Why not C#?  I know less C# than would fill a postage-stamp, that’s why.  Before teaching it (as I may well do at some point in the future), I need to be properly confident with it.  My spare hacking time is in learning Python, for GCSE (see below).

Then there’s my GCSE dilemma:

If a glance at the CAS forums is to be believed, there’s a lot of people out there using Python.  They are all sharing their resources, which I would happily plagiarise steal borrow.  If other people who you respect have been through this course with Python, which I am trying to learn anyway, then why not listen to their experience?  The requirements (while/if/else/lists/general problem solving – any language will do).

“But you love Greenfoot” someone said to me.  Yes, I think Greenfoot is brilliant and even if we do not use it for Controlled Assessment, we will definitely use it for teaching, at some point.  I’m not about to throw out my experiences with it.  I’m not sure if putting all my GCSE eggs into a Java basket is a good idea (fiddly syntax and so-on).

But the more I talk to people whose opinion I respect, the more I find out some are very happy using Delphi, and running straight into A-level with it.

So, back to my original dilemma – do I want to make everybody use one language, all the way through GCSE and A-level?

Answers on a postcard, please!

 

 

 

Book Review: GCSE Computing, OCR (Robson)

Teachers consider a lot of things when choosing textbooks: whether the textbook is the ‘official’ resource or not; whether an unofficial book is a well-recognised resource; how well the book matches the specification (even ‘official’ books don’t always do this!).

Susan Robson’s GCSE Computing for OCR (2nd ed.) isn’t the official book, though OCR have given this second edition their ‘approval’.  Asides from that, it is very widely used and is an excellently written book which takes students systematically through the GCSE course.  In this second edition, Susan has incorporated suggestions and feedback from teachers and OCR, to improve on the already very good first edition.

The book’s chapters follow the structure of the course specification.  For teachers using this as a main text, this will give them the confidence to know the course has been covered in its entirely – no fiddly jumping from chapter-to-chapter, to match the book to the specification.  Clear wording and good use of diagrams are combined to ensure that each topic is well treated.  This will be a big help to teachers who are new to this course and who don’t have someone in their department to hold their metaphorical hand.  The author is an experienced teacher, and has clearly kept the needs of real-life students in her mind.  Indeed, while this is the second printed edition, I cannot help but wonder how many versions have been used in the classroom, to refine it to a point where it is ready for a wider audience.  All teachers have been through the experience of notes that make sense to them, but that baffle students!  The time that has been taken to refine the content of this book, to make it accessible, is shown in the end-product.

Course theory material is related to realistic examples.  Examples tend to use Microsoft Windows and Microsoft Access (for databases), which most schools will be using.  Non-Microsoft schools needn’t worry – Windows task manager and command prompt (for example) follow a layout that is common in many operating systems and if it wasn’t for the word ‘Microsoft’ in the screenshot, you could be forgiven for thinking you were looking at a generic image.  The same can be said of the Access database examples – remove the word ‘Access’ from the screenshot and it could equally well be LibreOffice Base that you are looking at.

In the programming section, Visual Basic and Delphi examples are used.  This should not be a concern for schools using other languages, as the structure of an if/else loop (for example) transfers equally well across all common languages.  Generally, pseudocode is used, in an effort to be platform-independent.  Once students are used to the layout of VB/Delphi, they could treat these examples as well-structured pseudocode.  As this book is primarily concerned with the theory side of the course, and schools will be using other resources for the two practical modules, there should be no problem anyway – exam questions deal with structured pseudocode and can be answered in any common language.

There are some meaty parts of this course: binary and networking, to name but two.  These are topics that are revisited at A-level and, as a teacher, it can be difficult to know where to stop – even when the specification is covered, many of us like to go a bit further simply for the enjoyment of it!  Conversely, we have all taught classes who struggle with the full depth of meaty topics, and who do not benefit from a really intricate explanation.  This book has done well in addressing that tension: to provide enough depth to cover the course material well, and in providing enough of a stimulus to the students who wish to go further in either their own studies or at A-level.

The inclusion of past-paper questions at the end of each section, with sample ‘good’ answers is welcome.  One minor criticism is that this prevents students from attempting the questions ‘under their own steam’.  However, with a good range of past-papers now available, this shouldn’t be a big problem in the classroom.

This is not the only book available for this course, but it was the first and is deservedly widely-used and well-respected.  For comparison, O’Byrne and Rouse’s ‘official’ book is worth a look.  Both books have their own strengths and the decision on which to use will be one of the teacher’s own preferences.

GCSE Computing is available in a number of flavours, from Lulu.

The Colour edition costs £26.68, but at the time of writing it is discounted to £20.01.  If you prefer black & white, it is £7.99.  If you prefer the PDF version in A4, or the PDF version in US Letter-size (to match the printed book) either costs £99 and can be shared on a VLE or printed locally.

Susan Robson’s author page, on Lulu includes links to her AQA GCSE Computing book, plus sample material for free download.

 

Computer Science & ICT in NI: The State of the Nation

The following are my own thoughts and observations on the direction ICT and Computer Science are taking in NI.  If you disagree, please comment.  They have come from many discussions I have had with other members of Computing At School.

 

Politicians

Where we are: Education is divided between two ministers, in our Assembly. School (age 4-18) is looked after by the Department of Education NI (DENI) and Minister John O’Dowd (Sinn Fein). FHE, which includes age 16+ FE Colleges are the remit of the Department of Employment and Learning (DEL) and Minister Stephen Farry (Alliance).

Both ministers have said that Computer Science is a good thing. Both have said that education-for-employability is a good thing. In 2012, O’Dowd stated in the Assembly that he would ask CCEA to examine the need for Computer Science throughout the school curriculum – as far as I know, they are still examining it (if you know of any public statements, let me know).

Meanwhile the complaint of the FE Colleges and Universities, and of Farry, is that students currently arrive to do Computer Science courses and a lot think it will be a few years of PowerPoint and Excel. FHE points the finger of blame at the school curriculum. Yes, O’Dowd says Computer Science is a good thing, but schools are not hurrying to implement it.

 

Where we are going: is anybody’s guess. However, with a quarter of all job adverts on nijobfinder.co.uk being in IT, and specifically in software development/maintenance/etc., and with a number of big firms starting to wonder where new talent will come from, there is massive frustration with the educational system.

CAS (Computing at School) have talked with politicians, who in turn have asked questions in the Assembly, and many teachers or other concerned people have written to their representatives.

However, a clear action plan from DENI would be of considerable help.

 

Managed service

Where we are: Classroom 2000 (C2k) is a managed service that provides a networked infrastructure, PCs and software to all schools. When it arrived in all post-primary a decade ago, they declined to support software development tools: this effectively terminated many schools’ ability to deliver A-level Computer Science, which had been delivered via the schools’ own networks until that point. A handful of schools retained their own parallel network, from their own budgets, but over time, the numbers able to do this declined (see A-level, below).

Presently, C2k permit IDEs that support interpreted languages that run on a virtual machine (e.g. Java, Python). Schools must install themselves (and work around various network restrictions in the process). A virtual machine is also provided which schools can configure (again, heavily restricted).  Likewise, teachers of ICT often report that some things that they want to do are not supported.

 

Where we are going: C2k will soon become the Educational Network for Northern Ireland and the requirements for the tools needed to support Computer Science to A-level are being considered. C2k have been in useful discussion with CCEA and CAS and requests have been made for a clear list of programming tools to be supported as-standard. This includes IDEs to support the full range of languages taught at GCSE and A-level. Nothing has been confirmed yet, but they are well aware of the need for a range of programming tools that will support all GCSE/GCE Computer Science specifications.

 

Key Stage 2

Where we are: a new, less-prescriptive curriculum now allows teachers more flexibility to innovate. A steadily growing number of Primary Schools are using tools such as Scratch. In the end-of-KS2 assessment tasks, designed by CCEA, a number of programming tasks are included.

I am not an expert on KS2 – and would be grateful for any feedback in this area.  

From talking with a few KS2 teachers, it’s interesting to discover ‘Bee Bots’ – programmable Bees that roam the floor are doing what Logo Turtles did 30 years ago, in some schools.  Daisy the Dinosaur, a very simple drag-and-drop programming tool is used in some places- leading nicely to Scratch.  A lack of uniform provision here does mean some kids will arrive in KS3, knowing more than others  about tools that are used in KS3 (e.g. Scratch).  However, this already happens with aspects of Maths, English, Science, etc., and KS3 teachers are well used to it.  My own view is that encouraging innovation at KS2 will make it more likely that such ideas spread out to many schools, which in turn will benefit KS3 teachers as they will be able to expect most new students to already know a little of programming.

Key Stage 3

Where we are: there are major concerns in this area. Despite much negative feeling from teachers, CCEA are pressing ahead with their Key Stage 3 assessment scheme which will soon become compulsory. The need for KS3 assessment is mandated by DENI, who have asked CCEA to administer it. This involves assessing the use of cross-curricular ICT skills, through recognised KS3 subjects only. Neither ICT nor Computer Science are recognised as discrete subjects that schools are expected to deliver at KS3.

Effects of this include:

  • Some schools withdrawing ICT periods completely from the KS3 timetable, as a need is no longer seen, because ICT is now taught through all subjects. However, some schools have allowed these to be converted to Computer Science periods.
  • ICT being assessed by people who are not subject experts. So, while the scheme allows a History teacher to design a ‘Chop the Head off King Charles’ app, few History teachers will have the skills to teach or assess this. Hence, there are concerns that the scheme may aim to the lowest common denominator.
  • It is time consuming to deliver, administer and assess. The need for teachers to make it manageable for themselves may reinforce a perception that ICT=MS Office, thus affecting GCSE uptake.
  • It does present opportunities for creative, cross-curricular ICT.  For this to be fully realised, the administrative burden must be reduced.

 

Where we are going: Union action is currently in place to boycott this scheme. OCR Ireland are trying to run their Cambridge Nationals in ICT as an alternative. However DENI have ruled that for this to be allowed, CCEA must certify tasks for individual schools, to decide whether they are acceptable for the DENI assessment. Presently, for the CCEA scheme, schools must submit all their tasks to CCEA for CCEA to decide whether they are appropriate.  If the scheme is to reach its full potential, of effective cross-curricular ICT, the administrative overhead needs to be removed.  Not trusting teachers to determine the suitability of work – instead, relying on a cumbersome back-and-forth approval process – has already hamstrung it.

 

Key Stage 4 (GCSE)

Where we are: CCEA’s GCSE ICT now allows programming. This is a major development. A games-development task, originally designed with MS Office in mind, can be interpreted to allow Scratch, Greenfoot, GameMaker, etc. CCEA endorse such approaches. Other compulsory tasks include PowerPoint, Excel, Access and web-development (often done in Frontpage 2003, part of the C2k standard package).

A growing handful of schools offer GCSE Computer Science. However, a number of CAS members have reported that participation in OCR/AQA training has not been supported by their schools, due to financial constraints. DENI fund participation in CCEA training, but not that of other boards. CCEA currently have no plans to offer GCSE Computer Science.

Where we are going: assuming C2k deliver IDEs as part of their standard installation, schools will have more flexibility in what software to use. Teachers who have introduced programming in KS3 have seen demand for GCSE Computer Science grow, which will lead to A-level demand.  The CCEA ICT course is sparking increased demand for programming, either as part of A-level Computing, or as an option within ICT.

Key Stage 5 (A-level)

Where we are: CCEA withdrew A-level Computer Science in 2002. In 2002, there were 1201 students sitting the final A-level exam (mostly CCEA, some AQA and OCR). In 2012, there were 52 (AQA, OCR).  In most schools, CCEA ICT is offered in its place (some schools have chosen ICT in preference to Computing; others have chosen ICT as the next-best-thing, as they feel unable to deliver Computing within the managed service).  Only a few schools offer both ICT and Computing. Most schools offer the CCEA course and do coursework via Frontpage and Access/Excel (AS) and Access (A2). The CCEA specification clearly states that programmed solutions are “not within the spirit” of the specification. Requests for an optional programming module at each revision of the specification have been declined.  Instead, a database-centric model is followed, which excludes many options for programming, as well as other applications of ICT.  A smaller number of schools offer the AQA ICT course and the CCEA Applied ICT course, both of which offer more freedom.

A number of teachers have reported that concerned Principals have pushed them towards ICT, in place of Computer Science, because of a perception that ICT delivers better grades.

 

Where we are going: CCEA have developed a new Software Systems Development A-level, at the request of the Department for Employment and Learning, for delivery from September 2013. This is a major, and welcome, change in direction. The expected audience are FHE Colleges and a number of schools who do not currently offer Computer Science. Most schools who currently offer A-level Computer Science are likely to remain with their current provider for the time being, until they assess the effectiveness of CCEA’s new course.

Both AQA and OCR are keen to expand Computer Science provision. With a number of schools who do not offer A-level Computer Science offering it at GCSE, or intending to do so, A-level demand is likely to increase. School Principals are aware of developments in England regarding ICT and the drive towards Computer Science, and many are receiving enquiries from parents. Issues in the local economy and job market are also raising awareness of Computer Science.

Successful delivery of Computer Science or the new Software and Systems Development course depends on improved provision from C2k. Many schools simply do not have time or resources to work around restrictions that are currently in place.

 

The teachers

Where are we: ICT is taught by a broad spectrum of teachers. At one end, there are those who would prefer to teach Computer Science and who will gladly return to it. At the other, there are those who came from other subjects and who are content with ICT unless they are given time for training.  In the middle, there are varying shades of preference.  There are also concerns about whether a broad spectrum of students will do as well in Computer Science as they do in ICT, especially if it is not introduced to them until late in their school careers.

Very little time and money for training exists. Local universities have suggested a willingness to offer training, if money was available. This may be a major downfall, if not addressed. Many ICT teachers are willing to use Scratch at Key Stage 2/3 and a lot are competent to self-learn the skills needed for GCSE. However, A-level may be a major challenge for many if they are not allowed time to properly train.

STEM funding was recently made available via the Southern Education and Library Board, for a small number of ICT teachers. This included 3 days of training (including Python, C#) and 2 days of placement within a software development company. However more training, for more people, is clearly needed.

 

Where we are going: some teachers are investing their own time and money in training, as they are keep to teach Computer Science. However, it is not feasible (or fair) to expect all teachers to do this – especially those for whom Computer Science is an entirely new subject. Advances in the perception of Computer Science and in the demand for it will be negated if the subject cannot be delivered effectively.

Reflections on Open Day

Every year we have a day for Primary School children and their parents to come and see our lovely school.  It’s a big sales pitch.

A few years ago, I had a conversation that went like this:
Parent: “Why are you teaching this simplistic nonsense?” (i.e. PowerPoint, Word, etc.).  “And surely you know there aren’t many jobs in MS Access – why are you teaching it at A-level?”

Indeed.  I often wondered the same myself.  I mumbled something about it not being my decision, external bodies, etc.

The next year:
Parent: “OK, you have a little programming club – good.  But can you tell me in all honestly that A-level ICT is preparation for anything useful?”

Well, no, I couldn’t.  But C2k wouldn’t let us run the software needed for A-level Computing on their computers at that time and, well, ICT was as close as we could get.

The year after, a parent was more direct, the week before open day:
“I’m not going to your open day for one simple reason.  You and I both know ICT is a farce.  You and I both know kids who do it struggle at Uni if they do Computing.  You and I both know that programming teaches stuff that MS Office cannot come close to.  On the other hand, the school in the next town does have Computing.  Based on that fact alone, it is clear that they are serious about preparing kids for the workplace and you are just playing games with easy grades and league tables.”

He is a good friend and I told him to put it in writing and post it to the Head.

So, this year I was proud to announce to the masses that, “We are the only school in this town offering GCSE and A-level Computing”, which we are.  P7 kids played and tinkered with Greenfoot games my students had programmed.  Parents shook my hand and said “About time too”.  Lots of parents asked why, with so many jobs in programming, were so many schools ignoring the issue.  I had to say I couldn’t speak for them.  All I know is, universities want Computing to be taught, employers want it, and parents and students are asking for it.  Students who do A-level ICT and who do a Computing degree, are not often happy people.

Lots of parents asked me to clarify the difference between ICT and Computing, and wondered how exam boards can justify using a PowerPoint presentation for GCSE coursework (in ICT).

Parents and children alike were all captivated by the A-level student who was showing off the search engine he built.  The Android apps went down well too.

Survey results- who teachers Compuing, who teaches ICT, what tools are used?

I was recently involved in a survey of the software used and Computing courses taught across UK and Ireland.  Responses came from members of CAS and CESI.  The results for everyone who replied are shown below.  If you want results per-region, then download this spreadsheet, which is neatly divided into NI, Scotland, Wales, England, Rep. of Ireland etc.  CAS members can also get the spreadsheet version here.

The overall results are below.

From my perspective, I don’t really care what schools are using to teach programming – so long as it’s happening.  Teachers can use their professional judgement to  decide which tools are best for their students.  A couple of questions near the end do bother me though.

  • A reasonable number pf Principals don’t understand what Computing is, and why it is not ICT.  I’m not surprised – for years, they were told from some quarters, that ICT = Computing.  This confusion came from outside school, often from people high-up in education.  If I was a Principal, in 2002, and some curriculum-advisory body told me ICT was great and more useful than Computing, or the same as Computing but “more attainable”, would I have taken their word for it?  Positively however, most Principals are open-minded people and are willing to discuss the matter.
  • Even Principals who do support Computing don’t like letting teachers out to support meetings.  A lot of teachers have told me their schools simply don’t have the money for this, due to budget cutbacks.  If schools don’t have the money for keeping staff’s knowledge up-to-date, then how can we expect schools to be world-class?  How can teachers confidently deliver material if they have not been allowed to learn it themselves?  Many teachers of Computing have come from other subjects and learning any programming language is not a matter of flicking through a book.  If schools don’t get the money for training staff, the long-term economy will suffer.

 

Where do you teach? (all were asked) All Responses As % of people answering Q As % of total
UK – England 191 67.5 67.5
UK – Northern Ireland 12 4.2 4.2
UK – Scotland 26 9.2 9.2
UK – Wales 10 3.5 3.5
UK Dependencies – IoM 1 0.4 0.4
Republic of Ireland 33 11.7 11.7
Some UK-curriculum international school 3 1.1 1.1
Other 7 2.5 2.5
Answers to Q 283 100.0 100.0
How is your school funded? (all were asked)
State funded 225 81.5 79.5
Fee paying 42 15.2 14.8
Students pay little/nothing, but most finding is from some outside Trust or Charity. 9 3.3 3.2
Answers to Q 276 100.0 97.5
How do you select students for your school? (all were asked)
Academic selection – students are normally selected after sitting some test of perceived ability. 56 20.3 19.8
Non-academic selection – perceived ability does not normally influence entry criteria. 205 74.3 72.4
A mixture of academic selection and non-academic selection – some students sit a test, and some places are given through ‘open enrolment’ 15 5.4 5.3
Answers to Q 276 100.0 97.5
Do you teach Junior High / KS3? (all were asked)
Yes 245 89.1 86.6
No 30 10.9 10.6
Answers to Q 275 100.0 97.2
Do your students complete any ICT/Computing external qualification in Junior High? (Only those who said YES to Junior High/KS3 Q were asked)
No, all work is internally assessed 183 64.7 64.7
OCR/Cambridge Nationals 26 9.2 9.2
CCEA Key Stage 3 Using ICT 4 1.4 1.4
ECDL 5 1.8 1.8
Other 65 23.0 23.0
Answers to Q 283 100.0 100.0
Which programming languages are normally taught to classes in “Junior High” (age 11-14) (Only those who said YES to Junior High/KS3 Q were asked)
We do not offer programming at this stage of the curriculum. 35 12.4 12.4
Alice 21 7.4 7.4
Basic – VB 6 9 3.2 3.2
Basic – VB.net 7 2.5 2.5
Basic – Small Basic 25 8.8 8.8
Basic – some version not listed above 10 3.5 3.5
C 2 0.7 0.7
C# 3 1.1 1.1
Objective C 1 0.4 0.4
Delphi (Object Pascal) 1 0.4 0.4
Flash 38 13.4 13.4
Game Maker 52 18.4 18.4
Go 1 0.4 0.4
Greenfoot 16 5.7 5.7
HTML (up to HTML 4, including CSS) 36 12.7 12.7
HTML (up to HTML 4, not including CSS) 40 14.1 14.1
HTML5 (including CSS) 18 6.4 6.4
HTML5 (not including CSS) 3 1.1 1.1
Java (not including Greenfoot) 4 1.4 1.4
JavaScript 22 7.8 7.8
Kodu 45 15.9 15.9
Pascal (for Object Pascal, select Delphi, above) 1 0.4 0.4
Prolog (all dialects) 1 0.4 0.4
Python 34 12.0 12.0
Ruby 2 0.7 0.7
Scratch 190 67.1 67.1
Simula 1 0.4 0.4
SQL (via MS Access) 10 3.5 3.5
SQL (via MS SQL Server) 1 0.4 0.4
SQL (via MySQL) 2 0.7 0.7
SQL (via something not listed above) 1 0.4 0.4
Yousrc 5 1.8 1.8
Other 22 7.8 7.8
Answers to Q 283 100.0 100.0
Do you offer externally accredited courses at ‘Senior High’ stage. This is normally ages 14-16, sometimes called Key Stage 4. (all were asked)
Yes, we teach ICT at GCSE/Intermediate Cert/etc. (approx age 14-16) 84 30.4 29.7
Yes, we teach Computing at GCSE/Intermediate Cert/etc. (approx age 14-16) 43 15.6 15.2
Yes, we teach ICT and Computing at GCSE/Intermediate Cert/etc. (approx age 14-16) 80 29.0 28.3
We teach some ICT or Computing course, but not for an external award. 13 4.7 4.6
No, we teach neither ICT or Computing at GCSE/Intermediate Cert/etc. (approx age 14-16) 56 20.3 19.8
Answers to Q 276 100.0 97.5
Which ICT/Computing courses does your school offer in Senior High (age 14-16) (only those who said YES to Senior High/KS4 Q were asked)
GCSE Computer Science – AQA 17 6.2 6.0
GCSE Computer Science – Edexcel 0 0.0 0.0
GCSE Computing – OCR 79 28.6 27.9
GCSE Computer Science – WJEC 1 0.4 0.4
CIE IGCSE Computer Studies 4 1.4 1.4
SQA Access 2 Computer Studies 1 0.4 0.4
SQA Intermediate 1 Computer Studies 9 3.3 3.2
SQA Intermediate 2 Computer Studies 21 7.6 7.4
SQA Intermediate 2 Information Systems 8 2.9 2.8
GCSE ICT – AQA 21 7.6 7.4
GCSE ICT – CCEA 12 4.3 4.2
GCSE ICT – Edexcel 32 11.6 11.3
GCSE ICT – OCR 15 5.4 5.3
GCSE ICT – WJEC 13 4.7 4.6
IGCSE ICT – CIE 5 1.8 1.8
EDCL 12 4.3 4.2
OCR / Cambridge Nationals ICT 61 22.1 21.6
DiDA 27 9.8 9.5
INGOTS courses 1 0.4 0.4
Some internally designed ICT certificate. 8 2.9 2.8
Some internally designed Computing/programming certificate. 3 1.1 1.1
Other 52 18.8 18.4
Answers to Q 276 100.0 97.5
Which programming languages are normally taught to classes in “Senior” High (age 14-16, during GCSE/Intermediate certificate courses) (only those who said YES to Senior High/KS4 Q were asked)
Alice 7 2.5 2.5
Basic – VB 6 19 6.9 6.7
Basic – VB.net 27 9.8 9.5
Basic – Small Basic 21 7.6 7.4
Basic – some version not listed above 15 5.4 5.3
C 3 1.1 1.1
C++ 1 0.4 0.4
C# 7 2.5 2.5
Delphi (Object Pascal) 3 1.1 1.1
Game Maker 15 5.4 5.3
Greenfoot 19 6.9 6.7
HTML (up to HTML 4, including CSS) 37 13.4 13.1
HTML (up to HTML 4, not including CSS) 16 5.8 5.7
HTML5 (including CSS) 12 4.3 4.2
HTML5 (not including CSS) 4 1.4 1.4
Java (not including Greenfoot) 6 2.2 2.1
JavaScript 28 10.1 9.9
Kodu 9 3.3 3.2
Pascal (for Object Pascal, select Delphi, above) 7 2.5 2.5
Prolog (all dialects) 4 1.4 1.4
Python 62 22.5 21.9
Ruby 1 0.4 0.4
Scratch 76 27.5 26.9
SQL (via MS Access) 8 2.9 2.8
SQL (via MySQL) 8 2.9 2.8
SQL (via Oracle) 2 0.7 0.7
SQL (via something not listed above) 1 0.4 0.4
Yousrc 4 1.4 1.4
Flash 25 9.1 8.8
Other 21 7.6 7.4
Answers to Q 276 100.0 97.5
Which ICT/Computing courses do you offer, that are accredited by an outside body? (only those who said YES to Senior High/KS4 Q were asked)
ICT (A-level, Higher Certificate, etc.) 64 23.5 22.6
Computing (A-level, Higher Certificate, BTEC, etc.) 56 20.6 19.8
Both ICT and Computing (GCSE, IGCSE, Intermediate Cert., BTEC, etc) 66 24.3 23.3
We offer some ICT course, which is not externally validated. 6 2.2 2.1
We offer some Computing/Programming course, which is not externally validated. 3 1.1 1.1
We do not offer ICT or Computing courses at this stage. 77 28.3 27.2
Answers to Q 272 100.0 96.1
What age groups are in your Sixth form?
Normal school age (approx 16-19) 178 96.2 62.9
Mostly school age, with some older students. 6 3.2 2.1
Mostly older students, with some of school age. 1 0.5 0.4
Answers to Q 185 100.0 65.4
Which ICT/Computing courses does your school offer? (Only those who had confirmed that they had a sixth form were asked)
A-level Computing – AQA 63 34.1 22.3
A-level Computing – OCR 22 11.9 7.8
A-level Computing – WJEC 9 4.9 3.2
BTEC Computing 11 5.9 3.9
International A-level Computing 0 0.0 0.0
IB Computer Science 3 1.6 1.1
SQA Intermediate 2 Information Systems 7 3.8 2.5
SQA Higher Information Systems 9 4.9 3.2
SQA Advanced Higher Information Systems 4 2.2 1.4
A-level ICT – AQA 28 15.1 9.9
A-level ICT – CCEA 7 3.8 2.5
A-level ICT – Edexcel 15 8.1 5.3
A-level ICT – OCR 28 15.1 9.9
A-level ICT – WJEC 16 8.6 5.7
ECDL 7 3.8 2.5
Some internally designed ICT certificate 5 2.7 1.8
Some internally designed Computing/programming certificate 1 0.5 0.4
Other 42 22.7 14.8
Answers to Q 185 100.0 65.4
Which programming languages are normally taught to classes in “Sixth Form” (age 16-18, during A-level/Higher Certificate courses)? (only those who confirmed Computing/ICT were offered, were asked)
Alice 3 1.6 1.1
Basic – VB 6 22 11.9 7.8
Basic – VB.net 44 23.8 15.5
Basic – Small Basic 3 1.6 1.1
Basic – some version not listed above 6 3.2 2.1
C 4 2.2 1.4
C++ 1 0.5 0.4
C# 8 4.3 2.8
Delphi (Object Pascal) 14 7.6 4.9
Game Maker 5 2.7 1.8
Greenfoot 13 7.0 4.6
Haskell 1 0.5 0.4
HTML (up to HTML 4, including CSS) 33 17.8 11.7
HTML (up to HTML 4, not including CSS) 7 3.8 2.5
HTML5 (including CSS) 16 8.6 5.7
HTML5 (not including CSS) 3 1.6 1.1
Java (not including Greenfoot) 13 7.0 4.6
JavaScript 22 11.9 7.8
Kodu 2 1.1 0.7
Pascal (for Object Pascal, select Delphi, above) 15 8.1 5.3
Perl 1 0.5 0.4
Prolog (all dialects) 10 5.4 3.5
Python 34 18.4 12.0
Ruby 1 0.5 0.4
Scratch 22 11.9 7.8
SQL (via MS Access) 25 13.5 8.8
SQL (via MS SQL Server) 2 1.1 0.7
SQL (via MySQL) 16 8.6 5.7
SQL (via Oracle) 2 1.1 0.7
SQL (via something not listed above) 7 3.8 2.5
Yousrc 1 0.5 0.4
Flash 20 10.8 7.1
Other 11 5.9 3.9
Answers to Q 185 100.0 65.4
What is your background? i.e. immediately before you became a teacher of Computing, what did you do? (all were asked)
I was a software developer 43 15.2 15.2
I worked in Computer Science research 1 0.4 0.4
I worked in other science research 6 2.1 2.1
I was a mathematician/accountant/actuary/some other professional mathematician. 3 1.1 1.1
I finished a degree in Computer Science (or similar), and came directly to teaching. 69 24.4 24.4
I used to be a maths teacher. 23 8.1 8.1
I used to be an electronics teacher. 3 1.1 1.1
I used to be a science teacher. 12 4.2 4.2
I taught something else. 41 14.5 14.5
Other 82 29.0 29.0
Answers to Q 283 100.0 100.0
How confident do you feel in learning new programming languages? (all were asked)
Very confident. I do it for fun. 95 34.4 33.6
Fairly confident. I can do it if I have to. 130 47.1 45.9
Not confident, but I can try. 45 16.3 15.9
I really don’t want to do this, but if I have to… 4 1.4 1.4
NO NO NO! 2 0.7 0.7
Answers to Q 276 100.0 97.5
What funding will your school give you in learning new programming tools? (all were asked)
My school will fund most courses. 36 13.1 12.7
My school will fund a few courses. 125 45.5 44.2
My school will fund no courses. 114 41.5 40.3
Answers to Q 275 100.0 97.2
How much time will your school give you to learn new programming languages and tools (all were asked)
My school will give me all the time I need. 18 6.6 6.4
My school will give me some time. 85 31.0 30.0
My school will give me no time. 171 62.4 60.4
Answers to Q 274 100.0 96.8
How understanding is your Principal/Head of ICT and Computing? (all were asked)
My Principal knows the difference between ICT and Computing, and is supportive of both. 117 43.2 41.3
My Principal knows the difference between ICT and Computing, but favours ICT. 20 7.4 7.1
My Principal knows the difference between ICT and Computing, but favours Computing. 33 12.2 11.7
My Principal knows the difference between ICT and Computing, but gives little support to either. 26 9.6 9.2
My Principal thinks ICT and Computing are the same, and this affects decision making. 41 15.1 14.5
My Principal neither knows nor cares about the difference between ICT and Computing, and sees neither subject as important. 34 12.5 12.0
Answers to Q 271 100.0 95.8

 

Where do you teach? (all were asked) All Responses As % of people answering Q As % of total for region
UK – England 191 67.5 67.5
UK – Northern Ireland 12 4.2 4.2
UK – Scotland 26 9.2 9.2
UK – Wales 10 3.5 3.5
UK Dependencies – IoM 1 0.4 0.4
UK Dependencies – Channel Is. 0 0.0 0.0
Republic of Ireland 33 11.7 11.7
Some UK-curriculum international school 3 1.1 1.1
Other 7 2.5 2.5
Answers to Q 283 100.0 100.0
How is your school funded? (all were asked)
State funded 225 81.5 79.5
Fee paying 42 15.2 14.8
Students pay little/nothing, but most finding is from some outside Trust or Charity. 9 3.3 3.2
Answers to Q 276 100.0 97.5
How do you select students for your school? (all were asked)
Academic selection – students are normally selected after sitting some test of perceived ability. 56 20.3 19.8
Non-academic selection – perceived ability does not normally influence entry criteria. 205 74.3 72.4
A mixture of academic selection and non-academic selection – some students sit a test, and some places are given through ‘open enrolment’ 15 5.4 5.3
Answers to Q 276 100.0 97.5
Do you teach Junior High / KS3? (all were asked)
Yes 245 89.1 86.6
No 30 10.9 10.6
Answers to Q 275 100.0 97.2
Do your students complete any ICT/Computing external qualification in Junior High? (Only those who said YES to Junior High/KS3 Q were asked)
No, all work is internally assessed 183 64.7 64.7
OCR/Cambridge Nationals 26 9.2 9.2
CCEA Key Stage 3 Using ICT 4 1.4 1.4
Some INGOTS award 0 0.0 0.0
ECDL 5 1.8 1.8
Other 65 23.0 23.0
Answers to Q 283 100.0 100.0
Which programming languages are normally taught to classes in “Junior High” (age 11-14) (Only those who said YES to Junior High/KS3 Q were asked)
We do not offer programming at this stage of the curriculum. 35 12.4 12.4
Alice 21 7.4 7.4
Basic – VB 6 9 3.2 3.2
Basic – VB.net 7 2.5 2.5
Basic – Small Basic 25 8.8 8.8
Basic – some version not listed above 10 3.5 3.5
C 2 0.7 0.7
C++ 0 0.0 0.0
C# 3 1.1 1.1
Objective C 1 0.4 0.4
COBOL 0 0.0 0.0
Delphi (Object Pascal) 1 0.4 0.4
F# 0 0.0 0.0
Flash 38 13.4 13.4
Gambas 0 0.0 0.0
Game Maker 52 18.4 18.4
Go 1 0.4 0.4
Greenfoot 16 5.7 5.7
Haskell 0 0.0 0.0
HTML (up to HTML 4, including CSS) 36 12.7 12.7
HTML (up to HTML 4, not including CSS) 40 14.1 14.1
HTML5 (including CSS) 18 6.4 6.4
HTML5 (not including CSS) 3 1.1 1.1
Java (not including Greenfoot) 4 1.4 1.4
JavaScript 22 7.8 7.8
Kodu 45 15.9 15.9
Lisp (all dialects) 0 0.0 0.0
Modula 2 0 0.0 0.0
Modula 3 0 0.0 0.0
Pascal (for Object Pascal, select Delphi, above) 1 0.4 0.4
Perl 0 0.0 0.0
Prolog (all dialects) 1 0.4 0.4
Python 34 12.0 12.0
Ruby 2 0.7 0.7
Scheme 0 0.0 0.0
Scratch 190 67.1 67.1
Simula 1 0.4 0.4
Smalltalk 0 0.0 0.0
SQL (via LibreOffice Base) 0 0.0 0.0
SQL (via MS Access) 10 3.5 3.5
SQL (via MS SQL Server) 1 0.4 0.4
SQL (via MySQL) 2 0.7 0.7
SQL (via Oracle) 0 0.0 0.0
SQL (via something not listed above) 1 0.4 0.4
Squeak 0 0.0 0.0
Yousrc 5 1.8 1.8
Other 22 7.8 7.8
Answers to Q 283 100.0 100.0
Do you offer externally accredited courses at ‘Senior High’ stage. This is normally ages 14-16, sometimes called Key Stage 4. (all were asked)
Yes, we teach ICT at GCSE/Intermediate Cert/etc. (approx age 14-16) 84 30.4 29.7
Yes, we teach Computing at GCSE/Intermediate Cert/etc. (approx age 14-16) 43 15.6 15.2
Yes, we teach ICT and Computing at GCSE/Intermediate Cert/etc. (approx age 14-16) 80 29.0 28.3
We teach some ICT or Computing course, but not for an external award. 13 4.7 4.6
No, we teach neither ICT or Computing at GCSE/Intermediate Cert/etc. (approx age 14-16) 56 20.3 19.8
Answers to Q 276 100.0 97.5
Which ICT/Computing courses does your school offer in Senior High (age 14-16) (only those who said YES to Senior High/KS4 Q were asked)
GCSE Computer Science – AQA 17 6.2 6.0
GCSE Computer Science – Edexcel 0 0.0 0.0
GCSE Computing – OCR 79 28.6 27.9
GCSE Computer Science – WJEC 1 0.4 0.4
CIE IGCSE Computer Studies 4 1.4 1.4
SQA Access 2 Computer Studies 1 0.4 0.4
SQA Intermediate 1 Computer Studies 9 3.3 3.2
SQA Intermediate 2 Computer Studies 21 7.6 7.4
SQA Intermediate 2 Information Systems 8 2.9 2.8
GCSE ICT – AQA 21 7.6 7.4
GCSE ICT – CCEA 12 4.3 4.2
GCSE ICT – Edexcel 32 11.6 11.3
GCSE ICT – OCR 15 5.4 5.3
GCSE ICT – WJEC 13 4.7 4.6
IGCSE ICT – CIE 5 1.8 1.8
EDCL 12 4.3 4.2
OCR / Cambridge Nationals ICT 61 22.1 21.6
DiDA 27 9.8 9.5
INGOTS courses 1 0.4 0.4
Some internally designed ICT certificate. 8 2.9 2.8
Some internally designed Computing/programming certificate. 3 1.1 1.1
Other 52 18.8 18.4
Answers to Q 276 100.0 97.5
Which programming languages are normally taught to classes in “Senior” High (age 14-16, during GCSE/Intermediate certificate courses) (only those who said YES to Senior High/KS4 Q were asked)
Alice 7 2.5 2.5
Basic – VB 6 19 6.9 6.7
Basic – VB.net 27 9.8 9.5
Basic – Small Basic 21 7.6 7.4
Basic – some version not listed above 15 5.4 5.3
C 3 1.1 1.1
C++ 1 0.4 0.4
C# 7 2.5 2.5
Objective C 0 0.0 0.0
COBOL 0 0.0 0.0
Delphi (Object Pascal) 3 1.1 1.1
F# 0 0.0 0.0
Gambas 0 0.0 0.0
Game Maker 15 5.4 5.3
Go 0 0.0 0.0
Greenfoot 19 6.9 6.7
Haskell 0 0.0 0.0
HTML (up to HTML 4, including CSS) 37 13.4 13.1
HTML (up to HTML 4, not including CSS) 16 5.8 5.7
HTML5 (including CSS) 12 4.3 4.2
HTML5 (not including CSS) 4 1.4 1.4
Java (not including Greenfoot) 6 2.2 2.1
JavaScript 28 10.1 9.9
Kodu 9 3.3 3.2
Lisp (all dialects) 0 0.0 0.0
Modula 2 0 0.0 0.0
Modula 3 0 0.0 0.0
Pascal (for Object Pascal, select Delphi, above) 7 2.5 2.5
Perl 0 0.0 0.0
Prolog (all dialects) 4 1.4 1.4
Python 62 22.5 21.9
Ruby 1 0.4 0.4
Scheme 0 0.0 0.0
Scratch 76 27.5 26.9
Simula 0 0.0 0.0
Smalltalk 0 0.0 0.0
SQL (via LibreOffice Base) 0 0.0 0.0
SQL (via MS Access) 8 2.9 2.8
SQL (via MS SQL Server) 0 0.0 0.0
SQL (via MySQL) 8 2.9 2.8
SQL (via Oracle) 2 0.7 0.7
SQL (via something not listed above) 1 0.4 0.4
Squeak 0 0.0 0.0
Yousrc 4 1.4 1.4
Flash 25 9.1 8.8
Other 21 7.6 7.4
Answers to Q 276 100.0 97.5
Which ICT/Computing courses do you offer, that are accredited by an outside body? (only those who said YES to Senior High/KS4 Q were asked)
ICT (A-level, Higher Certificate, etc.) 64 23.5 22.6
Computing (A-level, Higher Certificate, BTEC, etc.) 56 20.6 19.8
Both ICT and Computing (GCSE, IGCSE, Intermediate Cert., BTEC, etc) 66 24.3 23.3
We offer some ICT course, which is not externally validated. 6 2.2 2.1
We offer some Computing/Programming course, which is not externally validated. 3 1.1 1.1
We do not offer ICT or Computing courses at this stage. 77 28.3 27.2
Answers to Q 272 100.0 96.1
What age groups are in your Sixth form?
Normal school age (approx 16-19) 178 96.2 62.9
Mostly school age, with some older students. 6 3.2 2.1
Mostly older students, with some of school age. 1 0.5 0.4
Mostly older students. 0 0.0 0.0
Answers to Q 185 100.0 65.4
Which ICT/Computing courses does your school offer? (Only those who had confirmed that they had a sixth form were asked)
A-level Computing – AQA 63 34.1 22.3
A-level Computing – OCR 22 11.9 7.8
A-level Computing – WJEC 9 4.9 3.2
BTEC Computing 11 5.9 3.9
International A-level Computing 0 0.0 0.0
IB Computer Science 3 1.6 1.1
SQA Intermediate 2 Information Systems 7 3.8 2.5
SQA Higher Information Systems 9 4.9 3.2
SQA Advanced Higher Information Systems 4 2.2 1.4
A-level ICT – AQA 28 15.1 9.9
A-level ICT – CCEA 7 3.8 2.5
A-level ICT – Edexcel 15 8.1 5.3
A-level ICT – OCR 28 15.1 9.9
A-level ICT – WJEC 16 8.6 5.7
ECDL 7 3.8 2.5
Some internally designed ICT certificate 5 2.7 1.8
Some internally designed Computing/programming certificate 1 0.5 0.4
Other 42 22.7 14.8
Answers to Q 185 100.0 65.4
Which programming languages are normally taught to classes in “Sixth Form” (age 16-18, during A-level/Higher Certificate courses)? (only those who confirmed Computing/ICT were offered, were asked)
Alice 3 1.6 1.1
Basic – VB 6 22 11.9 7.8
Basic – VB.net 44 23.8 15.5
Basic – Small Basic 3 1.6 1.1
Basic – some version not listed above 6 3.2 2.1
C 4 2.2 1.4
C++ 1 0.5 0.4
C# 8 4.3 2.8
Objective C 0 0.0 0.0
COBOL 0 0.0 0.0
Delphi (Object Pascal) 14 7.6 4.9
F# 0 0.0 0.0
Gambas 0 0.0 0.0
Game Maker 5 2.7 1.8
Go 0 0.0 0.0
Greenfoot 13 7.0 4.6
Haskell 1 0.5 0.4
HTML (up to HTML 4, including CSS) 33 17.8 11.7
HTML (up to HTML 4, not including CSS) 7 3.8 2.5
HTML5 (including CSS) 16 8.6 5.7
HTML5 (not including CSS) 3 1.6 1.1
Java (not including Greenfoot) 13 7.0 4.6
JavaScript 22 11.9 7.8
Kodu 2 1.1 0.7
Lisp (all dialects) 0 0.0 0.0
Modula 2 0 0.0 0.0
Modula 3 0 0.0 0.0
Pascal (for Object Pascal, select Delphi, above) 15 8.1 5.3
Perl 1 0.5 0.4
Prolog (all dialects) 10 5.4 3.5
Python 34 18.4 12.0
Ruby 1 0.5 0.4
Scheme 0 0.0 0.0
Scratch 22 11.9 7.8
Simula 0 0.0 0.0
Smalltalk 0 0.0 0.0
SQL (via LibreOffice Base) 0 0.0 0.0
SQL (via MS Access) 25 13.5 8.8
SQL (via MS SQL Server) 2 1.1 0.7
SQL (via MySQL) 16 8.6 5.7
SQL (via Oracle) 2 1.1 0.7
SQL (via something not listed above) 7 3.8 2.5
Squeak 0 0.0 0.0
Yousrc 1 0.5 0.4
Flash 20 10.8 7.1
Other 11 5.9 3.9
Answers to Q 185 100.0 65.4
What is your background? i.e. immediately before you became a teacher of Computing, what did you do? (all were asked)
I was a software developer 43 15.2 15.2
I worked in Computer Science research 1 0.4 0.4
I worked in other science research 6 2.1 2.1
I was a mathematician/accountant/actuary/some other professional mathematician. 3 1.1 1.1
I finished a degree in Computer Science (or similar), and came directly to teaching. 69 24.4 24.4
I used to be a maths teacher. 23 8.1 8.1
I used to be an electronics teacher. 3 1.1 1.1
I used to be a science teacher. 12 4.2 4.2
I taught something else. 41 14.5 14.5
Other 82 29.0 29.0
Answers to Q 283 100.0 100.0
How confident do you feel in learning new programming languages? (all were asked)
Very confident. I do it for fun. 95 34.4 33.6
Fairly confident. I can do it if I have to. 130 47.1 45.9
Not confident, but I can try. 45 16.3 15.9
I really don’t want to do this, but if I have to… 4 1.4 1.4
NO NO NO! 2 0.7 0.7
Answers to Q 276 100.0 97.5
What funding will your school give you in learning new programming tools? (all were asked)
My school will fund most courses. 36 13.1 12.7
My school will fund a few courses. 125 45.5 44.2
My school will fund no courses. 114 41.5 40.3
Answers to Q 275 100.0 97.2
How much time will your school give you to learn new programming languages and tools (all were asked)
My school will give me all the time I need. 18 6.6 6.4
My school will give me some time. 85 31.0 30.0
My school will give me no time. 171 62.4 60.4
Answers to Q 274 100.0 96.8
How understanding is your Principal/Head of ICT and Computing? (all were asked)
My Principal knows the difference between ICT and Computing, and is supportive of both. 117 43.2 41.3
My Principal knows the difference between ICT and Computing, but favours ICT. 20 7.4 7.1
My Principal knows the difference between ICT and Computing, but favours Computing. 33 12.2 11.7
My Principal knows the difference between ICT and Computing, but gives little support to either. 26 9.6 9.2
My Principal thinks ICT and Computing are the same, and this affects decision making. 41 15.1 14.5
My Principal neither knows nor cares about the difference between ICT and Computing, and sees neither subject as important. 34 12.5 12.0
Answers to Q 271 100.0 95.8

Book Review – OCR Computing for GCSE (O’Byrne & Rouse)

A while back I received a copy of OCR Computing for GCSE, by Sean O’Byrne and George Rouse in the post.  The nice people at Hodder asked me to review it.  So, this is me reviewing it!

After years of no Computing provision at GCSE, it is great to see the plethora of GCSE-level Computing courses coming along.  OCR were the first and there are a number of great resources appearing for it.  The people responsible for this book are not new to the publishing game, having around a dozen ICT and Computing books between them.  With that sort of experience, one would expect this book to be pretty good.  I was not let down.

A systematic walk through the specification couples good explanation of the theory content with interesting facts that will grab the mind of readers. In this year of Alan Turing, it is good to be reminded of Tommy Flowers, Claude Shannon and others.  Putting a human face on the geeks who make the information age possible is very helpful.  This is not just a geek-fest though, as the topics are explained in a clear and systematic way, with plenty of examples that will grab the mind of students.  Some theory topics in any specification can be dusty, and difficult to explain in a lively and interesting way, but O’Byrne and Rouse have done a good job.  They clearly understand that a new specification needs an attention-grabbing text, to help it succeed.  A good balance of prose and diagrams is also maintained –  why use a thousand words, when a clear diagram that shoes what you are talking about will communicate twice as much in half the space?

I am pleased to see that the depth is kept suitable for GCSE students, as it would be easy to go off on a tangent of over-the-top geeky detail that would lose the reader.  The writing style is such that teachers who are converting from ICT should also feel comfortable with this. Topics are well explained and spark enough interest for students (or teachers) who are planning to move on to A-level Computing.

On the practical side of things, the requirements of the Controlled Assessment tasks are well explained with examples from a number of different development tools that could be used (including, VB, BBC Basic and Python).  In keeping with the theory side, the authors do a good job of avoiding dominance by one platform or vendor, by showing a number of platforms.  Most software referred to is either FOSS or free-to-schools, which is helpful.  Books that keep referring to software the school cannot afford, do not help the teacher!  The samples are well enough explained that a student who was familiar with something else (say, Pascal) could follow them.  It is impossible to cover every single programming language, but the authors have tried to be as inclusive as possible.  If you want a beginner’s guide to Python (or VB, or BBC Basic), look elsewhere – if you have already spent a good part of Year 1 teaching programming and want an easy-to-follow and yet comprehensive guide to the tasks, you will be happy here.

Writing any textbook is a challenge, as you risk small errors and unclear parts being ridiculed in a thousand classrooms.  However, the experience of these authors comes through in a well-written and useful text that teachers and students alike should be comfortable with.

I don’t teach this course yet, but I would certainly be comfortable using this text for the theory side of it, with other resources to help in teaching programming.  It is not alone in this market – Susan Robson’s GCSE book for OCR (also majoring on the theory) is every bit as good and a choice of which to go for would be personal preference.

OCR Computing for GCSE (O’Byrne and Rouse) is published by Hodder Education (ISBN: 978-14441-7779-4), RRP £17.99.