posts - 843, comments - 4090, trackbacks - 26, articles - 3
  博客园 :: 首页 :: 新随笔 :: 联系 :: 订阅 订阅 :: 管理

公告

程序员的思维修炼 - 从新手到专家(1)

Posted on 2012-05-13 23:22 Jackei 阅读(...) 评论(...) 编辑 收藏
混了 11 年 IT,随着懂得东西越来越多,总结的也越多越多,反倒感觉到了自己的渺小和无知。就像奋斗了多年终于登上了一座高山,远远望去,却发现原来自己曾经居住过的村子,只是山下星星点点的众多小村落中的一个;而自己沾沾自喜的技能,每个村子都有水平相当的同行。

相对于整个世界来说,其实自己懂得的很少,而自己不懂的那么多;甚至,自己多年实践、思考而领悟到的东西,只不过是这个世界上早就存在的简单、朴素的客观真理。很多事情,虽然心里明白一两句话就能说的清楚道理,但能做到却很不容易。

 

这种渺小和无知感,让我恐慌:我是专家?还是新手?
我拿这个问题问 Dennis,他就推荐了《程序员的思维修炼》,说能解答我的问题。
到目前为止,只看完了其中有一章讨论了 Deryfus 模型的内容。在这一章中,作者讨论了从初学者到高级初学者,再到胜任者、精通者,最后到专家,一个人内在的能力和心态是如何“进化”的。简单总结下是 2 条:
1.根据具体场景分析应该做出什么反应,以及如何通过创造性的思维达成目标的能力;

2.能够通过听取、寻求他人意见,并通过观察和吸收掌握他人能力的能力。

 

对于“专家”,作者的观点类似于“以无法为有法,以无限为有限”,认为所谓的专家即通过直觉来做出反应的人——不是凭直觉把车开到沟里,而是凭直觉能理解什么叫“盐少许,中火翻炒几下”并最终能做出美味佳肴。而“专家通常很难把这种直觉和经验做出恰如其分的解释,因为他们的很多行为是如此的熟练以至于变成无意识的了。”
说的直白一些,就是所谓的专家,是在通过长期大量反复的实践、总结和思考/冥想以后,对某个专业领域事情的处理已经变得像是无需经过思考,而直接给出正确的解决方案——即使每次的事情都略有不同,甚至同一件事情在处理的过程中仍然在发生变化,他们都能从容不迫的随时根据“情景”的变化进行处理,并且整个过程如行云流水般,丝毫看不到也感觉不到他们有紧张感、焦虑或任何情绪的变化。

而新手,则是完全相反的:毫无经验,必须依靠指令和手册才能工作。

 

虽然计算机仍然是一门科学,而科学就应该是量化的、可反复准确重现的,似乎不应该允许这种“专家”的存在,也不应该允许靠“直觉”这种东西来处理问题。但我们生活在一个飞速变化的时代,除了流水线上的工人外,大多数工作本身都缺少精确重复的特性,总有些这样那样的不同,而各种细节变化的累加,足以使一件事情变成了另外一件事情。同时,做出决策所需的时间,与决策所起到的作用成反比。因为一切变化的如此之快,如果无法快速进行应对,可能等决策出来的时候面对的又是一个新的问题了。这就需要用到专家们丰富的经验和直觉了。
同理,其他的任何一个领域,都存在类似的情况,当遇到一个新的路口,需要快速决定往哪边走时,就是专家们 show time。这或许就是为什么软件研发从 UP 时代向 Agile 时代转变,从重型流程转向轻量级的流程+重视“人”的作用和价值。

有兴趣的也可以看看 彼得.德鲁克 在《卓有成效的管理者》中对“知识型员工”的论述。

 

高手在民间,每个人都是自己领域的专家。
(未完待续)