Showing posts with label computing. Show all posts
Showing posts with label computing. Show all posts

Thursday, 16 January 2014

Teacher CPD on Computing

We taught the first session of a six evening set of twilights at our centre on Tuesday 14th January to a group of 8 teachers from Doncaster and Sheffield. The session was lively and interesting with lots of ideas about the Computing Programme of Study and the challenges facing teachers.

One of the key issues was a lack of understanding in school leadership about the significance of the change that ICT teachers are facing. In September 2014 they will be faced with the prospect of teaching a different subject to the one they have taught for the last decade. This is unlike the changes to most other subjects where the change is about the content of the programme not the organising principles and ideas. It is a mistake to underestimate the nature of the challenge. As one delegate said - "I didn't become a teacher of ICT because I wanted to teach programming ... I'm hoping that this course will make me excited about the prospect of doing that."

I was pleased that the delegates were able to see how vague and open to interpretation the programme of study at KS3 really is. This was one of the aims of our session - to make it clear how much scope departments do have to construct a KS3 curriculum that fits with their students' aptitudes and interests. It is a very different approach to the old National Strategies philosophy which was to prescribe in detail what needed to be taught and how. Whilst we may not like every change of the last 4 years this move to give teachers greater professional judgement does have its merits.

These are a couple of things the attendees said in our post session survey: "The session provided a great platform for the rest of the course"
"The session was very informative and enjoyable, I feel future sessions will be equally useful and look forward to them."
If you want to attend a future instance of this course look at the dates scheduled here. If you'd like the course run in your location we can do that too - just email ajones (a) sheffieldclc dot net

Friday, 10 January 2014

Secondary Computing

This post is a collection of ideas about Secondary Computing that have arisen from two years of work on these issues with and for schools. In particular I have been heavily involved in the last three months in working with a CAS (Computing at School) Master Teacher and a couple of helpful people at Sheffield University Computer Science Department to create a sequence of six twilight sessions on becoming a teacher of Computing.

The Computing at School organisation has taken a prominent role in supporting the new curriculum. Their site here has a list of events that offer CPD, apart from those directed at helping deliver GCSE Computing the biggest other group of events are ones looking at a particular programming language, for example there is "Python 3 programming for beginners" or "Python in a Nutshell". Numbers of teachers are paying to be taught programming languages of one kind or another. This is a mistake, a very understandable mistake but a mistake. Teachers are very concerned that they will be teaching something they don't know how to do. It isn't clear how a half-day training will enable teachers to become expert Python coders, but even if it did teachers would then face the much more daunting task of teaching this material themselves. Possibly they might reproduce the training they have received and deliver that to the young people in their schools. A careful reading of the Programme of Study indicates that if they were to do so they would be unlikely to cover what is required at KS3. The programming elements of the Programme of Study are daunting to teachers who have no experience of coding, but I believe (based upon my own experience in the classroom) that programming can be taught very well without an expert knowledge of the particular language being used. Most of the key ideas in programming can, and possibly should, be taught away from a computer. I think the first priority for ICT Teachers who want to be able to teach Computing is to understand the demands of the new PoS and the conceptual framework of the subject.

The Programme of Study for KS3 starts with this "A high-quality computing education equips pupils to use computational thinking and creativity to understand and change the world". It doesn't seem very sensible to ignore "computational thinking" (CT) if you are trying to develop a scheme of work to teach at KS3. There isn't, unfortunately, an authoritative definition of the term.

Steve Hunt, from the School of Computer Science, University of Hertfordshire discusses what CT means in the latest issue of the CAS newsletter (here).
"Computational thinkers gain the ability to model problems in a manner that makes them amenable to computational solutions. Where others merely see instructions, actions and things, computational thinkers are able to see algorithms, processes and data.""Where 'ordinary' folk make little distinction between what needs to be achieved and how it should be done, the computational thinker is aware of the difference between results, and the processes by which results are obtained, and can see how to decompose problems, and how to use computing to solve them."

It is commonly agreed that CT is a set of thinking skills. The skills that should be included are contested in the academic literature. A review in 2013 by Shuchi Grover and Roy Pea (available here) offered the following summary of the skills involved
  • Abstractions and pattern generalizations (including models and simulations)
  • Systematic processing of information
  • Symbol systems and representations
  • Algorithmic notions of flow of control
  • Structured problem decomposition (modularizing)
  • Iterative, recursive, and parallel thinking
  • Conditional logic
  • Efficiency and performance constraints
  • Debugging and systematic error detection
Whilst this list is comprehensive it isn't terribly helpful to a classroom teacher trying to organise content for students. For example it's very difficult to understand, yet alone teach students, what is meant by "parallel thinking". Anyone reading this who can offer a simple explanation of that idea; would you please add it as a comment?
I think the formulation by Cynthia Selby is much more useful for organising curriculum content. She wrote a paper for the TiCSE Conference 2013, at the University of Kent "Computational Thinking: The Developing Definition" where she offered this formulation: "computational thinking is an activity, often product oriented, associated with, but not limited to, problem solving. It is a cognitive or thought process that reflects the ability to think
  • in abstractions, 
  • in terms of decomposition, 
  • algorithmically, 
  • in terms of evaluation, and 
  • in generalizations.”

Having a set of thinking skills that are revisited explicitly with students as they move through KS3 is a very good thing to do. A meta-analysis by Dehnadi et al. (2009) found one factor that is a strong predictor of success in a programming course: a mental model of programming knowledge. Students with a mental model of programming that they applied consistently to solving computing problems had an 85% pass rate compared to students without a consistent model, who had a 36% pass rate (Dehnadi et al., 2009). (from Subgoal-Labeled Instructional Material Improves Performance and Transfer in Learning to Develop Mobile Applications - Margulieux, Guzdial, Catrambone). John Hattie in Visible Learning offers compelling evidence that meta-cognitive approaches in many contexts have a strong effect on learning.

The criticisms of ICT that were made by the Secretary of State and others in 2011 and following were a caricature. There were many places where ICT was simply taught as "one damn thing after another", but there were places where it was a stimulating and engaging experience for students. Looking at the Computing PoS it looks to me like we may be in danger of replacing one problematic subject with another. Without an organising conceptual framework for the subject Computing could just as easily become a succession of seemingly unrelated topics; python for three weeks then how the CPU works for four more. CT offers a way of providing coherence to the subject. A spiral curriculum where skills are revisited across the key stage would offer students a way of tracking their own development, teachers a way of linking work in differing programming languages and a framework for assessment. For example a problem that students decompose in year 9 may be utterly different from a problem that was tackled in year 7, but the skills of decomposition, abstraction and algorithm design can be directly compared. Students with a view of their own developing mastery of a subject are not only better motivated but also more likely to have a deeper knowledge of the subject.

If you want to learn more about these ideas and other insights my team and I have been developing then sign up to one of the iterations of our 6 session ICT to Computing courses.

Thursday, 11 July 2013

Final Computing National Curriculum

I have just been looking at the new document and have summarised the changes to Key Stage 3 in below. I've tried to organise the statements around three headings, Problem Solving and Programming, Hardware, Software and Data and finally Use of ICT as a Tool. I'll leave others to critique this taxonomy, and I can see that it doesn't entirely succeed in capturing all the mandated subject matter. I'd welcome suggestions for a better way to organise the content. But first the overall statement about the subject has changed fairly significantly. The original statement says;

"A high-quality computing education equips pupils to understand and change the world through computational thinking. It develops and requires logical thinking and precision. It combines creativity with rigour: pupils apply underlying principles to understand real-world systems, and to create purposeful and usable artefacts. More broadly, it provides a lens through which to understand both natural and artificial systems, and has substantial links with the teaching of mathematics, science, and design and technology.
At the core of computing is the science and engineering discipline of computer science, in which pupils are taught how digital systems work, how they are designed and programmed, and the fundamental principles of information and computation. Building on this core, computing equips pupils to apply information technology to create products and solutions. A computing education also ensures that pupils become digitally literate – able to use, and express themselves through, information and communication technology – at a level suitable for the future workplace and as active participants in a digital world."

The replacement states;

"A high-quality computing education equips pupils to understand and change the world through logical thinking and creativity, including by making links with mathematics, science, and design and technology. The core of computing is computer science, in which pupils are taught the principles of information and computation, and how digital systems work. Computing equips pupils to use information technology to create programs, systems and a range of media. It also ensures that pupils become digitally literate – able to use, and express themselves and develop their ideas through, information and communication technology – at a level suitable for the future workplace and as active participants in a digital world."

The opening sentence drops the idea of computational thinking (that reappears later) and instead proposes that the power of the subject arises from "logical thinking and creativity, including by making links with mathematics, science, and design and technology". That means that the rest of that first paragraph is gone. Peter Twining and many others have argued that the computing programme of study was diminished by the de-emphasis of creativity so I would expect that this change will be pleasing to those people. In the second section the phrase "computing equips pupils to apply information technology to create products and solutions" is altered to "equips pupils to use information technology to create programs, systems and a range of media".This change also widens the scope of computing by introducing the idea (correctly I would say) that the creation of media artefacts is as much part of the subject as writing code. The statement about digital literacy thankfully remains almost unchanged.

1. Problem Solving and Programming

 Original Statement             Changes Comments
design, use and evaluate computational abstractions that model the state and behaviour of real-world problems and physical systemsUnchanged     
understand at least two key algorithms for each of sorting and searchingThis has been changed to -
"understand several key algorithms that reflect computational thinking, such as ones for sorting and searching"
Apart from the obvious slight change in the wording so that students should look at more than 2 algorithms, the inclusion of the term "computational thinking" means that although it was removed from the opening statement about the purpose of study it lives on here.
use data structures such as tables or arraysChanged to "make appropriate use of data structures such as lists, tables or arrays"This change is similar to the previous. It widens the possible content and doesn't limit teacher choices.
use Boolean logic and wildcards in search or database queriesThis has been removedInteresting that this has gone. The danger with having a very specific requirement like this and then removing it may create the impression that it positively shouldn't be taught. I am pretty certain that conclusion would be a mistake.
use logical reasoning to evaluate the performance trade-offs of using alternative algorithms to solve the same problem Changed to "use logical reasoning to compare the utility of alternative algorithms for the same problem".I'm glad that the phrase "performance trade-offs" is gone. Utility is a simpler and yet more useful tool for comparing differing algorithms.
understand how computers can monitor and control physical systemsThis has been deletedPerhaps this is now seen as part of Design and Technology. Dropping control from KS3 is a radical step. Perhaps like search queries the removal from the document shouldn't imply a direction not to teach control.
use two or more programming languages, one of which is textual, each used to solve a variety of computational problemsChanged to "use two or more programming languages, at least one of which is textual, to solve a variety of computational problems"Seems a minor alteration. 
understand simple Boolean logic (such as AND, OR and NOT) and its use in determining which parts of a program are executedChanged to "understand simple Boolean logic (such as AND, OR and NOT) and some of its uses in circuits and programming"This is a helpful widening of the content so that Boolean logic isn't confined to coding.
use procedures to write modular programs; for each procedure, be able to explain how it works and how to test itChanged to "design and develop modular programs that use procedures or functions"This looks like the same content but better expressed

2. Hardware, Software and Data

Original Statement             Changes Comments
explain how instructions are stored and executed within a computer systemSimply now states they should understand how    A minor change for logical consistency in the document I think.
understand the hardware and software components that make up networked computer systems, how they interact, and how they affect cost and performanceChanged to "understand the hardware and software components that make up computer systems, and how they communicate with one another and with other systems"This has reduced the amount of computer networking that could have been anticipated as part of new school curricula in September 2014. But it hasn't entirely eliminated the need to teach it. The focus seems to be more on internal computer systems.
explain how networks such as the internet workThis is goneLess networking again.
appreciate how search engine results are selected and rankedThis is goneWhy it was first included seems more of a mystery than its removal.
explain how data of various types can be represented and manipulated in the form of binary digits including numbers, text, sounds and pictures, and be able to carry out some such manipulations by handChanged to "understand how data of various types (including text, sounds and pictures) can be represented and manipulated digitally, in the form of binary digits"It's a relief to me that the statement about "manipulations by hand" has gone, chiefly because I had no idea what that meant. This seems a much clearer statement, so it is a clarification and not a real change.

3. Use of ICT as a Tool

Original Statement             Changes Comments
undertake creative projects that involve selecting, using, and combining multiple applications, preferably across a range of devices, to achieve challenging goals, including collecting and analysing data and meeting the needs of known usersThis is unchanged
create, reuse, revise and repurpose digital information and content with attention to design, intellectual property and audienceChanged to "create, re-use, revise and re-purpose digital artefacts for a given audience, with attention to trustworthiness, design and usability"Correction of typos and changes to the criteria by which stuff will be judged. digital artefacts is a better  term I think than "digital information and content".
There was no e-safety statement at KS3. Widely criticised.New statement added
"understand a range of ways to use technology safely, respectfully, responsibly and securely, including protecting their online identity and privacy; recognise inappropriate content, contact and conduct and know how to report concerns"
 I for one am pleased that a statement on this topic has been added.

 
Add to Technorati Favorites