未知的必然、必要和必需

by xiaolai on 2010/05/20 · 48 comments

in 学习学习再学习

上学的时候,每个班级里都有“最爱钻牛角尖”的人。他们误以为任何时候,在任何事情上都应该“刨根问底”,不把一切都搞清楚决不罢休──并把这种态度当作不可放弃的真理一般对待。正因为如此,他们“全然无法忍受任何未知的存在”,所以要“问个不休”,“苦思冥想”,用尽全部精力,乃至于已经没有剩余的脑力去想起另外一个显而易见的事实:他们和任何人一样,从来没有在任何一个问题上“全知全晓”

其实,只不过是程度不同而已,大多数人都多多少少有“钻牛角尖”的习惯──因为对未知的恐惧早已根植在人类的基因之中。人们害怕未知。一切未知的、不可知的因素都会严重威胁人们的安全感。

未知因素给人们带来的心理压力远远超出本能的想象。假设有一个未知因素存在,X,它可能导致A、B两种情况,这时候,“可能这样、可能那样”的犹豫就已经可能造成巨大的心理压力。而如若还有第二个未知因素,Y,它也可能导致两种情况,C或者D,那么X和Y共同存在的结果就可能有AC、AD、BC、BD四种情况……如果再有第三个未知因素,Z,又可能导致E、F两种情况,那么总计的可能性就有8种(23)排列组合……也就是说,随着未知因素数量的增加,这些因素所引发的可能性将呈几何级数增加──这就是未知之所以可怕的根源。

进入任何一个新的领域之时,这种压力都使得新手窒息。而已经在那个领域里浸泡过一段时间的人往往早已忘记了这种恐惧和压力的存在,抑或懒得,抑或不屑,去向新手解释,帮助新手削减压力。更多的时候,那些“老手”实际上并不是懒得或者不屑,而是“没想到连这个也竟然需要解释”。这就好像是我们每个人小时候都是挣扎了很久才学会如何系鞋带的,可是早已经忘了那竟然是个需要挣扎才能学会的事情。而另外一些老手是因为“很早就学会”所以没想到“竟然还有人连这个都不会”。这就好像有些很小就学会游泳的人,很可能会误以为谁都会游泳,他们会这么想:“怎么可能连这个都不会么?!”……

比如,自学编程的人,可能会在教程编纂者全然没想到的地方卡壳。当Google API的文档编纂者穷尽力气去写一个“想让任何人都看得懂”的文档的时候,他们不知道有一些新手看到以下的代码,先被“foo”、“bar”这两个词给卡住了,一个疑问浮现在脑海:它们是什么意思?为什么要取这样的名字?

foo('bar', {
...
}
, 200, null)

事实上,这两个“怪词”充斥在许多“入门读物”之中却又几乎从来没有人针对这样的疑问提供充分的解释。

// C/C++ code
#include <stdio.h>
 
int main()
{
   char foo[] = "Hello,";
   char bar[] = "World!";
   printf("%s %s\n", foo, bar);
 
   return 0;
}

去Wikipedia看看Foobar究竟是什么意思。

事实上,很多人都不明白为什么循环(Loop)代码块里,起始变量名称是“i”?事实上,谁都不是很确定。据猜测,“i”可能是“index”这个单词的首字母。而循环嵌套的时候,第二层循环的起始变量名称通常用“j”,这就不是什么单词的首字母了,只是因为“j”在英文字母表中排在“i”之后而已……在其它的领域也一样。比如,学英语的时候,很多初学者都为此疑惑过:“为什么‘John’这个名字会被翻译成‘约翰’?就算是音译,这也差太远了吧?”这些只是最常见的几个例子而已。但凡自学过任何一点技能的人,都能理解这种可能的“牛角尖陷阱”几乎无处不在。

然而,为了进步,我们必须忍受一定的未知。首先,我们要知道我们就不可能全能全知。有些时候,有些疑问是没有答案的──就好像“先有鸡还是先有蛋?”一样。而另外一些时候,即便有了答案,也不见得是我们能够搞懂的。比如在自学编程的时候,学到流程控制(Control Flow)之时,了解到除了“顺序”(Sequence)之外,只用“分支”(Branch)和“循环”(Loop)就能够完成一切的流程──初学者多少都会好奇,这是怎么证明的呢?这当然是经过严谨的证明才被广泛接受的,然而,究竟有多少初学者可以看懂那证明过程呢?── 这里有Böhm, Jacopini于1966年发表的论文的PDF版:Flow diagrams, turing machines and languages with only two formation rules。这样的时候,并不是“反对问为什么”,而是说,“暂时不用去问为什么”可能更划算

其次,我们要知道未知分为两种:一种是永远不能解决的,另外一种是在可预见的未来也许能够解决的。对一个人来说,超过100年就算是“永远”了。所以,第一种未知对个人来说,意义不大;而第二种却是我们必须面对的。学习的难度也存在于此,“第一章的内容需要后面某一章的知识才能够深入了解”,这是几乎所有高难知识体系的普遍特征。也就是说,在第一章,我们会有无数的疑问,可是,这些疑问并不是以当时的知识可以全部解决的;需要我们继续前行,用未来获得的知识解释今天的疑问。这就是为什么那些“爱钻牛角尖”的人最终吃亏的重要原因了──他们想“马上解决当时不可能解决的问题”。事实上,做人难也是一样的道理──小时候就要做一些事情,而为什么要做这样的事情,只有长大之后才知道……所以,很多人长大之后才发现自己少做了很多该做的事情,自己把自己的人生给扭曲掉了。

一个相对有效的解决策略是:有问题解决不了,暂时先把它记下来,而后继续前行。注意,一定要记下来。很多人没有记录的良好习惯,乃至于曾经有过思考(有疑问,就是思考的起点)不过后来却仅因为“忘了”而失去获得答案的机会。继续前行,并不意味着忽略这些问题和疑问,因为它们被记在本子上;而又因为它们被记录了下来,所以可以经常被拿出来重新审视(Review),不一定什么时候、什么地方、因为什么由头,它们之中的一部分就突然有了清楚的解决方案。当然,更可能的原因只有一个:你一直在前行,你一直在积累,你一直在成长;所以,到有了答案的那一刻,你不再是当初无能为力的你。再次重生

{ 45 comments… read them below or add one }

Dreamz May 20, 2010 at 15:13

学习的难度也存在与此—>这里”与此”是不是应该是”于此”?

Reply

李笑来 May 20, 2010 at 17:39

改过来了,谢谢!

Reply

L.MaxApex May 20, 2010 at 15:19

沙发.
有问题解决不了,暂时先把它记下来,而后继续前行.
做人,做事,做学问 都可以适用哦.

Reply

庆忌 May 20, 2010 at 15:52

错别字:倒数第二段倒数第二行“改做的事”应为“该做的事”吧

Reply

李笑来 May 20, 2010 at 16:37

改过,谢谢!

Reply

CNSUP May 20, 2010 at 16:06

虽心有不甘,但还是放下为好,放下执念,人不可能全知全能啊。

Reply

jmmchina May 20, 2010 at 16:33

我在大学的时候少做了很多事,太多时间被用来“尽情地玩”,现在多多少少有些后悔,看到笑来老师说的”做人难也是一样的道理──小时候就要做一些事情,而为什么要做这样的事情,只有长大之后才知道”很有体会,还好现在毕业没几年,支持学习,做现在该做

Reply

March May 20, 2010 at 22:40

同样的感受,现在正抓紧时间学习,尽量多看点,多学些。

Reply

Kenny Yuan May 20, 2010 at 16:38

文中的Brand应该是typo吧?

Reply

李笑来 May 20, 2010 at 16:42

是哈。改过来了。谢谢

Reply

Kenny Yuan May 20, 2010 at 16:51

给John补充一个例子:巴西人名Royce中的R发H的音,在这一点上我纠正过许多英语母语的老外,哦也……

Reply

May 20, 2010 at 16:43

正视现实,采取最优策略

Reply

Kaol May 20, 2010 at 17:03

笑来老师用的是哪一款语法高亮的插件呀?我试过了很多款都没找到比较好的一种。

Reply

googya May 20, 2010 at 17:06

未知意味着不确定,而信息是用来消除不确定的。所以要想“知道”就得收集信息。那么收集这个信息的过程或难或易,时间或长或短。。。。。
古人说,四十不惑。

Reply

googya May 20, 2010 at 17:11

我发现我现在的理解水平直线下降,读文章的时候看不清作者的思路和行文结构,特别是英语文章。有时候结论都得找半天。
笑来同学能否给点建议。

Reply

Eason May 20, 2010 at 17:12

这篇文字让我想起来“黑箱”理论…

Reply

奔岛 May 20, 2010 at 17:32

以前思考过的问题,不管解决与否,其实都花了不少的时间,记下来之后继续前行,也许未来某个时候会自然解决,所以说,在某种程度上来说,记下未解决的问题和继续前行(此乃上策)是对过去某一时间段和当下时间的充分高效利用……
我感觉自己说清楚了,但不知别人理解我要表达的意思了吗?

Reply

风在竹林 May 20, 2010 at 19:13

“好读书,不求甚解,每有会意,便欣然忘食”

Reply

Youny May 20, 2010 at 19:22

BINGO.
从小到大,一直受困于自己的“转牛角尖”,而且程度很深。对不能完全明白缘故的知识,我从心里不能完全信服,在学数理化的过程中这种痛苦达到了最高点。长时间的这种折磨下,问号不断出现,而自己学习的兴趣却在不断下降,越降越低。虽然自己一直在顽强抗争。
还好,还好,看到了这篇文章。
by the way,顺便指出几个打字错误:
1、“它们之中的一部分就突然有了清楚地解决方案”,应该是“清楚的解决方案”吧。
2、“你不在是当初无能为力的你”,应该是“你不再是当初无能为力的你”吧。

Reply

李笑来 May 20, 2010 at 21:27

谢谢,改过。

Reply

coo May 20, 2010 at 19:32

牛逼

Reply

laura May 20, 2010 at 19:36

比如,学英语的时候,很多初学者都为此抑或过:“为什么‘John’这个名字会被翻译成‘约翰’?就算是音译,这也差太远了吧?”

这里的 抑或 应该是 疑惑吧.

Reply

ZEUGGMA May 20, 2010 at 19:42

感觉和小时候玩拼图一样,在不知道整体的情况上,只能耐心的一点一点的凑。在过程中,大脑不断地将新拼入的信息整合起来,整体感就越来越强,拼的速度也越来越快。

Reply

ZEUGGMA May 20, 2010 at 19:50

想起了单词 jigsaw puzzle. 原来都是硬背的,突然发现这个单词内在的含义。

Reply

jsxxxly May 20, 2010 at 20:57

凡事都要有个度,思考问题也不例外。

思考是必要的,但长时间在一个问题上过度思考并不一定就是好的。

有些问题本身很难理解,加上我们自身能力和知识水平有限,那么在短时间内理解它就是一种奢望。

有些问题我们可能倾注一生的时间也无法理解。

那么无谓地在它上面浪费太多的时间,必然会让我们心烦意乱,并打击我们的信心。

这时,该怎么办呢?

先把这个问题放下,去做别的事情(diversion),让大脑有时间去消化理解问题。

也许有一天当你再想起这个问题时,会觉得它是那么的顺理成章。

承认自己能力有限吧!我们不可能把所有问题都彻底理解的,即使对于你所学的专业,有时把一种方法看成“黑盒”是必要的。

正所谓有所想,有所不想,最起码在某段时间内应该是这样的。

Reply

ok s May 20, 2010 at 21:50

太爱读 xiaolai老师的文字了!

Reply

jimc May 20, 2010 at 22:57

谢谢笑来,你的思考给让我 豁然开朗哦,多谢!

Reply

左弋 May 20, 2010 at 23:23

卢安克不是5月20日关闭博客的,早在5月15日我就看到了那则公告,微博上也有人14号就看到了,所以并不知道他关闭博客、写下那些话的确切日期。
不知道是不是受zf警告,只觉得这事让我为这个国家感到羞愧。这样一个人都差点无法在他付出了这么多的土地上生活,因为一些荒谬的人的狭隘心理。没办法用语言描述卢安克给我的震撼,那些因为卢安克来中国支教感到“难受”的人们就没有心吗?

Reply

memo May 21, 2010 at 14:44

这~
小时候要是那么懂就好了~

Reply

snowfox May 21, 2010 at 17:46

确实,学东西的时候,如果对每一个未知点都这么刨根究底,最终会发现要学的东西呈指数增长,因为每一个点会衍生出更多的未知点,由此会深陷其中,不能自拔,对学习的兴趣和信心都是一种打击。要有选择地深入,把握度很重要

Reply

lingualeox May 21, 2010 at 19:01

这种感觉曾经让我吃了很大的亏。记得大学里学微积分时,关于极限的定义部分,怎么都觉得别扭。所以一直就想弄明白。但偏偏就是不明白。结果无心学下去。直到大学毕业后,不经意间突然就明白了。概括来说是:如果两个东西,他们之间的差别总能达到你提出的任何一个条件,那么他们就是相等的。(误差小到任意要求,它们就是相等的)例子是:(0.333…)x3=0.999…=1 (虽然表面上看后一个等号是有点可疑的。)

Reply

lyinglw May 27, 2010 at 12:56

0.333… x 3 = 0.999… 这个例子没有体现出极限的精神实质,没有体现出“逼近”来,这个例子用来说明极限非常不恰当,

Reply

敬礼 May 21, 2010 at 19:49

未知的,好玩的东东

Reply

zk May 21, 2010 at 22:10

我也有这个毛病,完美主义,看一专业相关的本书,总是被很多细小的问题引导着,钻到胡同里面出不来了。

我感觉学习就像了解一个新到的城市,应该先了解有几环,再记住主要干道。如果一开始就想了解清楚北京的每个胡同或者小巷,就真的钻到死胡同里。

说来说去,觉得是一个学会如何“抽象”的问题。

Reply

阿飞 May 22, 2010 at 03:38

学习来了,李老师不一般

Reply

张小国42 May 22, 2010 at 20:57

觉得最后一段至关重要。
要是因为害怕“钻牛角尖”就假装看不见问题的话,不就是放弃了自己思考的“权利和义务”吗?
所以“有问题解决不了,暂时先把它记下来,而后继续前行。”

Reply

Nova May 23, 2010 at 09:20

我记得自己在大二的时候,看到4G space上推荐一本叫a letter to young mathmatition的时候,里面提到,看数学书的时候,如果遇到不懂的问题,最好不要马上就回头开始重新看,而是先往后看一点,因为有些你不懂的概念,可能在稍后就给你解释了。

后来在自己看书的时候,发现这一方法其实很有用,然后又感叹,怎么这么简单的一个方法,自己到了大二才意识到呢?

Reply

Schrodinger's Cat May 24, 2010 at 07:09

同意~自己平时经常做这种事,遇到问题就出不来。某种程度上虽然感觉思维比较严密,批判性比较强,但随着长大逻辑思维越来越强,这种批判思维反而极大的阻碍了自己接受新思想的能力。

感觉有一个很关键,当遇到新知识的时候应该先抛开自己先入为主的观点,而尝试着去先按作者的逻辑思考,等理解得不错了再回过头来看。总之还在不断朝他努力中

Reply

杨汉 May 27, 2010 at 22:14

孔夫子不是早就说过了吗:“学而不思则罔,思而不学则殆”,可见只学不思和只思不学都是不对的,而笑来所说的“钻牛角尖”就是后者。

Reply

eunice June 16, 2010 at 23:16

啊,就是这种感觉!
我学的是化学专业,大一的时候,一直对于轨道结构钻牛角尖,觉得看不清实实在在的价电轨道很不踏实,就不愿意继续学……然后在某一天,突然有所领悟,可是那个时候已经迟了,至少对于期末考试来说,把精力都放在想看明白这个上面,而忽略了书中想讲的最基本的理论和规律。一叶障目啊。

Reply

Siva June 26, 2010 at 12:06

积极响应你所遇到的信息.
人们害怕未知.应对它有两种方案.
1.钻牛角,迷失(不能全知全晓,想象一下,一个看programing primer的人,为了求甚解,辗转到汇编的知识块上,结果愈陷愈深.)
2.忽视(阅读的意义是求知获解,而我们不解决未知,只是对我们能理解的,已经知道的一个响应和迎合,这种忽视是对人智慧的荒废)

要积极响应迎面而来的信息洪流,或抛弃,或无视,或会然一笑,或是拈花不语,或是彻悟通明后的朗笑.

成则,巨人(互联网不仅让你亲近大师,而会汇聚平凡人的闪光灯)臂膀上鲜活的人;
败者,历史上别人的附庸.

故,记录未知,时常回顾,感受自己的认知过程.

Reply

jern July 21, 2010 at 23:24

突然看得有感觉。谢谢老师

Reply

竹林后生 July 28, 2010 at 16:03

笑老师请你解释一下,
我小时候曾看到这样的证明:
1/3=0.333333………………
0.999999999…………=3*0.333333………………
1=3*1/3
因此1=0.99999…………………………?

Reply

hope November 21, 2010 at 01:15

0.99999…..这个数字就是1,无限循环小数的严格定义里面,有对这种情况的讨论。。。循环节不能是全9的,

Reply

小姚姚哈哈 October 13, 2011 at 13:38

我想我学习的时候害怕未知的原因是我总认为知识是一环套一环的,现在的如果不理解的,后面的理解起来就更费劲。所以学习的遇到不会的时候很焦虑。

Reply

Leave a Comment

{ 3 trackbacks }

Previous post:

Next post: