堕落兽人的专栏

A good developer should know that development is not just programming; a great developer should know...

老手 vs 高手

最近看老外写的软件开发书籍,看到一个词veteran,当初准备GRE的时候学过,就是“老兵“的意思,引申为有经验的人。以往看书形容有经验的人都是说experienced,现在觉得还是这个veteran更加贴切形容干软件这行需要的状态。

《野战排》里说:“新兵的命不值钱,因为没有作战经验。” 做软件这行业一样,眼看着应届毕业生的工资一年比一年低,一方面是干这行的人多了,另一方面也是因为新手的价值对公司来说没有那么重要。我也是从学校走出来的,也见识过看新手的白眼,也有怀才不遇的感慨,现在回头看看,觉得学生时代自己的确缺少锻炼,实际上毕业那会真的是能力不够,因为学校学的和工作中的太不一样了。

一般说来,某某人技术过硬就是“高手”,如果经历丰富就是“老手”。刚走出象牙塔的兄弟姐妹往往希望成为“高手”,“老手”只是当成一个by-product。我觉得成为“老手”比成为“高手”更加重要。

现在刚毕业找工作的ddmm们也知道在简历上写上具有team-spirit(团队精神),什么事团队精神?说白了就是能够和一伙人合作完成任务。既然是一起合作,那么就不是靠一个人能够取胜的战争,你一个人是“高手”有什么用,虽说你可以多干一些,干得好一些,也未必能做好,你还需要能够和别人沟通,能够保持良好的团队关系,能够巧妙拒绝承担不需要你承担的责任(不然别人回什么都依赖你的),需要能够激励别人,需要被别人冒犯而不影响情绪,需要在陷入困境而不混乱,需要压制那些会给团队带来困难的势头.......要达到团队精神不是说说这么简单的,很大程度上靠经验了,“老手”往往做得就比新手好。

“高手”技术上倾向于精益求精,这本身是挺好的事情,但是,首先要防止受技术的诱惑,陷入技术的无底洞,而偏离了软件产品真正的目的,其次,时刻技术,技术不是一切!现在大红大紫的软件,技术上未必是最好的,可能是技术市场把它们推到了现在的位置。而追求技术完美的软件,可能因为耽误了发布时间而丧失市场,Netscape就是一例。

最后,不要相信什么工作是人的第一需要的鬼话,有更多比工作更加重要的东西,而“高手”容易忽略这些更加重要的东西,而“老手”能够在忍受工作的同时享受生活

当然,最好能够成为“高手”兼“老手”,纯“老手“太油了,不能把效率提高到极限,纯“高手“只能在真空里工作,所幸自我认为还算一个兼才,不过两者只能取其一,取“老手”。

阅读更多
上一篇程序员的叹息
下一篇C++代码优化Tips
想对作者说点什么? 我来说一句

电脑全能高手

2007年07月17日 2.02MB 下载

没有更多推荐了,返回首页

关闭
关闭