今天在知乎上看了一篇非常有意思的文章,题目是:别把时间浪费在工具选择上。文章大概讲的是作者在跑步之前犹豫穿什么鞋子的问题,最后发现其实随便穿一个就行,重点在于要跑起来。这让我想起大学时候在新生群说的一些难听话,其实表达的也是这个意思。
一直到现在,还时不时的看到低年级在群里问类似这样的问题:“哎呀,谭浩强的书是不是很烂啊,我该看哪本好?”,“c primer和c primer plus哪本适合入门?”,“我该买中文版还是英文版”,“据说中文数据结构很水,我是不是要选英文数据结构”。
对于这些问题,当年年少轻狂,便喜欢口出狂言直接怼。现在仔细想想,其实我真正想表达的意思是:在你入门阶段,相对于纠结书籍是否专业这种进阶选手考虑的问题,更重要的是及早的行动起来。
中国有句俗话叫“光说不练假把式,光练不说傻把式,又练又说真把式。”。那些质疑书籍质量的人,至少在我的观察中,很少有人去真正踏实下来学习并练习编程,更多的人是书买回来翻两页便垫桌脚了。
除了及时行动,我还想说的一个问题是,要脚踏实地。之前在iflab新生大会上说过这个观点,在这再详细解释下。不知道别人有没有思考过这个问题,反正我曾经思考了很久:在小学的时候,小数都是有穷的;初中,有理数就是所有的数;高中,实数才是所有的数…那么,小学数学老师是不是骗子呢?后来我是这么想的:数学老师并没有骗人,而是人学习知识,本来就是循序渐进的。很多时候,做事要看眼前,因为只有看清并迈出第一步,你才能设身处地的思考第二步的问题。如果你第一步都还没迈出去,便整天苦恼第二步怎么迈,你便会发现这一步总是因步伐过大而无法迈出。这里我想引用幸福课里的一个小故事:
同样的,在编程学习中,作为一个新手,考虑书籍专业性太过超前,可能你确实选了一个很专业的书,却在阅读的时候发现自己根本看不懂,每一个中文字都摆在面前,却一句话都无法了解,那你说你是选了一本好书还是一本烂书。有些书确实很不专业,错误一堆,但只要你能看懂,能给你带来进步,我觉得就可以了。选书其实有点像选老师,不是说大师就适合所有人,大师不可能天天教你如何扫地,就像中科院院士不会教小学生数数一样。
而什么时候你已经进阶,需要考虑书籍专业性这类的问题了呢。其实不用问,书会告诉你。
当你从这本书无法学到新知识,天天从里面挑错的时候,就是你该寻找下一本书的时候了。
最后附上《别把时间浪费在工具选择上》的全文: