💾 Archived View for dioskouroi.xyz › thread › 29438050 captured on 2021-12-04 at 18:04:22. Gemini links have been rewritten to link to archived content
➡️ Next capture (2021-12-05)
-=-=-=-=-=-=-
________________________________________________________________________________
Why not try something like Lego Mindstorms[1] or circuitpython devices from Adafruit[2]. Adafruit has some wearable project tutorials that could be fun[3]
Programming a device to do something in the physical world is motivating and interesting.
I've two girls 3 & 5, and they love interacting with contraptions that I make using Raspberry Pi, ESP8266/32 and Sphero. Even building a simple IVR out of Twilio is hours of fun[4].
I was going to recommend Sphero RVR[5] or Bolt[6], but they are currently out of stock.
Forgot to mention, if you have an Amazon Echo, you could try building alexa skills [7] which my kids like too. You can do similar with google home, but I've not tried that.
[1]
https://www.lego.com/en-us/themes/mindstorms
[2]
https://www.adafruit.com/category/956
[3]
https://learn.adafruit.com/category/wearables
[4]
[5]
https://sphero.com/collections/all/products/rvr
[6]
https://sphero.com/collections/all/products/sphero-bolt
[7]
https://developer.amazon.com/en-US/alexa/alexa-skills-kit/ge...
Edit: formatting
Edit2: Added alexa skill
All these suggestions are fantastic. Lego mindstorms got me into programming.
Mindstorms uses Scratch for programming, so you can start with scratch for free without having to make an expensive purchase
Thanks for these suggestions! I must admit almost all of these are totally new to me. Time to do my exploration!
I was programming at roughly that age (I'm 41 now) - basic on an Apple IIe . I think we older folks had it good on a sense that you could make a computer do cool stuff that otherwise would have been unavailable. Computers are so ubiquitous now that introductory programming is boring by comparison. So I'd have no idea how to show a kid something cool they couldn't otherwise do with a computer, the way we could in the 80s.
I don't have a solution, but I wouldn't listen to the people who say "don't bother" either. It's still valuable to learn that stuff young, it puts you in a whole different category vs people who adopt it later. Maybe if you write code yourself you can show her some parts of what you are doing and explain them to her? I remember watching my dad work, and I think that is where kids begin to learn about stuff, even if it's too complex for them to get all of it. Plotting stuff is a good example where there is an easy connection between the code and output, but I'd suggest trying to share whatever you do for research/ work with her.
I like the Swift Playgrounds materials a lot. It's a great grounding in Intro to CS. BUT it quickly gets boring for 9 y/o's. Even gamedev, Roblox, etc. They are digital natives so the novelty isn't a fascination to them, the way it was to us: "you mean I can actually program Goldeneye myself at home???"
The trick is to get them to see code as an enhancement to life. It's fascinating to see the renaissance in table top RPGs like Dungeons & Dragons amongst the youth today. One time we couldn't find the dice set. So I wrote a simple Python N-sided die. And they were fascinated by BigInt: "you mean I can roll dice with as many sides as I want???"
I'm not sure what age she is, but if she likes Minecraft (which it seems many kids are into nowadays), Microsoft has a block programming tool for Minecraft mods (among a few other things) [0]. It looks like scratch, but imo the really cool feature (which may be on scratch, I have no idea) is you can use it to see the equivalent JavaScript or Python version of the code blocks. That might allow her to take the concepts she learns with the code blocks then seamlessly translate them into real world code as she gets older. It seemed neat to me.
_Disclaimer, not a parent_
[0]
https://www.microsoft.com/en-us/makecode?rtc=1
Consider teaching her how to use computers at a very high level first. How to type, how to use a mouse and keyboard shortcuts properly, how to send an email to grandma and grandpa, how to install and uninstall programs, and so on. Those are basic skills she will need as an adult to be productive and communicate efficiently. Programming is not an essential skill for most people and third graders are not giving any serious thought to a future career path.
But above all, make it fun! Just spending time with your daughter is more important than getting her to learn stuff.
> third graders are not giving any serious thought to a future career path.
True, but they are soaking up cultural biases about career paths. 1st graders have zero gender bias in their career thoughts, when asked whether they belong in STEM fields when they grow up. 3rd grade is exactly when girls start saying they don't belong. One of the reasons to get CS going is specifically to shrink that gender gap, and make sure all children feel free to choose whatever path they wish.
She is actually quite good with her basic computer skills by now, partly due to the remote learning over the last year.
As codingdave mentioned below, I see that there’s already some gender stereotype creeping in her thinking. The other day she won a math competition in her class and she was happy because she beat all the boys.
There are a plethora of organizations getting CS into the schools around the USA. They mostly start with the basics of computational thought, not actual coding. They each have their own curriculum, many of which are open source... but as a starting point, you can check out one example at:
https://code.org/educate/curriculum/csf
Thank you. As you and many others here have rightly pointed out, I must start at a higher level. I will check out this link.
Rather than teaching coding, you might try to teach algorithmic concepts. For example, iteration, abstraction, sorting, comparison, search, recursion, partitions, and so forth. These are tools which can be used without recourse to a computer to solve problems.
Thanks! Interestingly i remember I had started teaching her some algorithmic ideas but I didn’t continue with it consistently. I need to get back to that.
Having being exposed to personal computers only in my early teens, most of my time was spent on reading (books for the most part). I feel that, at least for me, reading skills translate well to code. Even writing code didn't feel foreign to me since I had done some private writing on my own. And indeed, this article indicates the same:
https://journals.ufs.ac.za/index.php/pie/article/view/4027
So perhaps general reading/ literacy are a good adjunct skill for coding?
My dad showed me small demonstrations of programming on the Commodore 64 when I was in the third grade. I liked to make up silly rhymes. He showed me how to print out the rhymes sentence-by-sentence with pauses in between for reading, with a little sound effect flourish as each one was printed. By the standards of the time, it appeared to have sound and motion; it engaged the senses, and that got my attention.
The first non-trivial program that I remember writing, in fourth grade, did not have such flourishes. It was a program that implemented a Caesar cipher, so that I and my best friend could exchange encoded messages. Given the cumbersome effort of keying in the text and running the program, it was not much of a convenience over manually encoding/decoding the cipher scheme with pencil and paper :-)
Thanks for sharing this!
Try
It is a free platform and works great when parents (or educators) know already programming.
There are many type of activities included that can be explored (games, draw with code, animations, etc.)
Thank you!
My favorite introduction to computing is through play. I really like the raspberry pi, the scratch environment and the game programming section of the “getting started with raspberry pi” book.
If it doesn’t resonate with her, keep looking around for something that does.
Maybe you could build some projects together? My buddy builds robots and little kit toys with his kids. They have a lot of fun with it, but I suspect they’re humoring him because they just like an excuse to spend time with him.
I spent a few grand on coding/robotics/electronics kids toys for my first grader (okay ..maybe for me too :-p ). Total waste. I definitely get a ton more engagement from exposing the kid to board games. Recently, got Battleships (a bit brain numbing for adults) but it seems to be a hit, and a great tool to teach reasoning.
This reminds me I was getting a bunch of ads on Facebook for these toys during the lock down last year! I resisted buying anything because the quality looked cheap. Good that I didn’t spend anything on them!
Looks like this comment section is heavily leaning towards board games. We play cards with her and she is getting better at strategizing there. I will have to explore board games.
Put her outside with sticks, tools, string and matches. Invite friends and build something then cook something. Sing while you work, and then song more after you eat.
My daughter (7) really enjoyed Scratch — so much so that she asks to do it often, and went and watched all the tutorials on her own. She internalized concepts like loops, user interaction, etc. It’s a nice environment and for me, it’s all about the concepts and less about language syntax at this stage.
Gotta check out Scratch! Thanks
I have been teaching my 8 year old daughter and her class using Scratch.
I put some free lessons up for her class. Link in my profile if it is any help to you.
Thanks, got the link from your profile
Coding sucks. Leave her alone.
Maybe but I want her to figure that out. She doesn’t hate coding. It’s me who has been clueless about where to start.
How about Logo?
https://www.transum.org/software/Logo/
Thanks!
https://projects.raspberrypi.org/en
has a ton of great resources on scratch coding, basic electronics, blender, raspberry pi and more.
Looks great! Thanks
Linda Liukas’ “Hello Ruby” books are wonderful for introducing programming concepts.
teach her physics, information, architecture (language), communication, and translation theory using the human body as the manipulated logic control device.
the overall goal is to build the curriculum to incoroerate as few external systems as possible. focusing on intro information, architecture, communication, translation using music (specifically a flute) to teach morse code, linguistic set theory, frequency manipulation, recognition, resorse management, basic binary logic you can skip the pvp flute or down branch whittled device, and start with the windpipes. break everytging into set theory linguistics with SVO initial to show all constructs are a language that follows this pattern.
you wont need any computers or flutes for years, and by including fencing, and calligraphy which requires you carve your own saber pens you dont need anything other than yourself, and the yard to push her beyond the problem solving capas of uni students
scratch.
https://scratch.mit.edu/explore/projects/games/
I second this.
here's simple tutorial to make real simple game.
https://www.youtube.com/watch?v=1jHvXakt1qw
Thanks! I will check it out now
I copied some code into QBasic to make a fire truck siren come out of the PC speaker at that age. It was amazing. Decades later, I'm pondering Max for Live devices to do essentially the same thing, but more complex. Everything is new to someone at that age, so _anything_ that supports what she's drawn to interest-wise is good.
Teach her Unity. I would have killed to have access to Unity when was her age.
Maybe she doesn't ... need to learn coding at that age?
Really - it's an incredibly over-hyped and overrated skill - especially for the pre-teen set. As in, really, really incredibly over-hyped and overrated.
Meanwhile, you could probably get a lot more mileage out of (and less resistance from) teaching "adjacent" skills like strategy games (ideally physical board games rather than the electronic variety -- but the latter can be perfectly fine as well, if tastefully done). You know, chess, go, backgammon, as well as the modern stuff. Anything involving counting, prediction, planning ("if-this-then-that") and spatial reasoning will definitely give hear a leg up in this realm.
That and ... throw a few Rubik's cubes (and its variants), as well as picture-driven math books her way (especially those with fractals and tessellations and such). Any kind of illustrated science book actually. See of these get any traction.
And don't forget -- a decent scientific calculator. That's one of the things that got me into programming at a tender age (specifically 4th grade) -- discovering things like the x -> 1/(1+x) iteration on my own, and so forth.
Ditto for musical "toys" (aka simple electronic instruments), which are of course another form of computational platform.
As for coding -- if she digs any of the above, she'll get to it on her own, sooner or later. If she doesn't dig any of the above ... then maybe it's just not her bag.
Which is of course perfectly fine as well.
I didn't learn how to code until my freshman year of college, and it was intimidating to hear my peers talk about how they had been coding since they were kids. But I did pick it up then, and learned quickly enough that I could do it professionally (maybe the lack of prior bad habits helped there).
In hindsight, I had a good half-dozen really good opportunities to learn how to code from elementary school and onwards, but none of them stuck until college. I wrote about that a bit on my blog:
https://bobbiechen.com/blog/2021/7/15/opportunities
. I'm perfectly happy not having learned earlier, and I think if someone had been forcing me to write code, there's a good chance I would've rebelled and not even tried it down the line.
Thanks. These are good ideas. I do a lot of math problems with her on a whiteboard in my office and she likes those exercises. I am teaching her how to get a feel for numbers and do calculations in your head, which she is doing really well. I will explore strategy board games as a next step.
Your child likes spending time with you. Doing problems in your office is time with you. Programming is time with a machine.
yes, op have so many resources for her! mathematics, and maybe real computer science
+1 for this. A lot of us look at programming as this holy grail of knowledge for one reason or another, but you have to remember that the process of actually _acquiring_ that knowledge can be extremely soul-crushing and arduous. When I started to take programming seriously, it was only after I had lost all my friends in middle school and had nothing left to lose. It certainly didn't make me any more social, and it certainly didn't improve my life in the way I had expected. Now, halfway up the hill, I don't really appreciate the knowledge I have. For the most part it just makes me paranoid and dysfunctional. That's not to say it's useless, but you _really_ have to let kids decide things on their own volition. Pushing someone into something as banal as programming could have disastrous results if they're not interested.
So, I was a loner to begin with. It was with computers and programming that I made friends and socialized — with the new friend group.