I’m a Excelebrity, get me out of here!

Yes, I actually did it. excelebrity

Twas the night before Year 10 IT class and all through the house,
All the teachers* were starting to whine and to grouse.
“It’s spreadsheets”, I grumbled – I taught them with care
But the knowledge and recall, it just isn’t there!
The students were nestled all snug in their beds,
While functions and spreadsheets danced round in my head.

I’d been on to Twitter and I’d had a good natter,
So I started to realise just what was the matter –
The students were bored with just adding up cash!
So booting up Windows, I flew like a flash!
I got up so early, twas barely a nap,
I’d had an idea – they all watch this (programme)!
Making my tasks, ideas started to flow,
Using “I’m a Celebrity” all’d want to know!
I thought my old tasks were so thoughtful and clear,
But the Bushtucker trials made them swallow the fear.

Complete the green boxes and you’ll get a star,
They all got so focused they got really far.
More rapid than eagles the answers they came,
And they all used the functions, and called them by name:
“Now, AVERAGE()! now, ROUNDUP() ! now LOOKUP() and MIN()!
On, IF(), MAX(), RANK(), COUNTIF()” They wouldn’t give in!

Some looking at helpsheets, some winning with stealth,
And I couldn’t help smiling, in spite of myself;
For a class that had started off saying they’re beat
I just couldn’t stop them all trying to compete.

I put them in pairs and they went straight to work,
They filled all the cells, then they turned with a jerk,
As the bell then went off for the end of the lesson,
They all wanted to know just which team was the best one;
For my box of mint Matchmakers they were all yearning,
But the best prize of all was the fantastic learning.
And I heard them exclaim, as they walked out of sight—
“Excel’s not that bad”   “Yeah,  I think it’s alright.

(Here are the Bushtucker tasks: Help Cards / Intro / Bushtucker Trial 1 / Bushtucker Trial 2 / Bushtucker Trial 3 / Bushtucker Trial 4 / Bushtucker Trial 5)

Happy Christmas!

* Technically that’s just me.

Who’s teaching our kids to code?

So I just saw this article tweeted by @ukiekim and written by @calflyn. Admittedly having been written in October 2012 it’s a little bit old but still relevant. The first picture caption I spotted was:

Computer programming: It has fallen to the industry itself to step into the breach, and provide support for those keen to qualify for a career in IT.

Ok. Great. That sentence basically says to all Computing teachers in the UK “hey, you’re so crap at your job that we can replace you with someone else on a voluntary basis for a few hours a week”.

Is this really a good thing to say? Is it even true?

1. Some schools are already teaching programming and doing a damn good job
Yes, it’s true. News articles mysteriously fail to notice the vast amounts of good teachers and good schools already offering GCSE or A-Level Computing. According to the Guardian’s data, 3809 students sat A-Level Computing in 2012 – and considering classes are not usually very big, that’s a fair amount of schools. There was no data on GCSE Computing as it’s a new qualification but I would estimate many thousands of students will sit that examination this year. We’re here, we’re doing it. Some of us even have Computer Science degrees.

2. Running a club is not teaching
So us teachers are doing such a poor job that an IT pro has to come in after school once a week to do the real work to teach the kids in the UK who are being left behind and held back by their dreadful teachers. I hate to break it to you – this isn’t teaching. This is cherry picking students who are motivated and interested and showing them how to do something they want to do. If all of teaching was like this, everyone would want to be a teacher. It’s like the grandparent version of teaching – you take the kids for a short time, hype them up, feed them sugar, bend the boring parents rules and then hand them back when it’s time for the nappy changing and all the other not so nice stuff. There are no targets to meet, no curriculum objectives to follow, no reports to write, no sanctions to apply.

Don’t get me wrong – I *really* approve of initiatives such as Code Club and Apps for Good – they are great! Lots of kids enjoy them, lots of teachers learn from them and the professionals are generous in giving up their time – a win all round. I just don’t like the way the media portrays after school clubs as the saviours of Computing in the UK, whilst the helpless teachers are presumably languishing in the store cupboard drinking piña coladas.

3. What’s going to happen when the pros are bored?
Picture this – it is some years from now. Lots of initiatives have been set up to provide supplementary coding education in after school clubs, and are working. The subject of Computing is largely dead because it is being covered outside the curriculum and therefore valuable curriculum time is taken over by other subjects. No teachers are training to teach Computing because there are no jobs available, and besides who wants to do a job where everyone knows someone doing it in their spare time is better than you? Helping kids code is no longer de rigueur, so the devs have stopped doing it. Who’s going to pick up the pieces?

So what should happen instead?
It’s true that not all IT and Computing teachers in the UK at the moment have the right skills. (It’s also true that this isn’t their fault!) Instead of barging in and taking over with all sorts of shiny initiatives, it would be much more valuable to teachers who don’t have a Computer Science background if IT professionals would support them – both publicly and practically. Teachers really don’t need other people ‘taking over’ their job because they are inept – obviously this isn’t actually happening, but the way it is portrayed in the media, this is what it looks like. They need to be able to say “I worked with Dave from Company X and we drew up a scheme of work using my expertise in teaching and his expertise in programming. We’ll run it together next year and the year after I hope I’ll be able to run it on my own.” Now that would be really valuable.

If companies genuinely want to make a difference and find a long term solution rather than just getting some warm and fuzzy PR, how about asking “who’s teaching our teachers to code” instead?

The most valuable resource of all

So we all know that at the moment there’s a problem with a lack of availability of qualified Computing teachers. There is a huge push going on to train people up to take on this role and improve their skills, and this training is in large part coming from teachers who already know what they are doing. We also know that the Government is trying to introduce performance related pay for teachers. You might be thinking “what does this have to do with you, you work in an independent school?”. It’s going to have severe consequences for the most valuable resource of all.

It appears that in the age of social media and pervasive technology, we have developed something unheard of even a few years ago – the concept of the ‘rockstar teacher’. This is someone who considers that they know what they are doing in the classroom AND goes out of their way online to promote themself, blog, put up resources, cultivate twitter following, is probably invited to speak at a lot of events and has lots of people kissing their butt and telling them how wonderful they are. (Sorry, I said it. It’s true.) Speaking in the field of Computing, there are certainly a few rockstars and a few who are trying to set themselves up as such. No one, not even me, is immune. I like it when people appreciate my resources or say nice things about me – who doesn’t?

Most of these rockstars seem (from my limited knowledge of them) excellent teachers and do indeed do very good work – that’s not my gripe. For a while, I did think it was pretty much a good thing – let’s all share our stuff and raise the profile of Computing and if we all work together we can make this subject a real success. But this model doesn’t really work, and it’s being further perpetuated by the government’s policy – in the words of John Tomsett:

Whilst the rhetoric from Michael Gove is collaborate, collaborate, collaborate, DfE policy-making encourages competition at every level.

As a teacher with a CS degree who already knows the subject, for me it has become increasingly stressful to have to keep up with all of the extra ‘things’ I feel I have to do to set myself apart as a competent teacher of Computing – writing articles, running courses, creating resources, speaking, running workshops, having my own ‘thing’ that people know me for. It does annoy me that a lot of being invited to do high profile things is on the basis of who you know and how easy it is for lazy media researchers to find you online and is not based on what you do on a day to day basis in the classroom. (Or, in other words, boo hoo, they didn’t invite me 😉 )

I’m really tired of trying to prove myself to other people.

It’s exhausting, and is it really that productive? Shouldn’t I just be content to know for myself that I did a good lesson today? We’re in danger of good Computing teachers becoming so pre-occupied with setting themselves up for newspaper articles and speaking gigs and making a name for themselves that they forget what we’re trying to do here – provide quality lessons.

To my mind the most valuable resource of all is time. If we’re going to succeed with our revolution, time is most efficiently spent working together. Giving your time to help a colleague. Working on projects together, rather than fragmenting and each trying to make a name for ourselves. Working together to build a strong workforce of quality teachers. who are all good at their jobs and who can all do our students and our subject proud rather than hoarding up our spare time trying to be better than the next guy.

I don’t want to do this any more.

(But I might have to.)



Four ways to kick start zombie coders

So… you’ve gone through if statements, for loops, recursion or whatever else you happen to be covering and everyone has completed the exercises, written the notes and smiled and nodded in all the right places. “Great!” you think, “I’ll set a programming task involving the thing I’ve just taught to consolidate this work”. You hand out the task sheets and everyone goes to their computer and opens the code editor.

A student turns to you, code editor open with nothing in it and says “Miss, I don’t know what to do”. “Try something” you reply, knowing that the way you learnt to code was by trying many times and making a lot of mistakes. The student types something. “Is this right?” the student asks? “Why don’t you run it and see” you reply. The student runs the code, an error appears. The student does not read the error, but instead turns and stares blankly at you waiting to be given the next morsel of guidance. “What did the error say?” you ask. The student doesn’t even look at the error, picks a random line and indents it. “Is that right, Miss?”. Except…there are lots of students, all facing you staring blankly, waiting… <snip before this turns into a zombie novel>

Ever had this situation? Quintin Cutts describes our current teaching methods as like the Generation Game – a complex skill being explained briefly with a demonstration, and then the contestant is left to have a go on their own, often with hilarious results. It’s a hole I’ve fallen into many times – it’s really hard to remember what it’s like when you don’t understand how to program. (Aside: This could be a massive plus point in the forthcoming CPD challenge of training teachers for Computing – people who have just learnt the skill themselves will be more able to relate to beginner coders.)

How on earth do you get your students to get into the mindset of a coder? I was reading this article on the seven traits of effective programmers which somebody posted on the CAS forums. Some of these skills are highly relevant to students learning programming in school, for example being able to think and plan your code, knowing how to research for answers, and being proactive about learning new things. I also read Alfred Thompson’s post on “When a Scaffold becomes a Crutch” which talks about students becoming dependent on your help and unable to break away and start thinking and writing their own algorithms. I often argue to my classes that Computing is actually mostly about thinking rather than about computers. I’ve made all of these mistakes and had lots of zombie lessons. However here are my tips for getting reluctant programmers thinking:

1. Provide automated tests

I wanted my students to write a series of functions that we were going to use for a hangman game in Python. I knew that if I just said “off you go and write these functions” they’d do that zombie thing above. So, I provided them with the skeleton of the functions and a set of tests I had written in order to test the functions. They could write their code and then run the program, and the tests would tell them whether they’d done it right or not. For example here is one function (Python 2.7) and its associated tests:

# Write your function to decide if letter (char) is in word (str)
# Should return True or False
def inWord(letter,word):

# --------------------------------------------
# Automated testing
# --------------------------------------------

# inWord function
print "Testing inWord function"
print "Letter a in word cat should be True--> ",
print inWord("a", "cat")

print "Letter b in word cat should be False--> ",
print inWord("b","cat")

Where’s the win? This avoids you feeling like a human compiler when students continually ask you “is this right?”. They can test if it’s right by running the program and seeing what the test output is. This is massively useful in getting them to actually type something in and run it, which is often half the battle.

2. Practice restrictive pseudo code

I hate pseudo code. I hate it because it’s designed to make it easy to describe an algorithm, and it ends up being the bane of my life because students just don’t get it. They don’t get what they are allowed to do – its OK to put something like:

if name has been entered

it’s not OK to put something like:

if all of the details are correct

Arrrgghh. I hear in Scotland they are trying to make an “official pseudo code” called Haggis – this might be good! I practice simple tasks using restrictive pseudo code – I give them a list of phrases they can use and ask them to make an algorithm which does a certain thing ONLY using these phrases. You could also print them out, laminate them and cut them out, letting students put the parts in the correct place and perhaps writing values or variable names on them in white board pen. I wrote something about this and put up a worksheet on my “Teaching students to think” post.

Where’s the win? Students are provided with the programming equivalent of a pile of lego bricks that they have to make into an aeroplane. They stop worrying about what bricks they might have, or whether that’s a proper brick or whether this brick has 2 nobbles or 4, and just start putting them together.

3. Build up gradually

A lot of students feel like they are given a short explanation which they are happy with and understand and then told “off you go” and sent off to a blank code editor where they have no idea how to start. Help them by building up to what you are going to create. Ideas include:

  • Give them a comment skeleton where you’ve written ideas for what they might need to do
  • When they are more confident, encourage them to write their own comment skeleton before they program
  • Initialise some variables for them so they know what they are starting with
  • Have them plan out the code first (try using tip #2)
  • Pair programming can work well as it divides the responsibility and the risk of “being wrong”
  • Give them part of a program pre written and let them finish it
  • Give them a program written wrongly and let them find the mistakes
  • Give them a lot of smaller exercises and gradually remove more and more of the scaffolding until they’re thinking by themself

Where’s the win? For some, it’s a massive risk to make a mistake in a lesson and at the first sign of compiler red text they crumple and give up, branding themself a failure. If you can encourage them on in tiny steps of things they can accomplish rather than watching them do one step and then asking them to run a marathon, they will be much more motivated.

4. Challenge, don’t instruct

A lot of worksheets and textbooks give step by step walkthrough instructions about how to accomplish a task. Tutorial books are all well and good for people who want to accomplish a particular task, except…accomplishing a task isn’t what we’re here to do – we’re here to learn how to program. As in the article referenced by Alfred Thompson, we don’t want to practice the Sat Nav method of teaching students to program – a Sat Nav gets the job done but you’ve no idea how you got there or how to do it again. Good tasks will provide the student with a thinking challenge that is just a tiny bit more difficult than the last exercise, so that the carrot is so close they want to reach it.

Where’s the win? In many addictive games, you just want to get one more step closer. Make programming addictive – that is to say sufficiently challenging to make them want to achieve the next part but not so challenging that they perceive it as beyond their knowledge, and you’ve got to be on to a winner. You could even throw in some open badges for good measure.

Arduino binary counting machine

I’ve been using the Arduino with my groups of Year 11 enthusiasts and we’ve been exploring together some of the tutorials and demo set ups, which is all reasonably exciting, but doesn’t really offer much of a progression. You wire up a circuit according to the diagrams, you download the code, you run it, it works (or not), you cheer (or not), you move on to the next one. Rinse, repeat.

ohhyessmallI wanted something more. I wanted my students to learn some useful Computer Science concepts through first hand experimentation. I was walking down the road on the way to supervise a Zumba session (why does my inspiration always come whilst walking to sports practices?) and I thought of a task which involves all of the following:

  • Wiring a circuit
  • Binary counting
  • Where those funny #0099ff type numbers in HTML colours come from
  • An appreciation of the need for efficient algorithms
  • Arrays
  • Iteration

…and best of all

  • Computational thinking

Now, people like Tom Crick  keep banging on about ‘computational thinking‘ and how important it is, and other people keep agreeing and nodding their heads like the Churchill dog and I’m not quite sure if they understand or not. I just want to be able to ask students to be able to attempt a challenge with enough depth that they begin to get an appreciation of how large scale problems involving Computing can be.

Enter…the binary counting machine.

1. What is binary?

My students are just enthusiasts, we aren’t offering GCSE Computing until next year so they have had no formal Computing lessons at all. Thus, they do not know what binary is, other than “noughts and ones”. I started off by introducing them to the way we write numbers in binary – place values, number of bits etc. I was going to post a link to an explanation here as I guess most people reading this will already know this…but I can’t find any good ones! 😦 As my oft mentioned logic lecturer used to say, that is left as an exercise for the reader. (Which is code for I can’t be bothered to do notes on this bit.)

2. Wire it up and check it works

Now, the students need to wire up the Arduino with four LED’s in a row. This isn’t hard – you do this but with four LED’s instead of eight. You might as well run some sample code to check that all of the LED’s turn on and you’ve wired it up correctly.

3. Make it count to 10

So we know that to turn a LED on, we use

digitalWrite(ledPins[0], HIGH);  //Turns on LED #0 
delay(delayTime);                //waits delayTime milliseconds

So it’s a fairly trivial task, even if the students have no idea what an array is, to figure out how to make the lights count in binary

i.e. Binary 1 =  Off Off Off On,

Binary 2 = Off Off On Off,

Binary 3 = Off Off On On etc.

Make a program which counts to 10. You (and they) might find this tedious – but that’s entirely the point! They are supposed to get bored of copying and pasting code and start asking “Isn’t there a better way of doing this?”. You can even jokingly set the task at the start to count to 100 if you want – wonder if they’ll figure out that they need more LEDs for this!

4. Isn’t there a better way of doing this?

Of course! This is where we apply some Computational Thinking – Boom! (Or, as my colleague mistakenly put it, Bang.)

We are going to solve a tedious problem through the power of thought. Wouldn’t it be good if we could take a decimal number, figure out how to represent that in binary, and then instantly display it on the LEDs? Then we wouldn’t have to go through the tedious and potentially error ridden human task of figuring out which lights should be on and which should be off, and we could use a loop to count to whichever number we saw fit. Result.

The students should be able to come up with the decimal to binary algorithm themselves with a bit of thought. So you don’t have to bother thinking, here’s pseudo code for one I made earlier:

// Define how many bits you have and their bit place values
// starting with the largest
placeValues = array[8,4,2,1];

binaryNumber = array[0,0,0,0];
decimalNumber = 9; // or whatever

for i in placeValues{ 
   if( decimalNumber >= placeValue[i] ){ 
      binaryNumber[i] = 1; 
      decimalNumber = decimalNumber - placeValue[i]; 

Woohoo! So now we have a binary number (as an array). We can loop through the binaryNumber array, corresponding it to the LED positions and if the value is 1 light the LED, and if not, turn off the LED.

5. Bonus learning stuff

There are also some bonus easter egg features to this lesson:

  • I really like this because instead of just doing a task this way “because I said so”, it’s a good illustration of how being clever with our thinking can result in better code and more efficient programs. With more efficient programs, more becomes possible – our counting to 100 task doesn’t seem so ridiculous now, does it?
  • You can show how to make a decimalToBinary() function, illustrating perfectly why functions are beneficial as we don’t have to keep copying and pasting code all over the place
  • Perhaps you could use this to make a binary LED clock?
  • If you don’t have an Arduino, you can still benefit from the Computational thinking by getting students to write a decimal to binary converter in Python or another language of your choice
  • When you’re exploring the possibilities of different number bases, you can also mention (e.g.) hex – they will have probably seen the hex colour codes in HTML, and suddenly this will click into place

#include – How it all began

So I’ve been rather quiet on the blog front of late. This is because I’ve been working hard, not only at school but also on #include! We had our launch party last night at BCS London which went very successfully (a photo of the committee and some of the attendees is below) and I thought I’d share my speech from last night about how and why we started up this campaign.


“Good evening to all of you and a huge welcome to the #include launch party – we’re really happy that you’ve chosen to join us tonight in celebrating the launch of our working group and we hope you would like to work with us in the future to improve the diversity of students in Computer Science. It seems logical to begin by telling you a little about how #include started. Now this is really a story about how my life got flipped, turned upside down. So I’d like to take a minute, just sit right there, and I’ll tell you how I became the #include chair.

(In West…no, only joking.)

Seriously though, the Fresh Prince of Bel Air was all about a guy who got taken out of his comfort zone, away from the social norms he grew up with, and thrown into a very different situation. For some students, the decision to study Computing would create a similar upheaval in their world.

Last summer I was a mentor for Young Rewired State – if you haven’t heard of it, you really need to look it up straight away – and I was pleasantly surprised by the amount of girls who attended the final. In the flurry of tweets accompanying YRS I came across a blog post by a 17 year old female finalist entitled “Why won’t girls code?”. I’d like to read you a short extract of the post:

“People have tried many approaches to get girls to code, many by trying to hide what coding is and tricking them. Not cool. That’s like when your parents hide your veg in your food when you’re a kid, and hope you’ll be ok with it until you get to the point where you inevitably realise what that funny taste is. Instead, we need to be honest and open – and instead of being ashamed of the stereotypical nerdiness, show girls what coding can be. Anything. If you know the syntax, you’ve got whatever you want just a compiler away.”

This post blew me away. The lack of girls in my classes at school suddenly went from being a nagging irritation towards the back of my brain to a really urgent problem we as teachers needed to be involved in. We are in a position of power – it’s during those early years that girls are forming ideas that liking coding is weird and being interested in computers is nerdy.

Now, through a fortuitous coincidence, Sam Bail from Manchester Girl Geeks was also at YRS and we had similar ideas at the same time – why didn’t we work with Computing at School to try to improve the situation? Sam added yet another element into the mix – she pointed out that it was not just girls who were feeling marginalised from Computing, and that in fact the uptake of the subject from male students in minority groups was equally poor. We got together on a Google hangout and the rest, as they say, is history!”

More photos from the evening are on the #include Facebook page:


On to the next event – watch this space!

How do I program a microcontroller? Arduino!

It’s been a long time since I last wrote a blog post! In that time lots has happened: Computer Science was added to the EBacc, the EBacc certificate was scrapped, ICT was renamed to Computing and a draft spec was published which cheesed off a lot of people and #include finally got a new website. Oh and they also found Richard III under a car park and the Pope resigned.

However, one of the more interesting things I was up to instead of writing about all that was…messing about with an Arduino!


What is an Arduino?

It’s a microcontroller board with accompanying software for programming it to do cool stuff. You program it in C (sort of) and upload your program to the board, and you can attach a breadboard (a tool for making circuits without having to solder things) and real world components such as LEDs, motors, buttons etc. There are lots of different varieties of Arduino, including one called the Lilypad Arduino which you can use to create electronic textiles, with conductive thread and all! Get on over to Geek Gurl Diaries to find out how.

Where do I get one?

I ordered the ‘Starter Kit for Arduino‘ (around £60) from oomlout.co.uk who were the fastest shipping company in the West, my package arriving the very day after I’d ordered it. Wow. Gold star for them! The pack comes with an Arduino board (obviously) – it is the Uno model. It also comes with a box full of bits which is great if (like me) you have no clue what you need, because it gives you some of everything. It also comes with an instruction book and some diagrams to show you how to wire it up which is incredibly helpful. All of these instructions are available online too as well as the code.

What do I do with it?

Arduino LEDWire it up, write your program and fire it up! The first program I tried was simply one that made an LED blink – here’s the proof!

Good bits

  • It’s useful for doing some physical Computing, where students can write a program and see the results in the real world
  • It’s engaging because it’s real!
  • You could collaborate with the DT department to make a project
  • All of the software and code examples are free

Bad bits

  • It’s kinda expensive – the kit is £60, a Uno board on its own is only £22 though. There are cheaper and more expensive arduino boards available.
  • It’s annoying when your circuit doesn’t work and you can’t figure out why!
  • It’s scary to use in lessons if you don’t know anything about wiring circuits or programming in C


Coming soon – a computational thinking task using an Arduino!

HEY! Self promotion online

I have to say it, I’m a flawed human being. As various people know, particularly Neil Brown, Alan O’Donohoe and Reena Pau who have been on the end of some of my grumbling, a lot of my motivation for new projects comes from the potential to have a positive impact on others.

Since I started blogging last year I have published a lot of resources. I have given away free booklets, worksheets and code solutions for teaching AS Computing, learning HTML, CSS and jQuery, PHP, various programming projects and numerous other smaller things on my blog. These took me absolutely HOURS to create and I have of course used all of them in my own teaching, but I could probably have charged money for some of them. I’m not being big-headed – I’ve certainly bought worse resources, put it that way. I’m also writing a complete A2 workbook which I’ll probably publish too when it’s finished, because I’m basically a sucker.

I helped at YRS 2012 this summer which I enjoyed immensely and found very worthwhile, even though it cost me a fair bit of money to attend. I’ve been involved with a lot of CAS activities from attending the working group meeting to contributing to the newsletter, writing on the forums and helping other members. I was appointed as a CAS Master Teacher and I will shortly be running some CPD sessions for teachers in my local area.

I also started the CAS #include this summer to promote diversity in Computing and we now have a great group of people helping out. Various companies, universities and individuals have kindly volunteered to run workshops at the hack day we are holding on June 15th 2013 which I’m organising (on my own). We are also hoping to hold a launch party, produce a pack of materials and curate our website and Wiki into an excellent resource for teachers.

So yeah – I do all this stuff and yet…nobody has a clue who I am.

anchormanI’m not saying that I do things solely for recognition – of course I don’t. I created my resources because I needed them, I went to YRS and contributed to CAS because I wanted to. However, I did hope that as a side effect of the huge amount of effort I’ve put in, I would gain some recognition amongst the Computing education community, and perhaps someone would respect me enough to ask me to speak at something, write about something, run a workshop etc. There have been *some* nice things (e.g. nice comments on the resources on the CAS site/Twitter) but every time I expend effort and this doesn’t happen, I feel crushed and wonder why I’m bothering to bust my ass to do this stuff as well as my day job for no reward. (That’s when Neil/Alan/Reena dusts me off and says “keep going”.)

I know, I’m flawed.

I have to admit that I am terrible at self promotion. I was reading this article by Athene Donald and thinking “that’s me” – I have never been any good at talking about my achievements and I have no idea how to go about saying “HEY! Look at me, I’m doing cool stuff and you should take notice!” without sounding like (to me) a big headed b*tch or a self-pitying harpy screeching “please LIKE ME”. (You may be rolling your eyes at this post thinking one or both of those things right now 😉 )

There is plenty of talk of women not being on company directors boards and not being comfortable in Computing careers. Maybe in order to create more successful girls we should also be showing them that it’s OK to ‘brag’ about what they do and how to go about it the right way to get their achievements noticed?


Codeboom’s unsung heroes of ICT and CS education 2012

As a teacher, I always receive a lot of promotional flyers through the post and I also encounter a lot of advertising on Twitter, some of which is for education conferences. However, despite the topic of the conference being “education”, there is sometimes a glaring omission – where are the teachers?! How is it even possible to have a conference on primary and secondary education without featuring at the very least one currently practising teacher in the speaker lineup? Imagine a conference in any other field where none of the speakers was currently doing the work which was the topic of the conference – how ridiculous does that sound?

Someone from the USA clearly agrees with me on this, as can be seen in the article “Who’s missing from the picture” which Neil Brown shared with me last week. It was CS Ed week, which is predominantly in the US but there is also some involvement across the world. The blog’s author comments:

Yesterday there was a Twitter Conversation led by a “national panel of thought leaders in the field….There are zero K-12 teachers on the list. None, not one. None of us current teachers are worthy “thought leaders?”

(K-12 is primary and secondary education put together, in the US)

I have to agree with this! If the people who are doing this job on a daily basis are not inspiring and forward thinking enough to be listened to, why is it we are we happy to inflict them on children day after day and expect the children to listen? This doesn’t send out a good message. Another similar list, again from the USA, is the Forbes 30 under 30 list for education. Once again there are many startup founders, academics, and even a few students but…no current teachers. What’s even more ironic is that the full title of the article is “30 Under 30: The Millennials Overhauling Education And Leaving No Child (Or Teacher) Behind”. Except…they left all the teachers behind. *facepalm*

I’ve also been looking with interest at Chris Leach’s #RethinkingICTAward where he has been encouraging people to nominate “an individual on Twitter who has really influenced the way you teach ICT and your own vision for the subject”. Whilst there have been many very worthy nominees, I often find that when it comes to people being nominated for awards, asked to speak at conferences, interviewed in the press or asked to write articles, it always seems to be the same people. No disrespect to those people – they are good at what they do and that is why they are asked – but it would be nice to also hear about some other good people for a change. So, in the spirit of the award that our 1st XV rugby team always announces in assembly, I bring you my “Unsung Heroes of ICT and CS 2012” – the people who I think are pretty cool but don’t always get the recognition they deserve. Maybe someone will invite them to speak at a conference soon 😉

Unsung heroes of ICT and CS education 2012

@MrOCallaghanEdu [blog] – Stephen O’Callaghan, ICT and Computing teacher from Bristol and crazy running enthusiast. He didn’t train in Computer Science but has been tireless in working on creating interesting Computing lessons, pioneering the GCSE and spreading enthusiasm for the subject.

@vikkiville – Vikki Dodd, ICT and Computing teacher from somewhere up north. I’ve never met Vikki or even spoken to her as far as I know, but I was impressed with some resources she posted on the CAS community (need to be logged in to click here) and she sounds like she really knows what she’s on about.

@twistedsq [site] – Neil Brown, academic at the University of Kent (yes OK, not a teacher) and CAS web admin. His blog(s) are really good and I have no idea why he doesn’t have more followers on Twitter because he always talks a lot of sense. Hugely helpful to CAS and to me personally and has also endured me moaning on a variety of topics 😀

@Mr_G_ICT [blog] – Ben Gristwood, ICT teacher from oop North. Has a small baby and is still managing to juggle this with creating awesome lessons and wrangling a pack of Digital Leaders. Willing to share, listen and discuss all sorts of cool stuff and a great enthusiast for the subject.

Rebecca Franks [CAS profile] [blog]- ICT teacher from Birmingham. An enthusiastic member of the #include team who has put in a lot of effort to help with the various campaigns. I have not known her for very long but she always seems happy to help, thoughtful and diplomatic 🙂

@loobey41 [blog] – Lucy Bunce, Head of ICT from Wales. I get the impression she’s been rather busy recently 😉 but she writes spot on blog posts and I was pleased to finally actually meet her at #YRS2012. I still can’t get the image of her as ‘Lady Sugar’ (from my “Which type of Computing teacher are you?” post) out of my head. I also loved the Y-Pant Thriller video!!

Who are your unsung heroes, and why?

PHP and MySQL for A2 Computing projects

In the past, many of my students have made successful project using a combination of PHP and MySQL. This year, all three of my students are using it in some capacity and one has combined it with jQuery. I have been meaning to write a full workbook for a long time and I have finally got around to it:

pdf_icon_small  PHP and MySQL for A2 Computing projects booklet (1.68MB)

This booklet is written to give to students directly, but it would also be suitable for teachers wishing to improve their skills or learn a new language.

Just in case you are not familiar with HTML and CSS (which is a pre-requisite for this booklet) you may want to look at my HTML, CSS and jQuery booklet first:

pdf_icon_small HTML, CSS and jQuery workbook

Let me know your feedback or tweet me @codeboom