网站首页
本站精华
免费下载
游客:
注册
|
登录
|
会员
|
搜索
|
帮助
LoveUnix
»
编程开发 & Rational
» [转]程序员必须走向专业化
‹‹ 上一主题
|
下一主题 ››
投票
交易
悬赏
活动
打印
|
推荐
|
订阅
|
收藏
标题: [转]程序员必须走向专业化
蓝色的忧郁
版主
禁止发言
UID 274
精华
10
积分 648
帖子 1125
活跃指数 77
LU金币 2680 个
LU金条 0 个
阅读权限 210
注册 2003-10-1
来自 南京
#1
大
中
小
使用道具
发表于 2008-4-3 08:23
资料
个人空间
短消息
加为好友
[转]程序员必须走向专业化
上周六(2月23日),IEEE-CS力推的CSDP认证培训第三期班在中关村创新研修学院开班。这次的开班仪式很有特色,主办方特别举办了一个软件工程研讨会。我赶到会场的时候正赶上中软国际总经理陈尚义先生的演讲,主题是软件工程师的专业性问题。陈先生在美国硅谷工作多年,现在中软集团担任高层管理工作,又在CSDP培训中担任讲师,对中美软件产业都有切身体验,对这个问题理解很深。我一落座就被陈先生的话题吸引。在演讲中,陈先生提出自己的一个观察:硅谷软件工程师的平均效率(或说生产率)比北京的软件工程师高得多,其差距之大,可能达到10倍之多。
刚听到这一论断,我还是有些震惊的,因为以我从事媒体工作五年的所见所闻,中国软件工程师的“外部形象”还是不错的,很多老外都一再表示对中国工程师的天才和勤奋表示惊讶,即使我再三追问不足和建议,他们通常也就是从牙缝里挤出“经验不足”几个字。像陈先生这种直言不讳,我是第一次听到。不过转念一想,又有些怀疑,老外素以坦率著称,当真有这么大的差距,没有必要在我面前言不由衷。况且,硅谷的软件工程师中,华人亦不占少数,说中国人效率低?我有点不服。
接着往下听就明白了,陈先生指出,这种差距不是“中国人”与“美国人”的差距,而是“非专业”与“专业”的差距。无论在哪里,非专业软件工程师与专业软件工程师在效率上差距十倍甚至十几倍,这并不是什么夸大的数字。至于表现出来的北京与硅谷的差距,其原因在于中国的专业工程师数量太少,非专业工程师占主流。而硅谷地区南郭先生比较难以滥竽充数,专业程序员占主流,体现在平均生产率上,自然会有那么大的差别。陈先生并且指出,从某种角度看,中美之间软件工程师的薪酬差距之大,是两地平均生产率差距的体现,他说:“如果你是一名真正专业的软件工程师,你在哪里都应该能达到相似的收入水平,因为软件工业是真正全球化的产业。”
这是一个让我非常感兴趣的话题。我们都知道,在《没有银弹》中,软件工程的老前辈Fred Brooks提出的“唯一”能成数量级提升软件生产率的办法,就是雇用天才的程序员,所以“天才”与“普通”之间十倍甚至几十倍的效率差距,这是大家都知道的事情。但是按照一直以来的理解,天才程序员是那种脑瓜子特灵光,算法功底扎实,写程序又快又好的人精,是可望而不可求的,也没有什么有效的训练手段来成批量地产生。可是“专业软件工程师”就不一样了,这里所谓专业,是指具有规范化的价值观和知识体系,规范化的工作习惯和职业纪律,职业化的工作作风和流程,当然也具有相应的技能和经验。很显然,这样的人才,不但是每一个普通程序员都完全能够达到的,而且也是能够大规模系统化培养的。如果这种观点正确,中国的程序员们就不应该整天琢磨着要赶哪个新,逐什么潮,一会儿面向这个,一会又面向那个,左一个语言右一个框架地折腾着,而是应该踏踏实实在专业性上下功夫。
这让我想起了敏捷技术大师Kent Beck的一句名言:“我不是个优秀的程序员,我只是一个有着优秀习惯的普通程序员。”这里所谓的“优秀习惯”,应该就是“专业化”的一个重要体现。Kent Beck的这句话,实际上还暗示了传统观念中“优秀程序员”与现在所需的真正有价值的软件工程师之间的显著不同。也就是说,你不能因为程序写的好,就想当然地认为自己是合格的软件工程师,没有专业素养,你就不算是专业人。
之后的这几天里,我分别就这个问题与好几个人讨论过。他们中间有美国软件企业的技术负责人,有在国内奋斗多年的软件企业管理者,又在某些领域积累多年的专业人士,也有正在创业中激烈拼搏的程序员兼老板,有大公司的,有小公司的,有中国人,有美国人,有去过美国的中国人,也有来到中国的美国人。他们的意见,可以说是异口同声地同意陈尚义先生的观点,并且表达了对中国程序员职业性水平不足的不满。相比之下,我们中国人自己对这个问题的态度都比较激烈,倒是老外们反而比较客气,有一个人谨慎地说:“也许没有十倍那么大,但是肯定比五倍要多。”我苦笑道:“七八倍也受不了啊,长远来讲,中国人就必须一点不差才行。”
从这些讨论中,我得到的结论是,尽管他们也非常希望获得“天才程序员”,但是实质上是把对程序员专业化的要求放在天才前面的,也就是说,宁要专业的工程师,不要不专业的“牛人”,当然,专业化的大牛是最好不过了,但是现实地说,这种人确实很难遇到,既然如此,就要强调专业性在前。他们认为,专业性保证了一个程序员的技能和工作能够为组织带来效益,而他们只会为这种效益付酬,不会出于对“大牛”的敬仰之情而主动上缴贡银。而且,他们也相信,只要一个人专业化程度足够,技术和经验上的不足是容易在实践中弥补的。
由此看来,所谓“十倍差距说”,成立的可能性是很大的。而整个软件界对于程序员专业性的呼唤,也是实实在在的。这让我想起差不多两年前,我采访群硕软件创始人刘英武先生的时候,这位1960年代的普林斯顿计算机科学博士,前IBM的高级副总裁,SQL语言的创造者就曾经强有力地表达过类似的看法。他搬着指头对我说:“技术是最容易解决的问题。你说那个.NET,给你多长时间你能掌握?半年够不够?一年够不够?J2EE怎么样,一年可以吗?一年半?就算是最复杂的C++,三年下来,你还搞不定吗?可是建立一个世界一流的、商业上成功的软件团队需要多长时间?十五年,二十年!而且一点都不能松懈。我不明白,为什么有那么多人为自己的技术沾沾自喜?我在IBM的时候,手下全是来自美国一流名校的博士,但不管他们技术多好,如果不能遵守discipline,不能给组织带来效益,那就一点价值都没有!在中国,很有一些程序员,以为自己技术高,就应该拿高薪,就应该牛,就可以不要纪律。他们很少问自己,究竟给团队带来什么价值,究竟给企业带来什么价值,究竟给客户带来什么价值?在我看来,这就是不专业,不合格。我相信,这种情况迟早会过去的,对于软件工程师的评价,很快会回归价值。也只有到了那个时候,中国的软件才会有实实在在的快速发展。”
两年前我们觉得这段话“太刺激”,没有发表。现在看来,当年刘先生的观点已经成为共识。毫无疑问,这意味着中国程序员孤芳自赏的时代即将结束,我们应当开始高度重视组织的利益和价值,并且通过“专业化”修炼来实现从个体户到企业人的转变。
关注于c/c++,symbian c++的开发
对UNIX/Linux下的c开发也有兴趣
MSN: lee_vincent83615@hotmail.com
QQ: 3603108
ww122467532
LU新生
UID 103871
精华 0
积分 10
帖子 19
活跃指数 2
LU金币 21 个
LU金条 0 个
阅读权限 10
注册 2008-3-17
#2
大
中
小
使用道具
发表于 2008-4-4 13:52
资料
个人空间
短消息
加为好友
反省反省
自然平衡
LU大天使
文昌阁阿三
UID 33793
精华
1
积分 1326
帖子 2198
活跃指数 143
LU金币 1627 个
LU金条 12344 个
阅读权限 120
注册 2005-8-1
来自 文昌阁下
#3
大
中
小
使用道具
发表于 2008-4-4 16:29
资料
个人空间
短消息
加为好友
还没没看没明白,什么是专业化?
平淡 真实 快乐 ……
投票
交易
悬赏
活动
LoveUnix
专项技术区
> AIX -IBM UNIX
> 其他UNIX & Linux
> i5 (AS400) & IBM大机
> PC Server & HPC
> 存储设备
> 备份软件
> 网络 & 安全
> 编程开发 & Rational
> DB2 & Informix
> ORACLE等数据库
> 中间件技术
行业综合区
> 职业咨询 前程无忧
> 培训认证 行业入门
> 行业应用 项目实施
> 产品信息 商务交流
> Free download下载
交流灌水区
> 蓝色太平洋
> 墨香雅韵
> 论坛建设
> 博客专区
当前时区 GMT+8, 现在时间是 2008-11-22 08:33
乐悠LoveUnix论坛-京ICP备05005823号
Thanks to
Discuz!
© 2001-2007 Power by
LoveUnix.net
Processed in 0.082798 second(s), 6 queries , Gzip enabled
TOP
清除 Cookies
-
联系我们
-
乐悠LoveUnix
-
Archiver
界面风格
----------
Discuz! 5 Default
新DISCUZ风格
控制面板首页
编辑个人资料
积分交易
公众用户组
好友列表
升级个人空间
基本概况
流量统计
客户软件
发帖量记录
论坛排行
主题排行
发帖排行
积分排行
在线时间
管理团队
管理统计