My ICT teacher can’t mark my homework

Three years ago in August 2009 we ran the first ever Young Rewired State – a hack weekend aimed at the young developer community. I was determined to try to engage them with the exciting (sic) world of open government data, and firing on all four cylinders went out to go tell those kids all about it.

But they were not there…

It made no sense to me that there was a thriving adult developer community, many of them of my own peer group, but no-one under the age of  18? Where were the kids? Was there a corner of the Internet I had yet to discover?

Over a period of months it became blindingly clear that there were no groups, there were tiny pockets and many isolated individuals – all teaching themselves how to code, driven by personal passion and nothing else.

We scraped together 50 of these kids from across the UK and it was one of the most incredible events we have ever run. Ask me about it and I will bore you to death with inspirational stories 😉

Since then, running Young Rewired State has become the most important thing I do.

One story that I have heard time and time again, is that these genius kids are failing in ICT at school, because their teachers cannot mark their work. I mentioned this in the Guardian Tech Weekly Podcast and I am often asked to back up my claims!

One of the Young Rewired Staters who attended that first event (and every event Rewired State has run since regardless of the challenge – until he was snaffled by San Francisco: aged 16) explained this for the Coding for Kids google group, and I asked him if I could share his story here. Here goes:

When I was in year 10 (or 11, I can’t remember) we were given the brief to “design and create a multimedia product” for an assessment towards GCSE ICT.
Most people opted to use powerpoint to create a sudo-multimedia product. I, however, decided to build a true multimedia product in Objective-C (a small game written for iPhone & iPod Touch which included a couple of videos, some story text, audio, it was an awesome little thing, it really was 🙂
The Powerpoints passed with flying colors, my project failed.
I asked the head of IT why he failed me, he told me he simply couldn’t mark it. He had installed the app on his iPhone, as had the rest of the IT staff (Including the technicians who really loved it!), played it, but couldn’t mark it because a)He didn’t understand how it worked and b)It was leagues above anything else he’d ever seen from the class.
I argued the case and managed to scrape a pass by teaching him the basics of Objective-C from scratch and by commenting every single line of code I wrote to explain exactly what it did and how it did it (all 3,400 lines, including standard libraries I used) which ended up being a huge time sink. Time, I was constantly aware, I could be relaxing or working on a project of my own.
I understand that my case is a little different from the one involving Ruby, you can’t expect every IT teacher to be versed in iPhone development, but there is no excuse for not having at least a basic understanding of Ruby/Python and absolutely no excuse for failing work because its difficult to mark.
This NEEDS to be fixed, so many fantastic young devs are becoming disillusioned with education because of little things like this. The thought process, for me at least, follows:
“Wait a second, my IT teacher can’t mark this, so it fails? I don’t really want to be part of a system that works like this”.
This is in stark contrast to events like YRS, where kids are encouraged to push the boundaries and explore how to do things differently to stunning effect. It was one of the major deciding factors for me to leave education and move to the US.
The frightening thing is, after bringing it up at an event, almost every other young dev had a similar story.

I cannot tell you how sad I am that we have not been able to keep this YRSer in the UK, and this is one of the very many stories that drives me.

What can you do to help? Start by understanding this problem, then join groups like Coding for Kids and CAS of course – sign the petition.

There are a great many people trying to help solve this problem, and 2012 is certainly going to see a huge push towards solving this, but for now, just take some time to understand why this is such an important fight we have to win – for this generation and the next.

And as a PS, please read the introduction to Douglas Rushkoff‘s book: Program or be programmed – it is very good! (I so should be on commission from this guy).

98 responses

  1. Albeit anonymously… until now! I didn’t mention that you cheated on your age to get in on the first YRS hack day 🙂 thank goodness you did and thank goodness we no longer have a lower age range

  2. Back during A-levels I was nearly disqualified for plagiarism. Turns out my tutor thought I had stolen code because it was “too good to have been taught at this college”. Gr.

    Back at GCSE, I had the same problem as your guy, only with PHP (or was it ASP?). Fortunately I had the foresight to comment.

    It’s disappointing to see students have to inspire themselves, let alone spoon-feed teachers with their own grades. That said, standards are slowly lifting and it gives me pleasure to see as many rising student stars as there are rising teacher stars, made distinct only by their enthusiasm. Things still need to change.

    You continue to have all of my support in this matter. Best of luck.

  3. Goodness, this makes me feel old; I had pretty much the exact same story, but pre-dating the iPhone (I had Perl printing an ASCII animation to the console :P) — and more importantly, pre-dating reliable internet access (512kbit connection shared between ~100 PCs at school, didn’t even have a PC at home). Hence I’ve ended up spending 100% of my time training my code skills, and up until very recently had zero social or business connections to get them noticed >_<

    It's good to see things have moved forward since then, and there are things like YRS pushing even further /o/

  4. I think this details one of my main fears as a teacher – what do I do when my pupils know more about my subject than me!
    It makes me think about how teaching needs to change to a more mentor approach where we can help talented students get access to the right level of expertise from outside the school.

  5. Ok, this was a looooong, long time ago. Remember when we called it the World Wide Web? Ok maybe not, the kids reading this were probably just learning to talk.

    I submitted a French project as a web page. It took a little while for it to get marked, but perhaps the difference is I was going to a private school (hence even having internet in the first place), so the teachers struggled on until they had learned enough to mark my project.

    But that’s the sort of thing my school encouraged. We were also building an aeroplane, and one girl was making a solar car (well, a model) at a time when that was pretty groundbreaking.

  6. When I was at school it was all about how to use a word document or how to create a spreadsheet. I’d finish my work witching the first 15 minutes or so and spend the rest of the lesson helping the other students in the class to do theirs.

    My OH did ICT at AVCE level I think and spend most of the time correcting his teacher or teaching himself while the class did something else.

    I got to university and met my Oh (who was my best friend at the time – and still is lol) and he taught me how to write basic websites. Anything I can do in HTML is nearly all thanks to him not anything I learnt at school.

    It’s mostly that word-PowerPoint-spreadsheet combination that means that I can do all this ICT stuff but have no paperwork to say I can do it so people see my performing arts degree and my lack of a levels and decide I can’t do a tech job. My local college made me do a level 1 qualification before I could even move on and I failed the exam because you had a set route to get the answer as my equation got the correct answer just not quite the way they were expecting and so it was a fail. In the end I gave up (also I got a job in customer service and have been able to show my manager my computer skills and go from there)

    If we want to keep up with other leading ICt countries we need ICT teachers with the relevant qualifications.

  7. Its a real shame. I wanted to do something that wasn’t based on MS Office, but I had no choice. We were pushed into making a pay system on Excel simply because teachers couldn’t get us through the GCSE any other way. And the bureaucracy of writing essay after essay about your “system”? Don’t get me started.

    • Oh god, the documentation, I’d forgotten about (repressed) that D: The story at the start at least has the teacher looking at the code; when I was doing GCSEs they didn’t look and didn’t care, 100% of the marks were for how well you wrote about it – people who didn’t write a line of code were passing because they wrote an essay pretending that they did, and those who were good with code were failing because the “describe how your initial design was flawed and needed rewriting” box was left empty -_-;;

      • Perhaps that’s harsh, but is it entirely unreasonable that someone should be marked down for not completely the project’s criteria? There’s no way there was nothing that could be said about how the initial design could have been improved upon.

  8. Quite shocked by this, when I did my Computer Studies O’level as it was then we wrote programs, I still remember the thrill of producing a simple bubble sort that worked and a constellation recognition game. I have not written any code in the past 25 years but had assumed, naively, that the modern IT lessons would also teach it. Surely it should not be beyond the scope of exam boards and the like to have a set of ‘experts’ on call for when the work produced by talented youngsters is ahead of what they know. Especially these days teachers have so much on it is not always possibly for every teacher in a fast moving subject like IT to know everything but there should be support there. Kids should not fail because they are too good, that is a dreadful inditment of our school and exam system.

  9. I take a slightly different tack on this.

    I want to question why a pseudo-multimedia project in powerpoint was acceptable to pass?

    I’d suggest the answer is that that was the highest level the teachers were able to teach/mark.

    So yet again the problem is with the teachers skills. Now I’m not having a pop at the the teachers. I’m having a pop at the system that produces them. I disagree with @TeachingTim that teaching should become a mentoring process. That’s probably enough for the geeky (and I use that word in a positive fashion, as a compliment) students, but it’s not enough for the rest of the class.

    We need the ICT/Computing teachers to be sufficiently interested in the subject to want to learn more and develop their coding skills. Perhaps what they need is less classroom time and more PPA time to hone their skills and prepare their classes.

    And we need ALL teachers to have higher basic tech skills. So that the MFL team can start integrating machine-translation into the curriculum. So that the humanities teachers can start integrating 21st GIS and mapping technologies into the geography curriculum. So that drama includes more video, and art includes multimedia, and PE includes video analysis and performance monitoring, etc etc etc

    Then we will have the strategic and structural change needed to move forward as a society.

  10. A considerable part of the fault here is not that of the teachers but of the exam boards and MS-centric marking schemes.

    Way back when the idea of students creating their own web-sites was in its infancy I had a great deal of difficulty in getting moderators to accept that a database driven web application was at least as good as one using Access. This despite the fact that they even suggested that an Access database created entirely by the use of wizards would be sufficient to get a good GCE grade.

    It is unfortunate that process that develops exam specifications and assessment criteria is too slow to keep up with the development of technology. This is where the teacher must step in to support the student and argue their case rather than simply following the exemplar materials and the mark scheme.

  11. Pingback: Remembering being taught Applied IT at A Level « Tim Dobson

    • Yes – and I’m disgusted with the teacher that he didn’t literally get top marks!

      “I argued the case and managed to scrape a pass” – he taught the teacher programming so they could understand what he did. What possible reason could their be to give him less than full marks? The teacher sounds like a fool – not for not being able to program, but for not being able to teach well or to recognize ability without it jumping up and down in front of his nose. Sadly, from my own experience, this is not a remarkably bad teacher.

      (After such a snarky comment, I should acknowledge all the excellent teachers that do encourage their students.)

  12. I forced myself to have a coffee before answering this in the hope that I might just smile and get on with refitting my kitchen, but hell I cant resist.

    In the late 70s I taught maths and I knew the chances of a student outwitting me was very low – not because I was very good at Maths but because most maths stuff we taught had been around for hundreds if not thousands of years and every problem in all the text books had been solved over and over; and as a young teacher I felt safe yayyyyy!

    Then one day for reasons I wont bore you with, I started to teach Computer Studies. After a week or so students would come up to me and show me magazine articles, talk about a TV programme on computers last night or ask me if a program they had written was cool etc etc. I realised something soon after … I had now become a real teacher, A real teacher is a facilitator not a gate keeper, a real teacher walks ‘with’ his students and recognises from day one that many in the group are brighter and will achieve more than he will. A real teacher starts from the premise that he doesn’t know everything and celebrates learning new things with his students. A real teacher gets a kick out of the unexpected, loves to be challenged like he challenges the kids. Teaching Computer Studies made me a real teacher.

    Of course have sympathy for the teacher, because for some they will be criticised for not always being one step ahead of the kids. Some believe this to be an essential characteristic (sadly) of a ‘good’ teacher and some parents demand that this is the case – its all part of good discipline isnt it? Some students will use their knowledge that is outside of the teacher’s comfort zone, to challenge the teacher negatively, disrupt or threaten the progress of other students. When this is the case the teacher closes down the walls to keep it manageable – ‘lets all use PowerPoint for this assessment and keep it easy’. We all fear the world outside our boundaries, we all in our jobs try to keep things under control, but when teaching you simply must pour in a large dose of uncertainty, discomfort and risk taking. The very brightest need stretching but those less bright need supporting – it’s all about differentiation. But it is easy to be critical, easy to demand the rights of the individual student who wants to shine, but practically in a class of 30 kids the teacher is often under enormous pressure; from the kids themselves, the Headteacher, the parents, performance tables etc. These are not excuses these are simply the characteristics of a system designed 100 years ago, creaking under the weight of new ways to organise and value knowledge.

    As for the student in question? Well a few points… Of course a good teacher would have asked the students to submit a ‘proposal’ before allowing them to embark on their work. At that stage, teacher might have said that the method the student was to employ might be a problem and suggested constructively how to keep a log of his work to make assessment easier for both of them, or arranged to see progress more often. After all, isn’t that what we do in real life work? The student’s experience ‘running away’ and coming back perhaps weeks later with his solution is not a good experience for prep in the real world. Developers who do that usually create a mess – any AGILE supporters out there? Communication is key and being asked to document (explain) his method was not such a bad idea and he should not see that as a complete waste of his time.

    Ok he is a bright boy who came up with a grown up solution. But that’s not unique. Ask a music teacher, who discovers a rare talent in their class or the languages teacher who comes across a natural genius , even the PE teacher watching a future England forward – how do they react, how does a school react, how do we all react?

    BTW can we stop bashing PowerPoint – because whilst this student dismissed it and reached for his i-Phone, little Jimmy sitting a few desks away might not have a mummy or daddy that can afford an i-phone or might not be that bright to work with one in that way. PowerPoint offers a valid way for some children to express their ideas. Ok so it’s been done to death, but just because ‘we’ are bored with it doesn’t mean it isn’t ‘new ground’ for some children – remember, differentiation! After all ‘writing’ has been done to death but do we ban it?

    ‘My teacher can’t mark this’ might one day become ‘my customer can’t use this’ and then how do we analyse this? This is not about the perceived ability of the teacher or the student but a breakdown in communication both ways. I challenge anyone to bring me a teacher who will always be ahead of their students in subjects like ICT and Computing – those that pretend they are ahead are deluding themselves and those that try are sad and will be burnt out in a few years. Its impossible, its undesirable and its not what being a teacher is all about.

    Those organisations supporting gifted and talented young people will provide you with countless stories like this one from across the curriculum. ICT in may ways could liberate learning from the constraints of a teacher ‘led’ system, but alas we are not prepared to see such ideas implemented yet.

    I became a real teacher because one day a student got ahead of me. There were many times that my student’s work challenged my ability to assess them – but that soon became the very reason why I taught. To challenge and be challenged and to not know what the new day would bring.

    Right, that feels better now back to the kitchen.

    Chris M

    • Well said.

      My experience of this as a pupil pre-dates many of the anecdotes here (teletypes and only one VDU on a 4 user cromenco system – not batch files or paper tape readers but only just), and when my computing teacher (this was year 10) spotted that I knew a fair bit more than him, we had a quick chat. We worked out how I could participate in the class without dominating, help others without appearing too much the smart-arse, how he could give me projects that I could enjoy even tho he wouldn’t know if they were achievable or not.

      So it was annoying when I got stuck and no one else (him included) could help, but we had an understanding. As long as I worked, explained what I was doing, didn’t goof off, and made some attempt to improve my knowledge over above what I knew at the start, then he was happy to give me a top mark. But if I spent my time showing off, patronising or intellectually bullying others, messing about, then he’d find a way to fail me even tho I could pass the exam on the first day of the course.

      I respected him for it, and he had a willing helper rather than a disruptive influence in the classroom. My bet is that, much as we geeks like to look back with horror at PE and the like, it’s the sort of challenge that PE and Sports teachers must also face with some students around that age – how to teach someone with a higher skill level than the teacher (reading back I see you make the same point, but it bears repeating).

      It’s hard for the kids, but before we kick the teacher too hard, I might point out that a lot of bosses I’ve had in the IT industry have exactly the same failings – they only know how to “boss” people with less knowledge than themselves, and won’t hire or promote people who might threaten their self-appointed position as “smartest in the team”. So the earlier we can help people see how to deal with it the better…

      Right.. back to emacs….

      Tim M

  13. Sad to see nothing much has changed in GCSE / A-Level Computing and ICT education in last 5-10 years.

    I remember building a small demo PHP-based shop for my ICT project at GCSE, and being failed by the teacher, because, “my boyfriend said it’s too good to have been produced by a GCSE student”.

    Similar experiences at AS/A-Level where we were forced to code in Delphi, because the teacher couldn’t understand Java, C#, or indeed any other language I could suggest.

    Thankfully, my experiences didn’t put me off software/web development, and I am now a senior web developer.

    I certainly hope my children have better experiences if they are as interested in programming and technology as I was.

  14. As a professional working in the field, and someone who could have a few spare hours a week (after Xmas, anyway), is there anything I can do or anywhere I can go to help out the teachers with this sort of thing?

    • I’d like to second that sentiment. My experience of education is very similar to the one in your post, although I did at least have teachers who were interested (if not particularly talented) in the subject.

      How about an event where teachers can be taught at least the basics of writing software, and given tools and mentorship to improve. It may not change the system overnight, but even a few teachers who can actually teach something beyond Excel and Access would be worth it.

    • I don’t know of anything that exists to facilitate this, but I was thinking a possible solution may lie along the same lines – Either through an existing community or provided by the government you would think there would be some kind of facility to help teachers gain the skills & experience required to at least assess these projects?

  15. I disagree. I think your teacher was right – and I’ll explain why.

    1) When you’re employed and your boss asks you to write something in PHP, that’s what you have to write. By all means show there is a different, better way – but do what the business requires first.

    2) If you *really* think that your way is better; get permission first. Perhaps the teacher has a good reason (part 2 of the course, perhaps).

    3) Comment your code. Code without comments is useless – especially if you can’t read the language. I like to think I’m reasonably competent in PHP and a bit of Java, but I’ve never used ObjC. How is anyone supposed to mark what they can’t understand? It would be like you writing an English Lit assignment in Klingon.

    4) Comment your code. I realise that, technically, this is the same as point 3 – but it is so important I thought it worth repeating. In 6 months time, you are going to be looking at that code and wondering what the hell it all means. Then you’ll wish you put the effort into commenting in the first place.

    5) Comment your code. How is a teacher meant to know whether you ripped off your homework or not? Add comments, talk through what you did, show that it is you who created this, show where the errors are, comment out functions that didn’t work and explain why you removed them.

    6) You say that all teachers should know a bit of Ruby/Python. What about Java, PHP, ASP, .net, Erlang, Fortran, prolog, cobol, VB, C, C++, ASM, Qt?
    It’s not realistic to ask someone to learn every possible programming language on the off-chance that one of their students wants to program a PDP-11.

    7) Don’t show up your teacher. Embarrassing someone rarely gets them on your side. I remember – many years ago – loudly telling my teacher what the difference was between “save” and “save as”. That didn’t help my relationship with them.

    One of the most powerful skills you will need in the workplace is telling powerful people that they are wrong – and then getting them to do it the right way. It’s not easy, but it is worthwhile.

    • Re your point 6 I think the problem is that ICT education (certainly as I remember it from GCSE in around 2000) was very MS Office-centric; and the tutors seemed to have no knowledge of computing above that level.

      There was no provision whatsoever for any child willing to take the initiative to do something other than build an Access database or an Excel spreadsheet, for example. It was effectively Business Studies with Microsoft Office.

      The teacher shouldn’t necessarily need to know specific languages, but at least an ability to read code. More importantly students need to discuss the situation with their tutor before embarking on whatever project is involved (that was definitely my problem) would help.

      If the teacher was willing to let the “better” (can’t think of a word that doesn’t make me sound overly elitist) students do more interesting work, and not have them automatically get marked down for it, I think we’d find less people getting disillusioned with computing/programming, and being more willing to study at it at higher levels.

      • Yes. But learning the basics of programming and being given the tools to play with is not exactly hard and certainly not just for those gifted and talented kids. It is something that can be taught to everyone, it is misleading I think when people say that most kids can only cope with Power Point. Just not true

    • “1) When you’re employed and your boss asks you to write something in PHP, that’s what you have to write. By all means show there is a different, better way – but do what the business requires first.”

      Roughly translates to waste the company time? If one of our developers did that they wouldn’t be very popular.. I assume you work in a corporate environment where you are scared of losing your job if you challenge your line managers?

      • Ha! Far from it. When I’ve managed developers, I’ve always been open to innovation. But consider the following
        Me: Can you use PHP to fix this trivial bug?
        Programmer: (A week later) I rewrote all our Apache rules and created an Android app which does the same thing!

        Coding in a corp environment is about challenging assumptions – but it’s also about making sure that you don’t do anything that may have an adverse effect on the product without first consulting the relevant people.

    • 1) & 2) That’s a line of thinking that crushes innovation.
      If everyone in the world got permission first, or tried to please some notional non-existent boss, nothing new would ever get done.
      School kids should be encouraged for going above and beyond, and producing a better solution than what is expected of them, in an unexpected way.

      If an employee does something different than the boss asked, but with vastly better outcomes, the boss should either be delighted, or fired.

      Oppressing the creative innovation of kids in school, because some notional boss might one day object to innovative behavior, is twisted stuff.

      3) & 4) No, its not. Some code is simple or clearly written enough that it doesn’t need comments. Don’t comment dogmatically.

      5) Teacher should assume good faith. Students should do their assignments to optimise their learning rate. Teachers that are willing to completely sacrifice this, in return for certainty about credit, should be fired.

      6) Plenty of university assignments allow free choice of language, and are marked fine. Once you know a few languages, you can figure out whats going on in most assignments.

      7) You learned a bad lesson with your bad experience. Students shouldn’t ever have to learn that lesson. Teachers should be delighted to be shown up, and provide a nurturing environment, where the students learn as fast as they can. Students should be encouraged to be proud of their accomplishments; not try to hide them.

      A teacher that fails a student because the student ‘shows up’ the teacher should, ideally, be fired.

      People need to be encouraged to take risks, and be creative in unanticipated ways.

      The absolute last thing kids in school need is to have their creativity suppressed because it might make someone look bad in future.

      • I don’t see how firing teachers is really going to help, it’s already hard enough to attract good teachers as far as I can tell. They need to be given more flexibility in what they can teach and more support for their own learning and development.

    • Some extra information:
      Before I started the assessment, I asked for the mark scheme to make sure my project hit the criteria for a passing grade. We weren’t asked to build in powerpoint, but most opted to do so for lack of a better option. I asked if it would be a good idea to build an iPhone app for the assessment and the teacher of my class said “Sure if you can, give it a shot”. I maintained close contact with the teacher, regularly demoed the project and all was well. I have no idea when the teacher became aware that the project would fail but at no point was a concern raised with me until final marking.

      I didn’t build a complex project ‘just to be different’, I instead thought “Well here’s an opportunity to learn to do something I didn’t know how to do before”. Id been developing web things for a while but hadn’t dipped into native code up until that point. Again, the thought crossed my mind “If I can learn this in a week, surely they can at least have some basic understanding of it after 2 months”

      I was commenting while writing the code where I thought it necessary however, I had to go back and comment on libraries I used, on top of the comments that already existed, in basic terms

      • In which case, you did the right thing. You’ve also learned another important lesson – get everything in writing!

        As for commenting on library usage – again, a good skill. If only so you know which ones you can safely remove, which functions a library update may impact etc.

        So, here’s the real test – stick the project up on GitHub / Google Code so we can crowd source a grade for you. 😉

    • I’m leaving this anonymous as it would be highly unprofessional of me to leave my name and potentially expose my employer, but I work in education as a network manager, not as a teacher.

      I agree with what you and the other people here are saying about the student needing to document, stick to spec, etc. They should and that’s an important life lesson.

      However, there is an elephant in the room: The level of not just expertise in programming languages but of general IT literacy in people teaching ICT lessons of various kinds to students these days varies wildly from almost completely computer illiterate to “actually pretty damn good, to be fair”. I wouldn’t mind if this was a survey of the general teachers but this is specifically the ones teaching IT classes.

      I’ve had to support people who were supposedly hired as experts in teaching office (why we’re doing that to IT students, as a country rather than a college is a whole other sad story btw) ask me what a document template was, where did they “live” and how they might be useful, because they honestly didn’t know.

      What chance do potentially talented students stand with that level of it literacy facing them across the teacher’s desk?

  16. IT is a moving target. There will always be people better than you at something, and some teachers haven’t yet realised this is simply a fact of life.

    To not understand every programming language is one thing, but to not even try to understand, or see pure talent on the part of the student, is difficult to defend.

  17. When I started to program (back in 1978!!!!) most of my friends thought I was weird. I went to uni to study Software Engineering (the only course of that name in the UK at the time), less than 20 in the year group and spent most of the time doing assignments on our BBC Micros because the mainframe just wasn’t up to the job. I have coded off and on, started two IT businesses and have taken a keen interest in all things digital ever since.

    At my first start-up we created a tool called Genesis that allowed anyone to build a multimedia app. It was “drag’n’drop” but also had a scripting language that made it very extensible. We had a browser that allowed others to view your app without being able to edit it. Sounds familiar. But this was all back in 1990. Just as Tim Berners-Lee was making it all redundant. But we did sell it to around half the schools in the UK (those that had Acorn Archimedes). The kids that used it, loved it. And I hope inspired some to a career in the creative digital industries.

    It is vital that the kids today rediscover the creative buzz you get from developing software. The problem-solving skills it enables it crucial. The fact that I can use my programming skills to enhance websites, build simple tools, or even create fully developed applications it extremely useful to my non-programming career. It is a skill as vital is using Excel.

    I haven’t yet read “Program or be Programmed” but I will. Keep up the good work.

  18. I actually dropped out of a programming class at colledge soon after leaving school. the first 3 hours of the first lesson were spent watching my tutor fail to plug in the projector. after that i walked up to the front of class did it myself and walked out never to return.

    Want to teach kids ict/programming? Better teach the teachers first.

  19. In uni I got a nice score for a more than nice IT-project.
    Later I found out all the other students, including those with crap projects, all got the same score

  20. Pingback: josef’s Blog

  21. I’m 18 and a I currently do ICT as an A Level. Don’t get me started. I also did the ‘Multimedia product’ unit, I decided to create a website and the others all listened to the teacher’s suggestion to create a PowerPoint presentation. I was laughed at. NEVER AGAIN.

  22. I can relate to that.

    In my first year of college, in the first programming subject taught (imperative programming in C), we were told to write a simple board game. As the course was aimed for people starting from scratch and I had previous coding experience, I decided to make it more of a challenge.

    All the other projects had printf-based interfaces, while mine had an nCurses based interface with windows, an in-game real time clock and ascii animations running in an FPS-aware game-loop.

    Or, it would’ve had all that, if I didn’t have to *remove* all of it (already written and working, ready to be handed in) the night before and code an ugly printf-based interface (halving the overall code size) because my teacher decided nCurses wasn’t allowed. As if I had made it simpler by using it.

    If I hand’t talked to the guy the day before, my project would’ve failed, being comparatively awesome and demonstrating obvious interest and proactivity. I still can’t believe that a guy that punishes that sort of attitude is teaching, much less the first subject new programmers encounter.

  23. Pingback: My ICT Teacher cannot mark my homework

  24. It’s not necessarily better in higher education, either.

    I studied physics, and was given an assignment to write a program that’d calculate spherical bessel functions. Rather than implementing in FORTRAN, as they *suggested*, I went ahead and wrote it in C.

    Needless to say, they failed me, as they didn’t understand C, which they cheerfully told me was a “minor, esoteric language”. Didn’t matter to them that the program wasn’t only correct, but was a good 1000x faster than the nearest FORTRAN equivalent.

  25. I am a professional IT engineer with interests in hardware manufacture ( i make useful little usb thingies for fun, and the software that runs them) but i got told way back at GCSE not to bother taking ICT as it would not teach me anything i didn’t know and that i would be better off taking sciences, technology (where the overacheivement problem nearly bit me) and english This advice whilst odd at the time has stood me in good stead over the years. I work in education, and ICT as a subject is a bit of a joke, it seems to serve only to teach kids how to ‘drive’ microsoft office.

  26. Stories like this are sadly not too dissimilar to my own. There are an ever increasing number of self taught programmers who are starting at younger ages that will give teachers today a run for their money.

    It is a shame there isn’t a process in place for those that are better than the teachers to be marked correctly instead of being marked down for being superior.

  27. That really is sad. If you ever get the chance to watch a movie called “Three Idiots” – Its really worth watching which really homes in on this problem. Its a bollywood movie but im sure you can get it with subtitles. Its definitely recommended.

  28. I had pretty much the reverse experience.

    This was 2001, or so, doing years 11 and 12 in an Australian private school. The IT class was made up of all kinds of bits and pieces, but a lot of it was programming, in Visual Basic (starting with VB3, for some strange reason, and eventually moving up to VB6).

    I had a fair bit of programming experience, so the programming assignments were easy. Most of them didn’t really offer much scope for embellishment. One in particular did – write a game in VB, and produce some documentation explaining the design of the code, and how it works.

    They weren’t expecting much. Moving some pictures around a form using timers, or something similar.

    Instead, I wrote a very basic 3D Starfox-type game. It had a 3D starfield as the background, and drew scaled sprites (using the Win32 API directly) for ships, and lines and circles for projectiles. It had multiple waves, a couple of different types of enemy.

    Handed it in (with complete printed source code – most people had a couple of pages, I had maybe a couple of dozen). The teacher who marked it said that he didn’t really understand what I’d done, but that it looked impressive, and seemed to be well written (it was actually a huge pile of hacks, but it wasn’t too bad for a 16 year-old). So I got full marks for it, partly because of the accompanying documentation which explained how everything worked (even if the teacher couldn’t follow it).

    That particular teacher handled me really well. Not just on that one assignment either. He was quite happy to let me embellish the assignments if I wanted to, as long as I didn’t go completely overboard. I did a few others that significantly deviated from what everyone else was doing, and I had no problems with those either. He thought it was great that I had an interest in this stuff, got out of my way and let me stretch myself, and offered some general advice and guidance when needed.

  29. That’s pretty much how it works. When I did my gcse’s I also failed badly. Then 2 years later I was working on embedded system’s writing c and assembler because somebody gave me chance based on another project I had written.

    To cut it short. By the time I was 17-18 I had completely given up on the education system because it can only suit the majority it will never suit the people at the high end of the scale.

  30. Actually this ground is/has been well covered in music teaching recently: http://www.musicalfutures.org/resource/27362 partly as a result of looking at how popular musicians learn [mainly from each other, though less now in these days of X-factor].

    I’m a ‘member’ of both communities IT and popular music, so I’ve been hoping that less structured peer-learning approaches will begin to leak into school IT. One thing that need to happen first is to throw off some of the proprietary shackles that sent one East End kid into a Linux-based drop-in saying ‘I -need- Powerpoint’. Go figure, as they say.

  31. When i was doing my GCSEs (1994-1996) it was exactly the same. I’d been coding in 6510 assembly since I was 11, and a quick look at the contents of the GCSE ICT course confirmed my fears that it wasn’t worth doing. College was just as bad.

    Schools aren’t there to develop talent. They’re there to destroy it. To push it towards the norm.

    Choose GCSE subjects which will complement your coding (art / economics / geography / extra maths or extra natural language). These subjects will make you into a better, more rounded developer and person.

  32. I was a participant in YRS this year and I fully support the movement that we’re all building here to fix education in IT. I am currently at university (not studying CS or anything like that) and I didn’t even take IT at A Level despite my strong interest. Qualifications in IT are generally pointless – the IT A-level and GCSE don’t teach real IT at all and the Computing subjects tend to focus on dead languages like Pascal. Luckily, when I did my GCSE, I was allowed to make a website for my coursework but I had no more free reign that that, and it really is a shame. As opposed to just teaching people how to use office applications, schools need to real nurture an interest in real IT. And the only way that anything will happen is if we all campaign.

  33. Wow. The culture depicted on this page really chills my blood. I hope we can stay a little more “Customer Focused” over here in the states.

    Even the supportive comments here seem to fall short, calling for revisions of the ‘system’ or the ‘process’. What’s going on here? Is this the decades of socialism talking? Or is it the teaching profession itself that so limits one’s scope of reason?

    Thankfully, these kids will emerge one day from your pitiful, small world, and will finally get a shot at the rich rewards (or valuable lessons) the Free Market has to offer.

    (Oh dear, it just occurred to me that you likely don’t foster much appreciation for capitalism or individual liberty.)

      • Funny, isn’t it? Especially when a lot of the ills of the education system are the result of trying to run it along capitalist lines rather than as a common good.

        Of course, if capitalism is the answer, the simple expedient of doubling teacher wages should solve all the problems…

  34. The student has received an important lesson in IT strategy: don’t design something so clever your boss doesn’t understand it.

  35. Okay, I’ve held onto this little resentment for years after a similar experience in the U.S. (near Seattle, of all places). I’m hoping that if I get it out here I might finally be able to let it go.

    In my final year of high school in the early ’90s, my math teacher directed us to complete a project of our own choosing that demonstrated advanced math concepts. We would present to the class at the end of the project. I had always loved computers, but had never really learned to program. I thought it would be a great chance to learn to code and create a cool, unique project at the same time.

    I got a pirated Pascal IDE from one of my father’s friends, checked out a book on Pascal from the local library, and taught myself to program. My project was to be a very simple command-line program that would take an integer as input and tell you whether it was prime. I used a method (which I now know to be called trial division) that I had heard my teacher briefly mention during class one day. Simple but effective.

    It took some time because programming was new to me, but I ended up with a great little program that did exactly what I wanted it to. It even had debug statements so you could see what it was doing as it ran. When I was done I built an executable, copied it to a floppy, printed the source, and took everything to class for my presentation.

    It ended up a disaster. In those days, there was only one computer in the classroom and it belonged to the teacher. I had planned to use it to demonstrate my program by running it from the floppy, but my paranoid teacher refused to let me insert my floppy disk because she thought I would infect her machine with some kind of virus (If I’d known she was going to be such a stink about it, and if I’d actually known how to create a virus, I might have tried. 🙂 ) So, no actual demo.

    Without a demo, I was reduced to projecting the source code onto the overhead and explaining it to everyone line-by-line. No one, including the teachers, had seen source code before, and although I thought I was explaining it pretty well it went right over everyone’s head. This might not have been so bad if I’d been able to actually show them the program (virus) in action. What a mess.

    After the presentation I handed my source code over for grading. I tried to give her instructions on how to run the program, but she refused the floppy like a snoot would refuse a cheap glass of wine. After taking my source code, she then asked that I turn over the Pascal book I’d been using and accused me of plagiarizing my program.

    I ended up receiving a C- on the project, which is barely passing. My fellow students, most of whom had just copied story problems from the textbook and changed the names and numbers around, all did better than I did.

    Fortunately, I had more pride than to allow some stupid teacher get me down. I went on to university the next year and began taking advanced computer science courses as a first-year student. Now I’m a very successful developer, no thanks to her.

    Thanks for letting me get that out. To the kids out there: stick with it.

  36. Every year I spend a few weeks at Stanford University doing some work and interviewing interesting people like Larry Cuban and other professors as well as visiting all the companies spawned from the Palo Alto campus.

    I took my stepson Kieran,an Aspie,to the history of the computer museum where we manually worked the only working Babbage machine. He used his time well by enrolling on the Stanford Digital Media Academy and,amongst other things,learned how the write code and using flash and scratch designed
    and built 3 simple games

    He brought them back,and his certificate, and took them to his GCSE ICT teacher and asked if he could use the evidence of his learning towards his GCSE coursework.

    Reasonable suggestion I thought…..you guessed it…”sorry it doesn’t meet the assessment criteria” ICT grade? C!

  37. As a dreadful teacher (god aren’t we to blame for all society’s ills!) some interesting comments.

    1. The influence of assessment structures cannot be underestimated. GCSE and Voc Ed courses in particular have very narrow very prescriptive marking schemes (and examiners) which simply cannot cope with deviations! I’ve had continous problems getting one examiner to look at virtual portfolios were he can test the work as he prefers print outs…

    2. Ironically it’s the opposite currently with KS3 if you use APP which is open to basically any ICT project for assessment. It’s a sad reality that we currently excite the kids with all the fun of Web 2.0 and then hand them a GCSE ICT course…

    3. Coursework has been effectively banned because so much of it WAS (and I mean WAS) done by parents at home. Now any assessed work has to done under controlled conditions. A lot of the disbelief registered by teachers above may be actually genuine disbelief. I’ve had students try to palm of their parents work on many occasions. It did happen. I used to test them by asking them to explain and/or reproduce sections of the work with me acting as Nelly. As I have to authenticate student work I never signed off work I felt doubts about as there are professional repercussions and damage to all the other entrants.

    Maybe not as a clear cut as you think.

    • I completely agree and I didn’t mean my reply as an attack on teaching staff (most of them, at least). I understand how much of a limiting factor the curriculum and league tables can be, and often are, to teaching. Moderation was an omnipresent word back when I was taking GCSE’s and “The Moderator” became like this dark character whom staff feared.

      Here’s an anecdote for you though: When the moderators chose the students whose work was to be moderated (moderators choose a random sample to moderate the class), the IT staff pulled the students from all other classes for the best part of a week and brought the group’s work to the standard it should have been, often to the extent that a portion of the work was actually completed by the teachers themselves. Reasoning? League tables; They couldn’t afford to lose their ‘winning streak’ that put them top in the area, even if it was to the detriment of most of the class.

  38. Says it all really. Most ‘schooling’ can’t keep up with the self-generated schooling kids are doing on their own. Reminds me of the story told by a colleague some years ago about his son who learned z axis trigonometry on the Internet (to help with his own gaming website), while ignoring school work because it was boring. School end of year assessment: N for ‘no evidence’. School can’t compete…..

  39. I had a similar experience in Canada in grade 9 in ~1999. I signed up for a module of “Introduction to Programming” and proceeded to code a hybrid GUI/Text adventure game engine, complete with tools to create rooms and characters to populate the game. By the end of the semester I had about 5 minutes of game play. The scripted interactions served as an introduction to the plot and tutorial on how to play. I had clearly fulfilled the module’s requirement of being introduced to programming, but ran out of time to put in more creative content.
    The supervisor for the class was a biology teacher and not familiar with any programming language at all. He was not impressed by my demo because it was not “finished.” His eyes glazed over when I tried to show him the 700+ lines of coding effort I had put in (GUI window event handlers, sheesh!), and instead he asked me what percentage of the game I thought was complete. I should have said was “the engine is 100% complete,” but I thought of the game as a whole and said 70%. He berated me for not having finished and gave me a mark of 70%. I tried to contest it, but the consensus was that if it wasn’t “done” it didn’t deserve full marks.
    Now the kicker is that other students in the class had made 5-page websites with FrontPage (of all things) and got 100%.
    It still kind of bugs me.

  40. It’s a shame there is no such thing as the YRS where I live. At home I dabble with fun nifty projects of mine, only to be greeted with Microsoft Word and Access at school. When I was in 10th grade, I had to take a touch typing test (yes, a typing test) and I got 7/10 even though I typed faster than my teacher—which might have explained his hostility towards me for the last 3 years.

    Mostly taught myself, but it gets lonely sometimes.

    • We will be building out the YRS community to beyond the UK next year. But until then why don’t you catch up (even just over twitter) with @lordjawsh – the kid I was talking about in this piece

      • I don’t think YRS will be able reach this third world country any time soon though, but it’s great to see the community expand.

        Been following the guy for a long time, but he probably won’t notice. I’m too shy and socially awkward. Probably explains why I’m commenting anonymously.

        But thanks for caring. I really appreciate it.

  41. This blog post received 25,000 views in 24 hours yesterday, and is already at 4k in the early hours of today. It has clearly hit a nerve. I do want to clarify one thing though – although the title of this blog post makes it seem skewed towards teacher bashing – it isn’t, and I am glad that most of the comments here have not been about that. However, I am a bit worried that the easy solution here is to turn around and kick a teacher then carry on. Anyone who knows me and knows #codingforkids or #CAS will be aware that we are trying to solve this by bringing communities together and helping with the immediate problem whilst lobbying government to solve this long term.

  42. As a Maths/IT teacher in a secondary school I just want to say how interesting this blog is. Keep up the mature conversation as there is a lot of food for thought. I run a scratch programming club to keep things fresh which attempts to be organic and led by whatever we are working on. I remain open to students pushing into other programs and languages if they express an interest. Suggestions and shared experiences welcome.

  43. Pingback: My ICT teacher can’t mark my homework | Education & Apple, it's in the DNA | Scoop.it

  44. I’m fed up with reading articles about how rubbish IT teachers are and how programming should be taught in schools. Most kids have no interest in learning programming so let’s get that myth out of the way first. Secondly most IT teachers if they can code probably don’t know ruby/python/php. Thirdly there are no affordable programming qualifications that gain GCSE points in league tables so most schools have no interest in teaching programming. Solution? An online ‘school’ of programming that is free or cheap to join, open to all ages, supported by people who can really help not just teachers, get exam boards on side to offer qualifications. Just stop with the ‘IT teachers are all rubbish and lazy’ it’s really getting on my nerves!

    • Most kids have no interest in Maths or reading Shakespeare, but they get taught it anyway, and by people who understand the subjects. Why can’t computing and/or programming be held to the same standard?

      • Maths and Shakespeare are not continually changing. With some exceptions most IT teachers do not have the time to keep on top of ALL the new developments and if they are passionate about coding they have to be very dedicated to kids not to move to private sector where they can earn much more. Don’t fail kids for knowing too much but don’t fail or blame teachers for not knowing everything, change the system so that excelling at something (other than sport) is desirable and rewarded.

    • I sympathise with some of this and don’t feel that ‘teachers are rubbish’. However a) it’s not an either/or choice, some formal teaching is always useful, I’m bad at maths, program for a living and have had to learn some. Perhaps more relevant, I finished an online OU MSc but one of the best things were the ‘schools’ where I met others. Peer learning can’t happen ‘totally’ online, my opinion, of course.

    • “articles about how rubbish IT teachers are”

      I haven’t seen any articles like that – certainly this isn’t. I hope you’re not implying that when particular teachers are slack at their job (like the one that gave a bare pass to a smart, hard-working student) they should be exempt from criticism? Sorry Dave, but I think you’re overreacting

      But your solution is a good one, IMO. Certainly it’s not the bad apples that are the biggest problem – it’s a systemic problem, and requires solutions that fit the 21st century, such as online learning and more autonomy for students who want to learn.

    • I’m not in education – left school in 1981! – so I know nothing about the current ICT curriculum, except that it sounds like “office IT skills” rather than “software development skills” – maybe the education system needs to recognise this distinction and cater for both needs more effectively?

      I’ve no desire to kick off any “language wars” either, but if people are looking for “online schools”, there are masses of materials available online for the free Python programming language, which is increasingly used in industry and would teach kids a clean style of OO programming on a Windows/Unix/Linux platform, providing a useful foundation for other areas like web/mobile programming, scientific applications, scripting, and for other OO languages like Java etc. Teachers might also be able to use these materials to keep up with (ahead of?) their students.

      These are all free:
      How To Think Like A Computer Scientist – Learning in Python
      Dive Into Python
      Google’s Python Class

      And this is one you’d have to pay for but might be great for younger students:

      Hello World – Computer Programming for Kids and Other Beginners

      Hope somebody finds this helpful.

  45. Unfortunately I only get two programming classes at my school, and they are taught by the same guy and the courses switch every year (eg Visual Basic 1 year, then Java then next) And I can’t take his classes yet b/c “I’m too young” 😦

    • Try teaching yourself Python – see my post above for free online materials – and then maybe you can teach the teacher a new language as well!

  46. A lot of the comments and replies here are really very good but could I just add some observations:

    Teachers are there, to teach a broad range of principles. Pity the ICt teacher who is expected to learn a range of programming languages and keep those skills updated simply to teach ICT GCSE. That approach doesn’t make sense and a bigger risk is that if the teacher is that good he will probably be snaffled by industry!

    If we did decide that teachers should programming gurus’s – on what platforms should they be targetting their applications and efforts? Not every child has an iphone, not every child has access to a PC at home!

    Do we restrict teachers to simply programming – how about we let them roam into areas such as network architecture, system design, project management principles! No, we need a clear scope for a GCSE that raises interest and ethuses pupils in what is an incredibly broad topic – programming is only just one element!

    If you enthuse the pupils at GCSE level, raise the bar at A level, then develop more professional skills at degree level (or via industry). I’d suggest the number of pupils who could devote the time and energy into becoming coding professionals whilst at GCSE is relatively small, far better on focussing on the wider aspects

  47. While I feel sorry for the pupil in the story and agree it was handled badly, I can see where the school is coming from. He put together a multimedia project using tools that weren’t taught by, understood or supported by the teacher he was submitting it to.

    I think it’s important to recognise the difference between ICT and Computing. All students must have a basic grounding in ICT to prepare them for the workplace, but not all students need to know how to write a piece of software. ICT gives children the ability to use the IT tools most widely used in the workplace, and it’s those tools ICT teachers are trained in. Not knowing the basics of programming is no deficiency on their part because 99% of the pupils will never need those skills.

    If the school ran a Computing GCSE option for pupils like this, then there would be no excuse for how he’d been treated, but I’m not sure ICT is the subject to support this kind of student, nor should it be.

  48. This article from 2010 emphasises the problem – http://www.theregister.co.uk/2010/05/12/aqa_c_php/ – around the time that it was published I went to Vietnam to meet with an offshore development team. Whilst our A-level exam board was pulling C, C#, PHP from the syllabus, the Vietnamese minister was proudly telling me that their students were only taught useful commercial skills like C#, Java, PHP (http://blog.rodger-brown.com/2010/05/aqa-language-debate-uk-v-vietnam.html)

  49. Pingback: My ICT teacher can't mark my homework | Emma Mulqueeny | ICTEducation | Scoop.it

  50. Pingback: My head teacher won’t let me teach computing | Emma Mulqueeny

  51. One area that needs to be remembered here is that the lesson is ICT not Computing. It is about being able to select an appropriate software package and produce a document / website / powerpoint that is suitable for its intended audience. The GCSE ICT course includes a little about the make-up of a computer giving the student enough information to make informed choices in the purchase of a computer or a mobile phone. It also includes the social impact of ICT. A computing course would include elements of coding.The difference between ICT and Computing is the same as the difference between learning to drive and becoming a mechanic.

    ICT is often delivered as a core topic with Computing being deleivered as an option at GCSE. That said there is not enough computing taught at GCSE.

  52. Pingback: Turing’s Descendants | DisruptiveProactivity.com

  53. Pingback: YRS at Learning Without Frontiers 2012 – Blog – Rewired State

  54. Pingback: My ICT teacher can’t mark my homework « Miss Peacock's blog

  55. Pingback: Knowing less | nick daniels / edublogging

  56. Pingback: Young Rewired State: bringing back open government data | Emma Mulqueeny

  57. My experience was slightly different as my degree included a mix of ICT and Design so the tutors were very different in their approaches and methods.

    The Design was very creative and from a traditional stand-point of Concepts and Ideas while the ICT was very structured and ‘by the book’.

    This caused a very mixed marking system based on these two methods and I had to adjust the expectations of the tutors in each category. I think the tutors themselves were very focused in their own area but did not see the degree as a whole which was difficult to communicate to them; but not the tutors fault, just the way the system/procedures were structured.

Leave a reply to David Tee Cancel reply