Live data from Hacker News

Ask HN: It's 2022. Where should I direct the youths to learn about programming?

news.ycombinator.com

71–80 of 192 posts

Re: Ask HN: It's 2022. Where should I direct the youths to learn about programming?

#71
post #50

There's something the "old hackers" know that many CS students don't learn from the start (in the introductory classes), and that is actually how a computer operates. Don't spend a lot of time on this unless he's really interested, but it's a good idea to sit down with him for a few hours and teach him what really goes on inside a computer. I'm talking about the concept of instructions, registers, addressable memory,…

What formal CS education doesn't cover how computers work at a low level? It would seem like the opposite. Most self-taught programmers are probably missing foundational knowledge that doesn't directly apply to their day to day.

Re: Ask HN: It's 2022. Where should I direct the youths to learn about programming?

#72
I suggest Racket to start with. Maybe Ruby later, something fun and flexible to experiment in. Python if it looks like they might actually want to develop it into a skill or a career.

Starting with (modern) JS will turn off pretty much anybody, but probably one of the first things they'll want to learn is how to make a website. Fun JS like game engines might be a good fit.

Python is too magic to start with. It can get pretty complex to follow and debugging a pain.

I would also consider Godot. It's fun and intuitive, syntax is not hard, game logic can be complex but it's closer to the maths they've been studying in school and creating something you can interact and play with is how you get students excited and eager to learn more.

Re: Ask HN: It's 2022. Where should I direct the youths to learn about programming?

#73
post #53

Godot (with GDScript). JS + a browser. C++ and an IDE like Gnome Builder or QtCreator. Ruby and Rails. Ruby and command line.

I'm going to try getting my kids to make some simple games with godot this summer, and learn GDScript along with them.

Re: Ask HN: It's 2022. Where should I direct the youths to learn about programming?

#74
I'd suggest to build a game on Roblox. It's easily accessible through Roblox Studio, it's well documented, it has a young and welcoming community, and it teaches you a lot about client-server architecture. Plus, it comes with tons of freely available assets, you can invite others to work collaboratively, and you can publish your work and get some feedback from friends and family. I feel like Lua is kind of an exotic programming language but it works well in this environment.

Re: Ask HN: It's 2022. Where should I direct the youths to learn about programming?

#75
(NB: Since your son is 18 this probably doesn't apply, but I'll comment here in case it's useful for others with younger children.)

My 7 year old has gotten into programming through her iPad.

In particular, she uses:

  - Tynker
  - code.org
  - Swift Playgrounds
All three have well-considered tutorial material. Tynker is the one she's most excited about, and the one she's currently spending the most time in. Some of the stuff she's cooked up without any help from her dad... really brings a smile to my face.

I'm old enough to have learned programming on a C64 -- BASIC first, then 6510. Back then, the game was to understand the machine and figure out how you could coax it to do new things. Today, so much programming feels like stringing together black (or at least dark gray) boxes, and hoping that the resulting value is greater than the mental overhead of managing said boxes.

Tynker/code.org/Swift Playgrounds hearken back to the immediacy and narrowness that I loved from the old C64 days. My daughter seems to genuinely be learning from them. That moment when she really "got" variables and loops... big moment!

Re: Ask HN: It's 2022. Where should I direct the youths to learn about programming?

#76
post #50

There's something the "old hackers" know that many CS students don't learn from the start (in the introductory classes), and that is actually how a computer operates. Don't spend a lot of time on this unless he's really interested, but it's a good idea to sit down with him for a few hours and teach him what really goes on inside a computer. I'm talking about the concept of instructions, registers, addressable memory,…

What formal CS education doesn't cover how computers work at a low level? It would seem like the opposite. Most self-taught programmers are probably missing foundational knowledge that doesn't directly apply to their day to day.

Every CS program of middling quality or above covers that material, but some may shove that coursework into mostly elective courses. Also, students can pass courses without really learning anything so if it's just one or two courses that really dive that deep over their academic career, they can learn enough to pass and then brain dump it.

Re: Ask HN: It's 2022. Where should I direct the youths to learn about programming?

#77
post #50

There's something the "old hackers" know that many CS students don't learn from the start (in the introductory classes), and that is actually how a computer operates. Don't spend a lot of time on this unless he's really interested, but it's a good idea to sit down with him for a few hours and teach him what really goes on inside a computer. I'm talking about the concept of instructions, registers, addressable memory,…

It's a first year CS assignment in my university to modify the VHDL source of a MIPS CPU to add an instruction as well as to program in assembly. It's not that uncommon either.

This is actually quite interesting, as this seems like something that would be taught in a CE curriculum as opposed to being in a first-year CS course. From the people I know who studied CS they may have exposure to HDL and digital logic in the upper years if they say elected to take a computer archicture course, but their introductory courses mostly focused on programming and algorithms.

I guess it really depends on the school - I have a EE/CE background so I know these things, but the CS people I know mostly don't.

Re: Ask HN: It's 2022. Where should I direct the youths to learn about programming?

#79

(NB: Since your son is 18 this probably doesn't apply, but I'll comment here in case it's useful for others with younger children.) My 7 year old has gotten into programming through her iPad. In particular, she uses: - Tynker - code.org - Swift Playgrounds All three have well-considered tutorial material. Tynker is the one she's most excited about, and the one she's currently spending the most time in. Some of the st…

Seconding this. And Tynker has skins for pretty much anythiNg your kid is currently watching on tv so it’s more alluring that a command line out of the box.

Re: Ask HN: It's 2022. Where should I direct the youths to learn about programming?

#80
I can't believe https://futurecoder.io/ hasn't been mentioned!

It has an integrated Python environment in the browser, so the learner can hop right in! That's not even the best part though; I love how well simple concepts are explained. I've been programming for a long time, so there are a lot of things that I forgot aren't a given. futurecoder explains those things really well.

I really cannot recommend it enough! It is a bit pricey though.. JK it's FREE! They don't push it a lot, but they do have an opencollective if you should feel so inclined to donate [0]. I'm not affiliated; just a relative of someone who benefited.

[0] https://opencollective.com/futurecoder

Post reply on HN