Programming/Coding Platform for Kids
-
- Posts: 6286
- Joined: Wed Oct 08, 2014 7:27 pm
Programming/Coding Platform for Kids
My middle schooler has been into coding for a while, has a good knack for it and uses code.org. It's a great platform that I would recommend for the basics and to get kids interested in programming but we're now looking for the next step up -- possibly game development, a more robust database, better ability to accept user input. I can help quite a bit too especially if it's languages I'm familiar with (JavaScript, C#, SQL, Python)
Do you think an all in one platform would be better at this age, or should we jump straight into web development?
My kids just have an iPad and school issued Chromebook. I don't really want to get them a new computer but I guess that might be in order for web development?
Any recommendations for courses / teaching kids to structure/ organize things, naming variables, etc?
Let them use Chatgpt? I'm leaning towards yes as it's such a powerful learning tool, but trying to think of any downsides.
Do you think an all in one platform would be better at this age, or should we jump straight into web development?
My kids just have an iPad and school issued Chromebook. I don't really want to get them a new computer but I guess that might be in order for web development?
Any recommendations for courses / teaching kids to structure/ organize things, naming variables, etc?
Let them use Chatgpt? I'm leaning towards yes as it's such a powerful learning tool, but trying to think of any downsides.
- ClevrChico
- Posts: 3399
- Joined: Tue Apr 03, 2012 8:24 pm
Re: Programming/Coding Platform for Kids
Older, but capable used business grade laptops can be found on EBay for $50 - $100. Your kids are good age to start learning Linux and working with a command line, which is just as important as programming languages these days. My experience with school devices and their cloud accounts, is that all the data gets deleted when the kids switch schools.ThankYouJack wrote: ↑Sat Sep 07, 2024 7:10 am My kids just have an iPad and school issued Chromebook. I don't really want to get them a new computer but I guess that might be in order for web development?
There's numerous Reddit thread on starter languages. It used to be BASIC, but I'm 1,000 years old now.
Re: Programming/Coding Platform for Kids
Computers are cheap now. I installed my first Linux distribution around that age. There's plenty to explore.
If your kid has their own project ideas, I'd let them run with whatever resources they want to get the job done. If the intent is to do structured training then the official manual is a good place to start before jumping to Google or ChatGPT.
Middle school is also the right age for MATHCOUNTS. Hopefully their school has a team.
If your kid has their own project ideas, I'd let them run with whatever resources they want to get the job done. If the intent is to do structured training then the official manual is a good place to start before jumping to Google or ChatGPT.
Middle school is also the right age for MATHCOUNTS. Hopefully their school has a team.
Re: Programming/Coding Platform for Kids
https://www.khanacademy.org/computing/c ... rogramming
Khan academy has an LLM for kids and learning.
For game dev, you'll need a proper computer. Making mine craft mods would be an option.
Depending on your caution regarding web/social media, some content control on the computer or the network might be in order. We have a router that filters and shuts down network access at 9 PM. We also use the OS functions in iOS/macOS to whitelist individual sites and control app installation.
Khan academy has an LLM for kids and learning.
For game dev, you'll need a proper computer. Making mine craft mods would be an option.
Depending on your caution regarding web/social media, some content control on the computer or the network might be in order. We have a router that filters and shuts down network access at 9 PM. We also use the OS functions in iOS/macOS to whitelist individual sites and control app installation.
My other vehicle is an index fund.
-
- Posts: 1358
- Joined: Tue Feb 11, 2020 7:32 am
Re: Programming/Coding Platform for Kids
Raspberry Pi. Not very expensive, easy projects using Python and a breadboard:
https://www.amazon.com/20-Easy-Raspberr ... 1593278438
but, he may be beyond this already.
I also do Python on Windows PC, I think Python is a good language to start with.
https://www.amazon.com/20-Easy-Raspberr ... 1593278438
but, he may be beyond this already.
I also do Python on Windows PC, I think Python is a good language to start with.
-
- Posts: 343
- Joined: Sat Nov 23, 2013 12:38 pm
Re: Programming/Coding Platform for Kids
Why web development? What is your kid's interest? Game? Mobile? App? Or just plain coding?
Since they just start coding, I would suggest to get something as friendly as possible. You want them to fight coding issues, not the environment. I second getting a laptop with plenty of memory, an SSD, and decent processors. Visual Studio Code is free, good enough, and it can be used for different languages, and debugging experience is good.
What kind of support do your kid have? You want something where they can get help easily.
It can be very frustrating when your code does not work and you have no idea where to start. A good compiler with understandable error messages, a good and helpful community, a set of decent programming tools (IDE), and a capable computer can reduce frustration, and help nurture their interest.
Since they just start coding, I would suggest to get something as friendly as possible. You want them to fight coding issues, not the environment. I second getting a laptop with plenty of memory, an SSD, and decent processors. Visual Studio Code is free, good enough, and it can be used for different languages, and debugging experience is good.
What kind of support do your kid have? You want something where they can get help easily.
It can be very frustrating when your code does not work and you have no idea where to start. A good compiler with understandable error messages, a good and helpful community, a set of decent programming tools (IDE), and a capable computer can reduce frustration, and help nurture their interest.
-
- Posts: 6286
- Joined: Wed Oct 08, 2014 7:27 pm
Re: Programming/Coding Platform for Kids
Thanks, great suggestions so far!
I don't mind getting another computer, they're cheap enough, it was more not wanting to get one more device for our house.
I don't mind getting another computer, they're cheap enough, it was more not wanting to get one more device for our house.
Good question. I have a lot of web dev experience so that why I was leaning towards that. But the bigger interest is game development. My kid is a much better artist than myself so could make graphics for games too. I'm wondering if Unity could be worth diving into or too much of an initial learning curve?RandomPointer wrote: ↑Sat Sep 07, 2024 10:14 am Why web development? What is your kid's interest? Game? Mobile? App? Or just plain coding?
Makes sense, thanks. Support would be me, Google, YouTube, and possibly an LLM.RandomPointer wrote: ↑Sat Sep 07, 2024 10:14 am
Since they just start coding, I would suggest to get something as friendly as possible. You want them to fight coding issues, not the environment. I second getting a laptop with plenty of memory, an SSD, and decent processors. Visual Studio Code is free, good enough, and it can be used for different languages, and debugging experience is good.
What kind of support do your kid have? You want something where they can get help easily.
It can be very frustrating when your code does not work and you have no idea where to start. A good compiler with understandable error messages, a good and helpful community, a set of decent programming tools (IDE), and a capable computer can reduce frustration, and help nurture their interest.
-
- Posts: 804
- Joined: Sat Apr 20, 2019 8:13 am
Re: Programming/Coding Platform for Kids
I'd start by figuring out what kind of projects kid would be interested in, and then figure out what language(s) and technologies to select for that project.
When I was growing up I was really into playing video games, and building games became my initial projects. Those projects worked well for me because I was super interested and it held my interest well enough to motivate me to go down all the various rabbit holes one encounters when building any software project for the first time.
There are probably better tools these days, but I built some simple 2D games with SDL:
https://www.libsdl.org/
I used C++ with SDL at the time but you could use C instead, C is probably a much better starter language (IMO). SDL isn't a game engine so you would need to build the underlying systems, but the nice thing about that approach is that instead of learning something like Unity you can take it one step at a time: "How do I handle input, how do I draw to the screen, how do I render a tilemap, how do I do pathfinding on the tilemap, etc)
When I was growing up I was really into playing video games, and building games became my initial projects. Those projects worked well for me because I was super interested and it held my interest well enough to motivate me to go down all the various rabbit holes one encounters when building any software project for the first time.
There are probably better tools these days, but I built some simple 2D games with SDL:
https://www.libsdl.org/
I used C++ with SDL at the time but you could use C instead, C is probably a much better starter language (IMO). SDL isn't a game engine so you would need to build the underlying systems, but the nice thing about that approach is that instead of learning something like Unity you can take it one step at a time: "How do I handle input, how do I draw to the screen, how do I render a tilemap, how do I do pathfinding on the tilemap, etc)
-
- Posts: 343
- Joined: Sat Nov 23, 2013 12:38 pm
Re: Programming/Coding Platform for Kids
I understand where are you coming from. If you get a PC, it may make Chromebook redundant, and replacing it.ThankYouJack wrote: ↑Sat Sep 07, 2024 11:10 am Thanks, great suggestions so far!
I don't mind getting another computer, they're cheap enough, it was more not wanting to get one more device for our house.
I think the challenges might be: understanding the language, understanding the libraries (Unity), and the target platform. If they want to build a game on the web, it is different than building a game on desktop or phones.ThankYouJack wrote: ↑Sat Sep 07, 2024 11:10 am
Good question. I have a lot of web dev experience so that why I was leaning towards that. But the bigger interest is game development. My kid is a much better artist than myself so could make graphics for games too. I'm wondering if Unity could be worth diving into or too much of an initial learning curve?
....
Makes sense, thanks. Support would be me, Google, YouTube, and possibly an LLM.
like flyingcows mentioned, pick the right language and technologies.
Just to give an example, how about building a web game with TypeScript? IMO the language is cleaner than JavaScript, yet the knowledge is transferable, your kid will have you as support, there are tools to support it (VS Code is free and decent), and the community is strong.
Challenges are great, but being stuck is bad for morale. The ability to debug, to understand the error, and to get help is a must.
Here, I am making a lot of assumptions about your kid's interests, proficiency, and desire. So my feedback is limited.
Re: Programming/Coding Platform for Kids
Since you mentioned you had an iPad, have you checked out Swift Playgrounds?
Re: Programming/Coding Platform for Kids
I like the Raspberry Pi idea if they'd be into it. The ability to mix physical electronics,.sensors, actuators,.etc. can make it quite interesting.niagara_guy wrote: ↑Sat Sep 07, 2024 10:00 am Raspberry Pi. Not very expensive, easy projects using Python and a breadboard:
https://www.amazon.com/20-Easy-Raspberr ... 1593278438
but, he may be beyond this already.
I also do Python on Windows PC, I think Python is a good language to start with.
Just to clarify,.they may be past the projects.in that particular book, but one won't outgrow a Pi.
Same with Python, although unfortunately it's not a great choice for graphics games or mobile apps. But a number of algorithmoc.trading companies were recruiting at this year's Pycon!
"No man is free who must work for a living." (Illya Kuryakin)
-
- Posts: 212
- Joined: Mon Mar 14, 2022 7:18 pm
Re: Programming/Coding Platform for Kids
IMO for absolute beginners, the best thing you can teach them is how to read documentation/manuals and figure things out for themselves. Being able to "RTFM" has made me and lot of others quite a bit of money
MacOS is probably the most developer-friendly OS available, but any cheap Windows laptop that can support WSL2 (Windows Subsystem for Linux) will work. WSL can get a bit wonky in regards to container networking, so if they want to play around with stuff like Kubernetes or Docker Compose it can get a little hairy.ThankYouJack wrote: ↑Sat Sep 07, 2024 7:10 am My kids just have an iPad and school issued Chromebook. I don't really want to get them a new computer but I guess that might be in order for web development?
I would actually recommend NOT letting them use ChatGPT or other LLMs until they are more experienced with building their own projects and fixing problems in their code. LLMs are great at generating boilerplate code that "kind of" works, but they will often give you garbage that doesn't work well or will "lie" to you (e.g. sometimes ChatGPT will tell you to import a library that doesn't exist). LLMs can be very useful tools but you need to look at everything they give you with a skeptical eye that only experience can give you.ThankYouJack wrote: ↑Sat Sep 07, 2024 7:10 am Let them use Chatgpt? I'm leaning towards yes as it's such a powerful learning tool, but trying to think of any downsides.
Re: Programming/Coding Platform for Kids
iFrankly, i don't think you need to have a stellar machine for the kids to use. They are not going to build an enterprise grade application with thousands of users. Even a cheap machine will do.
I also suggest not using chatgpt, too. What is important is that they understand how stuff work. This is where the journey is more imortant than the destination. You learn by making mistakes and this is when you have no deadlines or customrs breathing down your neck.
I feel that Python is probaby a good language to start since it's useful and has a interactive nature suitable for experimentation.
I also suggest not using chatgpt, too. What is important is that they understand how stuff work. This is where the journey is more imortant than the destination. You learn by making mistakes and this is when you have no deadlines or customrs breathing down your neck.
I feel that Python is probaby a good language to start since it's useful and has a interactive nature suitable for experimentation.
Re: Programming/Coding Platform for Kids
+1CyberBob wrote: ↑Sat Sep 07, 2024 1:12 pm Since you mentioned you had an iPad, have you checked out Swift Playgrounds?
Life is more than grinding it out in some drab office setting for an arbitrary number. This isn't a videogame where the higher score is better. -Nathan Drake
Re: Programming/Coding Platform for Kids
+2Dottie57 wrote: ↑Sun Sep 08, 2024 7:03 pm+1CyberBob wrote: ↑Sat Sep 07, 2024 1:12 pm Since you mentioned you had an iPad, have you checked out Swift Playgrounds?
Start with Get Started with Code, Learn to Code 1, and Learn to Code 2
Fun game-like graphics while you're learning solid programming concepts.
Re: Programming/Coding Platform for Kids
I'm trying shadertoy.com with my kids today. They like being able to change random things in the source and immediately seeing weird things happen in the animation. This is the sort of thing that got many from the previous generation hooked on programming.
-
- Posts: 881
- Joined: Mon Apr 01, 2024 3:52 pm
Re: Programming/Coding Platform for Kids
Give them an old computer and let them have at it. I wouldn't go overboard on learning a language, certainly not "web development" if they are in middle school. By the time they hit the workforce AI will have changed it so radically that it won't be recognizable. Better to just have a machine to play with and try different things out. Install Windows, install linux, etc. Learning to code really doesn't happen until a need for it arises, once they have something they want to create they can find out what to use for it.
Society grows great when old men plant trees whose shade they shall never sit in
-
- Posts: 6286
- Joined: Wed Oct 08, 2014 7:27 pm
Re: Programming/Coding Platform for Kids
Thanks all, great recommendations. Some more detail:
-> The first app my kid would like to make is a game where where images fly across the screen and you control one image to avoid the others. It'll get more involved, but basically we'll start building simple 2d games like that.
-> We'll probably spend just a few hours a week on it, so the recommendations for "instant" gratification are great. I'd rather have it be a fun, exciting activity where quick progress is made than getting bored or frustrated
-> Ideally it would be something that we can put on the web because not that it's going to take off or be used a lot, I just think it's more fun and exciting "developing for the world"
-> The first app my kid would like to make is a game where where images fly across the screen and you control one image to avoid the others. It'll get more involved, but basically we'll start building simple 2d games like that.
-> We'll probably spend just a few hours a week on it, so the recommendations for "instant" gratification are great. I'd rather have it be a fun, exciting activity where quick progress is made than getting bored or frustrated
-> Ideally it would be something that we can put on the web because not that it's going to take off or be used a lot, I just think it's more fun and exciting "developing for the world"
Great, I downloaded SwiftPlaygrounds and will give it a go.Fclevz wrote: ↑Sun Sep 08, 2024 10:19 pm+2Dottie57 wrote: ↑Sun Sep 08, 2024 7:03 pm+1CyberBob wrote: ↑Sat Sep 07, 2024 1:12 pm Since you mentioned you had an iPad, have you checked out Swift Playgrounds?
Start with Get Started with Code, Learn to Code 1, and Learn to Code 2
Fun game-like graphics while you're learning solid programming concepts.
Re: Programming/Coding Platform for Kids
This is a new NY Times article (sorry about the paywall) discussing programming as a questionable skill in this new AI environment. It gives examples of people who can't find jobs in this area.
https://www.nytimes.com/2024/11/24/busi ... camps.html
https://www.nytimes.com/2024/11/24/busi ... camps.html
- quantAndHold
- Posts: 10515
- Joined: Thu Sep 17, 2015 10:39 pm
- Location: West Coast
Re: Programming/Coding Platform for Kids
2 things…rgs92 wrote: ↑Mon Nov 25, 2024 12:23 pm This is a new NY Times article (sorry about the paywall) discussing programming as a questionable skill in this new AI environment. It gives examples of people who can't find jobs in this area.
https://www.nytimes.com/2024/11/24/busi ... camps.html
First, coding bootcamps have never been the path to riches. Bootcamp grads are at the lowest end of the tech pecking order, and those jobs have always dried up the second the economy turns. That has little if anything to do with AI.
Second, we’re talking about a tech curious middle schooler, not an aspiring software developer. There will always be jobs in tech. And there will always be code that needs to be written, whether the coding is AI assisted or not. In a lot of careers now, not just STEM careers, knowing how software fits into the mix and being able to write a little code is table stakes.
OP’s job is to encourage that curiosity, not steer him in or out of a particular career path in middle school.
Re: Programming/Coding Platform for Kids
To build on this, consider what Cory Doctorow wrote in Little Brother (licensed under the Creative Commons Attribution-NonCommercial-ShareAlike 3.0 license, so it's OK for a long quote):quantAndHold wrote: ↑Mon Nov 25, 2024 2:35 pm 2 things…
First, coding bootcamps have never been the path to riches. Bootcamp grads are at the lowest end of the tech pecking order, and those jobs have always dried up the second the economy turns. That has little if anything to do with AI.
Second, we’re talking about a tech curious middle schooler, not an aspiring software developer. There will always be jobs in tech. And there will always be code that needs to be written, whether the coding is AI assisted or not. In a lot of careers now, not just STEM careers, knowing how software fits into the mix and being able to write a little code is table stakes.
OP’s job is to encourage that curiosity, not steer him in or out of a particular career path in middle school.
You don't have to code for a career, but if you never code, computers are a black box, indistinguishable from magic, that nevertheless will control large aspects of your professional and personal life. It's far better to understand what's inside the box."If you've never programmed a computer, you should. There's nothing like it in the whole world. When you program a computer, it does exactly what you tell it to do. It's like designing a machine -- any machine, like a car, like a faucet, like a gas-hinge for a door -- using math and instructions. It's awesome in the truest sense: it can fill you with awe...
Most of us will never build a car. Pretty much none of us will ever create an aviation system. Design a building. Lay out a city.
Those are complicated machines, those things, and they're off-limits to the likes of you and me. But a computer is like, ten times more complicated, and it will dance to any tune you play. You can learn to write simple code in an afternoon. Start with a language like Python, which was written to give non-programmers an easier way to make the machine dance to their tune. Even if you only write code for one day, one afternoon, you have to do it. Computers can control you or they can lighten your work -- if you want to be in charge of your machines, you have to learn to write code."
"No man is free who must work for a living." (Illya Kuryakin)
-
- Posts: 50910
- Joined: Fri May 11, 2007 11:07 am
Re: Programming/Coding Platform for Kids
I think Python would be first choice. It's widely used, syntax seems fairly straightforward. Teaches fundamental construct. The MIT first year course in programming is available online, I believe.ClevrChico wrote: ↑Sat Sep 07, 2024 7:25 amOlder, but capable used business grade laptops can be found on EBay for $50 - $100. Your kids are good age to start learning Linux and working with a command line, which is just as important as programming languages these days. My experience with school devices and their cloud accounts, is that all the data gets deleted when the kids switch schools.ThankYouJack wrote: ↑Sat Sep 07, 2024 7:10 am My kids just have an iPad and school issued Chromebook. I don't really want to get them a new computer but I guess that might be in order for web development?
There's numerous Reddit thread on starter languages. It used to be BASIC, but I'm 1,000 years old now.
There used to be Prolog (object oriented programming) which taught some good fundamentals of using logic etc.
-
- Posts: 10
- Joined: Sun Jun 11, 2023 5:28 pm
Re: Programming/Coding Platform for Kids
Your child is lucky to have such an engaged parent! These are specific suggestions based on experience.
1. Something fun and that they enjoy doing; you want to give them freedom and flexibility to explore. Also, a topic of interest (I think web development would not be high on the list of a middle-schooler )
2. Things to watch with your child:
-This is a great documentary because it explores the wide-range of jobs at a "creative" company: https://ondisneyplus.disney.com/show/inside-pixar
-Specific to the tool I am going to recommend: https://www.youtube.com/watch?v=GXI0l3yqBrA and https://www.youtube.com/watch?v=o1JIK5W3DRU
3. I have used Unity extensively with younger people (most popular game engine in the world, a lot tutorials, etc.): https://unity.com (It is a great tool for learning math, physics, etc.).
4. Laptop: https://www.bestbuy.com/site/apple-macb ... Id=6602741
5. Tutorial to get started: https://www.gamedev.tv/courses/unity6-complete-3d
6. Development tools: VSCode: https://code.visualstudio.com or now, Jetbrains offers their game development IDE for free (for non-commercial use): https://www.jetbrains.com/rider/
7. And, yes to ChatGPT.
From Unity, they can jump to hundreds of other paths: Physics, Math, Engineering, 3d Modeling (Blender: https://www.blender.org), VFX (Houdini: https://www.sidefx.com), short-film creation (https://www.gamedev.tv/courses/unity-cutscene-creator), virtual production (https://www.youtube.com/watch?v=gUnxzVOs3rk), machine learning (https://learn.unity.com/course/ml-agents-hummingbirds) ---> wherever their heart takes them.
1. Something fun and that they enjoy doing; you want to give them freedom and flexibility to explore. Also, a topic of interest (I think web development would not be high on the list of a middle-schooler )
2. Things to watch with your child:
-This is a great documentary because it explores the wide-range of jobs at a "creative" company: https://ondisneyplus.disney.com/show/inside-pixar
-Specific to the tool I am going to recommend: https://www.youtube.com/watch?v=GXI0l3yqBrA and https://www.youtube.com/watch?v=o1JIK5W3DRU
3. I have used Unity extensively with younger people (most popular game engine in the world, a lot tutorials, etc.): https://unity.com (It is a great tool for learning math, physics, etc.).
4. Laptop: https://www.bestbuy.com/site/apple-macb ... Id=6602741
5. Tutorial to get started: https://www.gamedev.tv/courses/unity6-complete-3d
6. Development tools: VSCode: https://code.visualstudio.com or now, Jetbrains offers their game development IDE for free (for non-commercial use): https://www.jetbrains.com/rider/
7. And, yes to ChatGPT.
From Unity, they can jump to hundreds of other paths: Physics, Math, Engineering, 3d Modeling (Blender: https://www.blender.org), VFX (Houdini: https://www.sidefx.com), short-film creation (https://www.gamedev.tv/courses/unity-cutscene-creator), virtual production (https://www.youtube.com/watch?v=gUnxzVOs3rk), machine learning (https://learn.unity.com/course/ml-agents-hummingbirds) ---> wherever their heart takes them.