Last Sunday, I taught six kids of ages 5 to 7 how to program. “In what programming language?” you may ask. Well…I didn’t use a programming language, at least none that you know of. In fact, I didn’t even use a computer. Instead, I devised a game called “How To Train Your Robot”. Before I explain how the game works, let me tell my motivation.
I learned how to program during my freshman year at MIT when I was 19. It’s not because I didn’t have a computer at home or I hadn’t heard about programming languages. It was because (a) I thought programming was boring and (b) no one had told me why I should bother. In fact, my computer teacher in high school had told me “you don’t need to waste your time learning how to program. Now we have visual tools to build programs. Programming languages are already obsolete.” That was in 1994 and he was referring to Visual Basic. Luckily for me MIT wiped all that nonsense away in a matter of weeks. But does one need to wait to go to college to get the proper education?
Learning how to program is going to be the most useful new skill we can teach our kids today. More than ever our lives depend on how smart we are when we instruct computers. They hold our personal data and they make decisions for us. They communicate for us and they are gradually becoming an extension of our brains. If we don’t learn programming as part of our childhood, we will never evolve. As the famous futurist, Ray Kurzweil, put it “The only second language you should worry about your kids learning is programming.”
How To Train Your Robot
The game works as follows: every kid is turned into a “robot master” and their mom or dad becomes their “robot”. I give each kid a “Robot Language Dictionary” and explain to them that this is the language their robot understands. The dictionary has symbols for “move left leg forward”, “turn left”, “grab”, “drop” etc.
The goal is for the robots to go through an obstacle course, pick up a ball and bring it back. The kids have to write a program that will tell the robot how to do all that. Every time they write a program, they hand it to their robot and the robot executes it. To do that, I give each kid a pen and paper where they copy symbols from the dictionary to write their programs and off their robots go!
The fun part begins when each robot retrieves the ball. Now I let kids invent their own moves and symbols that they add to their dictionary and then teach their robots. There is no limit to what the kids come up with.
This is my favorite program (written by a five year old girl):
I designed the class to teach some very basic principles of computer science and programming:
- Programming languages are just another way to communicate to an entity (via programs).
- Programs are recipes for automating stuff.
However, I was pleasantly surprised on how much more the kids learned. On their own they figured out the following things (in a 30-min session):
- Program Parametrization: Instead of putting a forward step ten times, they put a 10 in front of the “step” symbol (A five-year-old figure it out and asked me if she could do it).
- Composition: Grouping of a set of moves (“move left leg forward, then move right leg forward and do this combo 10 times”)
- Abstraction: “Run in a circle, then say “I’m dizzy!” , then call this the “Run Dizzy” program and do it 100 times. (For some reason, kids loved making their parents repeat stuff 100 times over.)
- Unit testing: They’d write a test program to get the parents moving a few steps, have their parents run it, then fix it and run it again, and then add a few more steps until they reach the goal.
I’ve ran the class twice now and I’ve seen the same patterns, which support my belief that when kids have fun, they get very smart and creative about programming. Many of the parents plan to play the game at birthday parties. If you have questions about how to set up the game, don’t hesitate to write. You can find my contact info at www.facebook.com/drtechniko.
You can also find instructions on how to teach the class as well as materials I used on this post.
I hope we learned something useful today,
DrTechniko
Genius idea! Well done on coming up with it, anything to get children interested in programming is great to start with, but doing it in a way that encourages them to come up with things that already exist is much better than showing them the things is there (such as the abstraction).
Reminds me of playing RoboRally … http://www.wizards.com/default.asp?x=ah/prod/roborally
You could use the cards from RoboRally and have the kids just use those instead of writing things down. Maybe easier for younger kids to use those.
Amazing concept (especially involving parents to have family fun). I’m just curious about one thing. Your course teaches the sequential, BASIC-like approach to programming. How big is the risk that this way of thinking will be an obstacle to learn modern approaches like for example OOP? Do you have any plans for developing your course?
Very good question. I designed this first class to not be so intimidating for kids (and parents) that are not software engineers. My main focus was for the kids to get comfortable with the concepts of “program”, “automation”, “testing”. In other words, for them to get comfortable with using a language to compose programs that can actually lead to visible and testable results. What was impressive is that the kids themselves came up with the concept of abstraction and with a bit of help from me they were labeling their “routines” and having their parents execute them as a single instruction. I’m designing follow up courses to teach them (a) more constructs like if/then (decision making) and (b) more software engineering principles (OOP etc.)
Awesome. I’m going to wait impatiently for the next stories on the subject as this is very inspiring – gonna try it with my son. Thanks a lot!
drtechniko, this is wonderful. Well done! I would imagine that decisions, and then maybe loops and variables/storage would be important to add next, but it would be interesting to just increase the complexity of the task to see if the same set of kids work out the ‘tools’ they need on their own.
Yep. Decision making is my next class. Like you said, I’m going to make the task to be completed slightly more complex so they won’t be able to do it unless they come up with conditionals and loops.
My whole philosophy behind DrTechniko is how to teach advanced concepts to young kids and ideally prove that they can handle college level material if presented to them in an intuitive and interactive way.
I personally do not think OOP is important to learn at this early stage. It really is only a tool for helping to manage much larger collaborative projects.
More importantly, you absolutely cannot write any code in an OOP language unless you already understand the concepts of procedural instructions, parameterisation and abstraction.
As has been identified, the best thing about this exercise was letting the kids discover advanced techniques, and OOP is one of those things that you tend towards as you become a more experienced programmer. This game is so beautifully simple, be careful of complicating it by crowbarring in stuff like OOP!
Awesome !
My first actual programming course involved similar premises, but making humans be the robot is far funnier than walking the robot on screen or paper.
Genius! I taught Geek sort algorithms very early (maybe at 3 or 4?) using colored legos, colored blocks, etc. Then we’d do different sorts: by color, by shape, etc. We’d make a game of how few you could touch to sort them and so on. I just called it a “plan” or “strategy” rather than the too big and odd “algorithm”. There are lots of opportunities to teach algorithms in play with kids.
You took it a super step beyond that with the work above – great stuff!
[…] ran across this Great blog post by DrTechniko about teaching 5-7 year olds how to program. Reminds me of […]
That is SO funny. I did something very similar while teaching my young neice how to program.
reminds me of CS106A at Stanford, which uses Java and a package called “Karel the Robot” to each everyone to program. This is way cooler since it’s for little kids but there’s a soft spot in my heart for CS106A.
Thank you very much for the idea. I’ll try to implement it at my mum’s school next time she asks for some collaboration.
Have fun!
So cool! FYI there’s a conversation happening on hacker news about this http://news.ycombinator.com/item?id=3840979
Thank you. I’ve copied the link to my facebook page. I’m hoping people will get the conversation going on in there at http://www.facebook.com/drtechniko
Thank you so much for sharing this. As a software developer and a community-minded individual, this is such an outstanding thing to see that someone has formalized and developed. My hat is off to you, sir.
I do like this approach a lot. You can use the roborallye-cards for this game and/or invent additional ones, for example for loops or alternatives (either like in graphical programming languages like scratch or like in structograms/Nassi–Shneiderman diagrams). One example I like is the “getting out of an arbitrary labyrinth”-algorithm, which demands alternatives and loops. The labyrinth can be build out of bottle crates then the command “one step” is clearly defined and you can easily change the labyrinth. You have to add some sort of sensoric command to the functionality of your robot like “Is a crate in front of you?” and “Have you reached the exit of the labyrinth?” (the exit being labeled in some way e.g. different colored crate). It’s fun and a very important experience for the kids to see that the command “Do one step” is executed even if there is no crate in front of the robot leading to the “death” of the robot (like falling into a hole in roborallye).
We’re planning to do a variation on this twice at UOregon this Thursday for Take Your Kid to Work Day.
YES!
This is great. I actually took this EXACT approach with my daughters second grade class about four years ago. I spent a couple of hours preparing some other approach, and realized that it was going to fall to pieces because it relied on demoing something on a laptop etc… Then this popped into my head. I didn’t take it quite as far and I thank you for bringing it out to the world at large. Kudos!
Very nice. It was all driven by my motivation to find a way to teach this to a 5 year-old without them feeling overwhelmed with computers or typing or programming languages. I’ve had computer scientist parents come to me and tell me “I’ve tried python, but my kid gets hung up on what the “=” sign and I have to explain to them it’s sometimes used for assignment but it’s also an “equals” like in math…”. Bottom line…It gets hairy…and kids give up. I’ve also had parents who are not computer scientists and they ask me: “Can I teach this to my kid? Will she get it? I’m not smart like you guys (software engineers)”. To which I immediately say “Yes, of course. Just move a bunch of chairs around in your living room, to make an obstacle course and she will figure out the rest.” Kids are smart! Our current education system and teaching methods are the problem here.
Really cool idea.
I also want to small question from you. Are you planning to take these examples set by these kids and design some programming language that is much more human friendly or suggest corrections/improvements to existing programming languages?
This is a really cool experiment to make programs and source code more obvious to people than getting someone to think in terms of technical explanations.
Thank you for the kind words. The feedback I get from the kids when I teach the class is useful for me to design followup classes and improve the current one. The more I teach the class, the more patterns will emerge. I believe there is quite a bit of research in programming languages that are more kids-friendly (which in turn could be used to make existing languages easier). Maybe we can use some of my learnings towards this goal. However, I think the motivation behind PL research is to address current shortcomings and needs in the industry, so this may make for more complex PL features, than simpler ones. That being said, my current focus is towards the opposite direction: to make it more intuitive for kids to program and get parents comfortable as well even if they don’t have a CS background. If I can find a way to teach a 3 year old to “program” or a 2 year old (or who knows, maybe a 1 year-old), then I’d be extremely happy. When that happens, then a 15 year-old or 20 year-old should have no problem tackling complex “adult” programming languages, right? 🙂
I am very inspired reading about your game, i’m definitely going to try it out with my nieces!
Looking forward to updates on this, brilliant
Thank you very much drtechniko!
[…] Dr Techniko – for the youngest primary school pupils Nikos Michalakis on his Dr Techniko site has provided examples of how to introduce the concept of programming to the youngest children, without using any computers or other devices. For a study on the effect of using programmable robots in the classroom see “Robotic toys as a catalyst for mathematical problem solving” in which Kate Highfield describes a series of tasks in which robotic toys are used to develop young children’s mathematical and metacognitive skills. http://www.thefreelibrary.com/Robotic+toys+as+a+catalyst+for+mathematical+problem+solving%3A+Kate…-a0229718052 For an excellent guide for teachers on using the Bee-Bot in the primary classroom see the ”ICT Learning Innovation Centre’s Guide to using Bee-Bots in the Early Phase” from the Queensland Government’s Department of Education, Training & the Arts. This resource has been developed to help teachers make Bee-Bots integral to learning in Early Phase Classrooms and was developed by Kristine Kopelke, Project Officer – ICT Learning Innovation Centre: http://elresources.skola.edu.mt/wp-content/uploads/2010/06/doc_669_2468_beebotguideA4v2.pdf For a livebinder by 2Sparkley with ideas, links to blogs where the Bee-Bot is being used, lesson plans and videos on use of BeeBot programmable robot see http://ow.ly/4cUdZ The Macquarie ICT innovations Centre in New South Wales has a blog for teachers and pupils to post examples of early years classroom activities with Bee-Bots. http://web2.macquarieict.schools.nsw.edu.au/01001/ And from Macquarie about use of the Pro-Bot with older primary pupils: http://web2.macquarieict.schools.nsw.edu.au/09001/ […]
This is brilliant! I teach kindergartners and first graders reading and writing – concept of spoken language and symbols representing sounds we utter. This exercise you came up with not only teaches children about programming but shows them how language works. Thank you for posting it and I will let you know how it went with my own children and with my students when I do this game with them.
Yes, please do. I’d be interested to see how they do. You can find my contact info on http://www.facebook.com/drtechniko
Wow, brillant idea!! I can’t wait to try it out with my childs. I would like to share with you an idea that came to me while reading the comments on how to teach the decision making part. Just to see what are your feelings about it. –You build a simple maze out of blue floor mats that you can find in a gym (or with any other material at your disposal). -There is an entrance to the maze and an exit. Then you jusk ask them to find a way to tell the robot how to get out of the maze. -Very likely they will just issue a bunch of turn and forward commands. Then you modify the maze -ask them if their program still works. -and how they could give something to the robot that would do the job in any maze. -maybe hint them to a “look” command and what happen if you follow a wall —but follow is not undestood by the robot. Anyway thanks for the idea. It is very inspiring.
Thank you Yves. That’s more or less the plan for my next class. Only difference, to spice it up I will ask the kids to build obstacle courses for each other so they ‘ll try to play both the “programmer” and “QA” roles and hopefully get some rivalry going. Hopefully I can run the class next month and post an article about it.
Competition sometimes works better for boys than for girls. If you want to be gender-inclusive that’s an important consideration. (I was a competitive girl in some arenas but not others.)
Even without competition, I’d guess that QA can be fun for both genders to point out faults and flaws in other programmers’ programs, once they get the idea of it.
The game is not really about competition. The kids are working independently with their parents to get to the ball and back, each kids at his/her own pace and at their own space in the room.
It’s mostly the parents who are looking around to see what the other kids and parents are doing.
Especially after their parents bring the ball back, and they get to create their own moves, they start focusing even more on what they want to do and lose interest at what the other kids are doing.
My buddy and I are teaching my son (5) to play RoboRally. His first game he beat us (we helped him at the beginning). The second game he came in second. Also, MIT labs has the free “Scratch” drag & drop visual programming environment. My son loves playing with that. He told me he wants to be a video game programmer when he grows up…we’ll see 😉
This sounds very familiar to a flash game I found a while back.
http://www.kongregate.com/games/Coolio_Niato/light-bot?acomplete=light
Same basic concept of tiles to “program” your robot for a certain goal. It also has some nice extensions into functions and loops. There are some neat ideas in it that could be used in the game you described or as an extension for them to play at home.
how many years i’v trying to teach my children how to program??… now, i’ll try this with them and i hope it works, Thanks dr techniko.
Thanks for this post. I think what is awesome about this is that it gets kids learning how to problem solve without the process spoon fed to them. So many courses in school now simply teach kids to solve the problem using a given set of formulas, not actually allowing them to create their own method.
The brilliance in this is leaving room for the creative mind of the kids to expand. In essence, give them very little and then let them discover a solution for themselves. I’m a musician focusing on improviasation and composition, often doing clinics with kids. I’ve found that when I give kids a strict set of rules to follow, they have a hard time with getting started (or having fun for that matter). All kids need is the initial push, and then the creative juices get going once they start having fun creating. Conversely, I’ve found that adults need a strict set of rules to get going, the explorative nature of the creative process seems to be snuffed out by always being taught how to do something rather than discovering it.
This is fantastic. God knows how much stuff in high school I just didn’t care about and now need, mostly because I was too short sighted to see the relevant applications of them.
Things like this are great for both being interesting, informational and also showing kids what they might use these skills for.
One of the things I much appreciate about my little brothers new school curriculum in the UK is that assignments are goal oriented and at the end of each ‘semester’ they have to write about possible uses.
I wanted to use Rur-Ple http://rur-ple.sourceforge.net/en/rur.htm to introduce programming to my child but as a beginning step this seems more intuitive .
Thank you DrTechniko, this is a great idea.
This type of teaching has been available in Lego’s Mindstorm robotics system for at least 7yrs
BRILLIANT! I’m thinking this would make a great drinking game, too, but I haven’t worked out the details yet.
This is great and I’ll try it with my own kids!
On way to introduce loops and desicion making is to say the same program needs to run on different robots. Three steps forward results in a different location on a small robot then a big robot.
Great work!
I’ll be happy to try this myself as well.
I have a comment regarding:
> “Learning how to program is going to be the most useful new skill we can teach our kids today. ”
mmm…
I would say – learning how to Love is probably the skill I would like to know how to teach! 🙂
Cheers!
Udi
Love is an emotional and mental state of being and a way of life. I wouldn’t classify it as a skill because it doesn’t do it justice. It’s above skills. Very good point!
Please check out ALICE.ORG – a 3D, drag and drop, visual experience creator, which generates code that is correct & gets into oo thinking, AND the most brilliant intro to concurrent programming I’ve ever seen! This from a prof of comp sci from the ’70’s and 80’s.
So many people here seem to suggest that the kids should eventually learn OO style programming. That is exactly the wrong thing to do. I think they should be kept away from OO style till adulthood or forever. OO as seen in “adult” programming-languages (like Java/C#) is an artifact that unnecessarily ties actions to nouns (objects). Go Google and read “In the Kingdom of Nouns” by Steve Yegge if you haven’t. As such OO will be a great handicap at learning functional programming which would come natural to them as beginners.
I think the style of teaching by DrTechniko here is just fine – this is already a natural functional style; notice that the kids are working with actions without setting/updating any values in value-holders. After loops, conditionals, composition the next step should be working with actions that use other actions (continuing the functional style). When teaching loops, please don’t teach mutation- setting a value in a value-holder and updating it to loop again; instead encourage what the kids already did (10 times step-forward) – using a helper/action like ‘times’ or loop that knows how to repeat.
Once they master the current functional style, they could eventually be introduced to principles like inheritance etc (traditionally learned with OO style) but without tying them to any OOP style that forcibly requires actions to be married to nouns(objects).
Have a look also at http://www.toontalk.com
[…] few years, with initiatives such as Khan Academy or the exciting new programs being developed to teach coding to kids, that we are finally finding a the right place for computers in the education […]
[…] HomeAbout The AuthorRead The Stories Dr. Techniko's Children's Stories Teaching children about science and technology concepts through stories. « How To Train Your Robot […]
I played a game like this (on a gameconvention around 1990,) created by an independent designer but based on the Paranoia RPG World (for the fluff) and played with Warhammer 40K Space Hulk tiles. It became very similar to the later developed board game Robo Rally ( http://boardgamegeek.com/boardgame/18/roborally for description) which is more or less identical to your game, but on a table top.
The special thing about the convention version though was discovery. The game divided all the players into groups (five or so) and each group in our case had about five players that shared one sheet of anonymously tagged checkboxes.
The checkboxes were either binary (yes/no), 8-bit (256 checkboxes in an 8×8 square grid) or 64 checkboxes (or so, i really don’t remember exactly 🙂 in a row (that turned out to be character strings).
Noone knew what anything was for in the beginning, but you had to fill in the boxes and give to the gamemasters who then acted out and showed each group separately what their choices resulted in on a gradually expanding gameboard (after you discovered how it looked)
What each group was, and what the sheets represented was a robot each and it’s controls. It was particularily difficult since the checkboxed was assigned to different individuals in the group, so to different players on one sheet controlled the right or the left traction belt/leg etc. You had to turn on your speakers/radio before your characterstrings turned into speach that the other playergroups/robots could hear, if they had turned their ears/microphones/recievers on! There were also other extremities, you could rotate your torso and head individually (different players controlled each!) and also weapons that could destroy walls, floors (turniung them to traps) and other player robots of course.
It was ofcourse extremely complex and confusing, but very very funny and rewarding.
In the end it turned out it was a testing facility for Artificial Intelligence processors in robots (which each group and sheet represented) and the board was a labyrinth with a few traps and one exit that you were supposed to find (and without being told to do this!)
The reward for the sucessful robots was to be turned off, dissected and returned to the drawing board (consisent with the typical Paranoia RPG black comedy cynicism).
I’m very sorry I don’t have the whole setup in my possession, but I hope that someone has the game design qualifications to restore it. I’d really like to play it again some time.
Reblogged this on Little Seeds Academy and commented:
Something fun to try with your kids…
[…] To read more about the class, you can visit the blog post on DrTechniko. […]
Amazing Ideas Dr. Technico
Teaching young minds the technology stuff is a very good work for future geniuses
[…] https://drtechniko.wordpress.com/2012/04/09/how-to-train-your-robot/ […]
Your blog is so creative. This game actually reminds me a game we used to play in summer camps, called “sugar-soy-glue”. Basically, we had to build a language around these three words plus a few more, mostly for brevity, and navigate a team-mate to execute sometimes very complex tasks. My son is too small to learn how to program yet but I’m already looking forward to teach him.
[…] KidsRuby, TortueScript (pour les nostalgiques de Logo)… Une mention particulière pour DrTechnico, un jeu sans ordi pour apprendre la programmation. L’idée est de piloter un robot (en fait […]
[…] How To Train Your Robot CodeClub ict STEM STEMNET […]
[…] on drtechniko.com […]
[…] How To Train Your Robot – En lek som lär barn grunderna i programmering. […]
[…] har skapat en modell inspirerad av Dr Technicos workshop How to train your robot och Sorteringsalgoritmer i […]
[…] Dr. Techniko wants to educate young minds about computer science and the scientific thought process and one day fill the world with young geniuses. His sci-fi and fantasy stories distill concepts from the latest advances in hot fields, such as artificial intelligence and nanotechnology, into their basic principles and teach them to children through fun story plots and character quests. Using the same cues he teaches kids how to program via games and storytelling. […]
[…] Dr Techniko, How to Train your Robot […]
[…] http://drtechniko.com/2012/04/09/how-to-train-your-robot/ […]
[…] free time I write stories and design games to teach kids about computer science as DrTechniko. My How To Train Your Robot game, for example, lets kids “program” their parents to do tasks for them. It’s […]
Reblogged this on Neo-Alien and commented:
And this, ladroids and robotsmen, is how you teach!
[…] to my man Josh Salvi for calling my attention to this DrTechniko post on “How to Train Your Robot.” Pretty cool stuff. Check it […]
[…] kids programming skills by letting them “program” their parents: I want #1 to do this and send me […]
a really great method!
This is such a great game and way to teach the kids! Genius!
i love your story, thanks for sharing !
I used to do something like that without the card symbols and without the parents. Your method is better 🙂
I love your story, thanks for sharing it. The idea to include the parents is genius. Maybe you will teach some adults programming too, by letting them play java-hamster or rur-ple the robot with children 🙂
*Great* idea and very interesting outcome! Thanks for sharing
[…] children may also enjoy the activity How to Train Your Robot by Nikolaos Michalakis (aka ‘Dr Techniko’). The accompanying teacher’s […]
[…] programmeringslogik genom att programmera dans. Inspiration fick vi från doktor Technikos workshop How to train your robot och från inlägget Säg det med en dans! hos ”Den Lycklige Läraren”. Tanken med […]
We should not be teaching children how to program. This is so wrong it should be made illegal. Children’s brains are plastic, we shouldn’t be trying grow their brains in a specific way. It is much akin to foot binding of Chinese girls in the olden days.
Thank you for your interest Weng, but I’m not sure I understand your point. Isn’t the idea to teach our kids as many thought models as possible so they can figure the best one to apply to solve problems at work or life? Understanding technology and computers through programming is a very helpful skill for a society that keeps relying more and more on information technology. I agree with you that it should NOT be the “only” thing kids learn like fitting their brain into a shoe. That would turn us all into an Orwellian society. However, I feel that the current education system does exactly what you are afraid of. It is like a “one size fits all” shoe towards kids. It’s constraining them to subjects that were approved 300 years ago and kills their creativity. We need the education system to take computer programming seriously like it does math, physics and literature, so that kids get in touch with advanced technology instead of being afraid of it.
Weng Fu,
Thank you for helping me see this in a way I hadn’t thought to, before.
Yes, it is important to help children’s brains grow, and not to limit them, but rather encourage them to develop by exercising them. For this reason, I consider it necessary to expose children to as many different (valid) ways of thinking as possible. Are you suggesting that programming is an in-valid way of thinking? Or, are you simply recommending we show children as many different programming languages as we can, just as we should expose them to as many words, and even natural languages, as we can? I hope the latter, because it would make more sense to me, but if the former, could you please explain, so I can learn something about the way you think?
Even Newton “stood on the shoulders of giants” in order to change the ways people thought about math and physics (the physical world). We cannot expect children, smart as they are, to be experienced in the world, except as we have shown them how it can work. Yes, creativity is central, but every painter must learn to use a paintbrush, and practice. Creativity comes from time spent thinking about something. If we never even allow children to think about programming, about how to instruct these amazing machines, how can we expect them to become creative, coming up with novel ways to use them?
In my belief system, there are limits to our abilities in the physical world, and it is only by spreading our wings and testing our limits that we find our true reach, or wingspan, and learn to fly, as it were.
I hope you have found my response to be interesting, inoffensive, and as polite and respectful as I intended it. I also hope that I am not merely “feeding a troll”. 😀
And in case you DO want to do some real computer programming, have a look at RoboMind (http://www.robomind.net). It is a very simple language, where you can instruct a robot to move around, paint and grab objects. Free to use at home!
[…] 英文原文:Dr Techniko,编译:@EluQ,校稿:伯乐在线黄利民 […]
That’s great! I hope to try it. Everytime when I meet with my nephews and nieces, i always feel that i can’t teach them some good and interesting thing. So i buy some toies for them. Next time i will use your great idea to teach them how to program. Could you send some concrete material about your idea to me ? So i can learn this.
[…] How To Train Your Robot: Teaching kids to program without a “computer” drtechniko.com/2012/04/09/how… […]
[…] children explore concepts away from the computer. Examples of this approach are the PE activity ‘how to train your robot‘ and the ‘how to program your teacher‘ lesson from Phil Bagge. Find more videos to support […]
[…] Till sist vill jag bara nämna att egentligen behöver man varken dator, surfplatta eller mobil för att låta ungarna prova på programmering under lekfulla former. Om det blir för mycket skärmtid kan man alltid gå över till den här smått genialiska robotleken. […]
[…] idea es de Nikos Michalakis, un ingeniero salido del mismo […]
What a fun game! I’ve been trying to think of a fun way to teach programming without a computer.
BTW there’s a great, free iPad game called Kodable that is for kids 5-7 and teaches very similar programming concepts. (disclosure: i made it 🙂
https://itunes.apple.com/us/app/kodable/id577673067?ls=1&mt=8
WOW what a fantastic idea. I am a 4th year Pre service teacher and learning all about teaching programming. As I have an interest in early years I have been trying to work out how I could use scratch with children that have limited literacy and numeracy skills. Your idea is fantastic and I could see how the children would engage and learn this skill so easily. Thanks for sharing your idea.
I’m happy the game helps with your class. I post bits about programming/tech/education on my http://www.facebook.com/drtechniko page. You should definitely subscribe to the page.
We have a Take Your Child to Work Day coming up, and I’m going to try and integrate this with the RUR-PLE Python program for kids who are old enough to type. I love how it’s robot only turns left, and that you can create a function to turn right by turning left three times!
[…] es gab eine kurze Erklärung wie es funktioniert- frei nach Dr.Technikos “How to train your robot”) und dann durften die Kinder […]
Thank you for writing about this class! I read about it a while ago and since then I wanted to do this on my sons 8th birthday. Now he wanted to have a Star Wars birthday party- and I actually was able to combine both!
I invented a quest for them, the Jedi had to search and destroy some plans for spaceships, hidden by the separatists.They had to go on several missions to get them.
One of the missions was to destroy a battledroid factory (they had to throw balls on pyramids of tin cans) , where they were able to catch three battledroids.
Now their task was to reprogram the droids, so they could go through an obstacle course. They had to step over “laserbeams”, crawl through little holes and go through a “labyrinth”, and in the end all three droids had to press a button. Now the way was cleared for the Jedi and they were able to go on in their quest 😉
We had the children in three groups, and they wrote the program together. They took it in turns to be the robot.
And in the end three “buttons” were pressed 😉
They had lots of fun, and they were very concentrated while reprogramming their droids. I loved to see how they worked together!
Unfortunately we didn’t have enough time to try other things, they only had time to do this once, but we want to play the game again, with a bigger obstacle course.
If you like you can see some pictures on my blog, it is the pingback above (Star Wars Geburtstagsparty- Ein Auftrag für die Jedis! | Maufeline). It is written in german, but the pictures speak for themselves 😉
I’ve already posted your blog post on http://www.facebook.com/drtechniko and plenty of people Like it. I love how you modified the game to play a different mission.
Here is activity we came up with for our Take Your Child to Work Day:
http://makersbox.blogspot.com/2013/08/programming-your-parent.html
It definitely worked well over a large age range.
[…] blog post from Dr. Techniko discussed a program he created to teach children about coding principles, via fun […]
[…] session where the parent is the ‘robot’ and expected to respond to specific commands: “How to train your robot”. Every small child’s […]
I came up with something similar to play with my 4 year old, but my 2 year old kept stealing the balls…
it started with verbal commands… I do like the symbols here.
[…] Children too young for Scratch can still play simple programming games. […]
[…] out if my son could “write” a simple program by manipulating symbols. In the spirit of my How To Train Your Robot game, I decided our contract was going to be “If you show me symbol X, I’m going to jump. If […]
Reblogged this on Dick van der Wateren's Blog and commented:
Wow! Dit is cool. De eerste codeerstappen voor kinderen. Kinderen hun eigen programmeertaal laten ontwerpen. De robots zijn hun ouders of andere mensen.
[…] om teori samt enklare övningar samt att sprida kunskap om programmeringslogik med övningar som How to train your robot eller Dansprogrammering som Malin Ströman och Therese Raymond demonstrerade på Skolforum för […]
[…] utan datorer, genom att barnen ”programmerar” sin förälder enligt ett begränsat […]
[…] Je suis tombé sur un article de Nikos Michalakis, alias DrTechniko s’intitulant ‘How To train your robot« . Cet article présente un atelier impliquant l’enfant et un de ses parents et […]
You can find a french translation here https://benjiscorner.wordpress.com/2015/01/13/comment-apprendre-a-votre-robot-ou-la-programmation-en-samusant/ including the dictionnary translation done by Audrey Neveu (https://twitter.com/Audrey_Neveu)
[…] link http://drtechniko.com/2012/04/09/how-to-train-your-robot/ […]
[…] inspired by this post from Dr. Techniko, I came up with my own game, Be the […]
[…] Man kan också skippa dansandet helt och i stället låta deltagarna sätta samman instruktioner för att styra varandra i rummet, se How to train your robot. […]
[…] inspired by this post from Dr. Techniko, I came up with my own game, Be the […]
[…] How to train your robot set of games from Dr Techniko aimed at 3-7 year olds. Teaches basic principles such as programming languages for communicating and programs as recipes. Incorporates repetition, composition, abstraction, loops and conditionals and unit testing. […]
[…] #51, DrTechniko (@drtechniko) explains How To Train Your Robot. It’s a great game for family math […]