11 ms·
Resources to encourage children to learn to code
- 2Gkashmiri 5y agoshouldn't Gcompris be included because it introduces kids of all ages to a variety of activities, stuff that stimulate the mind. i think if a kid gets hang of gcompris, scratch would look much more "natural" than just plopping scratch without back history.
- throwjs51009 5y agoWow, didn't know about this. Thanks. https://en.wikipedia.org/wiki/GCompris https://en.wikipedia.org/wiki/GCompris
- jcun4128 5y agoI wonder how much of the interest is natural vs. upbringing. I did not grow up around technology but I later on found it on my own (beginning of college) now I develop software for a living. A friend of mine had a child recently was looking into this I also suggested scratch/this baby book on circuits. Also curious the future of development I mean things take work to build but some YT channels hand wave it/make it seem easy. I guess with tools like co-pilot maybe NLP/STT/No Code will be faster/easier to make things.
- pletnes 5y agoI just have to recommend codecombat.com. I’ve been playing it with my 6/7 y old and we can now discuss the simplest concepts like «hey this is a repetitive task, looks like a loop to me». He thinks he’s «gaming» so he doesn’t even know he’s studying programming! The biggest roadblock is that we’re non-native-english so there’s few resources that are age+language appropriate. Few programming languages have been translated! The only one I know about is Excel/VB.
- throwjs51009 5y agoCheck out Snap, MakeCode Arcade and Adafruit Circuit Playground Express: [1] https://snap.berkeley.edu/ https://snap.berkeley.edu/ [2] https://arcade.makecode.com/ https://arcade.makecode.com/ [3] https://www.adafruit.com/product/3333 https://www.adafruit.com/product/3333 [4] https://makecode.adafruit.com/ https://makecode.adafruit.com/ Also check out this tiny old book suitable for a total noob to computers: The Pattern on the Stone - The Simple Ideas that Make Computers Work by W. Daniel Hillis https://www.amazon.com/Pattern-Stone-Computers-Science-Masters/dp/0465066933 https://www.amazon.com/Pattern-Stone-Computers-Science-Maste...
- mgdv 5y agoI'm a Java fan at heart and I've been coding with my 6 year old on [0] Greenfoot. It required a bit of setup for him but we've had a lot of fun. He's writing code using [1]Stride which helps with code blocks [0] https://www.greenfoot.org/door https://www.greenfoot.org/door [1] https://stride-lang.net/ https://stride-lang.net/
- weird-eye-issue 5y agoI can think of nothing more discouraging than if my parents had attempted to encourage me to learn to code
- caffeine 5y agoMaybe you lack imagination.. I can think of a lot of things more discouraging than that.
- js8 5y agoI am not a father, but what I observe works best if the father (or mother) takes the hobby himself first. Kids really seem to be motivated to learn from parents, but you need to let them come to you, instead of you forcing them to learn something you are not interested doing yourself (even in small doses).
- luluganeta 5y agoI'm a father and you're spot on. It's easy to project what you would like children to get into and just tell them to try it, but it's essential to show that you're into it as well (even -- and especially -- if you're not!)
- 62951413 5y agoIf only I had had anyone in my extended family familiar with computers when I was a teenager. But I'm not sure about programming before the age of ~13 or whenever something like algebra shows up in school.
- commandlinefan 5y ago"I'm going to need you to attach estimates to your JIRA tickets and join the scrum at 8:15, son"
- technovader 5y ago12 year old me would have greatly appreciated it. Instead I had to wait until college to get exposed to actual programming lessons and assignments.
- spacec0wb0y 5y agoSome links in the post would be useful. Introducing my 6 year old to CodeAcademy is not something I would ever consider doing. I think the target audience is at least a decade older than that... Botley the coding robot has been a fun introduction in my house. https://www.learningresources.com/media/botley/ https://www.learningresources.com/media/botley/
- jiffygist 5y agoAs a child I really liked making games with Scirra Construct Classic. It was easy to make something playable in just one sitting. Sadly they abandoned it in favor of paid products (construct 2, 3). Today there is an alternative foss program GDevelop. But making web games is not as fun as making native windows games imo :)
- dep_b 5y agoI must be getting old and bitter but a career as a developer is not the first thing I would wish for my child. Perhaps something with a bit more fresh air?
- Rygian 5y agoThere is a sharp distinction between learning to code and committing to a career as a developer. Learning to code is a really useful skill in almost all employment opportunities where technology is involved.
- oytis 5y agoAnd even then, would learning to code early bring anything? IMO for schoolchildren it's better to focus on math, sciences and other things school has to offer. Coding by itself is but a vocational skill.
- Foobar8568 5y agoNative language and math are the two most important skills we should teach to primary school students, 10h of language, reading, speaking, understanding is the basis of everything else. For math, anywhere between 5 to 10h, and remaining hours for geography /history/society /"world discovery" (basic of science)
- mdp2021 5y ago> language[: ]reading, speaking, understanding You forgot formulating - writing essays -: an absolute game changer, one of the most important exercises in primary schools (in some systems).
- Foobar8568 5y agoWriting essay before middle school might be difficult, although dictation is a must too. In France/Switzerland, it's not expected to write long text before middle school, but what I can see, in recent times, be it in math, French or others, kids just need to "fill in the blanks" or worse, check-boxes. They don't practice writing at all.
- uniqueuid 5y agoFor younger children, there is a set of really clever physical / digitally-assited games from Osmo [1] which include a coding-based game. They work by redirecting an iPad's camera with a mirror, thus allowing interaction between physical objects in front of the iPad (such as drawings and small plastic chips) and the software. In the coding game, you get a set of magnetic command bricks (walk, jump, grab) with modifiers (number for length, direction) as well as a loop meta-brick. It works amazingly well and teaches a lot of elementary reasoning skills to younger children. [edit] I should have mentioned: I have two girls and they both like it, so that's my N=2 positive experience. [1] https://www.playosmo.com/en/ https://www.playosmo.com/en/
- tremon 5y agoNot mentioned in the post: https://www.kickstarter.com/projects/qubs/cody-block-introducing-coding-one-block-at-a-time-ages-3-9 https://www.kickstarter.com/projects/qubs/cody-block-introdu... Cody Block is a Montessori inspired, screen-free wooden toy for children 3+, introducing the basics of computational thinking through tangible programming.
- nhoughto 5y agoI look at the self directed learning resources kids have today and am jealous. How many of us have brute forced computers and the abstractions within by hammering MSDOS, all of its weird nooks and crannies with no one to explain anything. I don’t know what I’d do if I could just YouTube any topic and get a meaningful answer 30 years ago, it could be incredible? Would have made things faster but maybe that’s not the point? I’ll find out I guess with my son, it will be interesting.
- Dowwie 5y agoI wonder the exact same thing. My parents bought me a book on turbo c++ in the early-90s because I was interested in programming. I had no idea what to make of it. No context. It wasn't engaging for me. What I really wanted to learn was turbo pascal, so that I could make some cool "BBS stuff.". In the absence of any significant resources or mentoring, my curiosity died on the vine. It's far more frequent, now, to come across people in their early 20s who have been programming since early childhood. The resources are in far greater abundance and the opportunities continue to increase.
- Mezzie 5y agoYeah, it's insane how quickly this changed. I'm 33 and I started programming as a child and that's very unusual in my age group/a bit older. I had a father who knew BASIC, the official HTML, CSS, and JS documentation, and a lot of unsupervised computer time. It's amazing how many variables had to align to make my early experience possible versus what kids grow up with normal access to now.
- senectus1 5y agoyoutube and an interest. My two kids self learn all sorts of interesting skills via youtube videos... obviously I keep an eye on their sources and content but to date its been a fantastic tool for them. My 13 yr son is churning out c# in unity for game making. Entirely self taught. My daughter is learning drawing skills and is doing quite well. pro parenting tip: make the google account for your kids, and then subtly choose what they subscribe to (and unsubscribe) without letting them know. its a great way to guide their way through the cesspit that you tube can be (oh and a premium subscription is a must, or they get inundated with horrendous adverts)
- charcircuit 5y agoThat's how I learned programming as a kid, but substitute YouTube with Google. There are a lot of great free learning resources on the internet. (if you just want to get rid of ads you can use ublock origin instead of buying premium if you are just concerned about ads)
- senectus1 5y agoI use pihole but I need the no ads on their mobile devices as well and a few other features i get with premium.
- spapas82 5y agoI've got a 5 yo (and a 3 yo)... These resources seem to be for older children. Any recommendation for young kids? I've had good success with constructing things (legos etc).
- blowski 5y agoCubetto from https://www.primotoys.com/ https://www.primotoys.com/ was really good for us because there’s no screen.
- gman83 5y agohttps://arcade.makecode.com/ https://arcade.makecode.com/
- dashwehacct 5y agoTwo options that I’ve come across are codemonkey and mit’s scratch. They don’t go too far into the complexities of coding but do appear to bring things down to a level practical for young children.
- marttt 5y agoTurtle Logo in Forth: http://mathscitech.org/articles/turtle-logo-forth http://mathscitech.org/articles/turtle-logo-forth
- Mezzie 5y agoSince they like Lego, could you get them into Roblox or Minecraft? MC you can teach them some basic comp sci/computer/tech things using red stone, and there's a peaceful option if you/your kids aren't into fighting in the game. I haven't used Roblox personally. Another option is if you play games at all, introduce your kids to mods. At that age, I played video games with my dad/watched him and doing things like silly graphics mod replacements (turn Mario's sprite into the poop emoji!) help instill the concept that tech is built out of systems and components that you can change to get the results you want. It's just that since they're 3 and 5, what they want is likely to be quite silly.
- adrianomartins 5y agoWow, awesome suggestions in this subthread. Yes, definitely Lego (imho) is a sure way to get your kids to deepen the thought process involved in playing. I remembered many times as a kid when I had to get creative because I wanted to build something different or simply just because I was missing a specific kind of part. Awesome times.
- scanr 5y agoOcado’s Code For Life is pretty good, especially Rapid Router https://www.codeforlife.education/rapidrouter/ https://www.codeforlife.education/rapidrouter/ which has lessons that start with scratch and then work their way up to Python.
- iainmerrick 5y agoGame Builder Garage on the Nintendo Switch is great. It's a really flexible sandbox that can be used to make decent-looking little minigames (both 2D and 3D). Really nice tutorials and puzzles. It's a great introduction to modern game programming concepts like entity-component systems and 3D geometry. Downsides: - It's purely visual programming with no useful abstraction or reuse mechanisms, so you rapidly hit the limits when trying to build complex logic (although there's a community of players who enjoy working around the limitations in creative ways). - The tutorials are really verbose, with lots of banter among the different characters (very much like a console RPG), so children who aren't strong readers will find it difficult to follow.
- fcatalan 5y agoI've sat twice in the last month with my 9 year old to start making simple games with Scratch following a book someone got him for Xmas (Coding Games in Scratch by Jon Woodcock). So far it's going pretty well, the concept introduction and presentation seems well done and paced. He understands what we are doing and how it's done and naturally experiments by changing parameters and graphics. So he's learning and we are having some fun times. I have not any special desire nor dislike about him becoming a full on programmer, but I keep seeing people around me in all kind of jobs that would be quite better off if they faced some of their tasks with a bit of a "programmer's stance" or could even write simple small scripts to automate stupid chores.
- gsinclair 5y agoOr even use a spreadsheet well. I think any professional person’s job would be made easier with some knowledge of programming.
- Cd00d 5y agoCan you tell me what sort of "workspace" you use when working with your child? I have a 7yo that is starting to show interest in technology, and I'd like to do some visual scripting with her. I have laptops and raspberry pis (though no dedicated monitor for a pi), and she has a chromebook from school that may or may not allow application installations. Do you sit side-by-side? Who drives? Those are the sort of details I'm curious about. When we sit together on a laptop someone seems always frustrated by screen angle or lack of control, and that friction is something I want to minimize as much as possible.
- inanutshellus 5y ago7 can be a bit early, so recognize that your sessions may need to be fairly short. I'd suggest you each have a laptop so you're not constantly stealing the control to demonstrate. When I'm teaching my kids on a laptop specifically, if there's only one laptop it always feels like I'm removing autonomy when I take the laptop from them. ("No, you need to click the touchpad like this, then hold them like this" and "oh, hm, i forget where in the navigation that feature is, give me the laptop.") It breaks the flow and encourages them to mentally coast ("if i struggle, dad will take the laptop and do the heavy lifting for me").
- spyremeown 5y agoWhy would anyone want their children to learn how to code? Sincerely. Why? I rather have my kids play outside, enjoy the nature and our beautiful planet. This is, of course, a projection of my dissatisfaction with the industry as a whole, but I think it's still valid.
- lelandfe 5y agoI’m teaching my nieces how to code because it’s what I’m good at and I like spending time with them If I lived in the same part of the world as them, I’d definitely be playing with them outside too :)
- dashwehacct 5y agoI think your comment is valid. I have thought about this too, and I think the reasoning is as follows. Teaching kids to code empowers them to think differently about the world. Rather than navigating this technological this world as an end user, coding gives them a glance into the behind the scenes stuff and thus allows them to contribute to the evolution of this world. But your right. IMHO Nothing beats a hike in the woods, or better yet learning to build something from raw materials found in the woods (which in turn could have the same effect).
- RcouF1uZ4gsC 5y agoYou talking about having coding replace outside time. However, if you look at where most kids spend their time, a lot of it would be in front of the TV or watching online videos or playing games. I think the people who want kids to code, want coding time as a replacement for watching mindless videos, not as a replacement for outdoor time. So your kid plays outside and then comes in and instead of watching another toy unboxing video, codes up a simple game they can play by themselves or with their friends.
- dashwehacct 5y agoThis is pretty accurate. As a parent, offsetting your kids use or involvement with a particular activity tends to only work if you provide them with an equally interesting alternative. Simply telling your kid to limit their use of a device only goes so far.
- neoberg 5y agoWhy would you encourage your kids to learn to code? Do you not like them? But seriously; I'm not planning to teach my kid to code unless he is really interested in it by himself. I rather have him play outside.
- bennysomething 5y agoMe too.
- senko 5y agoThis is not just a false dichotomy. This is a false dichotomy the size of an aircraft carrier.
- EL_Loco 5y agoSort of. My kids love to play outside. They didn't have tablets and didn't use the computer. A great regret I have now is that during the pandemic we eventually let them play with iPads and got them Minecraft on a donated xbox. We've had to limit their use considerably, but it's still an unfair competition. Learning, exploring, playing outside offers gratification in a different way. On Minecraft he turns it on and 20 seconds later they're in this wonderful magical world where he is some sort of superhero. Imagine if they also had twenty other games to choose from? I really regret letting the genie out of the box. Wish I had waited some years more. Now their time is quite limited, but they've felt how instantly gratifying it is, and are always asking for it, whereas before, they just asked to go swimming, or take a walk in the woods, or build legos, or a dozen other awesome activities. edit: just to add, they still do lots of outside stuff, but it's not like before.
- senko 5y agoEvery kid is different and I try to never second-guess others' parenting style. Rules and limits are important and I agree the screen offers quicker gratification, so we as parents must set and enforce those rules. That said, this changes the subject a bit, as we were talking about learning to code. That's empathically not an instant gratification and we should not equate time spent in front of screen with time spent learning, expanding understanding of logic, cause and effect, structure, etc. And while kids are happy to spend hours gaming, I haven't seen many (in my social circle) that would be happy spending hours debugging some Python, Lua or Sketch code.
- Kosirich 5y agoPerhaps LEGO Boost: https://www.lego.com/en-us/product/boost-creative-toolbox-17101 https://www.lego.com/en-us/product/boost-creative-toolbox-17...
- erwincoumans 5y agoOur kids enjoy the Python 101 in Minecraft Educational Edition. They are familiar with the game, and Python is reasonably kids friendly. Installation was a hassle at home, having to create some special Microsoft account and 12$/year subscription (and not a school/teachers/student version) At school they teach Scratch and Blockly. https://education.minecraft.net/en-us/resources/computer-science-subject-kit/python-101 https://education.minecraft.net/en-us/resources/computer-sci...
- kleene_op 5y agoIf your kid is the curious kind who always loves a good puzzle, I would highly recommend you buy him/her Baba Is You on Steam https://store.steampowered.com/app/736260/Baba_Is_You/ https://store.steampowered.com/app/736260/Baba_Is_You/. The game is odd but in a cute and charming way; it heavily incentivizes logical and out of the box thinking without looking as dry and austere as real programming; it is challenging, but with a well adjusted difficulty curve; and all in all it is a very fun game, whatever your age. I bought it for my sister (around 10) and she's had a blast! I don't think she's particularly interested into getting into programming, but I think any children growing up to be programmers would reflect fondly on this game.
- leobg 5y agoIt’s also on the iOS App Store
- antiterra 5y agoI would suggest, at least as a partial alternative, ‘rube goldberg’ style toys like marble coasters (kugelbahn) or something like Boomtrix. These allow you to create relatively complex systems with emerging constraints and they often need to be debugged. In the case of Boomtrix, the system starts to degrade with use because the trampolines may move as the balls bounce. This need for adjustment and/or tolerance in design informs more physical sciences as well.
- foobarian 5y agoThinking back on why I wanted to code, it was - Entertainment. My computer did not have games, so coding was the next closest thing. Type in a game from a magazine, or make a lookalike game. - Showing off to peers. It was fun to show off to friends what we coded up. Where we grew up it was a thing to make paint programs. UI state management, the trick with XORing lines until ready to paint it in. - More entertainment. Later when computers got better and had more games, it was fun to pirate and crack them. And again share with friends. Partly the problem with today is that there is so much easily available entertainment that you hardly need to do anything to fill your time with games and videos and then some. But, the peer factor is still there where you can show off a custom Roblox or Scratch game or something. So the trick is to find that peer group for your kids. How do you all deal with this? I have huge FOMO living where we live that all the neighbors are going to be jock types that won't be such a peer group. And it's not exactly like you can go interviewing potential neighbors/students in the local school before you move some place - instead I'm in a situation where I will just need to move and cross my fingers. I was thinking of using some kind of meetup site like nextdoor or facebook groups or something in a local radius to put together a crafting group where nerd-minded kids would meet maybe once or twice a week in our garages and we would leave them hands-off with a bunch of tools, supplies, and computers and just be around to answer questions. I wish there was a makerspace near our town because those seem like exactly the kind of environment I would like to foster.
- sjcoles 5y ago> So the trick is to find that peer group for your kids. How do you all deal with this? This really was the key for my development into using the computer as a tool instead of as a device for consumption. Some very nice, and patient, developers on IRC took me under their collective wing at about 12. A few years later I was freelancing for several of them. These experiences greatly changed the way I approach life, problems, and learning. I am forever grateful for those people and attempt to emulate their attitude and decorum when I am helping others learn.
- manueldp 5y agoCheck out the below learning materials. [1] https://teachcomputing.org/home-teaching https://teachcomputing.org/home-teaching [2] https://www.computingatschool.org.uk/teaching-resources/home-learning/learning-activities/learning-activities-for-primary-students https://www.computingatschool.org.uk/teaching-resources/home... Some of them are worksheet based and help kids learn critical thinking , logical reasoning. I liked a activity to make the kid draw different houses he/she sees around and group it based on some characteristic.
- floehopper 5y agoThe Raspberry Pi Foundation's Code Club World [1] is designed for young people aged 9-13. It provides a fun and more gradual introduction to block-based programming leading on to projects using Scratch and Python. [1]: https://codeclubworld.org/ https://codeclubworld.org/
- rileyphone 5y agoI find it unfortunate that there is such a gap in the learning experience between toy like visual programming and being thrust into general purpose languages. Python and Javascript have mountains of historical baggage and sharp corners that no neophyte should have to keep in mind. Papert showed in the 60s that children could learn Logo and learn to program in a textual language. Inspired by him, Kay and Goldberg put Smalltalk in the hands of middle schoolers and witnessed them create a variety of surprisingly complex applications [1]. By the 90s, there was a fruitful current of research around end user programming and the psychology of programming that offered principled insight into what would make a good programming language for learning [2]. Python and Javascript were designed before most of this work, and I strongly doubt much effort was directed this way regardless. Indeed, PL design seems to be driven by whimsy and intuitive notions, which we all know makes for a terrible user interface. Add in the fractured and complicated environments in which programming takes place and I would argue that broader participation in programming is hampered by this unintentional form of gatekeeping. Somehow I began programming in C++ - I’m sure many, if not most, members of this community learned in as harsh an environment. This is a great flex but it also contributes to programmers being a sort of priestly class that can speak the magic of the machine. The future of computation that I am drawn to involves everyone, or at least as many as possible, being given the power to solve their own problems with computers, not just wait for and depend on someone else. 1. https://www.dgsiegel.net/files/refs/Kay,%20Goldberg%20-%20Personal%20Dynamic%20Media.pdf https://www.dgsiegel.net/files/refs/Kay,%20Goldberg%20-%20Pe... 2. https://home.cs.colorado.edu/~ralex/papers/PDF/VL98-scaffold.pdf https://home.cs.colorado.edu/~ralex/papers/PDF/VL98-scaffold...
- holdenk 5y agoI've been working on a book to teach kids data parallel distributed computing with Python and PySpark (Distributed Computing 4 Kids), if anyone wants an early review copy let me know :) or give your e-mail at https://www.distributedcomputing4kids.com/ https://www.distributedcomputing4kids.com/ :)
- NoGravitas 5y agoIn my opinion, there's already too much code altogether. Children should be discouraged from learning to code, or, if that proves impossible, be taught to refactor.
- deleted 5y ago[deleted]
- loopnsortrand 5y agoWhat about pixelpad.io? Really good resource for learning python for kids and even adults
- terrycody 5y agoPico-8 should be in the list.
- codingspot 5y agoNice Article! Thanks for sharing
- nada_s90 5y agoAnyone can share with me tutorials about robotics? I think my children would like it! Thx :x