0 L. }2 l% [5 ]4 r: j不过最原始的三个理念还是在的,我告诫自己即使不听讲,也不能浪费时间。所以,我 8 t2 F3 ~; n: q
把听课做作业上节省下来的时间,用在了看喜欢的计算机书和学习编程上了。于是,整 2 ?5 J. v. v( A. j- G
个大一大二,我凭借着简单的自学的理念,开始了两件事情,敲 《Thinking in / _; n4 Q, s5 f% H
Java》(TIJ) 和 《The TeXbook》 上的没一个样例。 ( o \9 L8 w% Y5 Q! T3 o/ c; X
3 c2 m( {8 f+ f5 E0 D敲 TIJ 的机缘其实很简单,我是在软件学院听课的时候看到他们教 Java, 但是他们用 3 n0 s5 n6 Q/ [ X# j \
的 《Java 大学教程》太贵了,我舍不得买。我在网上搜了一圈,发现 《Thinking in % K8 @% K. y; n& v6 sJava》是一个免费的英文电子书。于是,我就在数学系的机房,每天下午和晚上,开着一 $ f- `7 P5 I/ Z+ S' \ ?2 ]
台计算机,屏幕上放着这个电子书,再用我的很土的笔记本,运行着未注册的 , u! R9 B# }2 S* z: l9 t' s g- p
JCreator, 一个字母一个字母的敲 TIJ 上面的程序。我很偏激的认为拷贝粘帖的程序记 6 l0 T( G% d4 `: [+ Z& E! z ~3 I/ P/ Q不住,所以每个字母都自己手敲。就这样,花了一个学期,居然就把所有的程序敲完 0 ?' M, l9 D3 I! W( i( ^% X了,基本上 Java 的方方面面,我也了然于胸了。 8 F _$ s V( v. g* y( Q7 c0 a
/ T8 p9 {. Q4 U8 v2 Z9 j$ Y敲完 Thinking in Java 之前没几天,我们就期末考试了。那一次考试的试题是 LaTeX 2 o9 W3 S7 i1 O5 x; |& r排版的,而不是手写的。我考试的时候就问监考老师这玩意怎么排版出来的,因为我知 ; n5 i6 O0 U" O- j/ I) \
道 Word 这个软件做不到这个效果。监考老师除了对我不认真考试表示不满外,还算仁 # F% m4 N% b1 P: J& R慈,告诉了我 LaTeX 这个名词。 寒假里,我就买了一本 LaTeX 教程。然后,突然认识 ' o, B6 _4 B$ |' p" ?1 S" N
到,原来 TeX 居然是我最热爱的 Knuth 的杰作,于是我就疯狂的开始学 TeX。 我的方 ! B- G3 [7 ]5 x2 a法还是一样, 敲例子。 记得 TeXbook 上有一个程序, Knuth 让大家自己照着敲入计 + N% i/ P9 [8 f- \6 y6 X% h
算机, 然后还很幽默的说,实验证明,只有很少的人会按照他说的敲入这个程序,而这 " ^, }1 a+ k$ x* Y1 a# A. |4 q3 M部分人,却是学 TeX 最好的人。看到这里我会心一笑,觉得自己的方法原来也不算笨。 ! m: i- q. o- x3 h9 K+ D
从此,一字不漏敲入一本书的程序成了我推荐别人学习语言的最好办法。 我后来大四又 4 O2 m# g) O0 Y敲了 A Byte of Python,前段时间又敲玩了 The Awk Book,都是不到一个月瞬间从初 / j- y( x# c# S5 q学者成为细节很熟悉顺手拈来使用者。顺着这个方法,大二我把 《组合数学引论》 和上 : \, P6 i, [6 s) E2 [& c
海交通大学出版的一本《离散数学》 上的题目都做一题不漏做完了。当时选者两本书也没 9 d/ M% j( U8 G1 H. m! K0 H% H
有特别的目的,就觉得这东西应该是计算机的数学基础。这些积累,在大四全部都显现 ! F2 x( F. q4 B& ~6 B2 ~" O0 z& ]了出来。 , Y: r/ z+ B, C# B/ L, L ! X7 Y; a" ~% K9 ]5 c- V我个人认为, 《Thinking in Java》 和 《The TeXbook》都算得上是理论和实践结合的精 & k c8 j# K; L- s6 p品书,是经典的英文原版书。我一上来就读了这两本书,阅读品味就上升了不少,而且 ; f7 M, Z# J( a/ R变得“崇洋媚外”了,任何时候都以英文原版书为第一选项了。也因为此,虽然我自学的 # d' s# F4 i6 [/ E Y2 D* Y过程中没有高人指点,但自学最重要的一个环节—选书–的盲目性就大大减少了。我记得 ' g- g( h- u/ ]- w: a; _
那时候我看得最多的书就是华章引进的书,黑封面的,我们图书馆里有将近半书架,如 ( V m" B7 H) L0 z/ k果一一细读,穷尽四年是看不完的。但华章的书也不是本本经典,我那时候开始注意选 , O, R) _' i0 n8 i) T) y择,细读开头十几页后,基本能决定这个书该不该看。所以即使当时没人指点,全靠自 : Y3 C; S4 T3 o! U _- u学,读的书还算过得去。那时候南大计算机系的教材,有的我看,有的我觉得不适合自 6 p n( T* L) k1 E2 d* Q$ {9 ]己,就找替代品了。我觉得选书这个事情上,因为有前两本书的标杆,我少走了不少弯 8 x/ s/ h1 x) [# A4 C5 A! j
路。从这两本书开始,我疯狂的读书就开始了。南大的浦口校区的硬件条件并不好,唯 " R- D: ^# q* N# y7 p一有空调且可以上自习的地方恰好图书馆。因此我每个暑假,基本上都是很早就过去占 $ e C7 z5 x- m- l p- x0 b
位,晚上很晚回去睡觉。我对小说等其他书也不感兴趣,就整天看自己觉得好的计算机 # m" N3 q: G* s# i9 v书和数学书,做笔记。某天,我开始了一个雄心勃勃的计划:读完 TP312 书架。 4 z) O$ A d; w/ I8 ` 7 Z1 x# W' N' E/ I n+ ]( B , y; ^! \0 \' [6 U$ c) M$ E5 {0 d; y1 i6 b5 R9 G/ ~