« 多核环境下的内存屏障指令 | 返回首页 | 胡思乱想 »

学习从历史开始

我有一个忘记从哪继承来的观点:无论我们想学什么,都应该从学习他的历史开始。极端点说,无论学什么,都是在学他的历史。

前几天在北京见到了我的小表妹,她刚上初一,人极为聪明。七年前我在北京工作时,她还没有上小学。那个时候我就回答过她许多科普问题。一个五岁的小姑娘的理解能力曾让我感叹不已。

知道小妹妹居然在写 blog 而且文笔不错,觉得挺高兴的。但听说她最近一次考试数学成绩不是特别好,有些令人担忧。我一直认为中学所谓文理分科就是件巨傻的事(似乎现在慢慢的不再分了)。但如果一味的去追求所谓文科上的造诣,怕是会耽误理性思维的发展。在迈入科学的殿堂的门槛上,一步错就能耽误十年啊。

小孩子一开始在学校学习或许更多的是为了比同龄人强,为了完成长辈的期望,为了达到别人设定的目标。但终有一天,长大了的后会发现,学习其实就是因为自己想知道。

所以吃饭的时候,我多说了几句。无论学什么,都要先培养出兴趣。理科的东西老师教起来很枯燥,那么就可以从读他们的历史开始。一段段故事,一个个鲜活的人,就会变得生动。深一层的道理需要慢慢的去体会:无论学什么,都是在学他的历史。以前的人如何考虑这些问题,为何研究这些问题。他们怎样去归纳、总结。他们的思考怎样延伸出去,为什么又有了局限性。后人怎样做出了突破。人性是共通的,人的智力水平也相差无多。按着前人的路,没有太难理解的道理。而课堂上现在的教法,把历史上长长的思考过程压缩,裁减掉所有的错误和累赘,压缩成一条条公式与冷冰冰的推导。背了那些,除了考出完美的答卷,就没太多意义了。

我带她去书店逛了一下午,买了不少书。逛书店这个点子一提出来,小姑娘心中的高兴完全写在了脸上。我想找一本有趣点的数学史的书,没有物色到。最后挑了一本科普的《从一到无穷大》;转到科普的柜台,她居然知道《时间简史》。我想了想还是买了本,但是告诫说,这个年纪读可能还太小,留到高中再看吧。再后来又买了些小说……

写了这么一大段,其实我还是想绕回来写写 软件开发2.0大会 上的故事,以及接下来几天的活动。

2005 年 C++ 大会上领教过陈榕“忽悠”人的工夫,所以这次无论如何他的 session 都要参加的。可惜陈榕没当标题党,导致那个 session 居然没把会议室坐满。不禁感叹大家还是没有参加此类活动的经验。其实技术的 conference 上选课关键是要看是谁讲,至于讲什么根本不重要。这就跟读书一样,作者远比书名重要。

和上次一样,陈榕调侃了许多大公司,尤其是微软。但他更语重心长的讲了一个浅显的道理:微软的人并不比大家苯,当然也不比大家聪明。我们都能看到的问题,比如系统臃肿,软件结构不合理,等等,不可能微软自己人就意识不到。种种问题,绝对不能只用当局者迷,旁观者清来解释。

我们只有从历史看过来,方能理解历史的局限性。做出那些错误决定的无奈放在大背景上大多会得到一个合理的解释。也只有这样,我们才可以领悟到未来正确的路。


周末,博文视点 组织了一些作者搞了个座谈会的活动。我有一本书《我的编程感悟》是他们出的,应邀参加。经历了北京惨烈的交通状况后,从城西晃到城东,没想到最后摸到了微软的地头。那天在那里认识了微软的林毅。晚餐的时候林毅从我那本书引出去开始想当年,我们聊了下 Z80 和 6502 的汇编。这让我突然想起,当初没有把那部分过时的内容从书稿里删除,其中一个原因就是,我需要有一个地方记录我所了解的历史。即使是游戏编程这个计算机领域小小的分支,同样有它的历史。了解了历史方能展望未来。我自己写的不好,但是我写就是想表明,了解历史是有价值的。

长期以来,自己总结我在编程方面取得的成绩的缘因,最重要的一条就是无功利心的学习。

并不是因为我需要用到什么领域的知识而去学习,而只是单纯的我想知道,我想弄明白。搞明白之后,到底有什么价值,可以创造多少财富,这是我从来不关心的。反而这样,知识给予的回馈是最大的。

别看计算机科学的历史只有短短几十年,可今天很多问题,人们早在几十年前就开始思考了。现在我还经常翻《计算机程序设计艺术》;我的同事 soloist 办公桌上常备一本《C Interfaces and Implementations》;那天晚上 周爱民 强烈建议博文再版《结构程序设计》。这些书成书都很早。看来大家转了一圈后,今天又都返回去在故纸堆里寻找答案。

Comments

“无论学什么,都要先培养出兴趣。理科的东西老师教起来很枯燥,那么就可以从读他们的历史开始。一段段故事,一个个鲜活的人,就会变得生动。深一层的道理需要慢慢的去体会:无论学什么,都是在学他的历史。以前的人如何考虑这些问题,为何研究这些问题。他们怎样去归纳、总结。他们的思考怎样延伸出去,为什么又有了局限性。后人怎样做出了突破。人性是共通的,人的智力水平也相差无多。按着前人的路,没有太难理解的道理。而课堂上现在的教法,把历史上长长的思考过程压缩,裁减掉所有的错误和累赘,压缩成一条条公式与冷冰冰的推导。背了那些,除了考出完美的答卷,就没太多意义了。”
说的真好!

"小孩子一开始在学校学习或许更多的是为了比同龄人强,为了完成长辈的期望,为了达到别人设定的目标。但终有一天,长大了的后会发现,学习其实就是因为自己想知道。"

-- 前辈真是通透、醍醐灌顶

“但终有一天,长大了的后会发现,学习其实就是因为自己想知道。” 说的太好了,很后悔大学没有好好学习

刚读完05年版本,期待第二版+1

云风,有没计划出第二版?感觉是不是有点奢望呢:(

并不是因为我需要用到什么领域的知识而去学习,而只是单纯的我想知道,我想弄明白。搞明白之后,到底有什么价值,可以创造多少财富,这是我从来不关心的。反而这样,知识给予的回馈是最大的。

这一段总结的真好,有时候阅读是满足兴趣的渴望,学习了。

颇有同感,我比较喜欢读人物传记,特别喜欢自传,感觉就像和作者对话一样。真去挺他讲的东西,倒没有那么多感触了。

从浅入深

发现博主好有才 很多文章都看不懂

赞同历史,也只有无功利心的,才愿意慢慢体悟历史。

在前进的路上,我总有些模模糊糊的感受。今天我发现,你的文字,可以如此清晰地表达自己的一些心里困惑和感悟

"无论我们想学什么,都应该从学习他的历史开始"

我也非常赞同这点,看现在的linux源码看的泪流满面,去翻看它的0.01版的代码就好看多了,再往后看也容易些。

"无论我们想学什么,都应该从学习他的历史开始"
非常赞同,我也是这么想的~

数学没兴趣可以看看关于数学的一些趣题呀。数学主要培养的是思维,至于那些题海的话,在边上看看就好。

从酷壳跳过来,此文观点甚为赞同,学习一门知识要从学习其历史开始。关于数学史,给你推荐一套书《古今数学思想》相信里面的内容能满足对数学的演变过程追根溯源的要求。

从乐珩同学的博客跟过来呵.可惜好多专业博文读不懂呵.这篇认真读了. 恩,不管干什么,兴趣是最好的老师!

上了这么多年学,也发现学什么都要先学历史,但一直也没体会到为什么,现在应该好好思考一下了

兴趣是学习的最好老师,从历史学起对培养兴趣很有帮助,前辈文笔真好!

《结构程序设计》,绝对的经典,很薄的一本书,收录了三位图灵奖得主三篇经典论文,虽然名字叫结构程序设计,但是最后一篇文章讲的是面向对象技术,可以说现在主流的开发技术都在这本书里面。可惜只能去图书馆借。能再版就太好了。

赞~~! 很同意这个观点。
我也是一个游戏程序员,以前总觉得就这样一直编程会很乏味的,直到看《doom启示录》,让我对这个行业充满了学习的热情,很喜欢这类讲些游戏发展和历史的书,能给我们启迪。第一次来你的博客,很不错的,希望你有时间能时常更新...

提到 软件开发2.0大会 ,为啥云峰老大的演讲要花50大洋才能听全啊。。。--!

“无功利心的学习” 赞一个
正如金刚经所说,应无所住而生其心

《从一到无穷大》是我高中时候看过的最好的一本科普读物,但是还没有新版出来,我看的是爸爸在上海上学的时候买的八几年的版本,才一块多钱。一般的科普读物都是尽力避开数学来讲解科普知识,这本书则整个都以数学(初等的)贯穿始终。强烈推荐大家翻一下,将来推荐给我们的下一辈看! :)

我们学的数学实际上是用文学的方法来讲述的
而且几乎只用一种手法:倒叙(绝大多数时候只有倒,连叙都省了)

《自然哲学之数学原理》的确不错,可惜我只看了一半,一直没时间读完。

其实我有另一本推荐:《几何原本》

有趣点的数学书,有一本可以推荐下,牛顿的 自然哲学之数学原理
乃是近代科学的基础,也不难看,有兴趣翻翻。

这个观点非常非常好,真是这样子的。我一直以来是这个样子的,今天看了你的这个观点,真是太有共鸣了。

但是在我这里有一点点问题:过于的历史化曾经给我造成很大的负担,比如我非要去翻看了欧拉高斯棣模弗等等一长串的历史足迹之后,才能接受公理化了的概率论。这样子花费的时间反而很长,会影响新知识的短期接受效果。

不过,大多数人的知识结构中,历史的部分是太欠缺了,而不是过了。

Cloud, 问一下,如何计算两台客户端电脑的网络时间延迟,不通过Ping,非常谢谢

看你的文章,挺让人入神。

还有,你现在远没有《我的编程感悟》书里那照片那样壮了,多补补!即使对一些想搞明白的东西很热衷,但那只是生活的一部分。

这就跟读书一样,作者远比书名重要。

也许是因为我不擅长记忆人名,所以我看东西从来不留意作者,导演,或者演员是谁。。。。。。

弄清知识的来龙去脉,不仅对提高兴趣有帮助,最关键的是你有机会接触到前人的思维方式,见识到他们是怎样思考和处理问题的。希望云风坚持这种学风,也许会有一天受到前人的感染,进化到一种全面的人性化的思维方式中,而不是片面的机器化的思维方式。

那天去微软参加北京.NET俱乐部的活动,然后……第一次见到了云风。原本说是博客堂聚会,然后又成了博文的活动,感觉怪怪的,不过听听大家的观点还不错。

其实计算机发展了这么多年,经典书就那么几本而已...大浪淘沙...

再多说一句,软件开发的思想史,无论是程序设计,还是项目管理,目前好像还没见到人来写他们的思想史~~~

向来应该很有意义的。

说得不错,我也有一个类似的观点。

了解一个学科,不妨先了解这门学科背后的思想,了解学科背后的学术思想,最好的办法,是找一本该学科的思想史来看,作为入门书。

既能把握全局,又有了继续深入了解的纲目。不光是为了孩子学习有兴趣,就算是大人学新东西,也不妨这样入手。

教育小孩子的这点讲得尤其好。

云风有没有总结过自己在编程方面取得了哪些成绩啊?关键的东西贴出来交流交流吧

《C Interfaces and Implementations》确实一本非常好的书!

学习从历史开始 ,不错

Post a comment

非这个主题相关的留言请到:留言本