2007年5月1日星期二

从NIIT到MIT

SICP
Structure and Interpretation of Computer Programs
《计算机程序的构造与解释》
M.I.T计算机系本科生开篇教材

这绝对不是一本计算机程序设计的入门教材,如果你对入门的理解是尽可能快的动手写出一个网上宠物店的话。任何希望尽快开始一个项目的人,都应该立刻把它放回书架。这里面没有C++,没有Java,没有面向对象,甚至都没有UI,这是一门叫做函数式编程的课程,用的是一种叫做schema的简陋的无以复加的编程语言。欧,前100页中你甚至连循环语句都别想看到。

但是,这绝对是每一个不安于做代码民工的程序员必读的书。它诠释了程序开发领域的终极课题:编程的本原,究竟是什么。剥去了眼花缭乱的语法糖衣,和纷繁复杂的使用规约,通过远离商业开发圈子的学术语言,它深刻的阐明了:赋值,循环,分支,子程序调用,乃至面向对象,面向方面,所有这些炫目的东西,熟悉的东西,我们原以为是基本的东西。在本质上,其实都是排列整齐的一串函数调用而已。

唔,如果单单是一本好书,也许我不会如此惊讶,最大的冲击是:这是一本MIT的入门教材,是的,入门教材。这儿体现的并不是MIT学子的聪明才智,至少我知道现在,国内就有清华和南大也在用这本教材给本科生上课,国外则更多,无计其数的多。要害在于,如果是读着这本书完成编程设计的启蒙,如果你能对这本书烂熟于心。那么,在那之后,无论你再去触碰任何其他的主流商业编程语言,你都会发现,所有一切的变化,已经尽在心中。

可惜,国内只有寥寥几所大学刚刚开始发现这一点,而更多的大学更多的学子,更多的NIIT更多的培训班,还在一成不变的翻动着c/pascal或者c#/java的教程,写着一个又一个链表,最短路径,也许还有宠物店,进销存。

这就是NIIT只能是NIIT,而MIT就是MIT的原因,MIT告诉了我们什么才是计算机专业院系的真正方向。不是去和NIIT之流比拼谁教的东西更切合实际,谁的教材更新的更快。那只会把大学拖累成高级培训班,大学真正要做的就是高屋建翎,深入本原。

一门入门教程,已然领先国内不知几许,随后的四年,如此多的专业课,实在难以想象这差距会拉大到什么地步。IT业,中国要补的课实在太多,这绝不是靠几名天才程序员和几家高科技公司就能弥补的。这后面是整整几十年的差距。基础决定上层建筑,高级培训班注定只能诞生高级技工车间。不要问我们为什么没有MS,没有RedHat,而要问为什么我们没有MIT,没有斯坦福。

清华到MIT的距离有多远,中关村到硅谷的距离就有多远
(待续)

没有评论: