Hacker Read top | best | new | newcomments | leaders | about | bookmarklet login

For my daughter (she's now 7), I followed this sequence:

- Exact instructions challenge (from YouTube)

- LightBot app on Android

- Scratch with Harvey Mudd College's course on edX

Snap! has some nice features but the community aspects of Scratch are so much better that she's happy building games there.

Same as you, our goal was not to "learn programming", but just to have fun making things move with your ideas. Just creating rather than passively consuming something.

Because this "coding for kids" mania seems to have gone overboard, I collected links to all the resources I used in the form of a "syllabus" here: https://learnawesome.org/items/1c96e03a-ffff-4579-b69a-0387b...



sort by: page size:


My 12-year-old's project [1] is featured on the Scratch website, which is a great surprise to me. I saw her hanging on Scratch but didn't realize she could go this far without any help from her parents. I actually tried to teach her coding a couple of years ago but she showed little interest. In retrospect, I guess what I taught was too boring. She is clearly more into making animations and minigames. I wonder how I can keep her interest up and help her to transition from Scratch to mainstream programming.

I am a decent programmer in multiple languages (not in Scratch) but I know little about coding education or game development. I googled around and found various articles on teaching kids programming, including [2] and [3] from Hacker News. However, each case is different. I'd love to hear about your experiences. Thank you in advance.

[1] https://scratch.mit.edu/projects/456279794/

[2] https://news.ycombinator.com/item?id=20210641

[3] https://news.ycombinator.com/item?id=24527203


Get the physical book - “25 Scratch 3 Games for Kids: A Playful Guide to Coding”.

Graphical way to program. My eight year old was making games in minutes. And was ‘getting’ it.

i.e.

https://www.amazon.com/dp/1593279906/ref=redir_mobile_deskto...


Look up Code Club and their Scratch modules. I was a volunteer and we had a few kids around that age and they took to it really well. The instructions are clear and walk them through generating something fun right from the start.

I've tried Learn to Program from PragProg and a few other books with the older kids I volunteered with and it just never stuck there was just too much of a gap there still between what they do and what they see. If you do want to go that way though then https://pragprog.com/titles/csjava2/3d-game-programming-for-... something like that but download all the code examples, show them how to run them then just let them play around with changing things and see how it changes on the screen.


My daughter has been "coding" since she was three and my son since he was two. They began with the code and go robot mouse, where you push arrows in the direction and order you want the mouse to go totally ignoring the course and just trying to get the mouse to the cheese on the floor. Next I bought Cubetto, which comes with a board with pieces that give instructions and you place on the board. Mostly one kid sits on the floor and the other will "program" Cubetto to come over to the them.

Now my daughter is five and plays with Scratch Jr. She makes short clips of characters moving around, recording and timing the characters voices, allowing presents and balloons to magically appear, she's not tying in code but instead uses "graphical programming blocks". She also likes codeSpark.

My kids do not distinguish programming from play. I intend to keep up programming = play which I will later transition to a more advanced version of, "I want to make a thing, writing a program will allow me make it." than what my daughter is currently doing. Make it fun, and don't do much in the way of suggestions/feedback, just let them know you'll answer any questions and let them make mistakes.


Get the physical book - “25 Scratch 3 Games for Kids: A Playful Guide to Coding”. Graphical way to program.

My eight year old was making games in minutes. And was ‘getting’ it.

i.e. https://www.amazon.com/dp/1593279906


I taught my nephew (8 year old) about making games and he is doing really well. I suggest Scratch[0] as well. I also enrolled him in the edx Scratch course and so far he is doing great solving assignments and quizzes. Usually he gets stuck when he is not able to understand the question (English is third language to us) and he skips those and continues the course. And every alternate days I sit with him for 2-3 hours and explain him the questions. I also got a PDF of the book Super Scratch Programming Adventure [2] (dead tree version isn't available in my country) and he loves it so far. He has made many games, as part of course and also on his own. He is proud of his accomplishments and I think thats great.

[0] - https://scratch.mit.edu

[1] - https://www.edx.org/course/programming-scratch-harveymuddx-c...

[2] - http://www.amazon.com/gp/product/1593275315


Make programming simple and fun. Scratch is a great gateway for younger kids >10. It'll allow them to see the cause and effects of adding different 'blocks' of code. The Scratch website also offers opportunities to remix previously made games. After 10, possibly introduce 'proper' programming and maybe create a small project together. The older they get the more ideas they may want to pursue on their own. It's best to make programming rewarding but not taxing at an early age, so they don't get frustrated and quit.

If you are looking for the "next step" after scratch for teaching kids how to code, I recommend:

https://www.robomindacademy.com/

It's a text based language, but you program a graphical robot to do various tasks. I've found that it's a great combination of fun and actual coding that helps kids transition from something like scratch to more advanced languages and concepts. I'd say it's good for kids around 12 years old.


For those with even younger kids (they say ages 5-7), you might enjoy checking out Scratch Jr[1]. Building-block style programming with lots of examples for kids to get started on their own! (No affiliation, I just loved what happened when I gave it to my kid)

[1]: https://www.scratchjr.org/


My daughter is almost 5 and she picked up Scratch Jr in ten minutes. I am writing my suggestions mostly from the context of a younger child.

I approached it this way, I bought a book on Scratch Jr so I could get up to speed on it. I walked her through a few of the basics, and then I just let her take over after that.

One other programming related activity we have done is the Learning Resources Code & Go Robot Mouse Activity. She has a lot of fun with this as you have a small mouse you program with simple directions to navigate a maze to find the cheese. It uses a set of cards to help then grasp the steps needed. I switch to not using the cards after a while. We now just step the mouse through the maze manually adding steps as we go.

One other activity to consider is the robot turtles board game. This teaches some basic logic concepts needed in programming.

For an older child, I did help my nephew to learn programming in Python when he was a freshman in high school. I took the approach of having him type in games from the free Python book. I have always though this was a good approach for older kids to get the familiar with the syntax.

Something else I would consider would be a robot that can be programmer with Scratch. While I have not done this yet, I think for kid seeing the physical results of programming via a robot is a powerful way to capture interest.


Best way to learn kids to code is Scratch imho. My 4 year old daughter loves it http://scratch.mit.edu/

I've got a 2 year old and we muck about with http://scratch.mit.edu/ every so often (choose rockets on google images and make them take off to the moon, have steam trains drive around, change directions and play recorded sounds when you press the keys etc). The thing is I'm not doing it to show him how to program, and I have no preference as to whether he ends up knowing how to code, it is just something fun and creative to do; an alternative to playdough, lego or painting and drawing.

I have taught my kids ages 5 and 10 some coding in ScratchJr/Scratch/MakeCode.

I also volunteered at the school to teach kids how to build their own robot from lego, servos, and microbits.

What I have found is that most younger kids are not as drawn to coding.

It is the hands on projects that keeps them interested.

For ScratchJr I did put out a 30 minute project based course on Udemy. It has a few students here and there. But what really works is when I sit down with a class and show them live how to build a project on Scratch Jr.


Author here. Thanks for the feedback.

My son's experience has generally been self-driven via Scratch. I introduced him to Scratch at around age 7 through CoderDojo and he really enjoyed it (I'm a big fan of Scratch for kids--it's the perfect balance of art, creativity and logic with programming concepts mixed in.

I introduced Python, then Javascript, after he asked me about what I do (I was excited that he actually asked, so I ordered the book). I'm more of a web designer/developer, not a software engineer, so I showed him to the tools I know (trying to keep things at his level) and set him on his way. The thought of being able to write his own video game keeps him motivated. He plays with the examples on phaser.io/examples and sees it as something he might be able to do after working through the lessons.

My biggest concern is pushing him into something that he doesn't want for himself. It should never feel like work. He likes the CodeSchool videos, jingles and exercises, so he does it. He got tired of the books, so he stopped. There are many long gaps, diversions and pivots, which is totally fine. If he just wants to play outside, build with Legos, read, watch a movie or do nothing, I don't bother him. Programming is not his job, it's just a skill that I think will be useful for him and is something I can actually help him with.

Side Note: I originally had a section in the post about how in the past it was more common to pass knowledge and skills down to your children in the form of trades (farming, sewing, blacksmithing, etc.) and is "computer programming" something worthy of passing down. I thought it digressed a bit too much, so I removed it.


I would say start with Scratch (https://scratch.mit.edu/)

I have tried to teach my kids "programming" but it isn't until they are invested for their own reasons that they really care to learn this stuff. We let my oldest just look around at projects on scratch so he could find things HE was interested in (minecraft, gravity falls, etc) and then he was interested enough to start copying and manipulating projects (we didn't even show him how to do it, he just figured it out). Now he has posted his own first project and had the unique feeling of "shipping" something. I think that "shipping" feeling is the quick feedback kids need to get and stay engaged.


http://www.tynker.com. My daughter started with Scratch Jr. When she turned 9, we got her a chromebook for her birthday, and I read about this site in a WSJ article. She took to it right away. Kids can progress through extensive programming-puzzle tutorials and make their own projects, using a "block" language, python, or Javascript. They can switch between the three supported languages within projects. She is still most comfortable with the block style, given that it abstracts away free-form syntax, but has started working through the python tutorials. A year later she has made dozens of her own projects (mainly simple games) of increasing complexity, which can be published and shared with other kids. She now understands relatively complex concepts like generating random behavior, method calls, variables and even physics engines. Highly recommended.

Can you start him with JavaScript and basic web development instead? That's how I learned around that age (started around 5 or 6). The immediate feedback of being able to change something in text and immediately see the impact was a big thing that helped me. Likewise, something like helping him mod games he plays might be good.

Scratch always kind of struck me as a non-programmer's idea of how to teach children to code personally. (Or at least programmers that didn't start/weren't active as children).


I know I am not answering your question but having played with my daughters (almost 4 and 7) I found http://www.scratchjr.org/ one of the best options. Yes, it is a mobile application but it is much easier than Scratch where the kids have a lot of different blocks, need to use the keyboard and mouse instead of a touch interface and must read. ScratchJr also motivates the story telling side of programming making stories and characters.

Personally, I am rather skeptical of coding toys for very young kids, or to say it in a different way: you can spend one year pushing a 3 year old kid to learn something that at 6 can learn in a few hours and with much more insight.

next

Legal | privacy