学习从历史开始
我有一个忘记从哪继承来的观点:无论我们想学什么,都应该从学习他的历史开始。极端点说,无论学什么,都是在学他的历史。
前几天在北京见到了我的小表妹,她刚上初一,人极为聪明。七年前我在北京工作时,她还没有上小学。那个时候我就回答过她许多科普问题。一个五岁的小姑娘的理解能力曾让我感叹不已。
知道小妹妹居然在写 blog 而且文笔不错,觉得挺高兴的。但听说她最近一次考试数学成绩不是特别好,有些令人担忧。我一直认为中学所谓文理分科就是件巨傻的事(似乎现在慢慢的不再分了)。但如果一味的去追求所谓文科上的造诣,怕是会耽误理性思维的发展。在迈入科学的殿堂的门槛上,一步错就能耽误十年啊。
小孩子一开始在学校学习或许更多的是为了比同龄人强,为了完成长辈的期望,为了达到别人设定的目标。但终有一天,长大了的后会发现,学习其实就是因为自己想知道。
所以吃饭的时候,我多说了几句。无论学什么,都要先培养出兴趣。理科的东西老师教起来很枯燥,那么就可以从读他们的历史开始。一段段故事,一个个鲜活的人,就会变得生动。深一层的道理需要慢慢的去体会:无论学什么,都是在学他的历史。以前的人如何考虑这些问题,为何研究这些问题。他们怎样去归纳、总结。他们的思考怎样延伸出去,为什么又有了局限性。后人怎样做出了突破。人性是共通的,人的智力水平也相差无多。按着前人的路,没有太难理解的道理。而课堂上现在的教法,把历史上长长的思考过程压缩,裁减掉所有的错误和累赘,压缩成一条条公式与冷冰冰的推导。背了那些,除了考出完美的答卷,就没太多意义了。
我带她去书店逛了一下午,买了不少书。逛书店这个点子一提出来,小姑娘心中的高兴完全写在了脸上。我想找一本有趣点的数学史的书,没有物色到。最后挑了一本科普的《从一到无穷大》;转到科普的柜台,她居然知道《时间简史》。我想了想还是买了本,但是告诫说,这个年纪读可能还太小,留到高中再看吧。再后来又买了些小说……
写了这么一大段,其实我还是想绕回来写写 软件开发2.0大会 上的故事,以及接下来几天的活动。
2005 年 C++ 大会上领教过陈榕“忽悠”人的工夫,所以这次无论如何他的 session 都要参加的。可惜陈榕没当标题党,导致那个 session 居然没把会议室坐满。不禁感叹大家还是没有参加此类活动的经验。其实技术的 conference 上选课关键是要看是谁讲,至于讲什么根本不重要。这就跟读书一样,作者远比书名重要。
和上次一样,陈榕调侃了许多大公司,尤其是微软。但他更语重心长的讲了一个浅显的道理:微软的人并不比大家苯,当然也不比大家聪明。我们都能看到的问题,比如系统臃肿,软件结构不合理,等等,不可能微软自己人就意识不到。种种问题,绝对不能只用当局者迷,旁观者清来解释。
我们只有从历史看过来,方能理解历史的局限性。做出那些错误决定的无奈放在大背景上大多会得到一个合理的解释。也只有这样,我们才可以领悟到未来正确的路。
周末,博文视点 组织了一些作者搞了个座谈会的活动。我有一本书《我的编程感悟》是他们出的,应邀参加。经历了北京惨烈的交通状况后,从城西晃到城东,没想到最后摸到了微软的地头。那天在那里认识了微软的林毅。晚餐的时候林毅从我那本书引出去开始想当年,我们聊了下 Z80 和 6502 的汇编。这让我突然想起,当初没有把那部分过时的内容从书稿里删除,其中一个原因就是,我需要有一个地方记录我所了解的历史。即使是游戏编程这个计算机领域小小的分支,同样有它的历史。了解了历史方能展望未来。我自己写的不好,但是我写就是想表明,了解历史是有价值的。
长期以来,自己总结我在编程方面取得的成绩的缘因,最重要的一条就是无功利心的学习。
并不是因为我需要用到什么领域的知识而去学习,而只是单纯的我想知道,我想弄明白。搞明白之后,到底有什么价值,可以创造多少财富,这是我从来不关心的。反而这样,知识给予的回馈是最大的。
别看计算机科学的历史只有短短几十年,可今天很多问题,人们早在几十年前就开始思考了。现在我还经常翻《计算机程序设计艺术》;我的同事 soloist 办公桌上常备一本《C Interfaces and Implementations》;那天晚上 周爱民 强烈建议博文再版《结构程序设计》。这些书成书都很早。看来大家转了一圈后,今天又都返回去在故纸堆里寻找答案。
Comments
"小孩子一开始在学校学习或许更多的是为了比同龄人强,为了完成长辈的期望,为了达到别人设定的目标。但终有一天,长大了的后会发现,学习其实就是因为自己想知道。"
-- 前辈真是通透、醍醐灌顶
Posted by: 阿巴阿巴 | (38) March 17, 2023 02:35 PM
“但终有一天,长大了的后会发现,学习其实就是因为自己想知道。” 说的太好了,很后悔大学没有好好学习
Posted by: XlperTxT | (37) February 25, 2021 01:33 PM
刚读完05年版本,期待第二版+1
Posted by: Blueice | (36) August 5, 2020 08:15 PM
云风,有没计划出第二版?感觉是不是有点奢望呢:(
Posted by: lintide | (35) July 4, 2017 11:02 AM
并不是因为我需要用到什么领域的知识而去学习,而只是单纯的我想知道,我想弄明白。搞明白之后,到底有什么价值,可以创造多少财富,这是我从来不关心的。反而这样,知识给予的回馈是最大的。
这一段总结的真好,有时候阅读是满足兴趣的渴望,学习了。
Posted by: snowcicada | (34) March 28, 2017 09:45 AM
颇有同感,我比较喜欢读人物传记,特别喜欢自传,感觉就像和作者对话一样。真去挺他讲的东西,倒没有那么多感触了。
Posted by: laixintao | (33) February 17, 2017 09:07 PM
从浅入深
Posted by: 影乐 | (32) November 1, 2016 04:10 PM
发现博主好有才 很多文章都看不懂
Posted by: 数控加工中心 | (31) June 21, 2015 05:30 PM
赞同历史,也只有无功利心的,才愿意慢慢体悟历史。
Posted by: lymslive | (30) September 5, 2014 11:36 PM
在前进的路上,我总有些模模糊糊的感受。今天我发现,你的文字,可以如此清晰地表达自己的一些心里困惑和感悟
Posted by: lazyzzz | (29) September 12, 2012 01:09 PM
"无论我们想学什么,都应该从学习他的历史开始"
我也非常赞同这点,看现在的linux源码看的泪流满面,去翻看它的0.01版的代码就好看多了,再往后看也容易些。
Posted by: dahanxylc | (28) July 25, 2012 01:11 PM
"无论我们想学什么,都应该从学习他的历史开始"
非常赞同,我也是这么想的~
Posted by: lovdin | (27) June 16, 2012 10:42 PM
数学没兴趣可以看看关于数学的一些趣题呀。数学主要培养的是思维,至于那些题海的话,在边上看看就好。
Posted by: 大笨兔 | (26) February 27, 2012 06:54 PM
从酷壳跳过来,此文观点甚为赞同,学习一门知识要从学习其历史开始。关于数学史,给你推荐一套书《古今数学思想》相信里面的内容能满足对数学的演变过程追根溯源的要求。
Posted by: 想去看海的石头 | (25) February 3, 2012 09:34 AM
从乐珩同学的博客跟过来呵.可惜好多专业博文读不懂呵.这篇认真读了. 恩,不管干什么,兴趣是最好的老师!
Posted by: 何菊玲 | (24) January 18, 2011 09:14 PM
上了这么多年学,也发现学什么都要先学历史,但一直也没体会到为什么,现在应该好好思考一下了
Posted by: Anonymous | (23) May 12, 2010 08:19 AM
兴趣是学习的最好老师,从历史学起对培养兴趣很有帮助,前辈文笔真好!
Posted by: Anonymous | (22) July 30, 2008 01:19 PM
《结构程序设计》,绝对的经典,很薄的一本书,收录了三位图灵奖得主三篇经典论文,虽然名字叫结构程序设计,但是最后一篇文章讲的是面向对象技术,可以说现在主流的开发技术都在这本书里面。可惜只能去图书馆借。能再版就太好了。
Posted by: CiviLi | (21) June 13, 2008 12:15 AM
赞~~! 很同意这个观点。
我也是一个游戏程序员,以前总觉得就这样一直编程会很乏味的,直到看《doom启示录》,让我对这个行业充满了学习的热情,很喜欢这类讲些游戏发展和历史的书,能给我们启迪。第一次来你的博客,很不错的,希望你有时间能时常更新...
Posted by: Makky | (20) June 1, 2008 11:07 AM
提到 软件开发2.0大会 ,为啥云峰老大的演讲要花50大洋才能听全啊。。。--!
Posted by: bing314 | (19) January 15, 2008 09:42 AM
“无功利心的学习” 赞一个
正如金刚经所说,应无所住而生其心
Posted by: 刘金雨 | (18) January 7, 2008 12:54 PM
《从一到无穷大》是我高中时候看过的最好的一本科普读物,但是还没有新版出来,我看的是爸爸在上海上学的时候买的八几年的版本,才一块多钱。一般的科普读物都是尽力避开数学来讲解科普知识,这本书则整个都以数学(初等的)贯穿始终。强烈推荐大家翻一下,将来推荐给我们的下一辈看! :)
Posted by: qixinkui | (17) December 29, 2007 10:50 AM
我们学的数学实际上是用文学的方法来讲述的
而且几乎只用一种手法:倒叙(绝大多数时候只有倒,连叙都省了)
Posted by: 王者之剑 | (16) December 14, 2007 03:49 PM
《自然哲学之数学原理》的确不错,可惜我只看了一半,一直没时间读完。
其实我有另一本推荐:《几何原本》
Posted by: Cloud
| (15)
December 12, 2007 12:41 PM
有趣点的数学书,有一本可以推荐下,牛顿的 自然哲学之数学原理
乃是近代科学的基础,也不难看,有兴趣翻翻。
Posted by: coldlapy | (14) December 12, 2007 11:55 AM
这个观点非常非常好,真是这样子的。我一直以来是这个样子的,今天看了你的这个观点,真是太有共鸣了。
但是在我这里有一点点问题:过于的历史化曾经给我造成很大的负担,比如我非要去翻看了欧拉高斯棣模弗等等一长串的历史足迹之后,才能接受公理化了的概率论。这样子花费的时间反而很长,会影响新知识的短期接受效果。
不过,大多数人的知识结构中,历史的部分是太欠缺了,而不是过了。
Posted by: smc | (13) December 11, 2007 05:38 PM
Cloud, 问一下,如何计算两台客户端电脑的网络时间延迟,不通过Ping,非常谢谢
Posted by: Anonymous | (12) December 11, 2007 08:36 AM
看你的文章,挺让人入神。
还有,你现在远没有《我的编程感悟》书里那照片那样壮了,多补补!即使对一些想搞明白的东西很热衷,但那只是生活的一部分。
Posted by: +1 | (11) December 10, 2007 04:52 PM
这就跟读书一样,作者远比书名重要。
也许是因为我不擅长记忆人名,所以我看东西从来不留意作者,导演,或者演员是谁。。。。。。
Posted by: jls | (10) December 9, 2007 09:49 AM
弄清知识的来龙去脉,不仅对提高兴趣有帮助,最关键的是你有机会接触到前人的思维方式,见识到他们是怎样思考和处理问题的。希望云风坚持这种学风,也许会有一天受到前人的感染,进化到一种全面的人性化的思维方式中,而不是片面的机器化的思维方式。
Posted by: Anonymous | (9) December 6, 2007 09:55 PM
那天去微软参加北京.NET俱乐部的活动,然后……第一次见到了云风。原本说是博客堂聚会,然后又成了博文的活动,感觉怪怪的,不过听听大家的观点还不错。
Posted by: Cat Chen | (8) December 6, 2007 09:30 PM
其实计算机发展了这么多年,经典书就那么几本而已...大浪淘沙...
Posted by: bobo | (7) December 6, 2007 09:18 PM
再多说一句,软件开发的思想史,无论是程序设计,还是项目管理,目前好像还没见到人来写他们的思想史~~~
向来应该很有意义的。
Posted by: 庄表伟 | (6) December 6, 2007 08:21 PM
说得不错,我也有一个类似的观点。
了解一个学科,不妨先了解这门学科背后的思想,了解学科背后的学术思想,最好的办法,是找一本该学科的思想史来看,作为入门书。
既能把握全局,又有了继续深入了解的纲目。不光是为了孩子学习有兴趣,就算是大人学新东西,也不妨这样入手。
Posted by: 庄表伟 | (5) December 6, 2007 08:19 PM
教育小孩子的这点讲得尤其好。
Posted by: arbre | (4) December 6, 2007 07:47 PM
云风有没有总结过自己在编程方面取得了哪些成绩啊?关键的东西贴出来交流交流吧
Posted by: Rome | (3) December 6, 2007 05:55 PM
《C Interfaces and Implementations》确实一本非常好的书!
Posted by: chai2010 | (2) December 6, 2007 05:49 PM
学习从历史开始 ,不错
Posted by: Anonymous | (1) December 6, 2007 05:36 PM