Computing – Pitfalls of a new subject

Great post for those of us taking our first steps with the new computing curriculum.

Code? Boom.

I read a really good article the other day which compared learning to program to leaning to read and write in the middle ages. It goes on to give two good criticisms of the accessibility of programming to students. Firstly, setting up and choosing your language and environment is a lengthy and difficult process. For the most part, I make the decisions on behalf of my students about what language we will learn and what IDE we will use, but that’s largely because I have a degree in Computer Science. Many teachers are not in this position and rely on the experiences of others to make the choice, and are often ludicrously limited by what technicians arbitrarily decide should be “allowed on the network”.

Secondly, students are often taught programming for programming’s sake, and they find it hard to understand why and when they would actually want to use this knowledge. I totally get this one. I…

View original post 867 more words

Advertisements

Spicing Up Text Based Programming

It’s been a while since my last post.  I’ve had my head down working away at the demands of teaching KS3 computing and GCSE computer science for the first time.

Without a doubt the toughest learning curve has been teaching Java to my Y9s, where class sizes are that bit bigger and they have had no experience of text based programming.  When they get stuck, they get stuck.

We started off the year with the grand idea that we would convert my old spreadsheet quiz unit into a Java based quiz, so we produced a whizzy tutorial website.  However, in practice, it was a bit too high level, and my classes, whilst being keen to do well needed more careful scaffolding to enable them to take their first steps in text based coding.  I was spending lessons running from one problem to the next as I hadn’t helped students develop the resilience to solve issues on their own before calling for me.  Combine this with a new piece of software (Eclipse) with it’s own set of folder management issues with multiple students using the same machines lesson after lesson and I wasn’t able to step back and see the big picture in class.  I needed to tweak the lesson structure to provide more built in support and free me up a bit more to challenge and support where it was actually needed.  The way I did this was though a three step process.

Here’s an example of how I taught loops:

Step 1 – The Human Computer

Five *ahem* “volunteers” were chosen to be the human computer.  Then I brought out the chocolate digestives (lots more volunteers next lesson!).  I set the variable ‘biscuits’ to five and we munched our way through the code below.  Whilst doing so, we discussed how we could code without the loop to achieve the same result.

BiscuitLoop1

Step 2 – The Worked Example  

Students were given the code for a program using loops (loosely based on my adventures on the M6 with two small children in the car during the summer hols).

DoWhile

Step 3 – The take away menu.

This, I think, is the best thing we’ve done with this unit.  Nicking an idea from Ross Morrison-McGill (@teachertoolkit), I created a differentiated take away menu of independent tasks for students to apply the skills.  They are graded against the Nando’s spice rating menu, with the spiciest involving skills not taught in class.  Here’s the loops example:

NandoLoops

This approach has worked much better, breaking down programming into discrete skills and  giving learners chances to apply and embed as well as a sense of ownership over their independent tasks.

To look at the whole unit, along with fully resourced tutorial website, please visit my Dropbox folder.  All work is licensed under Creative Commons non-commercial, share alike. And enjoy!

#CompEdUk – A hashtag is born

The new curriculum seems to have fragmented the Twitter community of ICT/Computing teachers into several different discussion groups.  I’ve been running out of space on my tweets trying to use all the hashtags to cover all bases.  Various hashtags being used are:

  • #ictcurric
  • #computing
  • #compatsch
  • #digitalstudies
  • #compsci

In an effort to provide a focal point or the discussion (and leave us some characters left in our tweets), a few of us on the CAS forums have suggested the use of a new hashtag for Computing related tweets.  It is *drumroll*

#CompEdUK

Please join the discussion and collaboration on Twitter by simply searching for the hashtag or including it in your tweets.

Update – The Power of Twitter

After finishing this blog post, I started publicising the hashtag on Twitter.  Less than 10 minutes later, Alan O’Donohoe (@teknoteacher) tweeted with this series of FREE webinars for computing teachers. Instant free CPD. How’s that?

Computing At School ‘Switched On’ Magazine

My article for the Computing At School magazine ‘Switched ON’ has just been published in the Autumn edition.CASMag

The article deals with differentiation in Scratch programming.  My bit’s on page 10, and I’d heartily recommend reading the rest of the magazine too. Here’s the download link: Switched On Autumn 14

I have now finished resourcing two Schemes of Work using the 4 step differentiation technique outlined in the article.  Follow the links below for to grab a copy from Dropbox.  I’m just finishing off running the Y8 unit and am very happy with the progress of my learners – using variables,  selection and loops in Scratch and debugging & discussing how their programs work with key terms.  Any feedback or suggestions for improvement are more than welcome.  Please use the resources under a Creative Commons 3.0 Attribution, non-commercial, share alike license.

Y8 – Virtual pet in Scratch (based on a project by Marc Scott – @coding2learn)

Y7 – Binary converter in Scratch.

KS3 Computing Assessment Framework

Since the disapplication of the ICT programme of study a couple of years ago, ‘KS3 assessment criteria’ or a variation thereof has been one of the most frequent search terms that lands people on my blog.  Whilst I tweaked and remixed the ICT criteria in 2012, a new program of study (and for a lot of us a brand new subject) has resulted in the need for a new assessment framework.  Here’s how my department and I have been going about it.

Start Points

Our three main touchstones for the process were as follows:

1. The new KS3 programme of study (and also the KS1/2 POS to see what we were picking up from primaries).

2. This rather superb Guide to Computing in the Secondary Curriculum from Computing at School (CAS).  Again, there is a primary version that I urge you to read.

3. Miles Berry‘s (yes, him again!) assessment framework available on the CAS resources hub.

If you’re getting the feeling that CAS is a valuable and knowledgable community and resource centre, then you’d be right!

Rationale

My school will continue to use levels for 2014/15, so we used the traditional numbers, but any nomenclature would do just fine, white belt > yellow belt, stone age > bronze age (OK, maybe not that one) etc etc.

There were two key tenets for the process, they were:

There should be as much consistency across one level as possible – all the level 5 descriptors should involve a roughly similar complexity of thinking.

There should be a clear progression ladder in each topic – steps between levels should represent an increase in the complexity of thinking/comprehension but without enormous leaps in the complexity of what we are asking students to do/understand.

Process

Rather than take Miles’ framework and implement it unedited, we felt that it was important for the whole department to have a say in the scaling process.  To do this, we used an afternoon of departmental INSET time on a physical cut & paste exercise, where we literally cut all the statements up, clustered  them into rough topics and then sorted them into order.  The strands we used were Digital Literacy, Computer Science, and ICT.

Screen Shot 2014-07-02 at 20.05.48

To help us, we used Bloom’s Digital Taxonomy, the SOLO taxonomy framework and good old fashioned professional argument.

Whilst we tried to standardise key words across levels, sometimes we agreed that understanding one concept was more complex than understanding another and so one was (for example) a six whilst the other was a five.

This sorting and arguing really helped us to clarify our understanding of the descriptors. In some cases we adapted, combined or re-wrote them to fit the two main criteria of our rationale. As a result, we now feel that we have a robust tool to help us plan individual units, feed back to pupils and help them progress toward the (very ambitious) statements outlined in the programme of study.  All staff have more of a shared understanding of the criteria and ownership of the framework.

Cut & Paste

The result

If you’ve skipped the earlier paragraphs, or even if you haven’t, please bear in mind that this is not a finished product.  Just like with my resources, I would strongly recommend that you examine, question, adapt and tweak for your own school. The process of creation of this V 1.0 has been just as valuable as the outcome.

For planning purposes, I’ve mapped the descriptors to various topics in this Google Spreadsheet. The letters are so that we can keep track of which descriptors we are marking against and update each pupil’s KS3 assessment overview document (which hasn’t been produced yet, but will be in a simpler format.

To access the document in Google Drive (it displays much better there) here’s the link.

I’m absolutely sure that this framework will adapt as we get to grips with the new curriculum in the classroom, but your feedback on V1 would be more than welcome.  Please comment with your views.

Talk to the duck – debugging and resilience

Two of the key aspects of computational thinking are decomposition (breaking a problem or process down into sequential steps ) and debugging (finding & fixing errors in your code).  If you can’t do these things, then programming is going to be very difficult.

However, I can forsee students getting very stuck and very frustrated if I don’t teach them how to think sequentially and give them a toolkit of techniques to try when their program doesn’t work as they want it to.

To help, I’m going to draw on research from prominent educational theorists Bert & Ernie. Student are going to learn the ancient, noble art  of rubber ducking.

Yes, we are buying every member of the dept an actual rubber duck. Yes, we will make the students explain their program to the duck.  Will it work, I don’t know yet, but it will make them think in a computational way, which is half the battle.

So, from September, it looks like my 4Bs resilience list will now read BBBDB.

Go talk to the duck…………

rubber ducky 2