back to article Schoolteachers can't teach our kids to code, say engineers

ICT teachers will need extra training to teach the new IT curriculum that science minister David Willetts announced this month, says the Institution of Engineering and Technology (IET). Under the "Behind the Screen" initiative, students in 20 trial schools will be taught to write software as well as use it. But Dr Martyn …

COMMENTS

This topic is closed for new posts.
  1. jake Silver badge

    How about ...

    ... teaching kids basics, instead?

    You know, like reading, writing and arithmetic?

    Fondling an iFad is not computing, regardless of what the marketards of the world might have you think ... or not think, which is probably more to the point.

    1. Elmer Phud

      Basics

      If the 'kids' are to learn computing then the 'reading, writing and arithmetic' bit is also required.

      1. Paul_Murphy

        If the kids...

        Are taught to program android apps or games (or other such activities) then the need for correct spelling, to be able to read and how numbers work becomes far more apparent.

        The problem today is that all of the fun is drained from a subject and the constant exams and 'league table' mentality stops kids from finding out why they should be learning in the first place.

        ttfn

        1. Anonymous Coward
          Anonymous Coward

          Robots!

          Everyone loves programming robots, even undergraduates who should be interested in coding as a whole. It's nice to have something tangible to interact with rather than just pixels on a screen.

          It's not that expensive either if you use something like the mindstorms kit, which people have written c compilers for.

      2. TeeCee Gold badge
        Mushroom

        Some of the code I've reviewed recently would seem to contradict that.

        Back in the day, the only godawful spelling and grammatical howlers were in the comments. Then they crept into the error messages and now they're in the bloody UI!

        Also if you're trying to write code to calculate something, it helps to have a basic clue about how the calculation in question works. I've seen some serious FAIL there in the process of translating a spec into code....

    2. Anonymous Coward
      Anonymous Coward

      The article referred to encouraging students to write apps for their mobile devices by way of inspiring them. That seems reasonable to me, one of the challenges for educators is making it seem relevant and therefore interesting to the students.

      On a more general note, I agree that training of teachers is a concern. Far too many of the ones I know only seem to come in to work because they've run out of windows at home to lick.

    3. The Fuzzy Wotnot
      Headmaster

      Teach kids skills, not knowledge!

      @jake, Bang on the money!

      I was never taught to code, my teachers who taught me Computing ( ICT, my freakin arse! ) didn't really understand coding but they understood logical thought. I taught myself to code.

      They taught us simple ideas using electronic circuit components to illustrate how a complex system works, and when broken down into the components, how that made it work.

      They taught us how to put something together, how to troubleshoot it correctly using logical thought, then how to fix the problem.

      They taught us how to think correctly and as jake says, we learned the 3Rs so we could communicate those logical thoughts.

      All these basic tech skills I still use today, because my teachers gave me learning skills, not knowledge. The skills they gave me, allowed me to source the knowledge I have and I will be eternally grateful to them for that.

  2. Cyberneticist

    I'm an IT Teacher!

    The General Teaching Council stats miss out a huge sector of teachers - College Lecturers. I am a College Lecturer with a Cybernetics and Computer Science Degree, and was a technical architect building software worth millions of pounds before changing careers. I teach A-Level ICT and BTEC qualifications, and know from my own experience that teachers in colleges have to have a qualification in the subject they are teaching, and / or a high level of experience.

    I whole-heartedly agree with the initiative, and see a good way of going forward would be for schools to utilise this resource in our colleges and other Higher Education establishments - make links with the local colleges and universities and get fully qualified teachers with high levels of real-world experience helping younger students to achieve their potential.

    1. Anonymous Coward
      Holmes

      Ok, could you then please

      ...list what you want to teach your pupils ? Does it include algorithms and data structures ? Do your pupils appreciate the concept of a type system ? Is it more than Excel-Macro hacking ?

      1. Cyberneticist

        Much more than Excel Macro Hacking - I took a group of 8 year olds through C# using Visual Studio 2010 to build a character that jumped around the screen. We did the basics - variables, conditional statements and loops designed via a flowchart. You can explain types via "Lockers", physical objects they understand (Lockers of different sizes store different types of information) - it all boils down to how well the teacher can explain their craft.

        1. AndrueC Silver badge
          Thumb Up

          C# is probably a good language to use as well. Quite easy to program but with a lot of complexity for the eager student wanting to know more. Do you explain that not all environments use garbage collection and cover the pros/cons?

          Personally I've had more trouble with C# garbage collection than I ever did with C++ and the heap. Once you know RAII the heap is far less daunting and store usage tends to follow program flow automatically. And a lot more closely than garbage collection.

          But if I was teaching programmers I'd want to stick C++ style generic programming in there. A lot of programming is generic and you can save a lot of time if you good at spotting the fundamental types and operations.

          Oh and I'd also teach comments as 'Something you need sometime but only if your code is not clear enough in the first place. Fixing the code is better than writing a comment' :)

  3. Simon Neill
    FAIL

    Ahahaha. Yeah.

    I'm with jake here.

    I work in a school and spent most of the morning logging on for kids that can't handle the concept of username and password, even with both written on a slip of paper for them.

    Teaching them to program? As well teach a labradoodle quantum physics.

    1. Cyberneticist

      While that is true, even with college students on IT courses, teaching students the basics through something like Scratch from MIT (http://scratch.mit.edu/) can get them to grasp seemingly complex concepts such as Event Driven coding without too much pain. I've manage to teach 5 year olds how to build simple programs through scratch, then be able to translate that into simple flowcharts for a design. It isn't much of a jump, once the initial concept is grasped, to start learning the grammar that makes up a programming language and creating simple programs.

    2. Anonymous Coward
      Anonymous Coward

      Labadoodles?!?!?! Simon, sorry that's because you work in a zoo not a school. Real kids can figure out passwords, how else do ya think they gonna get on Facebook?

      1. Simon Neill

        Its like you work here.

      2. Anonymous Coward
        Anonymous Coward

        'Real Kids' tick the 'Keep Me Logged In' box and store the password in their browser so they never have to remember a password.

        'Real Teachers' suck donkey balls at most IT related subjects but I fail to understand why any parent would want their kids to work 'In IT' these days, the wages are crap for all but a very small number of people and the majority of work is dull as dishwater dealing with idiot users who have to store their passwords in their Internet browser so they can get onto Facebook.

        1. ChrisC Silver badge

          Teaching kids to code != preparing kids for a career in IT

          Take a look around you. Consider how many of the devices you can see (and those you can't) have embedded processors. Now consider that someone, somewhere, has to have written the code running on those processors. These programmers aren't employed by IT departments, nor would they describe themselves as IT workers, and in general (at least as far as the UK goes) if they're any good at writing embedded code then they can earn pretty decent salaries.

          Then take a look at your computer. How much of the code running on that do you think was written by someone who has "looking after networks and users" as part of their job spec? Programmers working on desktop systems might be more inclined to describe themselves as IT workers, they may even be part of the IT department, but they're still often a long way removed from the sort of IT worker you're describing.

          And even if you don't want to make a career out of writing code, it can be damned useful to understand the basic concepts of coding. Think about the office worker bashing out a short bit of VBA to make their day to day tasks a bit easier, or the scientist putting together a Matlab/Octave program to analyse some data.

          1. AndrueC Silver badge
            Black Helicopters

            Sadly true. Good technique and design goes out the window the day you have your first meeting with the Project Line Manager. You know you're screwed as soon as someone says the dreaded 'schedule'.

            The motto here seems to be:Don't worry if the code is crap - we can fix it in the next project. If we want.

      3. Evil Auditor Silver badge

        @AC 13:40 GMT

        They were lead throught the registration procedure and never ever logged off since?

    3. Adam Foxton
      Joke

      Wouldn't you be better off teaching a Cat quantum physics?

      I imagine that once you hit Schroedinger it'd be a lot more alert... and keep out of enclosed spaces with hammers!

    4. Jim Noeth 1
      Happy

      Labradoodles and quantum physics

      @Simon Neill - But at least when teaching labradoodles Quantum Physics, they do learn it (but, they also don't at the same time). The real problem with this situation, though, is that they might chase Schroedinger's (US Spelling) cat.

    5. Dave Bell

      Apparently, that sort of thing is hard.

      Or the teaching/explanation is dreadful.

      People vary. I hit a brick wall on math somewhere about the details of calculus, but username/password is right down at the level of basic literacy and numeracy.

    6. jake Silver badge

      @Simon Neill

      "As well teach a labradoodle quantum physics."

      Actually, so-called "designer dogs" are a symptom of the problem at hand. There are no magic pills, people. It takes work to get anything useful done ...

  4. Valerion

    Professional Software Engineering?

    But they wouldn't be teaching professional software engineering, in the same way that they don't teach civil engineering in high school either.

    Learning the basics - variables, functions, maybe some OO - to put together a simple (memory-managed!) app would not need a teacher with a degree in Computer Science.

    I got taught BBC-BASIC and then Q-BASIC. It sparked the interest and led to me now being a "professional software engineer". The learning how to do it properly and professionally bit came later, and will be on-going for the rest of my career.

    1. Anonymous Coward
      Thumb Down

      I disagree

      If you want to teach math above a basic level, the consensus is that you must be a mathematics graduate. Why is it acceptable to compromise in Computer Science/Informatics ?

      1. Naughtyhorse

        not so sure...

        i think these days all you need in the UK to teach maths is to not be a paedophile....

        or at least not a convicted one at least

      2. Ross 7

        Re: I disagree

        You need* a qualification in the subject that you are teaching that is one level higher than the level you are teaching at. So, if you are teaching at GCSE you need an A-Level, if you're teaching at A-Level you need a degree.

        If you're talking about teaching KS4 or lower kids coding then you really don't need a degree in it. In fact it could well end up being counterproductive ("omg how can you not know what double dereferencing is?!!?!?? Are you 12 or something? Ah, ok fair do's")

        ---

        * in theory of course. My lass teaches A-Level psychology and has....ummm... no qualifications in that subject. She does of course have a degree in her "proper" subject.

  5. James Hughes 1

    Whilst I agree that teachers will need more training to implement the curriculum, I take task with a couple of the quotes in the article.

    "Professional software engineering is as big a step up from school programming as civil engineering is from Lego."

    Well, yes, of course it is, but the problem is that the children in school DON’T DO PROGRAMMING AT ALL. (mostly) – there is no school programming to step up from. It’s all teaching MS Word and Excel (which also needs to be done, but preferably with LibreOffice as well)

    "For example, all the kids are running around with iPods and iPhones, why don't they get them to write applications for them? They need to inspire students."

    Well, HIS children might be running around with iPods and iPhones (overpaid father trying to make up for not being at home with his children?), but as generalisations go, that’s pretty sweeping.

  6. Alain Moran
    Mushroom

    Just lock them in the room with a reference manual

    Why not use the same method us fogies used to learn to code when we were 7!

    Give them some magazines with listings of games in them that they can type in ... the listings inevitably have bugs in them requiring the students to either debug the code, or admit to having wasted hours on typing the stupid thing in!

    Give them a reference manual and let them sort it out for themselves - they will be better coders for it!

    1. James Hughes 1

      Except they cannot use the school PC's to do all that stuff, because they might break them. These machines don't even have compilers on.

      Biased, but Raspberry Pi.

      1. Seventh of 7th
        Thumb Up

        @ James Hughes 1

        "Biased, but Raspberry Pi."

        Well worth a mention. The project seems to be shaping up pretty well and should free up some budget to re-skill said teachers.

    2. damocles

      Indeed

      Give them an Acorn Electron and all 52 issues of Input magazine (complete with the errata, just to be evil) and once they've mastered that, they can move on to an Amiga 500 with a copy of Devpack and the big blue bible.

      Happy days....

      1. Graham Marsden

        Or do like I did...

        ... I learned 6502 assembler on the BBC Micro by initially using Exmon to hack games for infinite lives!

        (Of course these days kids don't play vertically/ horizontally scrolling shoot-em-ups, don't know they're born, mutter, mutter...)

    3. Evil Auditor Silver badge
      Thumb Up

      Re reference manual

      Yes, but how do you expect kids with the attention span of a mayfly to cope with a reference manual?

      1. This post has been deleted by its author

  7. Inachu
    Devil

    those teachers

    Those so called teachers many times who teach kids from books many times have never used a computer.

    Those same teachers try to get a secretary position and one was hired and never used a mouse. Because she did not know how to use a mouse she was fired.

  8. Ru
    Mushroom

    What school programming?

    "Professional software engineering is as big a step up from school programming as civil engineering is from Lego."

    Wrong.

    You can draw parallels between lego and civil engineering. You can do robotics with lego. You can make mechanisms with lego. Hell, you can even do 'art' with lego.

    School ICT teaches you how to use Word. Whilst I'm sure that's a super useful skill, it is almost totally and utterly unrelated to software engineering or computer science in any way, shape or form. Seriously. It isn't even as applicable as learning how to type. There's a closer relationship between learning handwriting and journalism.

    I'm practically incoherent with rage; remaining civil at this point is surprisingly challenging. ICT as currently taught is almost entirely worthless, except as a way to discourage people from choosing computer science type courses or careers in future.

    1. Cyberneticist

      I must agree....

      I teach A-Level ICT alongside BTEC computing (to different groups of students) - A-Level ICT has no relevance at all in learning to become a computing professional. It doesn't involve programming, and is more about "Problem solving in the Digital World" and identifying what types of network existed before we moved on to our bus TCP/IP Ethernet connections. I cannot really see the point of offering A-Level ICT (I know, the irony!) and yet my BTEC computing students go on to university and find that everything they learn in their first year they have already covered as a matter of course.

      Students do GCSE ICT / DIDA and learn about how to use computers. They do A-Level ICT expecting the same, and are short-changed with a hodge-podge of some technical but mostly flowery talk surrounding computers and their place in society, that has no genuine use in the real world. Others do BTEC computing and are shocked to find a world of maths, binary, coding and network management, when they just wanted to format some letters.

      Teach ICT right at a lower level - show people what the technical looks like, rather than just how to use office. You would end up with a lot less confused students taking IT courses because they enjoy playing on facebook.

      1. Inachu
        Thumb Up

        ITEC -B-TEC

        Those lofty techie sounding abriviations sounds remarkable wow!

        Sounds like you must be ceritified almost to pronounce them.

        I have zero certification at all and I am in the IT field 20 years and I do find problem solving networks and pc problems be they any flavor windows,switch,hub.

        Besides programming is super easy. its just a bunch of simple tiny programs that when taking a look back looks like a complex program when you see the completed code. Same goes for electronics.... jus a bunch of simple tiny circuts combined to make a really big complex circut.

        It just depends on knowing that and looking at the tiny picture.... Newbies who look at the big picture usually get intimidated and leave that profession all together.

    2. CollyWolly

      Yes Word may be unrelated to software engineering but I assume they still teach Shakespeare as "English" - with a translation on the opposite page.

  9. Stewart Knight
    FAIL

    Garbidge in, Garbidge out

    Wow, I must be unusual, because I have two IT degrees and I'm training to be a teacher. Funny that, because everyone else on my PGCE teacher training also had IT degrees!

    And why not teach students to make apps for iphone; because Apple charges a small fortune, and you can only do it on an expensive Mac computer.

    It's not a good policy, and there isn't the funding either. These are more "real" reasons why.

    Also, how can students learn to program without being administrators of the computer, and the last thing you want is a bunch of 15 year old boys with administrator level rights!!!

    1. Eponymous Cowherd
      Thumb Down

      Huh?

      ***"Also, how can students learn to program without being administrators of the computer,"***

      Huh? You claim 2 IT degrees and ask that?

      Not degrees relating to system administration or software engineering, then?

    2. Anonymous Coward
      Anonymous Coward

      F*** me.

      You are training to be a teacher? Does that include learning to spell Garbage?

      My son's old primary school teaching couldn't spell or use proper grammar either.

      I do agree with your other points though.

      E&EO

    3. Uncle Slacky Silver badge
      Headmaster

      "Garbidge"?

      I hope you're not training to be an English teacher...

    4. Uncle Slacky Silver badge
      FAIL

      Admin rights - to program?

      I assume you're thinking of Windows here - I'm pretty sure QuickBasic will run in a DOS window without admin rights.

      Real programmers would of course use an OS with a sensible permission philosophy...

    5. mccp

      "Also, how can students learn to program without being administrators of the computer, and the last thing you want is a bunch of 15 year old boys with administrator level rights!!!"

      The last thing you want anywhere is programmers with elevated rights. I've lost count of the cock ups that have occurred when testing software that will only run with domain admin rights simply because a programmer couldn't be arsed to figure out how to do it properly.

      Our developers are now only about one step up from a standard user on their own desktops and at the same level as a standard user elsewhere.

      1. Anonymous Coward
        Anonymous Coward

        When I moved from IT support to IT production

        they offered me (because I came from support) full admin access on the Windows box I am required to use for work. I flat refused - coming from a *nix background I know that being logged in as admin for day-to-day use is not only unnecessary, but plain crazy!

        Besides, keeping my Windows box running is THEIR job (a job I was happy to finally find a path away from).

    6. TeeCee Gold badge
      Facepalm

      "...I have two IT degrees and I'm training to be a teacher."

      Hmm. You'd think that given the importance of the term "garbage" in the world of IT systems, you might have at least learned how to spell it at some point.

    7. Anonymous Coward
      Anonymous Coward

      Garbidge what?

      spell much?

      1. PBelc

        .

        I thought he had intentionally spelt it wrong to emphasis the statement....

  10. hugh
    Headmaster

    Big Trak

    I bought my four year old (ok, myself) a brand new Big Trak at the weekend.

    Its a very basic introduction to programming (a program is little more than forward 1, left 15, shoot 5 times with one goto per 16 statement program) but its programming nerveless.

    He's got it pretty much figured out already.

    Next stop the trailer for beer delivery then onto Lego Mindworks.

    1. Leigh Brown
      Thumb Up

      Re: Big Trak

      *Massive* attack of nostalgia!

      Where did you get it from?

      1. ThomH

        @Leigh Brown

        There's one in the Window of the Maplin on the north side of Waterloo bridge, so presumably you can buy them at Maplin.

    2. Dan 55 Silver badge

      W00t

      I just searched and found http://www.bigtrakisback.com/ where it says that play.com sell them.

      Now all I need is somewhere to get hold of a Speak & Spell and the tabletop Pac Man game.

  11. -tim

    The few the proud, the geeks?

    I think less than 1 out of 100 people have what it takes to be good programmers based on what I saw from watching multiple hundreds of students. As a teachers aid in an early 80s high school, I could easily tell the ones who were enlightened and the ones that were never going to get it. Most of the good ones were pushed on to other things much like the very few who had the proper skills to operate an electric guitar. Programmers need to understand that computers only move numbers and do simple sums and everything else is just delusions based on that. To use the tool means you have to have an understanding of the annoyingly simple as well as the complex problem at the same time. I don't think 99% of the population is cut out to do that.

    1. James Hughes 1

      So what?

      You still need to find out who that 1% are......and the best place to do that is at school, before they go on a degree course and find out they are hopeless.

    2. Anonymous Coward
      Anonymous Coward

      Whilst I agree there's a certain mindset required to make a career of it

      that's no reason not to teach some basics early on, so that kids can at least discover if they have the aptitude for it. And anyway, if I had to sit through a music class every week then some arty ponce can put up with programming for a bit.

      P.S. I think you also need to add a dash of pedantry, and an incredible patience to accept and correct your own mistakes. Admittedly the latter virtue seems rarer every year.

      As for the quote, yes, balls. Any professional Engineer worth their degree should be capable of some pretty cutting-edge LEGO builds. Now there's a difference between that and kids making haphazard randomly coloured cars with square wheels but then _they're_kids_you_fool. That's how you teach and that's how you learn - you start simple and build on it. Please don't go into teaching, whoever said that, media press tosspot for the IET - you apparently do not have the aptitude for it either.

    3. JimC
      Childcatcher

      teach 'em to think...

      The thing I'd most like the kids coming from school to be able to do is think logically. A complete inability to think logically dooms any attempt to learn to troubleshoot IT problems...

  12. Jeff 11
    Stop

    "Professional software engineering is as big a step up from school programming as civil engineering is from Lego."

    Just as professional genetic research is a big step up from school biology, professional financial trading is from school mathematics and professional journalism is from school English... oh wait, scrap the last one. ;-)

    But I think the guy has missed the point - school isn't about teaching skills to use in professional or commercial contexts. It's about giving kids the basics so that they can pursue their interests in a more focussed way at college and university levels and even then, they usually need a good couple of years of experience on top of that. People who have a Masters in software engineering are very rarely capable of architecting a complex piece of software, because they have no idea about the practical shortcomings of academic methodologies. By all means teach kids about critical thinking and how to implement the solution of problems in simple code, but don't try to run before you can crawl.

  13. ChrisC Silver badge

    Why bring one abbreviation into the shower...

    ...when you can bring three! Or even four, if you include the T in ICT and CDT. Seriously DfE, if you need to abbreviate a term due to a lack of space (and the table appears to have sufficient space in the LH column for this not to be the reason), then have the decency to stick to just one variation, and preferably pick the one that most people would use and recognise.

    Tech - fair enough, don't think you'd find many people who wouldn't know what this expands to

    Technlgy - yuk, looks like the o key is broken

    Tech'ogy - yuk, just looks wrong.

  14. Anonymous Coward
    Anonymous Coward

    what's programming?

    IT experts I work with don't really need to program either - just copy/paste, document, and write mails to India.

    Mind you, even great poets only copy/paste intelligently, as eloquently documented in 1927: http://www.independent.co.uk/arts-entertainment/books/reviews/book-of-a-lifetime-the-road-to-xanadu-john-livingston-lowes-789383.html.

    You might as well teach kids to apply intelligence in a mind-numbing world - and "word" will do fine for that.

    1. Anonymous Coward
      Stop

      That will only do for accounting software instance #9873498

      Everything else will need some kind of engineering work on algorithms and data structures. Some call that UML or OOA/D...

  15. Anonymous Coward
    Anonymous Coward

    Attitude vs. Aptitude

    Not everyone has what it takes to program. Its a state of mind more than anything and you can' t teach that, really. It either comes or it doesn't.

    All really good programmers I've ever met are self-taught in response to having to figure out how to do it right for themselves for something work related. Usually. They realised they had a flair and a turn of mind for it.

    An organised methodical mindset with a feel for problem solving generally -- those types make the best engineers and programmers. It can't really be taught, just encouraged and have some formal structure placed around it.

    1. Anonymous Coward
      Stop

      Oh really ?

      Did these folks invent compiler theory on their own ? How to their scanners and parsers look like ? Can they state big-O-complexity for their algorithms ?

      1. Anonymous Coward
        Anonymous Coward

        Yes, actually

        "Did these folks invent compiler theory on their own ?"

        The first compiler was invented by Grace Murray Hopper in 1952. The first complete compiler was for FORTRAN and was developed by John Baccus in around '57. These were largely the work of one or two people which became ratified as standards.

        Most software languages are the product of just one or two people -- that gets noticed (or doesn't) and either becomes a standard (or doesn't).

        All compiler theory is the direct descendant of wartime linguistics research in code-breaking and very pre-war research in symbolic logic. Again, all the work of just a few now very famous but largely, at the time, unknown and unsung geniuses.

        Most good stuff is still the work of just one or two people with peculiar and generally ignored interests and obsessions -- until a use is found for it.

  16. Daniel Barnes

    I can't see this working unless the kids actually care about programming and do it as a separate course rather than rolled into a generic IT class.

    When I was doing GNVQ IT at school (admittedly a few years ago now) we had 5 lessons a week, 1 lesson was taken by a maths teacher who had a free period and might have had a computer at home, which qualified him to take the class, 2 lessons by a mid-late 20's lady who had a nice pair-sonality and seemed fixated on everything being done in powerpoint presentation format.

    The other 2 lessons were taken by someone who actually knew what he was talking about, ran the school network and smelled like tobacco and coffee (he also had a more than passing resemblance to Penfold from dangermouse) he was a great guy.

    Unfortunately he had to dumb down the programming section of the course for the normal, non-geeky, students who had a hard time finding the @ key. You know the kind, the one's that type by floating their index finger randomly around above the keyboard until they find the letter they want. We ended up doing DOS batch files as a form of programming!

    1. Dave Bell

      DOS Batch Files fell wll short of Unix shell scripting, but they can be used to do some fancy stuff. Old-time Demon customers, who used the KA9Q-based DOS package, might recall the demon.bat file.

      I don't recall any clear explanations of the overall processes in any MS-DOS manual, it wasn't even presented as a coherent set of commands, but there was a useful programming language there.

      As for typing, there's nothing new in experienced people saying it should be properly taught in schools. My great-uncle Albert was saying much the same in the 1920s.

  17. Anonymous Coward
    Unhappy

    Attempt at a CS curriculum

    A) Computer Architecture (RAM, Processor, Display, network I/F, keyboard, sound card)

    B) Writing a simple assembly program as a demo of A)

    C) Learning a 3rd-Generation Language like Pascal or C#

    D) Algorithms and Data Structures: Implementing some simple math problems in the language of C)

    A to D would already span (approx) 8th to 13th class in the German system, as pupils need a solid grasp of what variables and formulas are.

    After that I suggest

    D2) Extension of D): Object-Oriented Analysis and Design

    E) compilers

    F) operating system internals (MMUs, multiprocessing, mutexes, queues)

    G) Big-O notation and analysis

    H) Relational database theory and application

    J) Functional Languages (LISP et al) and Logic Languages (Prolog etc)

    K) Ciphers

    L) GUI Programming (event programming and using large libraries)

    As a matter of fact the number of dog races is probably smaller than the number of CS curriculae. Before this sort of discussion is started, there should be at least a minimal agreement of What Comouter Science Is ...

  18. Richard 12 Silver badge
    Boffin

    The "ICT degree" statistic is incredibly misleading

    My mum has a degree in IT, and she is the first to admit that it's utterly useless now.

    The punched cards her projects were written on were useful for a while, but we have long since used them all to start fires once they were no good as scrap card for paper planes.

    That said, I do applaud the effort to get kids writing programs. Like many commentards, I first used BBC Basic, QBASIC and MPASM at school, then C, MPASM and HLSL at University.

    Now I mostly write in Delphi and C++ with Qt.

    Of the languages I've experience of, I actually think that Delphi is probably the best one to teach kids, as it was originally intended for use with databases and that's another core concept that we really should be teaching.

    Plus it compiles *extremely* fast and does have proper pointers while still making it fairly hard to shoot yourself in the foot.

    1. Running scared

      Skills not tools.

      "My mum has a degree in IT, and she is the first to admit that it's utterly useless now."

      I did a straight Computer Science degree back in 1987 - their approach was far from what I expected - even to the point where I was initially dissapointed; I don't recall having a single lesson on any partucular language (although we were expected to deliver our code projects in Pascal in the first year), with all the focus being placed on usage of VDM (Vienna Development Method); without exception, every course about 'how to think'.

      I'll confess that my 'skills' in Pascal, 68000 assembly, C and god knows what else I can't even remember the names of are now 'useless', but the thought processes and analytical approach still form part of my everyday repetoire.

      A good ICT degree, then as now, is one that arms you with the right tools by teaching you how to think critically and analytically; a course on how to program for the latest smartphone should not be mistaken for the same thing, but one does not proclude the other.

  19. Charles Manning

    Calm down people....

    The Honourable Minister is clearly wrong, but their are still benefits in exposing kids to programming.

    In many universities first year computer science has one of the highest drop out/ failure rates of all courses. This tends to be for two reasons:

    (1): In many places, this is their first exposure to programming. Many kids turn up at university under the illusion that because they like games and know how to use Facebook they are computer geniuses and are destined to be great computer scientists. Many are shocked to find that they actually have no aptitude for programming and owning an iPad gives you no advantage.

    (2): Very few kids actually get exposed to programming and can find out whether or not they have the aptitude. Mathematics is typically used as a measure for possible programming aptitude but that's pretty broken. Until they either do well or crash out at university they get no inkling of how good they might be.

    As a result most first year university programs will show a bimodal distribution of those that "get it" and pass with 70+ percent and those that don't and fail with 40% or less.

    But programming aptitude cannot be taught. Those ICT teachers with skills in mouse wiggling and setting fonts in Word processors are unlikely to be able to grasp programming sufficiently to teach it.

    Unfortunately government ministers don't understand this distinction.

  20. Marcus Fil
    Flame

    Where do I start?

    LINE 1: Drop the C.. people in the real world work in IT not ICT - unless you are teaching the kids how to build RF TX/RX and free space laser links you ain't in Comms.

    LINE 2: The next t**cher to say a byte is 8 bits ...and leaves it at that... loses the gift of sight courtesy of my multi-tool. Know you history - KNOW YOUR SUBJECT!!

    LINE 3: Data ARE not IS ...guard your vitals I still have my multi-tool out!

    LINE 4: Oh sod it .. learn Chinese, this country is too far gone.

  21. Qu Dawei
    Headmaster

    Parallels in another country

    I think the problem is similar to the one I face teaching BTEC people at universities in China IT topics: they all know how to use Dreamweaver to knock up a quick webpage, but when they have to sort something out in html, css, javascript, or php, they haven't a clue.

    in UK schools, they need to concentrate on the very basics: reading, writing, arithmetic, and critical thinking. Then there needs to be a streamed approach to IT teaching: For some, using software like Word and Excel (though open-source could be used more, and Powerpoint and Dreamweaver-like packages might also be considered here, though they are less obvious good choices). For some students, this will be all they can cope with. But they need to assess and stream the students so that those who might be able to cope go onto such things like ML languages, html, css, and the more formal programming languages.

    One key to this is good streaming and abandoning the idea that mixed-ability classes are always the default option. The other key is to get an adequate number of well-trained teachers who know the topics well themselves. As some others stated, if IT topics are to be taken seriously in schools, then there should be a requirement to have a *properly qualified teacher* teaching the subjects they have shown they have some expertise and competence in themselves. A useful default way of determining this is to adopt what is done with other subjects: teachers must have degrees in the subjects they teach in middle and high schools, and so the micro-management of schools which drives potential teachers away must be ended.

  22. sayhi2yourmom4me

    Doomed to Fail

    This can never work. Here's why. If I were a school teacher, and I learned how to write code, I would immediately quit being a school teacher and get a job writing code. I don't know how it is in the UK though.

  23. bazza Silver badge

    Tuppence ha'penny's worth

    About the only useful thing they taught on O level 'Computer Studies' was some veeery basic architectural stuff, and the fact that computers could be programmed. The rest of it was up to us kids really. There were those who were self starters who went and taught themselves a bit of BASIC, maybe Pascal, etc, mostly on Spectrums and the few PCs that were around. Then there were those who just weren't interested. I left school knowing C quite well, which in those days was pretty much the most useful thing you could know!

    For those of use who were interested, it worked just fine. Electronics Engineering at university added some polish (i.e. learnt architectures properly), but the whole point of university is that it is certainly up to one's self to learn.

  24. Anonymous Coward
    Facepalm

    Internet is the new teacher.

    Just point the children at the internet (not a sanitised, websensed version) and if they're interested in a subject, they will find out about it. Job done.

    That's how it works in the real world, post formal education. Who is to say that the same concept can't work in the educational 9-5 too? Give them an hour or two a week to research and find out about whatever they want.

    1. Anonymous Coward
      Anonymous Coward

      As if that'll happen

      Going by my experience of working in schools then that hour or two of research would instead be spent trying to play shitty flash games/listen to tedious gangsta rap/find porn/waste time on habbo or trying to find an IM site that is accessible. About the only group of kids I've encountered who would actually bother researching things instead of trying to piss their time away would be those at the special needs school I worked in.

  25. Anonymous Coward
    Anonymous Coward

    pointless.

    This seems to be pointless to me, i learned about computers because i was interested in them. I didn't have to be coaxed into doing it. I think this is just a cop out for putting more of a focus on getting kids to think about what they are interested in and what they might like to do. Then work on the key skills to help them achieve this aim. Coaxing children into a subject doesn't gaurentee they'll stick with it, afterall given the profit margin of most iFail apps (or Android for that matter) you won't be making anything from them in the future! Stepping from their code base to work with an actual business level system is a massive jump and i'd question the value of being able to write apps on phones and the suchlikes in comparison.

    I learned programming the right way around in my opinion, how a computer works first and then how to program for it. I know people who learned the other way and they just aren't as good. With this in mind i don't see how this would be valuable to add to their curriculum in place of other more important generalised key skills, as has been said already.

  26. Jay 2

    Way back in the mists of time I went from A Level Computing writing BASIC/COMAL on a BBC Master to the 1st year of a CompSci degree writing Modula-2 (as the intro 3GL) on a Sun Sparc 5. I must say I found the jump a bit challenging and aside from a bit of Eiffel and VB (yes I know) I never really recovered. Which may explain why I'm now a sys admin, though every now and again I do get comments from devs asking if I used to code foir a living.

    So to make the jump out of school, I think not only do you have to have kids interested in such things, but with a decent mindset/view and also having being taught a suitable programming language.

  27. Anonymous Coward
    Anonymous Coward

    Problem solving

    Schools are to educate, not train

    Education covers basics such as the 3 Rs, basic science (esp. biology as we seem good at forgetting we and the world are "biological"), introduction to literature, history, geography and a foreign language, with a lot of emphasis on problem solving and understanding. This equips children for an ever changing working and LIVING environment and gives them some sense of their place in the world, culture and society, with the open mindedness, one hopes, to adapt and learn.

    Training is directed towards a particular career, job or skill. We do not demand that children learn dentistry, hair cutting, engine maintenance or house building. We do want them to possess a good basic education that prepares them for training and gives them the ability to choose and change as the world changes. Just a thought, how much training did schools give Newton, Darwin, Babbage, Ada Lovelace, Mendel, da Vinci, Brunel, Turing, Frisch and so many others in the fields in which they made their names? But they did generally have a d-d good basic education, often consisting mainly of the classics being drummed into them, along with the basics of the 3 Rs and a foreign language, though one must say that what they considered "basic" arithmetic would probably flummox the modern school child.

    I am, certainly, a hardened sceptic: but I have met some clever people with some form of computing degree; very few of them (and none whom I work with now) seem to have the discipline to work with others or to follow basic engineering processes, such as a proper analysis and design, properly (or at all) structure code in any language or design and run adequate testing, understand, submit their ccde/documents to review or be prepared to do reviews. Of the younger ones and most of the offshore staff, anything other than a Windows click-and drag interface has got them frightened to death. If they do write a shell script, for instance, it tends to be a cut and paste from their typing at a command prompt.

    The best engineers I have worked with have been anthropologists, a couple of biologists and quantum chemists, a classics scholar and a dropped-out medic.. These are adaptable, open and understand the why and how of engineering and the needs of end users.

    Computer course graduates seem to be stuck on whatever their lecturers told them, be unaware of the world outside Windows ar a Linux GUI, stick with Java come what may, be semi-literate and have no idea about end users or even of the poor sods who have to run the systems. (Confession: I hold a higher degree in something perilously close to "informatics").

    No, leave the kids alone. Educate them for life in a changing world where the ability to solve problems, adapt to change in job or environment and have a healthy perspective on one's place, culturally and socially, are enormous and rare strengths. Particular skills can be learned as they become necessary, given the strong foundation. I would even go so far as to say, ban computers from schools. Teach the children self reliance and good judgement.

  28. Richard Cranium

    CSS or Flash

    My lad was in deep s**t when he made navigation buttons for his ICT website using CSS instead of Flash - the teacher didn't understand CSS. Apart from that it was largely learning how to use MS Office - but not at a very deep level.

    An earlier generation of IT developers was largely self-taught on the BBC micro. What's required isn't teaching but the availability of an easy to use toolkit that delivers interesting results fairly easily but has scope to dig deeper (like transitioning from BBC Basic to inserting bits of machine code).

    Successful teaching is stimulating a desire to know more. Stick the teacher with a strictly defined curriculum and learning goals and the task of "inspiring" goes out of the window.

  29. SpaMster
    Headmaster

    The main problem i found with school ICT classes was we (the pupils) knew more about the subjects than the teachers did at the time. We had to do a module on visual basic, I’d finished the entire module at the end of the first class, they literally gave us 2 months to write a program that pulled data from a text document and displayed it on screen. If you don’t challenge yourself the schools sure as hell wont.

  30. boothamshaw

    I'm a biology teacher, but about ten years back I wound up doing a couple of years teaching AS and A2 ICT, because I was well, a bit geeky and had my own memory stick (70MB I think).

    It was the most sterile, pointless and bafflingly arbitrary educational experience I’ve ever had (and I had to introduce “key skills” to my school, so I know what I’m on about). I found myself recounting the exciting role played by Winchester discs in modern back-up regimes, and getting the students to make bullet-point lists of things they could say about ergonomic office furniture. I’m happy to say we’ve ditched the whole thing now. Maybe it is important to teach programming, maybe not. It would have to be more engaging than the tripe I was required to serve up. Based on my own experiences, home plumbing, wiring your own mains electrics, how to use a chainsaw and how to replace rotten bits of window-frame would have been far more life-enhancing.

    1. Mr Young
      Happy

      Wait a minute???

      "how to use a chainsaw" - That'll be useful in times of zombie invasions as well!

  31. All names Taken
    Paris Hilton

    Eeee-hee-hee!

    I wonder if UK further ed courses in web site design have moved on from HTML 1?

  32. Dug Stokes
    WTF?

    Sorry, what? Didn't The Register recently report that degrees were unnecessary for Computing positions?

    Now claiming that teaching staff can't possible know how to teach programming without having a degree?

    What tosh.

    I'm a bit bitter; having taught programming at a secondary school in after school clubs. Teaching staff only taught ICT, despite there being a lot of enthusiasm to do more.

This topic is closed for new posts.

Other stories you might like