专家看台:盛大架构师周爱民回顾职业历程,分享十项建议(转)
记者:“十余年软件开发、项目管理、团队建设经验”,说长也不长。但从《Delphi源代码分析》和《大道至简》包括论文等能看到你对技术方面有很深的体会,最主要的是个人很深厚的感悟。很多人十余年做不到你这点。能否请你谈谈你是如何积累和感悟技术的?
---------
周爱民:我常说我读书不多,但这并不等于不好。因为读得少了,就可以读得细些。同样的道理,经历的长短,也并不等于积累的多少。因为积累的关键在于反思与回顾。如果一个人做了十年工作,十年后与十年前所做的毫无二致,那积累也是零。所以积累的表现在于改进。现在大家都说在讲知识管理,这家也在推,那家也在上。但是知识管理的根本,不是那些制度、文档与程序、流程,而是企业的、个人的反思与回顾,以及在这些反思回顾上的改进。所以知识管理也好,个人积累也好,不在于有多少,而在于思考了多深,在于知而后改,知而后进的程度与力度。
有些东西是套话,或者看起来象套话。如同上面这些。但是也可能是真实的感受,一如我之此时。其实十年来,我做了些什么呢?我感受了些什么呢?只是几件事,只是几次大的思考与反省。我就是这样进化的,做久了就停下来看看,停下来想想。想不明白就去看书,看不明白就去做事,然后再想。做程序如此,做人如此,做久了,就现在这样子了。
记者:在过去的这十余年中,你将自己的程序生涯划分为几个阶段?什么情况下你会感觉到自己的技术到了质变的程度?
---------
周爱民:这个问题所涉及的阶段性的变化与情绪,是可以为别人参考的,所以我多谈谈。
我印象深刻的是有一些,例如我的第一份工作。从拿到合同到工作,一切顺利。做的时候也自然尽力。但过了半个月,工期过了一半,活还没有做完的样子。同事一句话说:这是你的第一份工作,你必须做好,否则就没人信任你了。自此恍然大悟:我已经是个大人了,我得为自己做的事负责。面对我的职业、事业或工作,我没有任何可以推脱的理由。从此便有了所谓的“职业精神”。
这个虽然不是技术的质变,但是是人生的蜕变。总得从孩子变成大人,从学生变成职员。在这样的阶段中,你得保持警醒。如同上面这个故事,如果我不警醒,同事的提醒充耳不闻,那么我就可能会在事业中不停碰壁而不自知。要知道,在职场上,不见得有人会可怜你是个学生,也不见得有人会真心的提醒你。如果你不自醒,不自警,那不醒事的不开化的,自然会被赶出圈子。这就是所谓竞争。
再来说技术的质变。我写《Delphi源代码分析》的时候,只是一个技术上的强手。写它的目的也很单纯,就只是想写而已。也没有认为自己会从此走上一条什么道路,或者因此而荣华锦织。写的效果,也只是在技术上的精进而已。真正给我质变的动因,在于因为写这个书的缘故,有一天要去做个Delphi的培训,在做了几十页的PPT之后,我突然问了自己一个问题:你在做什么。
对自己的拷问,使得我展开了新一轮的反思。再早一次的反思,使我从一个21岁的区域总经理走回专职程序员,而这一次,我来到了工程领域之外——我这句话的意思,是说立时让我站在“工程”之外去看工程。如同换位思考一样,我象一个第三者,站在我与忙忙碌碌的工作之外,去重新视看这一切。
这一次思考产生了《大道至简》一书的原型,也就是那张EHM图。后来我在工程领域里的思想与方法,就进入了所谓“知律而变”的阶段:因人、因事、因一时之需而处理工程的枝节。所以《大道至简》的英文名是“灵活工程的思想(thinking in flexible engineering)”,原因也在这里。
从《大道至简》中对工程本相的探索走回技术,是另一个过程。这来自于另一个思考,是王昊说的一句话(王昊DelphiBBS总版主,《大道至简》一书提到过他)。他说“程序=算法+结构+方法”,本质是把“程序”名词动词化了。也就是说,我在《大道至简》中所讲的,是“做程序”的本质,而不是“程序”的本质。我的第三本书是《JavaScript语言精髓与编程实践》的,就是抱着探索这种“程序的本质”来写的一本书,已经完成并交给出版社了,大约是08年的1月份出。
回顾上面的话题,我是在什么情况下“感觉到自己(的技术)到了质变的程度”呢?往往的,就在自已的或者别人的一句发问。我对一个“茫然未觉的问题”有着异乎寻常的敏感,和洞悉它的欲望。所以当我猛然反省或朋友提点时,会立时如“醍醐灌顶”,从而让自己走向另外的一个阶段。我想——依我对这一过程的了解来说 ——这其中最重要的,就是时时醒觉,就是让自己处于聆听的状态,听自己的声音,或听别人的声音。这种醒觉并不是在不停的编程中获得的,也不是在不停的阅读中获得的。而是安静下来,停下来,把自己空出来,然后就获得了。
记者:哪些因素会驱使你会选择转移技术方向或者继续深挖?
---------
周爱民:我想我不会停下在技术方面的探索。我在BLOG上写过:“工作是实践,著书是研究。做不好实践,就做不好研究。因此好好工作是前提——我不想我对软件的思考变成无源之水,那样的话,还没有流到大家的面前,就已经干涸了。”所以在具体的工程、技术、架构上的实践对我而言是必须的、必然的。
至于方向,如果我还在软件行业,那么方向就从来也没有变过。不是说今天写程序、明天做架构就是改变方向了。这所谓的方向是什么,取决于你的视野是什么。
记者:对于程序员的技术发展和职业规划能否给大家一些建议呢?
---------
周爱民:
1、不要急。
2、不要只做不想。
3、听别人的话,即使你不想听。
4、订一个五个期的目标,写一个一年期的计划,然后回顾它。
5、学好中文,学好写文章,学会打标点符号。
6、把工作当成事业做,天天都在做事业,才会成功。
7、理论看不懂,就去实践;实践遇到问题,就去看理论。
8、参加一个开源项目,如果没你感兴趣的,就自己发起一个。
9、保持自己对某一件事物的热心、执着,即使这件事与你是不是程序员毫无关系。
10、成功不能被复制,但失败总在不停复制。看看别人是怎么倒下的,你可以更早地成功。
---------
周爱民:我常说我读书不多,但这并不等于不好。因为读得少了,就可以读得细些。同样的道理,经历的长短,也并不等于积累的多少。因为积累的关键在于反思与回顾。如果一个人做了十年工作,十年后与十年前所做的毫无二致,那积累也是零。所以积累的表现在于改进。现在大家都说在讲知识管理,这家也在推,那家也在上。但是知识管理的根本,不是那些制度、文档与程序、流程,而是企业的、个人的反思与回顾,以及在这些反思回顾上的改进。所以知识管理也好,个人积累也好,不在于有多少,而在于思考了多深,在于知而后改,知而后进的程度与力度。
有些东西是套话,或者看起来象套话。如同上面这些。但是也可能是真实的感受,一如我之此时。其实十年来,我做了些什么呢?我感受了些什么呢?只是几件事,只是几次大的思考与反省。我就是这样进化的,做久了就停下来看看,停下来想想。想不明白就去看书,看不明白就去做事,然后再想。做程序如此,做人如此,做久了,就现在这样子了。
记者:在过去的这十余年中,你将自己的程序生涯划分为几个阶段?什么情况下你会感觉到自己的技术到了质变的程度?
---------
周爱民:这个问题所涉及的阶段性的变化与情绪,是可以为别人参考的,所以我多谈谈。
我印象深刻的是有一些,例如我的第一份工作。从拿到合同到工作,一切顺利。做的时候也自然尽力。但过了半个月,工期过了一半,活还没有做完的样子。同事一句话说:这是你的第一份工作,你必须做好,否则就没人信任你了。自此恍然大悟:我已经是个大人了,我得为自己做的事负责。面对我的职业、事业或工作,我没有任何可以推脱的理由。从此便有了所谓的“职业精神”。
这个虽然不是技术的质变,但是是人生的蜕变。总得从孩子变成大人,从学生变成职员。在这样的阶段中,你得保持警醒。如同上面这个故事,如果我不警醒,同事的提醒充耳不闻,那么我就可能会在事业中不停碰壁而不自知。要知道,在职场上,不见得有人会可怜你是个学生,也不见得有人会真心的提醒你。如果你不自醒,不自警,那不醒事的不开化的,自然会被赶出圈子。这就是所谓竞争。
再来说技术的质变。我写《Delphi源代码分析》的时候,只是一个技术上的强手。写它的目的也很单纯,就只是想写而已。也没有认为自己会从此走上一条什么道路,或者因此而荣华锦织。写的效果,也只是在技术上的精进而已。真正给我质变的动因,在于因为写这个书的缘故,有一天要去做个Delphi的培训,在做了几十页的PPT之后,我突然问了自己一个问题:你在做什么。
对自己的拷问,使得我展开了新一轮的反思。再早一次的反思,使我从一个21岁的区域总经理走回专职程序员,而这一次,我来到了工程领域之外——我这句话的意思,是说立时让我站在“工程”之外去看工程。如同换位思考一样,我象一个第三者,站在我与忙忙碌碌的工作之外,去重新视看这一切。
这一次思考产生了《大道至简》一书的原型,也就是那张EHM图。后来我在工程领域里的思想与方法,就进入了所谓“知律而变”的阶段:因人、因事、因一时之需而处理工程的枝节。所以《大道至简》的英文名是“灵活工程的思想(thinking in flexible engineering)”,原因也在这里。
从《大道至简》中对工程本相的探索走回技术,是另一个过程。这来自于另一个思考,是王昊说的一句话(王昊DelphiBBS总版主,《大道至简》一书提到过他)。他说“程序=算法+结构+方法”,本质是把“程序”名词动词化了。也就是说,我在《大道至简》中所讲的,是“做程序”的本质,而不是“程序”的本质。我的第三本书是《JavaScript语言精髓与编程实践》的,就是抱着探索这种“程序的本质”来写的一本书,已经完成并交给出版社了,大约是08年的1月份出。
回顾上面的话题,我是在什么情况下“感觉到自己(的技术)到了质变的程度”呢?往往的,就在自已的或者别人的一句发问。我对一个“茫然未觉的问题”有着异乎寻常的敏感,和洞悉它的欲望。所以当我猛然反省或朋友提点时,会立时如“醍醐灌顶”,从而让自己走向另外的一个阶段。我想——依我对这一过程的了解来说 ——这其中最重要的,就是时时醒觉,就是让自己处于聆听的状态,听自己的声音,或听别人的声音。这种醒觉并不是在不停的编程中获得的,也不是在不停的阅读中获得的。而是安静下来,停下来,把自己空出来,然后就获得了。
记者:哪些因素会驱使你会选择转移技术方向或者继续深挖?
---------
周爱民:我想我不会停下在技术方面的探索。我在BLOG上写过:“工作是实践,著书是研究。做不好实践,就做不好研究。因此好好工作是前提——我不想我对软件的思考变成无源之水,那样的话,还没有流到大家的面前,就已经干涸了。”所以在具体的工程、技术、架构上的实践对我而言是必须的、必然的。
至于方向,如果我还在软件行业,那么方向就从来也没有变过。不是说今天写程序、明天做架构就是改变方向了。这所谓的方向是什么,取决于你的视野是什么。
记者:对于程序员的技术发展和职业规划能否给大家一些建议呢?
---------
周爱民:
1、不要急。
2、不要只做不想。
3、听别人的话,即使你不想听。
4、订一个五个期的目标,写一个一年期的计划,然后回顾它。
5、学好中文,学好写文章,学会打标点符号。
6、把工作当成事业做,天天都在做事业,才会成功。
7、理论看不懂,就去实践;实践遇到问题,就去看理论。
8、参加一个开源项目,如果没你感兴趣的,就自己发起一个。
9、保持自己对某一件事物的热心、执着,即使这件事与你是不是程序员毫无关系。
10、成功不能被复制,但失败总在不停复制。看看别人是怎么倒下的,你可以更早地成功。