船离洪泽岸头沙,
人到淮河意不佳。
何必桑乾方是远,
中流以北即天涯
杨万里的名字,配上这首诗的意思,弄得有点啼笑皆非的感觉。我不想深究这首诗到底有什么样的背景,到底包含了多少的国仇家恨,我只是拿这两句来作为一个引子。
前面两个星期很麻烦,从周二我喉咙痛开始,直到今天还没有利索。我先感冒发烧,然后把小丁丁给传染了,小丁丁又把奶奶传染了。到现在,丁丁的胖妈好像也有点症状了。什么事情都几乎拉了一个星期,唉,可怜啊。原本计划的《权责之争》系列也拉后了。
一个好消息是二哥从济南回来了,06年过后就没有见过二哥,真的很怀念啊,也很期待和他的见面,我定了几斤花椒,哈哈,今年的花椒不用愁了。顺带送出去点,现在这个社会,干啥都需要那个啥开路,都不容易啊。
-----------------------------------------------------------------
事情还是来源于实际发生的故事。关于设计,关于架构,关于程序员和未来的发展。在很多人的职业规划中,程序员-->设计师--->架构师,这么一个循序渐进的步骤非常清晰的。但是,并不是说对概念的清晰就能够完成整个职业发展路线的组织和实施过程(原谅我用了这么生冷的字眼来形容我们的人生。)。在以前的文章中,我也提到过,很多人之所以在几年前就制定了这个路线但是直到现在还处在一个貌似高级程序员的尴尬职位,究其根本原因是,对于这两个职位——我是说设计师和架构师——的理解程度还不够深入。
一个职位,或者说是一个工种,理解或者付诸施行,需要了解它的几个方面,首先是具体这个工种需要完成什么样的工作,其目标是如何定义的,其工作强度和工作的最终交付物是用怎么样/什么来评价的;其次,这个工种在整个行业中所处的位置是什么?简单的说就是其数据/资源的输入是哪里?输出到什么地方?输出结果被哪些工种使用?依赖于哪些工种;最后,其实也是最重要的,这个职位或者工种具体需要哪些技能和知识?这个是我一直都在强调的问题,如果没有这些理解,如何才能够真正的投身到实际的工作岗位中呢?
虽然问题的最终归结会到程序员或者设计人员自身,但是这种情况却不是程序员自己能够造成的。我们可以回顾一下自己身边的人和事,相信你也会和我一样的感觉到很无奈。在我们的行业中太多拍脑袋决定的事情了——请原谅,我在这里一棒子打死了一群人,如果正好您认为您是被我打死的那个,请原谅我的无知——很多设计师和架构师的诞生,都是基于一个很简单的理由“我们需要这么样的一个人,我们觉得你最合适”。真有点天上掉下一个林妹妹的感觉。这个职位的确定,首先是需求,然后是认为某人合适。判断某人是否合适的具体依据是什么呢?个人感觉。一般的认为是,既然写了很多程序,既然写了很多的好程序,既然大家都认为某人是一个程序强人,那么这个人在编码方面的强悍肯定是可以转换成为设计的能力或者架构的能力的。古人说的学而优则仕,可能也就是这么一个道理。
但是事实,却有点那么残酷。从现实的角度来讲,编码,设计和架构,实际上区别很大。因为其实际的工作内容不一样,导致人员素质需求也不一样。或者更加坦白一点,一个好的程序员,或许是设计和构架的基础条件,但是不是唯一的条件。反过来说,我倒是趋向于,一个设计人员或构架人员,他不一定需要很强的编码功底,更强的编码功底只是一个锦上添花的效果。前两天我在和一个朋友谈起这个问题的时候,总结出来就是几点:
- 对于设计师和架构师来说,其视角要远远高于编码人员,而且对细节的掌控程度会随着视角的变化而变得更加粗糙。也就是说,站得位置越高,看的东西就越粗。
- 相对于设计师和架构师,编码人员集中精力在实现层面,其关注细节的程度决定产品的产出的质量。
- 作为一个编码人员,其主要的关注点是事情/或者项目的某个方面;但是设计师和架构师则关注的事情的大方向和整体。
- 对于编码人员,其主要的思维应该集中在如何实现;而设计师和架构师则思考如何能够转化为实现。在字面上,相差不是很大,但是实际上,其最大的区别在于,架构师和设计师对事情是否能够实现,停留在“按照我的推测或者验证,这个方式可以实现”,其结论带有一定的不确定因素;而编码人员的结论则不能够带着不确定因素。
- 对于设计师和架构师而言,其知识面需要和其职位的高度相匹配:越高则意味着知识面越宽。
针对这些不同,朋友倒是总结出了一句经典的话:其实程序员退一步考虑就可以变成设计师,而设计师退一步考虑则可以变成架构师。这个比喻相当形象,作为一个程序员,更多的时候,视野也就目前所作的事情那么宽,这就像是军队中的排头兵,冲锋在前,只能看到目标和自己队友。当这个排头兵退后一步的时候,他可以看到别人的背影,可以看到队伍中的问题,如果能够协调,那么他就是小班长。如此类推。
我以前也说过,我这辈子最TM不相信的东西就是所谓的顿悟了。这个世界以讹传讹的事情太多,我不能肯定是否那个烂苹果将牛顿同学砸傻了才有了那个经典的两个苹果同时落地,但是我知道,这个世界被苹果砸中脑袋的事情还是相当稀少。我在前面的几次和同学们交谈的时候都在说,如果你制定好了自己的目标,那么就当你现在就是在这个职位上,只有这样设身处地的做,你才可能真正的对这个职位说准备好了。
在这之前,在所有你需要去做的事情付诸实施之前,请检查一下自己的执拗。作为一个技术人员,执拗是立身成就的根本——TM的谁说的只有偏执狂才能生存——但是作为一个更多的时候扮演观察者的设计师和架构师,请放下你的执拗,因为离开实现越远,解决的方案就越多。在您成长之前,请包容他人的想法和观点,请一定要记住,凡是存在必然有道理,适当的放弃才能使得自己更加强大。
难道不是吗,难道你喜欢一个相当执拗的设计师,难道你喜欢一个相当强势的架构师?看看你所喜欢的那些人吧,那个不是儒家士子的样子,温文儒雅,果敢决断,怎么看怎么像是偶像——其实,我很怀疑,诸葛亮冬天还摇着扇子,这厮铁定冷的不得了。
最后回到题目的意思,桑干河远远比中流遥远,这个意思比较明显。如果实在纠结,自己去翻翻诗词字典吧,对这段解释的很详细。
------------------------------------------------------------------
最近,俺也开始喜欢Lily Allen了,这个英伦的才女,很另类很脱线,歌曲中的调侃意识很强,不愧为大嘴巴之作。这让我想起了那个鬼才一般的林宥嘉,也是如此清淡,也是如此跳脱,看来现在的歌太多,要脱颖而出,就得弄点特别的,哈哈。