Live data from Hacker News

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

news.ycombinator.com

81–88 of 88 posts

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

#81
post #15

If I had to teach a class right now, I'd teach them on Raspberry Pi's and with some command line / terminal capability that includes SSH. I would probably bring in mathematics, taking care to separate the two pedagogically. I think the rest of the details would depend on the age of the kids in the class.

Exactly. Command line /terminal should be the first step in any learning that takes place on a computer.

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

#82
post #37

I started with BASIC programs written on my TI-86 to automate math problems; they may find that a useful way to get started, and learning a little BASIC shouldn't be much more brain-damaging than learning Javascript. I kind of have a problem with training people to "code" rather than teaching computer science; feels sorta like comparing a "wine and painting night" to a course in oil painting, in that you might shortc…

I remember geometry in 9th grade. I ended up programming my TI for all the formulas so it would prompt for the variables then you hit enter and viola, perfect answer every time. We had a test where I ended up finishing in about 10 minutes. The second person to finish took 30 minutes +. In hindsight I should have went slower because it was obvious no one could have finished as fast as I had. After the class was dismis…

I had a calculus teacher in 11th grade who followed the same principle. Best math teacher I've ever had. Didn't give us 100%, but the calculator programs were worth extra credit.

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

#83
Initial interest is very important but not enough. The best way to teach teens (not just today) would be by making something simple and interesting together with them. It can be as simple as a "tic-tac-toe". Then add on complications little by little. The language itself doesn't really matter. It's always evolving but the concept is similar through all common languages. Here is my story: I was born in the mid 80' and was curious about computer science. Unfortunately all my computer science classes turned to be super boring at that moment...I decided to switch to economics and finance. Occasionally I used python/sql for some basic scripts at work. But I never understood "the magic" of coding... till recently I started learning coding with a bootcamp. I was so surprised that I really enjoyed it. I loved the problem-solving aspect, the strong logic and the power to create something simply by coding! Now I look back my experience at school. Most old classmates doing well at CS started exploring coding by themselves thru gaming projects. They were so passionate about doing projects, but so much the theories, while I was worn out by most computer science classes filled with blablas. I wish I had done the fun projects with my classmates instead taking boring theory classes at that moment. Coding is such a practical material - different with other STEM subjects. We should teach people first about how to code, then how to code better with all theories behind that.

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

#86
A. Check out archive.org and look for old basic computer game books. Your kids can tackle all the games in JS, Ruby or whatever. Plenty of code to "look" at and it gets them thinking on how xyz work in language A and B.

B. Leveling up will happen naturally when they see a problem and want a solution for it.

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

#87
Show them how Google works. Try to give them some kind of motivation to learn to code. Make sure they know how to read. Demonstrate that you can make money doing it (i.e. by programming yourself and earning money from a product or job.) If they are smart and they are actually interested in coding, they will use online resources to teach themselves. If they are not motivated enough then you can give them projects and pay them for accomplishing them. But they aren't going to get very far if you have to do that.

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

#88
Give them each a raspberry pi, pre install it with risc os, configure it so the start up language is BBC basic 5.

Then have a search on places like 8bs.com and download some of the "type your own xxx xxx game" books, or have a look for "Marshall Cavendish input magazine" if you search around you can find all 52 issues as pdfs.

Have the kids work through the books, and the practical exercises in the magazines.

In the 1980s and 1990s this produced some of the best UK developers and coders around, and inspired an entire generation to write their own softwate, to explore the machine, to tinker about under the hood with things like assembler language, and really understand what's happening inside.

Once they grasp that, change the config of the rPIs and install desktop c, get them writing desktop software and designing guis for their apps so they start to learn high level languages, and how they relate to the low level, use your skills to teach them how users will interact with their gui.

When they start mastering that, jump up higher, compiled vs interpreted, script languages, presentation languages (such as html).

It never did me any harm, I make a pretty good living, I'm an 80s back bedroom developer and proud of it.

Before I submit this though, I know there are going to be many who will cry "we don't need low level knowledge anymore", "what on earth do you want assembler for" or "you old hippy grey beard, bigger off and leave us kids alone", to which I say.....

Trust your gut, it's not about learning assembler, or low level, it's about encouraging exploration, it's about getting them to discover how fascinating the journey they are about to embark on, and not just cramming their minds with syntax and turning them into code monkeys.

Even now, nearly 40 years later, I still love what I do, I'm not afraid to take the lid off windows/linux/macos and break things, because you learn so much more when you learn how to fix your screw ups.

Good developers are born out of passion for what they do, not from nessecity or a sense of future preperation.

Post reply on HN