Programming/Coding Platform for Kids

Questions on how we spend our money and our time - consumer goods and services, home and vehicle, leisure and recreational activities
Post Reply
Topic Author
ThankYouJack
Posts: 6284
Joined: Wed Oct 08, 2014 7:27 pm

Programming/Coding Platform for Kids

Post by ThankYouJack »

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.
User avatar
ClevrChico
Posts: 3394
Joined: Tue Apr 03, 2012 8:24 pm

Re: Programming/Coding Platform for Kids

Post by ClevrChico »

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?
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.

There's numerous Reddit thread on starter languages. It used to be BASIC, but I'm 1,000 years old now.
MrNarwhal
Posts: 296
Joined: Sun Dec 19, 2021 8:20 pm

Re: Programming/Coding Platform for Kids

Post by MrNarwhal »

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.
Sam_957
Posts: 190
Joined: Tue Oct 27, 2020 7:04 pm
Location: USA

Re: Programming/Coding Platform for Kids

Post by Sam_957 »

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.
My other vehicle is an index fund.
niagara_guy
Posts: 1358
Joined: Tue Feb 11, 2020 7:32 am

Re: Programming/Coding Platform for Kids

Post by niagara_guy »

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.
RandomPointer
Posts: 343
Joined: Sat Nov 23, 2013 12:38 pm

Re: Programming/Coding Platform for Kids

Post by RandomPointer »

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.
Topic Author
ThankYouJack
Posts: 6284
Joined: Wed Oct 08, 2014 7:27 pm

Re: Programming/Coding Platform for Kids

Post by ThankYouJack »

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.
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?
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
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.
Makes sense, thanks. Support would be me, Google, YouTube, and possibly an LLM.
flyingcows
Posts: 781
Joined: Sat Apr 20, 2019 8:13 am

Re: Programming/Coding Platform for Kids

Post by flyingcows »

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)
RandomPointer
Posts: 343
Joined: Sat Nov 23, 2013 12:38 pm

Re: Programming/Coding Platform for Kids

Post by RandomPointer »

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 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
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.
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.

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.
User avatar
CyberBob
Posts: 3404
Joined: Tue Feb 20, 2007 1:53 pm

Re: Programming/Coding Platform for Kids

Post by CyberBob »

Since you mentioned you had an iPad, have you checked out Swift Playgrounds?
User avatar
Elric
Posts: 838
Joined: Fri Dec 07, 2018 11:23 pm
Location: Virginia
Contact:

Re: Programming/Coding Platform for Kids

Post by Elric »

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.
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.

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)
heywhoathere
Posts: 211
Joined: Mon Mar 14, 2022 7:18 pm

Re: Programming/Coding Platform for Kids

Post by heywhoathere »

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 :twisted:
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?
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 Let them use Chatgpt? I'm leaning towards yes as it's such a powerful learning tool, but trying to think of any downsides.
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.
gavinsiu
Posts: 6624
Joined: Sun Nov 14, 2021 11:42 am

Re: Programming/Coding Platform for Kids

Post by gavinsiu »

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.
Dottie57
Posts: 13341
Joined: Thu May 19, 2016 5:43 pm
Location: U.S.

Re: Programming/Coding Platform for Kids

Post by Dottie57 »

CyberBob wrote: Sat Sep 07, 2024 1:12 pm Since you mentioned you had an iPad, have you checked out Swift Playgrounds?
+1
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
Fclevz
Posts: 676
Joined: Fri Mar 30, 2007 11:28 am

Re: Programming/Coding Platform for Kids

Post by Fclevz »

Dottie57 wrote: Sun Sep 08, 2024 7:03 pm
CyberBob wrote: Sat Sep 07, 2024 1:12 pm Since you mentioned you had an iPad, have you checked out Swift Playgrounds?
+1
+2
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.
eurobogle
Posts: 124
Joined: Sat Jun 07, 2014 6:40 am

Re: Programming/Coding Platform for Kids

Post by eurobogle »

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.
rogue_economist
Posts: 881
Joined: Mon Apr 01, 2024 3:52 pm

Re: Programming/Coding Platform for Kids

Post by rogue_economist »

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
Topic Author
ThankYouJack
Posts: 6284
Joined: Wed Oct 08, 2014 7:27 pm

Re: Programming/Coding Platform for Kids

Post by ThankYouJack »

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"

Fclevz wrote: Sun Sep 08, 2024 10:19 pm
Dottie57 wrote: Sun Sep 08, 2024 7:03 pm
CyberBob wrote: Sat Sep 07, 2024 1:12 pm Since you mentioned you had an iPad, have you checked out Swift Playgrounds?
+1
+2
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.
Great, I downloaded SwiftPlaygrounds and will give it a go.
rgs92
Posts: 3479
Joined: Mon Mar 02, 2009 7:00 pm

Re: Programming/Coding Platform for Kids

Post by rgs92 »

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
User avatar
quantAndHold
Posts: 10477
Joined: Thu Sep 17, 2015 10:39 pm
Location: West Coast

Re: Programming/Coding Platform for Kids

Post by quantAndHold »

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
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.
User avatar
Elric
Posts: 838
Joined: Fri Dec 07, 2018 11:23 pm
Location: Virginia
Contact:

Re: Programming/Coding Platform for Kids

Post by Elric »

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.
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):
"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."
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.
"No man is free who must work for a living." (Illya Kuryakin)
Valuethinker
Posts: 50905
Joined: Fri May 11, 2007 11:07 am

Re: Programming/Coding Platform for Kids

Post by Valuethinker »

ClevrChico wrote: Sat Sep 07, 2024 7:25 am
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?
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.

There's numerous Reddit thread on starter languages. It used to be BASIC, but I'm 1,000 years old now.
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.

There used to be Prolog (object oriented programming) which taught some good fundamentals of using logic etc.
nature_coast
Posts: 10
Joined: Sun Jun 11, 2023 5:28 pm

Re: Programming/Coding Platform for Kids

Post by nature_coast »

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 :happy )
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.
Post Reply