Hacker News new | ask | show | jobs
by jamesroseman 3465 days ago
As someone with a few years in the industry who's currently volunteering to help teach high school kids coding for the first time -- you have no idea how easily code confuses newbies.

Take even the smallest snippet:

while (Count <= 3) {

To you or me, this is pretty obvious. I've had kids ask me questions I'd never have thought of because I know this stuff already:

* What do the parentheses mean? * What is Count, is it a Javascript thing? * Is Count being set to 3? (<= looks like an arrow, not necessarily less than or equal to) * What is that squiggle? (meaning the '{') * Is this a program?

I'm with you, the Blockly stuff is hardly legible to me. But to kids learning this for the first time, I can tell you from first hand experience the color/shape/block aspect makes a huge difference.

1 comments

Agreed!

A simple for-loop can be complicated.

First, they need to understand that a for-loop instantiates a variable (i). Then they need to understand that the next step is a limit: i < something. And then they need to understand that i++ means increment i every time that the below code is run.

Nevermind that it makes more sense to go: i = 0, i = I + 1, i < something, that's how it works.

Of course if they don't get that, they may not be cut out for programming. But its far from intuitive.