Hacker News new | ask | show | jobs
by ChrisRR 2143 days ago
I feel like this is what learning to program is like when english isn't your first language
2 comments

I learned programming before I learned English. I was always confused by PRINT vs INPUT: which one reads and which one writes? So yeah, it could have been grob and bolver or anything.
Ironically, I was undone here by bad pedagogy. The text I was reading said something about "`getch` being the opposite of what you expected since you'd think it gets the character from the computer and prints it to the screen, while `putchar` does the opposite of what you expected and doesn't give you the chance to put anything into the computer".

Now, clearly whoever wrote that text had their own conception of the thing, but my mental model was that the computer is executing the program so it is getting the character from me with `getch` and it is putting the character on the screen with `putchar`. So the actual functionality seemed right.

But when you combined that with the text saying that it was counter-intuitive I was like "Oh okay, got to remember it was counter-intuitive. It's the opposite of what I'd think" and so the text induced me to misunderstand. Fortunately I was a child so I learned pretty rapidly that lots of people write total crap (irrespective of the conception, the author should not have pushed it so hard) and it didn't damage my mental model at all.

Oh man, trust me, by the time you start programming, you'll have already studied English. There's no way around it since non-English documentation is miserable at best.