Fixing Over a Decade of Missing Computer Programming Education In the UK
For around a decade programming was not part of the computer curriculum in the U.K.. Through a lot of hard work from advocates and the industry this will soon change, but a large skills gap still exists. Tim Gurney is just one of many working on closing that gap. His Coding in Schools initiative aims to "work with schools and students and inspire the next generation of computer programmers and software engineers by creating and spearheading schools based programming clubs." I recently sat down with Tim to talk about who's working on the problem and what yet needs to be done. Read below to see what he's doing to change the state of things.
samzenpus: Could you give us a little background about you and your project?
Tim: Yeah. My background, I spent the last 16 years working as a professional system administrator and software engineer. I've worked in many different arenas. I worked in research and development, and education. Most recently I worked in government, and military, most recently within an ISP here in the U.K.
In the last couple years I started my own business called Wolf Software. Out of that came along the coding in schools initiative. The big problem that's been identified, at least in the U.K., is there is a big skills gap for programmers. Something we noticed when trying to recruit software engineers is the younger end of the industry, the people coming out of University, or the people who have been out of University two or three years seem to have little or no real exposure to programming and programming techniques.
The U.K. government changed the curriculum around 12 years ago and removed programming from the computing curriculum. They're only recently bringing it back. It's actually coming back at the start of this academic year in September. We found that most the schools are unprepared. Most of the teaching staff is unprepared. The students are unprepared to take on this new set of requirements, one of which is programming.
So our idea is to work with schools to build programming clubs out of hours to give the students who want to learn more and more detail on programming and what you can do with it, an opportunity to do that. So that's the idea in a nutshell.
samzenpus: Why was programming taken out of the curriculum? Was it budget cuts?
Tim: I don't actually know the justification. They basically removed computer science and computer studies, and brought in information communication technology, or, as I call it, secretarial skills. They basically removed proper computer studies, and they were teaching them applications as opposed to computing and programming and operating systems. I'm not aware of the full reasoning or justification. It was something that was done under the Labor government.
A lot of people in the industry have been lobbying the government for many, many years to bring back proper computer science, proper computer studies. And that's now been done. That starts at the start of this academic year.
samzenpus: What ages does your program cover?
Tim: Our aim is to work primarily with 11 to 16 year olds. There's another group in the U.K. called Code Club and they work with primary school children up to the age of 11. So what we're looking to do is work alongside them. Where they've taught the children basic principles, and they played around with software like Scratch and a few of the other applications that let them get an idea of how to build games and basic software, we will then come in pre-GCSE, so around 11 to 13 to start with, and introduce them to actual programming.
So we'll be looking at things like PHP, Python, Ruby, proper actual languages where they'll be writing the code, and then working with the schools and the students through the GCSE years of 13 through 16.
samzenpus: How long does the program last? Is it a whole year? Or is it broken up into semesters?
Tim: We're breaking it up into the semester concept. What we'll do is, there'll be an initial three or four week mini course, which will give them an introduction to programming principles in general. So we'll be covering things like, what are integers, what are strings, what are variables, what are if statements, conditional logic, and things like that; just the basic grounding of it.
And then what we're aiming to do is create a number of optional courses. So they could then do a one semester course in PHP or Perl or Python. So we'll create all of these different, ten week long courses, the students can then opt in to do whatever ones they want to. So we could be in a situation where on half of the club is doing Perl and the other half is doing PHP.
So it's more a case of inspiring the kids to actually program, and then allowing them to pick what languages and what direction they want that programming to go into. We're talking to a group at the moment that may be able to help us develop a programming semester for mobile development for Apple and Android devices. We're also looking at developing a short course for building and looking after Raspberry pi and what software development we can do with one of those.
samzenpus: Who does the work with the kids? Do you try to teach the school staff these skills?
Tim: It's a bit of both. With the first two or three pilot schools that we have, we work with the staff, but we actually attend the club as well. Primarily myself, I attend a lot of the clubs. So that they can actually ask questions which the teachers, in the short term, may not have an answer for. In the longer term, as it grows, obviously that's not going to be sustainable. I can't attend every club across the country.
So the idea is to engage with other small businesses and other software companies around the U.K. and get them to get involved in their local area under the coding in schools banner. And try and get them to attend at least once a month to be there as an expert, as it were, in programming. So that they've always got someone they can go to.
We're also building a set of discussion forums, things like that, online. So if the kids have got questions they can post them into the forum. And hopefully kids in other schools will be able to answer. And we'll start getting them to build their own software community.
We have the open source community that we're involved in. If we can build that sort of community feel across the country, where the kids are actually engaging with each other and potentially working on projects across the schools, that would be the ultimate aim.
samzenpus: One of the things I read on your website is that you focus a lot on how to get girls interested in computer science. Do you specifically target female students?
Tim: We don't specifically target them. What we have is we have a couple of undergraduates who work with us who are female students. They, themselves, have come to us saying that they were never really given an opportunity. They were never pushed and shown what you can do with IT. It's a common problem in the U.K., where the student uptake is probably about 80% male.
So one of the things that we want to do, at least with the staff, is say to them that when people are talking about joining the club, make sure you ask the girls if it's something they want to do. Don't wait for them to come to you, because most of the time they won't. You need to almost engage them first.
So as a club we won't be going directly to the students. The staff will approach the students. But we're just saying to them, make sure that the girls are aware that this is something that they can do. It's not a boring thing. Once they have learned the basics they can build whatever they want to build. There are some very powerful women in IT that, hopefully, we can then use as role models.
samzenpus: Do the kids get school credit for this? Or is it mostly just so that they can learn these skills?
Tim: At the moment it is purely to gain new skills and to gain new understanding and hopefully something of interest to them. One of the longer term aims, it will take a number of years, is we would like to work with people like Computing at School and some of the others, to actually have this become an accredited course. So if they picked, say, three of the different modules, and they got graded on a certain level in those, that would then count towards their final examination. But at the moment it's not in a state to do that.
samzenpus: The world economic state being what it is, a lot of education programs are being cut. Not just in the U.K., but all over. Where do you see programs like yours fitting into the future of education?
Tim: I think they are there to facilitate education. If we can get businesses and other people around the country realizing that the new students that are there are going to be their employees in 10 years' time, then they'll see that as a reason to give back. One of the things that started our thinking was if we don't start teaching the younger people now in 10 years' time there won't be any programmers to do the work.
So hopefully they'll see that as a way of giving back, not only to the industry as a whole, but also to their local communities to help out the schools. There are a lot of parents that we've spoken to, some of which work in IT, that have come along and said, "Well, you know, this is good for my kids. It's good for their school. How can we help?" So we see it working, hopefully, alongside the set educational system. But to give enhancement and opportunities to those that want to take it outside of school.
samzenpus: Have you talked to anyone in the government, about getting these programs in schools? Or do you think you're better served working with the schools directly?
Tim: I think in the short term, we're better served just talking directly to the schools. Once we can build up sufficient momentum, then we actually have something that we can take back to the local educational authorities, or to the government itself, and say, "Look. We've got 20% of all the schools in the U.K. onboard with this. This is something that you should be doing, but we're doing it. Why don't you help us?"
At the moment we don't quite have enough traction to do that. But we are talking and working with some bigger organization like, say, Computing at School, who have four thousand, five hundred members at schools across the country. So we're working with them. It's something they see as a gap. That's why we're working with them, because we fill a niche that they want to fill.
The aim, eventually, is for all of the groups like us, Coding in Schools, Code Academy, Code Club, and all these other different groups to eventually come together and hopefully form a national initiative which will cover all of the age groups, in and out of school, which will give us a very strong position, then, to take to the government and say, "This is something that needs to be done from a governmental level."
samzenpus: Is there anything else you're working on now?
Tim: We've got two or three pilot schools that we're starting now. We've got the first summer schools being planned. We're actually going to do a summer school this year. Because the course is starting in September, the new students are taking it as an option, and the teachers really don't quite know what they are doing yet.
So we put together a week long summer school to work with the two or three pilot schools and the staff to work with the students. Just so they can get an idea of what it is that is coming. So that's quite an important one.
With funding being cut for educational stuff all over the place, one of the things we're trying to do at the moment is to raise funding via either donations or sponsorship. I've talked to Google, and Microsoft, and some of the major players in the market that are software oriented, to see if we can get some donations or sponsorship from them, because it's them that are going to benefit, obviously in the long term. I think that's everything.
Tim: Yeah. My background, I spent the last 16 years working as a professional system administrator and software engineer. I've worked in many different arenas. I worked in research and development, and education. Most recently I worked in government, and military, most recently within an ISP here in the U.K.
In the last couple years I started my own business called Wolf Software. Out of that came along the coding in schools initiative. The big problem that's been identified, at least in the U.K., is there is a big skills gap for programmers. Something we noticed when trying to recruit software engineers is the younger end of the industry, the people coming out of University, or the people who have been out of University two or three years seem to have little or no real exposure to programming and programming techniques.
The U.K. government changed the curriculum around 12 years ago and removed programming from the computing curriculum. They're only recently bringing it back. It's actually coming back at the start of this academic year in September. We found that most the schools are unprepared. Most of the teaching staff is unprepared. The students are unprepared to take on this new set of requirements, one of which is programming.
So our idea is to work with schools to build programming clubs out of hours to give the students who want to learn more and more detail on programming and what you can do with it, an opportunity to do that. So that's the idea in a nutshell.
samzenpus: Why was programming taken out of the curriculum? Was it budget cuts?
Tim: I don't actually know the justification. They basically removed computer science and computer studies, and brought in information communication technology, or, as I call it, secretarial skills. They basically removed proper computer studies, and they were teaching them applications as opposed to computing and programming and operating systems. I'm not aware of the full reasoning or justification. It was something that was done under the Labor government.
A lot of people in the industry have been lobbying the government for many, many years to bring back proper computer science, proper computer studies. And that's now been done. That starts at the start of this academic year.
samzenpus: What ages does your program cover?
Tim: Our aim is to work primarily with 11 to 16 year olds. There's another group in the U.K. called Code Club and they work with primary school children up to the age of 11. So what we're looking to do is work alongside them. Where they've taught the children basic principles, and they played around with software like Scratch and a few of the other applications that let them get an idea of how to build games and basic software, we will then come in pre-GCSE, so around 11 to 13 to start with, and introduce them to actual programming.
So we'll be looking at things like PHP, Python, Ruby, proper actual languages where they'll be writing the code, and then working with the schools and the students through the GCSE years of 13 through 16.
samzenpus: How long does the program last? Is it a whole year? Or is it broken up into semesters?
Tim: We're breaking it up into the semester concept. What we'll do is, there'll be an initial three or four week mini course, which will give them an introduction to programming principles in general. So we'll be covering things like, what are integers, what are strings, what are variables, what are if statements, conditional logic, and things like that; just the basic grounding of it.
And then what we're aiming to do is create a number of optional courses. So they could then do a one semester course in PHP or Perl or Python. So we'll create all of these different, ten week long courses, the students can then opt in to do whatever ones they want to. So we could be in a situation where on half of the club is doing Perl and the other half is doing PHP.
So it's more a case of inspiring the kids to actually program, and then allowing them to pick what languages and what direction they want that programming to go into. We're talking to a group at the moment that may be able to help us develop a programming semester for mobile development for Apple and Android devices. We're also looking at developing a short course for building and looking after Raspberry pi and what software development we can do with one of those.
samzenpus: Who does the work with the kids? Do you try to teach the school staff these skills?
Tim: It's a bit of both. With the first two or three pilot schools that we have, we work with the staff, but we actually attend the club as well. Primarily myself, I attend a lot of the clubs. So that they can actually ask questions which the teachers, in the short term, may not have an answer for. In the longer term, as it grows, obviously that's not going to be sustainable. I can't attend every club across the country.
So the idea is to engage with other small businesses and other software companies around the U.K. and get them to get involved in their local area under the coding in schools banner. And try and get them to attend at least once a month to be there as an expert, as it were, in programming. So that they've always got someone they can go to.
We're also building a set of discussion forums, things like that, online. So if the kids have got questions they can post them into the forum. And hopefully kids in other schools will be able to answer. And we'll start getting them to build their own software community.
We have the open source community that we're involved in. If we can build that sort of community feel across the country, where the kids are actually engaging with each other and potentially working on projects across the schools, that would be the ultimate aim.
samzenpus: One of the things I read on your website is that you focus a lot on how to get girls interested in computer science. Do you specifically target female students?
Tim: We don't specifically target them. What we have is we have a couple of undergraduates who work with us who are female students. They, themselves, have come to us saying that they were never really given an opportunity. They were never pushed and shown what you can do with IT. It's a common problem in the U.K., where the student uptake is probably about 80% male.
So one of the things that we want to do, at least with the staff, is say to them that when people are talking about joining the club, make sure you ask the girls if it's something they want to do. Don't wait for them to come to you, because most of the time they won't. You need to almost engage them first.
So as a club we won't be going directly to the students. The staff will approach the students. But we're just saying to them, make sure that the girls are aware that this is something that they can do. It's not a boring thing. Once they have learned the basics they can build whatever they want to build. There are some very powerful women in IT that, hopefully, we can then use as role models.
samzenpus: Do the kids get school credit for this? Or is it mostly just so that they can learn these skills?
Tim: At the moment it is purely to gain new skills and to gain new understanding and hopefully something of interest to them. One of the longer term aims, it will take a number of years, is we would like to work with people like Computing at School and some of the others, to actually have this become an accredited course. So if they picked, say, three of the different modules, and they got graded on a certain level in those, that would then count towards their final examination. But at the moment it's not in a state to do that.
samzenpus: The world economic state being what it is, a lot of education programs are being cut. Not just in the U.K., but all over. Where do you see programs like yours fitting into the future of education?
Tim: I think they are there to facilitate education. If we can get businesses and other people around the country realizing that the new students that are there are going to be their employees in 10 years' time, then they'll see that as a reason to give back. One of the things that started our thinking was if we don't start teaching the younger people now in 10 years' time there won't be any programmers to do the work.
So hopefully they'll see that as a way of giving back, not only to the industry as a whole, but also to their local communities to help out the schools. There are a lot of parents that we've spoken to, some of which work in IT, that have come along and said, "Well, you know, this is good for my kids. It's good for their school. How can we help?" So we see it working, hopefully, alongside the set educational system. But to give enhancement and opportunities to those that want to take it outside of school.
samzenpus: Have you talked to anyone in the government, about getting these programs in schools? Or do you think you're better served working with the schools directly?
Tim: I think in the short term, we're better served just talking directly to the schools. Once we can build up sufficient momentum, then we actually have something that we can take back to the local educational authorities, or to the government itself, and say, "Look. We've got 20% of all the schools in the U.K. onboard with this. This is something that you should be doing, but we're doing it. Why don't you help us?"
At the moment we don't quite have enough traction to do that. But we are talking and working with some bigger organization like, say, Computing at School, who have four thousand, five hundred members at schools across the country. So we're working with them. It's something they see as a gap. That's why we're working with them, because we fill a niche that they want to fill.
The aim, eventually, is for all of the groups like us, Coding in Schools, Code Academy, Code Club, and all these other different groups to eventually come together and hopefully form a national initiative which will cover all of the age groups, in and out of school, which will give us a very strong position, then, to take to the government and say, "This is something that needs to be done from a governmental level."
samzenpus: Is there anything else you're working on now?
Tim: We've got two or three pilot schools that we're starting now. We've got the first summer schools being planned. We're actually going to do a summer school this year. Because the course is starting in September, the new students are taking it as an option, and the teachers really don't quite know what they are doing yet.
So we put together a week long summer school to work with the two or three pilot schools and the staff to work with the students. Just so they can get an idea of what it is that is coming. So that's quite an important one.
With funding being cut for educational stuff all over the place, one of the things we're trying to do at the moment is to raise funding via either donations or sponsorship. I've talked to Google, and Microsoft, and some of the major players in the market that are software oriented, to see if we can get some donations or sponsorship from them, because it's them that are going to benefit, obviously in the long term. I think that's everything.
Tim Gurney is just one of many working on closing that gap
If they can do it with teeth, they can do it with programming too!
I just hope they do a delightful musical number, perhaps involving chimney sweeps and street urchins, to promote the initiative.
The cow says "Moo." The dog says "Woof." The Timothy says "Thanks, valued customer. We appreciate your input."
Teaching random kids how to program will not result in good programmers. Focus on outreach, self-study is the only way to go.
Has anyone looked at the Code Club books for Python? I'd love to get a decent book for my elementary aged son that teaches programming basics. Not that there's anything wrong with BASICs... ;-)
Programmers are getting higher salaries than we'd like, let's flood the market with cheap labour and drive their income way way down.
Try and say the same about accountants or legal bods, though. Nope, never, can't have people coming into that market with the same skills, it would reduce what we can charge the masses!
I think public education itself here is a major problem. Most children are being force fed knowledge and asked to regurgitate it on command. Forced learning like this doesn't stick very well; That's well-established in psychology. Self-directed learning requires more teacher-pupil involvement and support from the parents, but it results in a much more rounded education.
I'm pretty much self-taught from 5th grade forward on all the primary school subjects; I just needed help with reading and after that I was on my own. I did very poorly in public education, but by the time I was 18, I took my GED and went into college. I can't tell you who the first ten presidents of the United States are, or regurgitate the talking points of War and Peace, but I can tell you why WWII happened, why Hitler had broad public support, show you pictures of him kissing babies, and not just say what happened, but why it happened. I can do basic trigeometry in my head and estimate distances pretty accurately just by looking at objects in real life. I don't just understand science, I practice it in everyday life. I don't just know that "sex is bad" like health class taught you: I volunteer at Planned Parenthood.
Education that a person is involved in doesn't just lead to a better understanding of the world, but also an innate sense of responsibility for that world. And what does any of this have to do with programming?
If I'd stuck to the curriculum shoved down my throat in school, I wouldn't have gotten into computers. I discovered it on my own. Then I taught myself programming. And now, professionally, I very often find myself teaching others how to do the same. And programming, more than many other topics, requires self-directed learning. It doesn't work very well under the existing "force fed" public education system... What you get is bored students who hate computers, and can't design anything much more complicated than counting loops that say "this class sucks 1. this class sucks 2. this class sucks 3. if this class sucks, then this class really sucks."
In the hacker community, the self-taught hacker is often better respected than his academically-shaped peer, and the reason has nothing to do with a disrespect of education, but rather an implicit understanding that you just don't learn as well unless you're interested in the material and follow your own path through it.
#fuckbeta #iamslashdot #dicemustdie
Bring out the RaspberryPis! It is rather easy to neglect that this is there actual intended use...
Anyone want to comment on the connection between this gap, and the low salaries for software developers in London? (I'm basing this on the advertised salary ranges in jobs for London vs. jobs for other cities.)
There are 2 reasons programming was removed:
1) It is difficult which means it isn't easy to mark or get good grades. It was simplified out of the curriculum to boost grades and thus give the appearance of the UK having good IT education.
2) Our government was (and still is) computer illiterate and technophobic (except for spying on us) and saw no value in it.
I don't recall programming at my UK schools as part of core/compulsory curriculum in the 1980's and 1990's. However those who elect to study GCSE and/or A level computer science in middle/high school were required to learn programming as part of the 2 year course and programming project(s) had to be turned in that accounted considerably to the final mark.
A quick Google gives that present GSCE computer programming project is 30% of final mark.
I taught myself programming at home aged ~8 an onward. I took GCSE and A-level computer science at night school, at an earlier than normal age, and in addition to my high-school courses. When I reached (UK) college Physics there was compulsory programming courses and people without skills had to play catch up.
So a decade ago they stopped teaching computer programming in UK schools.
And in the last decade, what... has London stopped being a major Tech Hub? Is there a shortage of good young programmers looking for jobs in London?
The answers to both of those questions is NO. So *my* question is this - if teaching computer programming in schools or not teaching it has no discernable effect, why bother wasting time on lessons on it when they could be devoted to something else?
Well, they had elective programming courses when I was in school...but I already knew how to code. I think I would have been more interested in electronics and microcontroller programming. That's something I'd also like to see more of in schools. The most I learned about electronics in school is that I got to solder together a couple of kits. Didn't learn a damn thing about them except how to solder and read the color codes on resistors.
"We don't need no education..."
... because the vast majority of teachers are unqualified to teach programming. Most schools don't have tech literate teachers, that will change over time but I remember when I was in school. Our 'programming' classes were non-existent.
should be more trades / tech school like and not the system where you stay in the school system for your full like and don't see a lot of real IT / tech work.
If you are going to teach kids Maths, you have to teach them Codes as well, or at least Programs.
I haven't thought of anything clever to put here, but then again most of you haven't either.
In the Uk this is the last thing we need pigeonholing programming as a low skill low pay "trade" Job.
My two comments are make it fun. Basically if you aren't teaching them to make games or something internet related then you are wasting your time. Teaching fundamentals such as linked lists to people who are fundamentally not interested (the vast majority) is just cruel. But if you get them making simple games that get more and more complex then you might have them. Also getting them to do mashups or something like accessing the API of whatever is cool that week (snapchat, etc) might win some hearts and minds.
Years ago I bought a book when learning SQL that blah blah blahed about genealogy. The guy was going to take you through building a genealogy database. So he starts off with a long boring genealogy tutorial teaching terms like matrilineal; boring. Why not keep it simple. Data goes in, data goes out. So keep the classes as fresh as possible. Even twitter APIs might be tool old at this point.
But the next thing is good luck. My daughters are in a pretty typical public school system and no matter how hard the schools try to "Join the computer age" they can barely break out of 1985. A simple example of their "Hot new tech" is that they now have a robodialer that bothers me with great long winded messages that are often not even grade relevant. Have they not heard of email?
So I can see a situation where you set up a bunch of students on Raspberry Pis that can be wiped (literally) in a flash and still end up with the school IT people saying that it isn't an approved OS, that you aren't running the approved software and that according to the rules you must teach the students the only approved language: Pascal.
So for anyone trying to spill a small sampling of the 21st century into their schools, just remember that the school board might be worried about the students sniffing the ether out of your ethernet.
Let Tim Gurney have a look at How To Design Programs, which is free to download and cheap on paper.
It teaches Scheme, which is an easy way to get a toe in the programming door, and you *can* subsequently do really awesome things with it, not just make trivial games.
See http://www.ccs.neu.edu/home/matthias/HtDP2e/
-- hendrik
Want more people in CS, and engineering? Provide good jobs for those people. Stop offshoring like mad. Stop giving the few remaining jobs to lower paid visa workers.
There is a reason, a very good reason, that students are avoiding IT studies.
Noooo - don't fix it! If you do, I won't have anything to do in my retirement years...
The UK already has a plethora of organisations working in this area including, but not limited to, Apps for Good, Young Rewired State, Computing At Schools, Code Club and Digital Makers. If you have time and skills and want to work in this area please don't start yet another organisation - find out how you can bring your enthusiasm to an existing one.
if you have a classroom full of computers wtf do you need the raspberry for?
Some households have chosen to own only locked-down devices, such as iOS devices and video game consoles, whose business model runs counter to exposure to programming. A Raspberry Pi computer that goes home with the student would at least allow the student to complete homework assignments.
Basically if you aren't teaching them to make games or something internet related then you are wasting your time.
When I was in high school, I managed to expose a bunch of classmates to TI-83 graphing calculator programming when I showed them how to load programs that run the formulas seen in unit conversion problems, stoichiometry, and the like. Tie the programming assignments in to the rest of the curriculum and you'll get the point across that computers are tools to automate things.
according to the rules you must teach the students the only approved language: Pascal.
Why can't Free Pascal be recompiled for the Raspberry Pi?
I look at this as a failing of Centralized decisions on Curriculum. If a whole country or a whole region decides on a slate of subjects, classes and goals, they had better get it right (btw... they NEVER do). If these decisions are made at the local level, you get thousands of different possible courses of study. Suppose you have a budding programming prodigy, and the whole country is tied into these (flawed) standards. You have nowhere to go, except outside the system.
Conversely, if City A decides that every kid should grow deep in their understanding of Coal Technology, and City B decides that Algebra and Python are important (with side orders of C++), folks have the option of moving to encourage the little nipper!!
The whole country is enriched as well because instead of an assembly line (ala Pink Floyd), you will have a wide diversity of Educational Experiences represented in the population.
If you believe that learning HOW to learn is important, you also will have a diversity of experiences.
Computer Science is a theoretical discipline pertaining about things that you can make programs do and how programs are structured. It has always seemed to me that programming languages are just a tool that you learn on the side. Then again, I learned multiple programming languages before I finished high school, so my perspective may be a little skewed. What I can say is that my software designs after formal CS theoretical training are much better, because I'm smarter about how I go about solving problems. It also seems to me that if you don't have the motivation to learn some things on your own, then you're probably in the wrong degree program, because you're just not that interested. The people who try to breeze through a CS program on coursework alone are only there for the certification, and they're not the kinds of people I'd want to hire, because they're unlikely to give a crap enough about the job to do it well.
Even more than in the U.S., the U.K. has a culture where those with hard skills are dismissed as doing "grunt work." I think it is part of the unfortunate British heritage of class consciousness, where the ruling class was (and is) proud of their lack of domain specific knowledge and their role as management generalists. This has been disastrous for the fortunes of the U.K. in general, but culture is hard to change.
I'm not too long out of school really, 22 years old now, and my UK 'ICT' education was a joke until I got to Sixth Form and chose to study Computing.
ICT lessons up until then were based around 3 of us cringing at the teacher failing to guide the 27 other students through basic Excel exercises (basic like 2 columns of numeric data and creating a graph from it). None of them managed it, none of them gave a fuck, and they still don't know how to do it because they don't care; it was the class to screw around in, and I saw the same thing in several schools.
True. The problem is that we stigmatised our (world class) Further Education system in the 80s and encouraged the polytechnics to become universities. Rather than giving prestige to a technical education, we belittled it and said that the only qualification worth having is the degree. Now they're constantly telling us the degrees are too abstract and need to be more vocationally focused.
We need to look at France. In France, there are various types of tertiary education, each respected as being appropriate for its subject. I was working in an IUT, something equivalent to a polytechnic, but it is not the soft option UK colleges were always considered to be. There are competitive exams and selection to enter. The best and brightest go there. If students are struggling in the first semester, they are regularly advised to go to uni instead, and try to salvage their year by doing something easier.
Then there's the engineering schools, different again from the university system, and again very prestigious.
So no, we don't want programming pigeon-holed as low skill work, but that doesn't mean we shouldn't be rebuilding the vocational education network -- it just means that we should be giving it the prestige that it always deserved.
Got them moderator blues I blieve I walk out the do', With these mod-points I been gettin', I 'most never post no mo'
Teaching content which requires programming; science, engineering, language emulation, biology, robotics, etc.; is a "two for one". They learn content and then use programming to analyze and explore that content. Programming without context is useless for most people.
putting the 'B' in LGBTQ+
I started out BASIC programming as a hobby with my first commodore machine aged 12, then took the computer studies option at school between age 14 and 16. This involved plenty of background theory (binary, octal and hexacedimal maths, plus some laughably ancient hardware stuff like having to know about magnetic core storage) and lots of practical BASIC programming on the then excellent BBC Micro which was used in most schools.
As my exam coursework I created a basic but fully functional option driven library system with ability to manage inventory of books and user accounts with checking in and out of books, reports of books checked out, overdue boks, etc.
This was a superb consolidation of all I'd learnt with my hobby programming and set me, like many thousands of others, in good stead for a subsequent successful career in development and IT consultancy.
I was truly appalled when I learnt exactly how 'computer studies' had been reduced to 'preparing office workers to use MS software', a situation that was not created entirely without close consultation with said company (free office licenses for schools, whoopee!)
I still think that much of that curriculum from all those years ago(obviously need to update the hardware aspects of it) would be an excellent foundation for a career in tech.
And I include teaching BASIC in that - it's a superb language for teaching the basic foundations of all other languages : as much as you may or not be a fan of stuff like PHP and Ruby (or my main skills, C++ and Java for that matter) they really aren't great for schoolkids to begin with from a base of not knowing anything about programming at all.
Anyway, hope more kids can get interested in programming again, whatever sort of curriculum they choose - the entry bar to making cool stuff is so much higher now than it was in the days of just affordable 8 bit machines with kilobytes of memory : an easy to use self contained dev and runtime environment that just runs as an app in a single window is sorely needed for those taking their first steps into programming.
This is funny? This gets +5 funny? Could someone please explain the humour, I don't understand any of it
Don't worry, in Britain, nobody understands anything either
Or else they wouldn't have allowed their government to remove all the computer programming courses from the high schools in the first place
...but the government isn't one of them.
We now have Code Club, Coder Dojo, Coding in Schools and half a dozen more individuals and groups working towards roughly the same goals. Each one of these groups is effectively cannibalising each other's target audience. All these people at the helm of each of these groups needs to be congratulated and then locked in a room with all of the others until they can agree a single national plan.
Personally I've gone with Code Club and teach a weekly hour class in my kids' primary school (kindergarten). I've brought one set of kids through the first of three "terms" of coding, been given 3x RPi to give out to semi randomly selected members of the club and plan to do a better job next year. The weekly tasks do a pretty good job of introducing practice in the basic concepts of programming (variables, variable scope, loops, conditions etc..) but weren't explicit enough to allow the kids to use them outside the context in which they were taught. To be honest, I think much of it was done by mimicry rather than understanding.