How should I introduce my 13-year-old daughter to programming?

6 AsifMushtaq 8 8/30/2025, 12:58:55 AM
I’m an experienced developer, but recently my 13-year-old daughter told me she wants to learn programming—and surprisingly, I find myself unsure about how to get her started.

There’s an overwhelming amount of advice out there. Some suggest beginning with Scratch or other no-code platforms, while others recommend jumping straight into the command line or a “real” programming language.

I’m torn between a bottom-up approach (teaching the fundamentals first and building up) and a top-down approach (starting with something more visual and practical, then filling in the gaps later). If we go top-down, should we start with Scratch or dive directly into a language? If it’s a language, should it be Python, JavaScript, or something else?

Even on the hardware side, I’m debating whether it’s better to get her started on Windows, macOS, or something else entirely.

I’d love to hear from those of you who have introduced programming to kids (or started young yourselves). What worked, what didn’t, and what path would you recommend?

Comments (8)

Herobrine2084 · 1h ago
I'm recommending some video games like Human Resource Machine: https://store.steampowered.com/app/375820/Human_Resource_Mac... It's always fun to "see" the logic being executed and have fun challenges.

On the next step, I believe things like Scratch are pretty good to introduce to programming.

On the web development part, I built a little "game" as a tutorial of my tool: https://luna-park.app/challenge . It's JS with visual nodes, this is used to learn algorithmic for students.

adamgroom · 7h ago
My son is 14 and I got him interested by showing him how to automate navigating web pages with selenium.

We used python as that’s what they teach in school, and was happy with an app that that navigated to Deliveroo and added his favourite McDonalds order to the cart!

codingdave · 9h ago
You'll find that when they teach kids in the schools, they start with the fundamentals. Logic, branching, loops, problem decomposition, debugging. Doing so has even been shown to improve their overall academics because they approach all their classes with an eye to logic and troubleshooting when they get things wrong and it builds resilience and self-correction into their world views.

Even aside from that, it puts them in the same boat as experienced coders, in making their own decisions -- If they know the logic, they can choose for themselves whether they prefer the syntax of Python vs. JavaScript, or any other environment.

DauntingPear7 · 8h ago
I think you’re over estimating the intellect of the average 3rd grader here. I think a gentle and feedback/visually oriented method would be best
codingdave · 2h ago
You are correct that the presentation needs to be age-appropriate, but that is orthogonal to the material being taught.

If you want to see how it all comes together, this is a fairly solid representation of how it is approached for kids in the schools: https://code.org/en-US/curriculum/computer-science-fundament...

sorrythanks · 7h ago
Let her do something visually compelling in a medium she already uses to engage with the computer.

I've enjoyed success in getting people excited by having a person create an HTML button, and write a line of JavaScript that changes the background colour of the page to their favourite colour. After they have done that, and as such feel like a god, then some fundamentals via simple games.

jas0n · 8h ago
What interests her? What excites her? My philosophy of childhood education mostly comes down to inspiring and growing their curiosity. If you can guide her to things that are most interesting, over time she will become more interested in more complex, robust things and will need your help navigating how to do those things.
DauntingPear7 · 8h ago
When I was in 3rd-5th grade I really enjoyed scratch. In middle school I started learning python mostly on my own. I found how Python did classes/OOP extremely challenging and confusing to my middle school brain, but it was pretty simple otherwise.