从一个月之前断断续续地，竟然把A Byte of Python看完了，虽然很多东西也不甚明白，而且忘了大半。但总有了个轻松愉快的开端，总之这本书看起来令人愉快。之后看看《learn python the hard way》，作者的很多话我深以为然，反正那篇NB哄哄的序言把我吸引进来了，结果发现有之前那本书的底子之后看起来太简单了点……但作者关于学习一样东西的许多见解确是很值得一看的。
The Hard Way Is Easier
** A Note On Practice And Persistence
While you are studying programming, I’m studying how to play guitar. I practice it every day for at least 2 hours a day. I play scales, chords, and arpeggios for an hour at least and then learn music theory, ear training, songs and anything else I can. Some days I study guitar and music for 8 hours because I feel like it and it’s fun. To me repetitive practice is natural and just how to learn something. I know that to get good at anything you have to practice every day, even if I suck that day (which is often) or it’s difficult. Keep trying and eventually it’ll be easier and fun.
As you study this book, and continue with programming, remember that anything worth doing is difficult at first. Maybe you are the kind of person who is afraid of failure so you give up at the first sign of difficulty. Maybe you never learned self-discipline so you can’t do anything that’s “boring”. Maybe you were told that you are “gifted” so you never attempt anything that might make you seem stupid or not a prodigy. Maybe you are competitive and unfairly compare yourself to someone like me who’s been programming for 20+ years.
Whatever your reason for wanting to quit, keep at it. Force yourself. If you run into an Extra Credit you can’t do, or a lesson you just do not understand, then skip it and come back to it later. Just keep going because with programming there’s this very odd thing that happens.
At first, you will not understand anything. It’ll be weird, just like with learning any human language. You will struggle with words, and not know what symbols are what, and it’ll all be very confusing. Then one day BANG your brain will snap and you will suddenly “get it”. If you keep doing the exercises and keep trying to understand them, you will get it. You might not be a master coder, but you will at least understand how programming works.
If you give up, you won’t ever reach this point. You will hit the first confusing thing (which is everything at first) and then stop. If you keep trying, keep typing it in, trying to understand it and reading about it, you will eventually get it.
But, if you go through this whole book, and you still do not understand how to code, at least you gave it a shot. You can say you tried your best and a little more and it didn’t work out, but at least you tried. You can be proud of that.
这的确是本很“简单的书”，我觉得作者以下的话可以送给那些妄想走捷径自大而不愿付出的人(No pains,no gains):
Empty before you fill. You will have a hard time learning from someone with more knowledge if you already know everything.
Go learn Lisp. I hear people who know everything really like Lisp.
One final word of advice: Every programmer becomes paralyzed by irrational fear starting a new large project. They then use procrastination to avoid confronting this fear and end up not getting their program working or even started. I do this. Everyone does this. The best way to avoid this is to make a list of things you should do, and then do them one at a time.
Just start doing it, do a small version, make it bigger, keep a list of things to do, and do them.
作者经常让你花上几乎一整周的时间来/记忆/,记忆一定是学习一样东西时非常重要的东西，不管怎样，基本的东西你要记住。这些东西像英语中的词汇一样，是一切开始的基础。所以不要偷懒，/No pains, no gains/.
The most important thing when doing this exercise is: “There is no failure, only trying.”
Just take it slow and do not hurt your brain. Hopefully by now these symbols are natural for you so this isn’t a big effort. It’s best to take 15 minutes at a time with your list and then take a break. Giving your brain a rest will help you learn faster with less frustration.
Happy hacking,happy learning