Ask HN: How would you teach teens to code in 2019?
21–30 of 88 posts
Re: Ask HN: How would you teach teens to code in 2019?
#22For me gaming led to wanting to mod the games, which led me learning how mods were created and learning to 'break' the game.
I am not affiliated with them however I did stumble across a DApp programming 'game'
If they like the above at that point I would direct them to other programming languages.
Re: Ask HN: How would you teach teens to code in 2019?
#23The nice thing about Beaker is:
* They can write dynamic apps without needing to write server code. (We are working on note-taking apps and home pages that save to the file system.)
* They can share their stuff and link to each other without needing to publish anywhere. This also makes it a kind of private network, so it feels like a safe place to make mistakes.
* Has a built-in text editor and file manager. Eventually they will learn more - but let’s start with just the HTML, CSS and JS - that’s already a lot to take on.
* Concept of versioning is built-in, so hopefully this will make it easier to teach source control.
Other good tools that I have enjoyed using to teach elementary-age kids: Twine is amazing. And Scratch (as well as Scratch Jr on touch devices) are good preparation.
To determine interest level, I like to have them watch over my shoulder while I build something small for five or ten minutes. (Don’t go too long.) I start by just showing how HTML tags work. This will excite many of them - they may even start to conjure up ideas right away - if it doesn’t excite them, then perhaps the interest isn’t there. (Or they might not understand something like HTML yet and need something simpler.)
Re: Ask HN: How would you teach teens to code in 2019?
#24code for code's sake is usually boring. using code to do something you already want to do can be fun. so start by finding a project. even better if they find the project on their own...
I think trust is also important. So if you can do a collaborative project where you do your bits and they do their bits then it should all work out.
Then you need some imagination. To think of a project. It should satisfy a personal itch. Or a neighbour's problem.
A good breakdown of roles is for adult person to do some hardware, even if the computer interface is just a switch and a relay and then the computer bits can be done by the young person.
I would say that listening is important, particularly if you want the young person to be owning the project.
Re: Ask HN: How would you teach teens to code in 2019?
#25Re: Ask HN: How would you teach teens to code in 2019?
#26Earlier quoted context omitted.
When first learning it's more enjoyable to see an idea translate quickly to reality. JS is great for that purpose. It's very easy to make animations and other fun effects in the DOM or build an extension on top of their favorite site. Once invested they might start research and discover CS fundamentals. Immediately throwing them at typescript without understanding JS could lead to frustration/confusion. They also mig…
I finally learned Javascript after hating two compsci classes that used Java. I really like Javascript or Python for beginners, I think other languages are too strict and are not "fun" to learn for beginners
Strictness with good error messages is much better for beginners. That's why I use the strictest possible language in professional work: if the compiler can do a bunch of work for you, why not let it?
Strictness is like bumper lanes or training wheels.
Re: Ask HN: How would you teach teens to code in 2019?
#27Re: Ask HN: How would you teach teens to code in 2019?
#28Agreed 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…
When first learning it's more enjoyable to see an idea translate quickly to reality. JS is great for that purpose. It's very easy to make animations and other fun effects in the DOM or build an extension on top of their favorite site. Once invested they might start research and discover CS fundamentals. Immediately throwing them at typescript without understanding JS could lead to frustration/confusion. They also mig…
> Immediately throwing them at typescript without understanding JS could lead to frustration/confusion.
I don't understand why you think this would be the case. They could write plain JavaScript in a .ts file and get better error messages. There's no downside.
It's also frustrating to constantly have to check docs for JS libs instead of using autocomplete. A good static type system makes coding much faster and require less memorization of things like parameter order or return types in libraries.
Re: Ask HN: How would you teach teens to code in 2019?
#29I would probably play to their interests with projects that are more concrete than abstract. If they are into video games, lots of games have mod languages and they can start by giving themselves more health, more power, different weapons etc. If they are into social media maybe javascriptlets to edit the DOM on a website to change peoples tweets and take a screenshot, twitter or insta bot that automatically responds to certain types of posts, etc.
Teenagers should be able to grasp non-toy languages and the concept of searching StackOverflow for how to do stuff :)
Re: Ask HN: How would you teach teens to code in 2019?
#30Agreed 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…
Thank you for including this in your comment. So many people are trying to force programming down kids' throats when the child may not even have an interest in it.
Programming is the future! Everyone needs to know how to code! Nearly everyone can write some piece of code for use in their every day life to make it easier! I disagree. Code is good for kids who have an interest in it, because after so many months of not doing it, the kids that didn't refresh the knowledge will be nearly at square one.