Schemes to teach the masses to code

I dont know about this one , I think that mainly it’s a bad thing there are already a lot of people who have tried coding and hop into it unable to actually write anything efficient. I find a lot of people get taught how to code in scratch and other things then the second they go into real programming they appear to use the same techniques which are well horrible.

What do you guys think about teaching most of the young generation to code , to me if you want to code then you will put the time and effort in , if you don’t enjoy it then why would you put much effort into it. That’s why we do what we do.

How does it sound like this;

I don’t know about this one , I think that mainly it’s a bad thing there are already a lot of people who have tried playing music and hop into it unable to actually play anything good. I find a lot of people get taught how to play in scratch and other things then the second they go into real playing they appear to use the same techniques which are well horrible.

What do you guys think about teaching most of the young generation to play music, to me if you want to play music then you will put the time and effort in , if you don’t enjoy it then why would you put much effort into it. That’s why we do what we do.

I think if you want to be good at anything, you’ll put the time in and you’ll get good, but I also think that the young generation should be taught music and coding and cooking and politics and philosophy and everything! (if ‘everything’ exists! :D)

A lot of people have also tried writing. Does that mean we shouldn’t bother teaching kids how to write?

A lot of people are also terrible writers. Does that mean we shouldn’t bother teaching kids how to write?

[quote=“lcass,post:1,topic:53175”]
So you’re saying that it would be better if they had no background in logical thinking at all? Things like Scratch aren’t meant to teach you how to code the most efficient sorting algorithm- they’re meant to introduce kids to logical concepts and reasoning through a process: “if I do this, the computer does this, then this happens”.

Things like Scratch are meant to decrease the learning curve, the brick wall that many novice programmers hit, because they’ve never worked through that kind of logic before they get to their first programming course in high school or college. That kind of “general logic” is required for coding, but comes in handy in so many other aspects of life.

But you’re saying that not everybody who uses Scratch goes on to be a master programmer, so we shouldn’t use it at all? Not everybody who uses a set of paint turns into Picasso either, but we encourage kids to “play” with art because it has so many other benefits.

[quote=“lcass,post:1,topic:53175”]
That sort of thinking kinda irks me. The elitist, “only programmers should program” attitude. Look at it this way: one of the big problems with your approach (of not encouraging kids to learn about programming) results in mostly only “traditional” computer science folks (nerdy white boys) taking an interest. It marginalizes girls and minorities. Teaching everybody some basics from a young age encourages everybody to try it out later in life. That’s one of the reasons Code.org is pushing to make programming part of the curriculum, and not just an elective or an after-school club.

We give kids a set of paint and say “go for it, see what you can create” because it’s good for their brains, not because they’re going to be the best artist or even make a living from it. We require music class for similar reasons. Teaching kids some basic logic would only help them, help diversify the industry, and lower the barrier later in life. But you’re saying it’s a bad thing because not everybody is going to become an expert programmer?

Well, why aren’t we teaching everyone plumbing, electronics, engine tuning, and astrophysics too, then?

What could the difference be between reading, writing, and 'rithmetic, and those other things, I wonder?

Cas :slight_smile:

I hear your argument, and I would actually say that we should teach the basics of plumbing, electronics, and engine maintenance. In fact, I did take a class on exactly those things in high school. And the basics of astronomy and physics are taught in required science courses.

I’m not saying that every student needs to be an expert programmer. I’m saying that we should give kids the opportunity to find out if programming is their thing- exactly how we do with pretty much everything else (art, music, science, math, etc). Right now the only way to do that is outside of class, which means that kids from less privileged backgrounds are excluded.

Let’s put it this way: if you have kids (or if you ever will have kids), are you going to encourage (or at least facilitate) an interest in programming? The answer is probably yes from all of us- so why shouldn’t other kids (from less privileged backgrounds, for example) get that same opportunity?

Especially because most schools do have “computer class”, which at best teaches typing- which kids already know how to do. Wouldn’t that time be better spent learning about the basics of how a computer actually works? And if we also give them some general logic and problem solving while we’re at it, how is that possibly a bad thing?

I have no idea what goes on in schools these days in the UK tbh (though I’ve got 2 kids, 6 and 4). We were given Logo to play with at around age… hmm 9 or so in the classroom, but by then I had already written my own Logo interpreter (!). Most of the other kids didn’t even have a clue what to do with Logo. Or why. I suppose some people are just interested in such things and some aren’t… just like I’ve got no interest in learning to do electronics seriously.

I have a feeling that any kids that express any kind of remote interest in programming will do so, no matter what gets in their way (and there is in truth very little in the way).

Cas :slight_smile:

Somebody (Norway maybe) is going to stop teaching writing…only typing.

I think teaching people to code is great, i do it every weekend at my local library and it seems if people are older then 15-16 and want to learn to code it gets harder for them because of one simple thing, algebra. They look at code and think"omfg its like math class all over again" , but just getting people to understand how variables work is the most troublesome task, i have had a few kids ask me, “Why cant i put a word in a number? I was only trying to give 1 some company” but you get allot more success teaching younger kids programming then older ones and in the long run, kids coding from a young age is very sucsefull because they are unknowingly learning high level mathematics.

I guess that’s the real problem: kids have no way of knowing that they have an interest in programming, since most of them will never be introduced to it.

And even schools that do offer programming courses (at the high school or college level) usually offer it too late for anybody other than “typical” programmer types to take it. By then, “society” has told the girls and the minorities that programming “isn’t for them”, and making it an extra-curricular just adds to that. And this isn’t me talking- this is taken from the studies done by Code.org.

And maybe that’s it: I’m not saying that programming needs to be required for every student. But it should at least be available to every student. Basic programming should be taught in the form of stuff like Scratch (which kids think of as a game) at the elementary school level. Then slightly more advanced stuff should be taught at the middle school level, the same way we go from finger-painting to other art classes. And then high school should offer advanced programming courses, the same way we offer advanced art courses- and they should count towards graduation, the same way other classes count (in most places, programming is at best an elective and doesn’t actually count towards anything).

I would love to start doing stuff like that. Did you just walk in and say “yo lemme teach some programming”, or did you respond to a volunteer position or something?

[quote=“Ed_RockStarGuy,post:8,topic:53175”]
Yep, all of this exactly. Stuff that we view as basic (variables, flow control), we forget how alien that can be to a novice. So the sooner we get people thinking about these kinds of things (without even knowing they’re thinking about them), the better. It’s actually pretty amazing to watch a kid go through a Scratch tutorial- we can see that they’re using if statements and for loops, but they never actually use those words. So when a kid does eventually see an if statement or for loop, they already have the concepts down, they’re just learning a new name for what they’ve been doing the whole time.

KS1 and KS2 now include programming, but I doubt that many primary school teachers understand it well enough to teach it properly.

The way it got started is because of a Nation wide (Uk) competition called YRS where young coders come together to make apps/programs and just have fun, but after the week long event some kids were coming to us asking why we could not do this every week so we got the required resources to start a weekly event where kids can make a project over a year and get help from people like myself who have allot of programming experience in several languages (English is not one by the grammar in most of my posts :p).

That’s really cool. I’ll have to see if any of my local libraries have similar things.

Go for it, not only is it good community work but also you are helping kind who normally are anti social (Based that of others i have seen + myself xD) get out the house and work with other people to do the things that love which is programming…But remember to get them to join the Java master race :stuck_out_tongue:

Only thing that we didn’t have at school was plumbing. But that would had have been really useful skill for many times later on.

@Kevin: Well that really depends on country and school I guess
afaik, being german, in Germany every school has 2-3 years of Informatics/Computer Science available. You have to choose it and you will lose french or dutch for that, sometimes its an additional class. Most of the time they do a lot of programming, back then starting with HTML, Flash and later some Java. And that was way back when I was in high school, 10 years ago; Tech changes fast, however curricula of course not, but at least it will be the same.

On the other hand I kinda agree with Cas…
Programming is a very specialized skill and giving it this much attention seems odd and biased just because we are programmers.
Also there are those of us who do not even inherently enjoy programming to begin with… I remember Cas saying so at some point. Programming being a means to an end but not all that enjoyable. Not trying to go offtopic, its just that, it sounds like your motivation is rooted in deep enjoyment of programming… like “its so much fun, everyone should try it !” - and yeah I dont think that would be true at all.

@OP: When people go out and program something for themselves, it is then that they will realize, while doing it, what makes sense and what doesnt. So basically I would not “teach” any schemes whatsoever, although at some point I would show examples of them.
I think programming needs a lot of inspiration and creativity and to my dismay most programming teachers dont agree, not even university professors. “Do it my way or it’s wrong.”

I did used to really enjoy programming, but you know… after 35 years of doing something the novelty has long since worn off.

Cas :slight_smile:

It sounds like schools in Germany are ahead of schools in the US and the UK. Most schools here don’t offer any “computer science” other than “typing”, which is usually taught by a librarian.

[quote=“Cero,post:16,topic:53175”]
I’m not sure I agree with that. I don’t think we should teach kids syntax, I think we should use things like Scratch, or LightBot, or any of the other resources on Code.org, to teach them the concepts. And, anecdotally, most kids view these exercises as games, not as programming.

Logo ftw. Plus, it’s a Lisplike, which makes it automatically awesome :slight_smile:

Cas :slight_smile:

Well this thread exploded, some of the things you have said of course are very true , for instance teaching basics of plumbing and electronics those should be implemented in school. The issue with teaching programming is that it relys on other skills , writing requires imagination and a pen , programming (decently) requires a moderate understanding or algebra, interest, imagination and some fairly good logic. The age where most of these qualify is about 12 - 16 after that it becomes difficult as either some of it is forgotten or stress from outside activities and before that the understanding of algebra and computers is fairly low. The schemes im talking about are the ones pushing kids (6 - 7) into programming.