在武林中,我们常常流传着关于高手的传奇故事。手中无剑,心中也无剑,是无数剑客们追求的境界。因为虽然手中无剑,心中也无剑,但是落花飞叶皆为剑,剑剑杀招,可取敌人首级。但是这样的高手毕竟是非常稀缺的。多数的人都奋斗在手中有剑,心中无剑的层次,另外有少数人能爬到了手中无剑,心中有剑的地步。
那么对程序员来说,什么样的人才是手中无剑,心中也无剑的人高手呢?让我们先从底层的手中有剑心中无剑说起。
手中有剑,心中无剑的程序员,往往工作在公司的最底层。因为缺乏经验积累,或者是知识结构不完整的缘故,在公司最底层埋头一行一行的写代码,就像剑客一招一招的苦练剑术一样。这类程序员的最大的缺点就是还没有对项目的整体架构有深入的了解,多数只局限于自己工作的模块。对自己模块的熟悉程度,基本就代表了程序员在这个类别里的等级的高低。就像同样是手中有剑心中无剑的剑客,水平还是有高低之分的一样。这类的程序员通过自己的辛勤工作、不断的学习,努力的朝着手中无剑,心中有剑的层次卖进。同样的,在这个层次的时候,如果有名师指导,或者是多跟同行切磋,对程序员的成长是十分有利的。
手中无剑,心中有剑的程序员,在公司里,多数已经到达了项目经理或者更高的级别。对于他们来说,可能并不需要去做太多的具体实现的工作,但是整个项目的架构、难点、进度等等,他们都了然于胸。并且对于项目中的任何一块的程序,他都有大致的了解,任何一块程序扔给他,他都能快速的上手去做实际的工作,虽然正常情况下不用他来做。这个级别的程序员,有很多时候,是开始考验自己的悟性和学习能力了,不是简单的别人带一带就可以带出来的。和武林中是一样的,现在已经进入了“修行靠个人”的程度,这个阶段最需要的就是自己努力的学习,努力的悟,还有可遇不可求的高手的点拨。名师在这个程度所起的作用远不如上一个层次大,因为这个阶段的程序员已经进入了树非树的境界,所有东西都需要自己琢磨才能灵活运用。
手中无剑,心中也无剑的程序员,或许都不能成为程序员了,因为很少有人到了这个层次还在做具体的工作。(开源领域很多依然奋斗在编码第一线的大牛,这个例外。)到了这个层次,基本上都是一个行业里的顶尖人物,或者有的人也已经是行业里的领军人物,在企业也基本上是CTO级别的人物了。他们基本上已经关注的是业界的发展和未来的趋势,或者是干脆自己开创一个新的领域。他们本身就是大牛,已经到了感悟天人合一,领悟大自然的规律的地步。他们的作品,基本上都是引领行业的发展,甚至是改变世界的。你从来看不到他们出剑,但是却看到他们的敌人成片的倒下。但是这样的人,真的是不多见的,
每一个有理想的程序员,就像一名努力练剑的剑客,想着终究有一天自己能成为大神级别的剑客,去笑傲江湖或是改变世界。这就是程序员的武林世界,没有刀光剑影,只有显示器闪烁的亮光和键盘的噼里啪啦。
PS:童年的时候,曾经无数次的幻想过自己背负长剑,行走江湖的场景。而现在的现实是,身背笔记本电脑在熙熙攘攘的都市里穿梭。就算用个战术范儿的电脑包,依然改变不了背个笔记本的现实。在那么一刹那,想到,程序员的世界,何尝不是一个江湖?!于是就有了这篇文字。