Live data from Hacker News

How To Train Your Robot

drtechniko.wordpress.com

31–40 of 43 posts

Re: How To Train Your Robot

#31
post #5

This reminds me of playing RoboRally ( http://www.wizards.com/default.asp?x=ah/prod/roborally ). RoboRally is a board game where you have to program your robots next 5 steps with instruction cards (turn left/right, move, ...).

How did you find playing the RoboRally game? Did you think you that were being taught programming, or that you were just playing a board game? Thanks.

Re: How To Train Your Robot

#32

Awesome ! Love that part : For some reason, kids loved making their parents repeat stuff 100 times over. It's exactly the kind of thing I used to do when I first tried a programming language (printing random stuff 500 times already feels strangely empowering... not to mention email spamming scripts!). I guess it's one of the main purposes computers were made for.

I couldn't agree more. Whenever I'm learning something, I find that breaking things is the best way to get concepts to sink in. You don't know what a null pointer is until you dereference one.

If I were to teach programming to a class of kids in the 8-16 range, I'd probably get a Python environment up and running and spend:

- Two to five minutes explaining a small concept (start with the print statement, go to variables, then operators, then functions, and so on and so forth) - A couple of minutes playing around with the concept using some neat functions or classes which you write before the lesson. Like a send_email() function, where you supply each kid with a disposable email address and password. - Up to an hour repeating the first two steps. - A few seconds giving them an optional homework assignment which they can work on and show off to their classmates when they come back.

I'm sure they'll be hooked when they find five hundred emails in their inbox, that's certainly the sort of thing that got me hooked back when I first started.

Re: How To Train Your Robot

#33

Earlier quoted context omitted.

Was it really link bait? Just described what it was IMO. Weird.

There's a cultural inhibition on HN against editorialising article titles. It's technically in the guidelines, I think.

interesting. I didn't know that.

Re: How To Train Your Robot

#35
post #32

Awesome ! Love that part : For some reason, kids loved making their parents repeat stuff 100 times over. It's exactly the kind of thing I used to do when I first tried a programming language (printing random stuff 500 times already feels strangely empowering... not to mention email spamming scripts!). I guess it's one of the main purposes computers were made for.

I couldn't agree more. Whenever I'm learning something, I find that breaking things is the best way to get concepts to sink in. You don't know what a null pointer is until you dereference one. If I were to teach programming to a class of kids in the 8-16 range, I'd probably get a Python environment up and running and spend: - Two to five minutes explaining a small concept (start with the print statement, go to variab…

I agree with you on your first point where you say that the best way to get concepts is by breaking things. But two to five minutes for explaining such CS concepts as variables, functions, and even operators may prove to be nothing more than just a fleeting moment, especially if you are dealing with a group.

Do you mean 8-16 as an age range or a number of students in the class?

Also, not all kids get excited at the first sight of scale. It often requires taking time to explain things and give different examples of this phenomenon.

Re: How To Train Your Robot

#36
post #35
post #32

Earlier quoted context omitted.

I couldn't agree more. Whenever I'm learning something, I find that breaking things is the best way to get concepts to sink in. You don't know what a null pointer is until you dereference one. If I were to teach programming to a class of kids in the 8-16 range, I'd probably get a Python environment up and running and spend: - Two to five minutes explaining a small concept (start with the print statement, go to variab…

I agree with you on your first point where you say that the best way to get concepts is by breaking things. But two to five minutes for explaining such CS concepts as variables, functions, and even operators may prove to be nothing more than just a fleeting moment, especially if you are dealing with a group. Do you mean 8-16 as an age range or a number of students in the class? Also, not all kids get excited at the f…

Sorry, I should have been more specific. When I say "explain operators", I mean something along the lines of "To add numbers, you can write '2+5 ' and it will give you 7". In two to five minutes you can probably explain addition, subtraction, multiplication and division and then link it back to variables. So "Type 'i = 3 + 3 '. Now type 'i '. It should give you '6'."

It seems to me that attention span is the biggest hurdle. You're unlikely to hold a ten year old's attention for more than a couple of minutes if they don't have a solid understanding of why the concept you are teaching is important and how it ties in to the other concepts they have learnt. If you can show them how useful a concept is, they're probably more likely to go and gain a more thorough understanding on their own.

> Do you mean 8-16 as an age range or a number of students in the class?

Age range. Ideally you would want to avoid having that sort of spread in a single class (perhaps take one class for the 8-12 age range and one for 13-16 age range).

> Also, not all kids get excited at the first sight of scale. It often requires taking time to explain things and give different examples of this phenomenon.

True, I'm just basing what I wrote on what my friends and I found particularly interesting. It's probably different for everyone.

Re: How To Train Your Robot

#37
post #31
post #5

This reminds me of playing RoboRally ( http://www.wizards.com/default.asp?x=ah/prod/roborally ). RoboRally is a board game where you have to program your robots next 5 steps with instruction cards (turn left/right, move, ...).

How did you find playing the RoboRally game? Did you think you that were being taught programming, or that you were just playing a board game? Thanks.

Well, I have more than 10 years of programming experience, so I obviously did not get the feeling of being taught programming. But I think non-programmers also do not have this feeling. So people play the game, learn to program their robots and maybe don't even realize that this is actual a kind of programming.

I think what people can learn from the game is how to combine simple instructions into more complex robot movement. In addition, you to step through your 'program' in your head in order to check that it is doing what it is supposed to do. But I honestly cannot say if this game is suited to teach programming.

Re: How To Train Your Robot

#38
One of my middle school teachers had a lab (which we unfortunately never did) where students had to write a set of instructions for making a peanut butter and jelly sandwich. She would then follow the instructions to the letter and you would discover your errors.

  1. Unscrew lid of peanut butter jar
  2. Put knife into jar
     ERROR: knife cannot enter jar, lid is still on top of jar.
Her goal was teaching how to write the method section of a scientific paper, but I find it far more valuable to teach introductory programming.

Re: How To Train Your Robot

#39
post #6

For the past 5 years or so, I've been spending my summers teaching kids how to program, build robots, make websites, videogames, etc. I usually teach algorithms without using a computer as well. I put kids in groups, and give them a shuffled deck of cards. How can we sort it as fast as possible? Can they come up with their own techniques? Then we have little challenges to see which group sorts it the fastest, and the…

I'm currently doing pretty much the same thing as volunteer work. Would you mind expanding more on the methods you use?

My kids are in ages 8-12. One big problem is that I must find a way to have them work and explore on their own, but most of the tutorials and documentation that I know is good and up-to-date, is in the English language (and I'm Dutch, as are the kids). At that age they really can't yet read English very well.

Of course the best solution to that problem is to spend some more time and try to find good Dutch HTML tutorials. They should be out there, it's just that my Internet bubble seems to be a bit anglo-centric :) Also if Python was invented by a Dutch guy, there should be some quality Dutch language material written on it, no?

But apart from that, I also wonder if there's some other ways that do not involve reading manuals. While the cards thing seems interesting, I wonder whether the kids would be excited about it, it's not a school, they go there after school and are offered the opportunity to work on all sorts of technical projects with our guidance (there's also an electronics lab where they get to solder resistors and diodes and such to make flashing LEDs etc).

I'm kind of looking at how the more "crafts" like departments have it easier (apart from electronics, there's wood, metal working, clay/pottery and more). There, the teacher can just show how to do something and explain, multiple kids can watch and then try it themselves. With the computers it's like they can't do very much or explore new things without me explaining them one-on-one. Which takes way too much time and also isn't really the best way to facilitate the "exploration" aspect (which is one of our goals).

So I sort of know where the problems are, but I'm kind of stumped on how to fix them. Except for taking the time out to write tutorials (and perhaps some screencasts) myself.

Re: How To Train Your Robot

#40
post #6

For the past 5 years or so, I've been spending my summers teaching kids how to program, build robots, make websites, videogames, etc. I usually teach algorithms without using a computer as well. I put kids in groups, and give them a shuffled deck of cards. How can we sort it as fast as possible? Can they come up with their own techniques? Then we have little challenges to see which group sorts it the fastest, and the…

I'm currently doing pretty much the same thing as volunteer work. Would you mind expanding more on the methods you use? My kids are in ages 8-12. One big problem is that I must find a way to have them work and explore on their own, but most of the tutorials and documentation that I know is good and up-to-date, is in the English language (and I'm Dutch, as are the kids). At that age they really can't yet read English…

You should see whether you can get a copy of RoboRally in Dutch, or at least in German if that would work. If not, consider translating the cards, each of which has an arrow and a direction, such as "turn left", "back up", or "move forward 3".
Post reply on HN