Live data from Hacker News

Code.org – Dedicated to growing computer programming education

code.org

101–110 of 187 posts

Re: Code.org – Dedicated to growing computer programming education

#101
post #96

Earlier quoted context omitted.

I have a very similar experience with "Teach the kids to code". When i was in 5th grade our school bought a couple of computers and started teaching Logo( http://en.wikipedia.org/wiki/Logo_%28programming_language%29 ). It was simple little language, and all of us were excited cause we could make computer draw something for us. After that the curriculum for the higher standards moved more towards the MSOffice, Lotus12…

I have a similar background, with my earliest programming experience in Logo, drawing fun shapes. I then got into PC games, dealing with batch files, config.sys, and HIMEM to extract extra KBs of conventional memory. I got back into programming when a friend and I built a flash card program to help us study vocabulary and memorize Chemistry equations. Programming is fun when it has a purpose!

> When it has a purpose

I think this is the real key. It's one thing to teach kids programming, but you cannot teach them why its useful in the same way many engineers discovered why it was useful.

Re: Code.org – Dedicated to growing computer programming education

#102
post #73

Hear me out. I was full for this 'teach kids how to code' thingy. But I think we have got this all wrong. Heck we don't have the right kind of tools to teach kids how to code. In fact I have now realized that you can't and should not teach kids how to code. You rather must teach them how to solve problems. Math was supposed to deal with that, but unfortunately that turned out to be complicated symbol manipulation if…

You really should look at http://codehs.com

We don't force feed anything, and everything is motivated because it's fun. We teach problem solving through coding, but it's really simple at the beginning, so you don't get intimidated.

It's motivated by teaching you that programming a computer is like teaching a dog how to do tricks, which kids can identify with.

Seriously, actually try out CodeHS because it's not what you think it is. It's actually fun, and I bet you'd wish you learned it when you were a kid.

And if you don't want to try it out, that's fine. Just know that when people say we should teach kids to code, we don't mean symbol manipulation or boring math. It can be fun, and we're doing that.

Re: Code.org – Dedicated to growing computer programming education

#103
post #97

Earlier quoted context omitted.

Do you think a simplified assembly language would be better? I think a high-level language is generally good for teenagers or older. But maybe starting with assembly is better. It's actually a really simple language to learn (if you focus on a small subset) when you just want to do simple things. And it removes a lot of the magic that higher level languages have which could confuse things for kids.

This is one of the reasons I'm interested in http://0x10c.com/ , when it ever comes out. The assembly language for the game's DCPU-16 is fairly simple. Currently it does take a bit too much to get output on the screen, but with better tooling it could be a viable first language.

0x10c is such an awesome concept. Shame the last activity on the blog was November.

You might also be interested in Core War, a game where you create assembly language programs and battle them with other programs.

corewar.co.uk

Re: Code.org – Dedicated to growing computer programming education

#104
post #73

Hear me out. I was full for this 'teach kids how to code' thingy. But I think we have got this all wrong. Heck we don't have the right kind of tools to teach kids how to code. In fact I have now realized that you can't and should not teach kids how to code. You rather must teach them how to solve problems. Math was supposed to deal with that, but unfortunately that turned out to be complicated symbol manipulation if…

You make a lot of assumptions about how kids have to be taught coding.

> I tried everything possible. Every other trick in the trade. Even tried to start with Python first and not C.

> They struggle to understand where or why should you use an if/else/switch statement, or a for/do/while loop. Its difficult for them to map solution patterns to a code pattern. Its not their fault. Its ours. Better luck trying to explain a kid why they are being asked to write a program find greatest of three numbers, find factorials, or sort numbers. To them it very clearly looks math in a different language. Its that boring math thing all over again.

There are so many other ways to introduce students to programming. This is the main part of the problem. So many people think this is how you have to teach programming. I am in full agreement that you need to teach problem solving, and you can do that with programming.

We start teaching with a simplified language called "karel"--where you have a dog who can only turn left, move, and put down and pick up tennis balls. That's it. There is no overhead of python or C or java. It's just a few commands and a dog. And there is no question on why you should do it.... people do this because it is immediately fun. Printing "hello world" for most people (especially younger kids) is not immediately fun.

Try our demo on the code.org page http://www.code.org/learn/codehs

I have started thousands of students in person with our karel the dog demo. Everyone can do it. Almost everyone finds it to be really fun. Because karel is a simplified language, it is all about problem solving. How do you get a dog to find the midpoint of his world when he cant store variables, but can only ask questions about the state and put down tennis balls?

I contend that you can teach problem solving to students through programming--but it is so crucial how you make that initial experience feel.

There is no

    public static void main(String[] args)
to get started.

Try this out at http://codehs.com. We have schools using it all over the country, and young students can get if/else, and for/while.

> Beyond all this it needs to fun, which it very clearly isn't.

Find a student who didnt like programming, and have them try our karel the dog starter for 10 minutes. Let us know what they say. I bet they think it's fun.

Re: Code.org – Dedicated to growing computer programming education

#105
post #73

Hear me out. I was full for this 'teach kids how to code' thingy. But I think we have got this all wrong. Heck we don't have the right kind of tools to teach kids how to code. In fact I have now realized that you can't and should not teach kids how to code. You rather must teach them how to solve problems. Math was supposed to deal with that, but unfortunately that turned out to be complicated symbol manipulation if…

Kids view programming very similar to the way they see math. They find themselves manipulating things/symbols/stuff without understanding why, for what, or even why its even relevant to them.

Indeed if young people have that kind of mathematics education, then they are likely to find programming boring and off-putting. But some young people learn math as something to play with, all along asking themselves why the math "rules of the game" are the way they are. Such experiences in math help young people learn and enjoy programming at a younger age. It's all problem solving--that is, it's reaching a higher level in a game. For some people that is a lot of fun. I've seen this kind of educational progression in someone who first started learning serious programming in a C course

http://epgy.stanford.edu/courses/cs/

at about eighth grade age. It can be done.

Re: Code.org – Dedicated to growing computer programming education

#106
This isn't about growing computer programming education, it's about the basics for people with poor computer literacy.

Google search and PHP.net documentation have done more for growing computer programming education than any project like this.

We need more great documentation resources, and less "let me hold your hand" tutorials.

Re: Code.org – Dedicated to growing computer programming education

#107
post #93
post #89

Earlier quoted context omitted.

> There are many ways to learn how to code, and we're constantly developing better ways to educate millions of kids Making it a compulsory part of education does not seem to be a "better" way to do it. Let's not push things that will be useless to most kids until they develop some interest for it, or for solving problems in general. Then you can bring programming as one tool to help solve issues, in a better/faster/c…

> Programming for the sake of programming has no meaning, just like we are being taught Math for the sake of Math. Education needs to be way more tangible and down-to-earth, at least for younger children. I think we're agreeing. I don't think it's useful to teach computer science at early ages, but rather using programming as a practical application of critical thinking, logic, problem solving, and mathematics. Compl…

> If @kamaal's niece is drowning in pointers, they're doing it wrong. But I don't think that programming should be universally excised from the curriculum as a result.

Teachers cannot be expected to teach everything well. I was also part of the 80s experiment in my country to have mandatory computer training as soon as primary school, using BASIC and the crappiest hardware available at the time (Thomson's !). The assignments were stupid, the teachers incompetent, and the students bored by what they were asked to do. If you want to teach programming to young children, you will find most of them have geniuine interest in video games and would probably enjoy learning how to program one from scratch, but no, Education is a top-down thing in most countries and the programs are elaborated by people who have no understanding of computing, of education in general and no interest to serve the students but rather show off how "progressive" they are vs other countries or other governments. How could positive results come out of it ?

I am rather for the accessibility and the awareness of good materials to learn how to code online, made to demonstrate how to build actual projects with it that can be useful in some way. In the garage programming days of the 80s what was missing the most is the ability to meet other folks like you who loved programming and to learn from them. Now, with the internet, that boundary is more or less gone and the sharing of up-to-date, re-usable, practical information does more good that all the training you can implement in schools, training which will go obsolete in a matter of years.

Re: Code.org – Dedicated to growing computer programming education

#108
post #77

Earlier quoted context omitted.

Did you even look at the resources on Khan Academy they have? They're STUPID simple and really useful. Heck, I learned some stuff!

No Khan Academy resources are not going to help. Let me tell you why. If you try hard, you can teach some one 'how to code' but no matter how hard you try its not possible to teach some one 'what to code'. Or in other words, 'what problems to solve using coding' else everyone would be a Nikola Tesla. Its easy for us to solve problems like 'Parse this XML and do X', for kids its impossible to even understand this, or…

I don't think the issue is either explaining to kids "how" to code, or "what" to code, but rather "why" to code. We all know why, because it's super awesome and rewarding. The problem is that it's also extremely frustrating, and maybe not everyone is a natural born programmer, that's ok.

I think the reason I always loved programming is because I love computers, a lot. I think kids these days are growing up with technology at their finger tips, computers are second nature to them, and they like technology because it's cool, and yea you can play games on computers. I wonder, how many people in this thread got into programming because they wanted to make a computer game?

When I was a kid I hated math, it felt like nothing more than an exercise in taking orders and doing something for no reason. Every year I would ask my math teacher, "why are we learning this" and no one had a good answer. I really wish someone had been there when I was younger to show me how amazing math can be if you have the right attitude about it; and when I was teaching I always tried to be that person for my students. I know I was able to get through to a few of them at least.

Computer science classes literally make people hate computers, and that makes me sad. I mean why on earth do they make you learn java in school, are you kidding me!!? It's like not enough to ruin math for generation after generation, now they are ruining computers too. What a shame.

When I was teaching physics I used to tell my students "look, you like south park right, well imagine if 200 years from now you had to study south park in school, but instead of watching the episodes and laughing your ass off, you had to memorize a list of every characters name and random facts about them, and then you had to take a test that quized you on how well you had memorized those random facts, and if you didn't do well you got punished by your parents. Well that is exactly what has happened with math and physics."

We don't need kids who know "what to code", we need kids to want to because they think it's interesting and fun. Lots of kids these days already love computers and technology, it's up to us not to let the way programming is taught ruin that for them.

Khan academy for sure can help, if the video's are done right.

Re: Code.org – Dedicated to growing computer programming education

#109
post #80

Earlier quoted context omitted.

I think your misconstruing the purpose of these initiatives. The purpose is not to turn the kids into programmers at a young age. The purpose is to EXPOSE them to the world of programming. You're not going to make coders out of them in elementary or middle school. But you might make them more INTERESTED in pursuing further programming education in say high school. Mission accomplished.

Agreed. The fact that I could be a programmer clicked for me only because I made pretty complex TI-89 calculator programs and games in HS. I thought I was just dicking around, but later I was like "wait, this is programming? I've done this before!"

[deleted]

Re: Code.org – Dedicated to growing computer programming education

#110
post #77

Earlier quoted context omitted.

No Khan Academy resources are not going to help. Let me tell you why. If you try hard, you can teach some one 'how to code' but no matter how hard you try its not possible to teach some one 'what to code'. Or in other words, 'what problems to solve using coding' else everyone would be a Nikola Tesla. Its easy for us to solve problems like 'Parse this XML and do X', for kids its impossible to even understand this, or…

I don't think the issue is either explaining to kids "how" to code, or "what" to code, but rather "why" to code. We all know why, because it's super awesome and rewarding. The problem is that it's also extremely frustrating, and maybe not everyone is a natural born programmer, that's ok. I think the reason I always loved programming is because I love computers, a lot. I think kids these days are growing up with techn…

I really agree with what you are saying. Not every person will have inclinations to do programming for a career or have it be their passion.

I would say that the goal of any of these initiatives should be to expose the kids at a young age and let them see that it is out there.

I fully starting engaging in software development in University. I know that if I had been exposed to learning programming in a more fun way earlier, it would have been something that I would have really enjoyed and continued.

If a young child has the inclination for it, it would be such a privilege to have them start their journey of learning at a younger age. These are the kids that I want these initiatives to catch. For others, it would be great to have them exposed to it right away too and realize its not for them. There is tremendous benefit in knowing what you don't want to do so you can quit and try something else.

Post reply on HN