6 ms·
Reminds me of Zed Shaw's Learn Code The Hard Way approach: > You must type each of these exercises in, manually. If you copy and paste, you might as well just
by RyanMcGreal 14y ago
Reminds me of Zed Shaw's Learn Code The Hard Way approach:
> You must type each of these exercises in, manually. If you copy and paste, you might as well just not even do them. The point of these exercises is to train your hands, your brain, and your mind in how to read, write, and see code. If you copy-paste, you are cheating yourself out of the effectiveness of the lessons.
- adorton 14y agoWhen I was 14, I started learning C from a book that built around this premise. I think it was called "Type & Learn C." It worked - by the end of the summer I was a somewhat proficient C programmer. I still think it's kind of amazing how such simple advice can be so effective. I often find that when I'm struggling to grok a new language or framework, that I've forgotten to hand-type at least a few examples.
- jfarmer 14y agoHere's my current working hypothesis. The part of the body that learns how to program[1] doesn't speak English. You hear it even in the metaphors programmers use: code smell, this "feels" like a recursive problem, "listen to your code," etc. That means to learn as quickly as you can you want as many parts of your body involved -- the English-speaking part, your muscles, your eyes, your memories of all the times you've made a stupid mistake only to have it cause you hours of frustration down the road, etc. [1]: Really, the part of the body that learns anything doesn't speak English. English is just the data exchange format. ;)
- fierarul 14y agoSee neural network deep learning :-)
- sp332 14y agoAlternatively, maybe you should get your English-speaking part out of the way and let your brain "absorb" code patterns as you read or type them, without overthinking it. https://www.youtube.com/watch?v=HzR8x5MgvDw https://www.youtube.com/watch?v=HzR8x5MgvDw
- anthonyb 14y agoI don't know about that, but you do need to at least interact with the code on some level, eg. by cut+pasting, then playing around with the code to make it do different things. Also, I don't know many professional programmers who type everything in by hand. It'll be something copied from a previous project, or cribbed from the documentation / somewhere online, then hacked into shape. Of course, in order to do any of that you need to understand what's going on, but there might be easier ways to do that than manually typing in code.
- RyanMcGreal 14y agoProfessional programmer != person learning to code.
- anthonyb 14y agoProfessional programmers do things in certain ways because it's more efficient. It doesn't necessarily follow that you should change that just because someone is just starting out. Just because they're learning to code, doesn't mean that you should put artificial hurdles in front of them.