Live data from Hacker News

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

news.ycombinator.com

181–190 of 192 posts

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

#181
post #121

Earlier quoted context omitted.

Yes, this is pretty common. For the most part my friends and work pals who are all software engineers or work closely with tech (DBAs, SREs, Sec). Their children aren’t allowed to use the internet unsupervised or in some cases not at all. Pretty much all of us don’t let our kids use social media. For my friends who don’t work in tech, their kids all have social media and use the internet unsupervised.

Why not?

Why don't we let kids drive cars?

Some tools are dangerous if you don't have a certain level of maturity and experience.

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

#182
post #156

Python is a great option because it is high-level, easy to pick up, powerful and has a library for anything they are interested in pursuing. Something like streamlit is cool because you can write a small amount of code to build a useful web app that you can interact with. For data viz related things, Jupyter + Python (maybe Pandas, not SciPy or NumPy unless that sort of math is specifically interesting to them) Javas…

I believe there are plenty of languages better than Python to start programming. Python provides zero interesting or unique ways to look at the world. It's like starting to teach dance with TikTok dances.

Even if that was the case, it might actually be desirable. I think you can't appreciate the uniqueness in the other cases if you haven't met the general purpose mainstream.

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

#183
post #178

Earlier quoted context omitted.

It’s a neurological issue stemming from the protective instinct of parents. Kinda sad actually, when you consider that Aaron Swartz was a member of the RSS working group at 14, after already winning a prize for an online encyclopedia at 12.

I wish my single mom had had the technical savvy to keep me from becoming a porn addict at 12. I had erectile dysfunction when I finally had my first real sexual encounter and it took years to learn how to be with a real woman versus looking at a screen. It also spread into worse more risky behaviors in my adulthood, and I think exacerbated my social shyness and kept me years back in learning how to socialize. I’m de…

Thank you for proving my point.

I also discovered (far more) disturbing porn at 12, but it actually doesn’t preclude you from treating your sexual partners with respect.

(And yes, I had several dysfunctional sexual encounters before I actually grew up)

Inevitably your daughters will discover the unavoidable loopholes.

(Edit: the anger you’re feeling right now is exactly the neurological issue I’m talking about)

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

#184
Here are a number of things that can all be done as threads, over time:

Show them how to make backups, and test them. They need to have confidence that they can recover, and can't damage things beyond repair.

Show them how to use apt-get to install and remove things. This is essentially giving them all of the open source software in the world.

Show them how to use keywords with google, especially -searchterm. This will aid them when they want to find things. Teach them about the "magic words" and how to find them... i.e. annotation instead of markup, that kind of thing.

Set them up a git repository and Notepad++. Teach them how to use it, along with GitHub or some equivalent. Just use plain text until they understand how it all works. Walk them through their first pull request and fork. This gives them the tools required to be able to experiment without losing things, and sets some expectations about working with others.

Set them up with Excel or the Open Equivalent. Show them how purely declarative programming works. Then show them how macros work. Everyone should know how declarative programming works.

Show them how double entry book keeping works. How errors in entry are detected and corrected.

Show them your favorite programming language. Explain how you came to value it, it's strengths and weaknesses. Show them, if possible, some of your code.

Show them lisp, forth, basic and prolog, and explain the strengths and weaknesses of each.

Show them how test driven development works. Make sure they know how to write good tests.

Show them how gnu readline works, have them read the manual for it, and bash (this one is a new thing to me, as an old windows user. You would not believe how powerful that thing is)

For the love of all that is good in the world, teach them how to name variables correctly, how to write useful comments, and how to smell code.

Teach them pair programming, the experience of a few hours can help them skip months of grief. It can be quite a bit of fun to show your kids something new. Don't be surprised when they return the favor.

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

#185

Here are a number of things that can all be done as threads, over time: Show them how to make backups, and test them. They need to have confidence that they can recover, and can't damage things beyond repair. Show them how to use apt-get to install and remove things. This is essentially giving them all of the open source software in the world. Show them how to use keywords with google, especially -searchterm. This wi…

Does this read as true to anyone? This list looks like "gaps to probably fill in before you graduate college", but you would have to have a very particular student to not have them check out in this grocery list of CS-adjacent topics. Like trying to foster an interest in soccer by first measuring out a field, building some goals, and making sure you have the perfect cleats and ball.

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

#186

Here are a number of things that can all be done as threads, over time: Show them how to make backups, and test them. They need to have confidence that they can recover, and can't damage things beyond repair. Show them how to use apt-get to install and remove things. This is essentially giving them all of the open source software in the world. Show them how to use keywords with google, especially -searchterm. This wi…

Does this read as true to anyone? This list looks like "gaps to probably fill in before you graduate college", but you would have to have a very particular student to not have them check out in this grocery list of CS-adjacent topics. Like trying to foster an interest in soccer by first measuring out a field, building some goals, and making sure you have the perfect cleats and ball.

I intended it as a list of things to do over years, not in a week.

One of the first things they teach, sometimes, in pro sports, is silly... how to correctly tie your shoes. You'd be amazed at how many people go their entire lives randomly having to redo their laces. At the professional level, a loose shoe can get you injured.

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

#188

Earlier quoted context omitted.

Haha not a parent but thank you

Oh I didn't mean it like that! Your comment is the parent of this comment and my previous comment is the grandparent of this comment.

Oh lol makes sense parent in the technical term

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

#189
post #156

Python is a great option because it is high-level, easy to pick up, powerful and has a library for anything they are interested in pursuing. Something like streamlit is cool because you can write a small amount of code to build a useful web app that you can interact with. For data viz related things, Jupyter + Python (maybe Pandas, not SciPy or NumPy unless that sort of math is specifically interesting to them) Javas…

I believe there are plenty of languages better than Python to start programming. Python provides zero interesting or unique ways to look at the world. It's like starting to teach dance with TikTok dances.

Dance is such a broad topic... why not start the youth with "TikTok dances"?

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

#190

I took CPSC 110 at UBC with Gregor Kiczales (who worked at Xerox PARC). It was the best course I’ve ever taken. The course can also be completed for free: https://www.edx.org/bio/gregor-kiczales How to code - simple data, and how to code - complex data together make up the material in CPSC 110 (though there are probably some differences). They’re completely accessible with no background requirements. The courses are…

That's great! Thanks for the pointer. And after he watches the class I can dust off my copy of AMOP that's sitting on the shelf in my office and try to teach the kid about metaclasses :)
Post reply on HN