Live data from Hacker News

Ask HN: How would you teach teens to code in 2019?

news.ycombinator.com

61–70 of 88 posts

Re: Ask HN: How would you teach teens to code in 2019?

#63
If I had the time to construct exercises I would use a very primitive game engine to teach these things. Depending on the students math level you could focus on the interactions and their logic or the math of physics (in a simple way).

This idea is biased to my own experience.

The benefit of this approach is that it teaches that computer science on its own is great. If you add an understanding of science and math, it can be even more powerful.

I think working with numbers is something programming "snaps to" easily.

The weakness of this approach is that anyone who thinks they're weak at math or logical thinking ends up possibly feeling left out.

For example:

- if Mario touches an enemy, he should loose a life

- if Mario has a power up active he should go back to original form

- implement Mario's jump

- implement Mario's movement

- make it inertial

- implement gravity

- implement momentum

- etc..

Re: Ask HN: How would you teach teens to code in 2019?

#64
post #6

Agreed that they should show an interest before you embark on this. Finding joy in general education is more important than job skills for that age. That said, Ruby and JS are not great languages for teaching fundamentals. They (especially JS) have a lot of weird design decisions that don't translate to other languages and don't map neatly onto problem spaces. If you insist on JS, start with TypeScript at least. But…

Seconding the idea of finding them problems that they can solve or things they can build that they find interesting.

Programming to make their homework easier? Great.

Programming a game they can show their friends, that lets them compete to get a high score? Great.

Programming some interesting scripts into minecraft? Great.

Programming to learn to how to reorder a red black tree? ="programming is boring"

Re: Ask HN: How would you teach teens to code in 2019?

#65
post #6

Agreed that they should show an interest before you embark on this. Finding joy in general education is more important than job skills for that age. That said, Ruby and JS are not great languages for teaching fundamentals. They (especially JS) have a lot of weird design decisions that don't translate to other languages and don't map neatly onto problem spaces. If you insist on JS, start with TypeScript at least. But…

I don't think waiting for obvious interest is a good idea. I believe in putting as much as possible in front of children as soon as you think they are ready. If they show interest in something, then foster that interest, but don't force them if they don't. I never had an interest in coding before it was put in front of me, and I know many others in the same boat.

Re: Ask HN: How would you teach teens to code in 2019?

#67
I think it would be good to try something different. First I would get them good at typing code. This way they will not have to think about typing and thinking, they can just think. Second I would figure out a way to get them used to the concepts of programing, like for loops, variables, ect.. by doing other tasks. For example run a soccer drill like a for loop so they are learning secondly. I think this might help with some kids giving up early since its hard. It should be a little easier since they will have some experience with the concepts since they have run the drill before. Hope this makes sense, good luck!

Re: Ask HN: How would you teach teens to code in 2019?

#68
I’m thinking about this for my niece--topics, ideas, pedagogy.

First, I’d say data storage and retrieval. I created my first DB on a Macintosh and FileMaker. Super useful. I still use a DB I started 20 years ago filled with every book I read. Make a project for quickly designing a database and using it. Someday they'll find a use for the skill.

Second, flip the script. Instead of cool projects, teach them what computers are great at. I think algorithms and models/simulations are really on-point. Team that up with learning Jupiter Notebooks, wow.

Finally, maybe you could teach them strategies on how to learn, and mix some computing solutions into it. Audit some Coursera or Edx classes. I recommend Charles Severance [1] and the Guttag and Grimson [2]. The whole course may be over their head, but there are a few really accessible lessons that are super interesting.

Good luck. Whatever it takes.

[1]: https://www.coursera.org/learn/python-network-data

[2]: https://www.edx.org/course/introduction-to-computer-science-...

Re: Ask HN: How would you teach teens to code in 2019?

#69
I've been volunteering to teach high school kids how to program for the past decade and it's been my job for the past two. As many of the other comments recognise, finding the joy in programming should be your number one goal. Having peers to bounce off of and push each other forward is a great way to do this!

One of the programs we run at work is an online 5 week competition where you learn to code (either with Blocky or Python) at the same time. It's called the NCSS Challenge http://ncss.edu.au/challenge . It's aimed at Australian students, but you can give it a go from anywhere in the world.

Teachers often run the Challenge in their classes and we have had a few code clubs run it too. It works really well having a group of kids be able to compete and encourage each other to solve problems.

There are multiple levels, but it increases in difficulty each week at a challenging but achievable rate. At the hardest levels it gets quite competitive with students making programs to compete at playing games (last year was Big2) against each other.

I'd recommend clicking the "Try demo" button at the bottom of http://ncss.edu.au/challenge . Even if you don't sign up, you can get an idea of what kind of problems we see kids getting hooked by. I think there's a lot you could "steal" in terms of how to pose interesting yet simple and informative problems for teenagers to solve.

Post reply on HN