Chinaunix首页 | 论坛 | 博客
  • 博客访问: 945926
  • 博文数量: 175
  • 博客积分: 2788
  • 博客等级: 少校
  • 技术积分: 2060
  • 用 户 组: 普通用户
  • 注册时间: 2008-07-25 12:25
个人简介

知之者不如好之,好之者不如乐之

文章分类

全部博文(175)

文章存档

2016年(1)

2015年(20)

2014年(8)

2013年(68)

2012年(16)

2011年(35)

2010年(1)

2008年(26)

分类: 嵌入式

2013-11-23 20:26:45

原文:http://blog.csdn.net/fmddlmyy/article/details/4302365

看了《程序员的十层楼》,第一个感觉就是扯淡。这篇文章是一个叫周伟明的人写的,他把程序员分为10个层次:菜鸟、大虾、牛人、大牛、专家、学者、大师、科学家、大科学家、大哲。最后还搞了一个11层:上帝。
程序员的职责就是与人合作,把程序写好。术业有专攻,任何创新都是以前人的大量研究为基础的。程序员如果能有所创新,那也是机会和兴趣使然,水到渠成的事情。
其实就我看来,中国最缺乏的不是创新的能力,而是实现的能力。看着那些硕士、博士发表所谓有所创新的论文,我只是觉得滑稽可笑。没有实践的能力,又何谈理论的创新。高校的项目有多少能付诸实际?即使在技术上有些自己的东西,但因为缺乏实现和推广的能力,最后还是毫无价值。
程序员的价值就在于实现,在于把蓝图变成现实世界中有价值的产品。程序员的价值只能通过程序体现出来。如果按照周伟明所说的道路走下去,只会产生一个自以为是又一无是处的人。
理论研究和编程是不同的工作。程序员要做的只是把确定的算法或协议实现出来。如果一个程序员能创造新的卫星导航算法,他就不是程序员,而是卫星导航专家。
程序员要研究的是怎样用设计模型(design model)实现领域模型(domain model),怎样用低耦合、高效率的程序实现设计模型。

后记
我上周六早上起来,按照CSDN的推荐读了这篇文章:
http://software.intel.com/zh-cn/blogs/2009/02/09/1092/
读后感觉很不爽,就随手写下自己的感想,没想到会有这么多网友关注。不少网友批评我应该就事论事,不要攻击别人。我觉得有理,于是删掉了原文的最后一段。我又仔细想了一下我究竟有没有说错,把我的观点总结如下:
《程序员的十层楼》确实有可取之处。如果它毫无可取之处,那就不值一提了。但这篇文章有两个错误的导向,让我很反感。其一是把程序员这个职业无限扩大化了。其二就是“唯有理论高”的论调。
程序员是一个普通的职业,既没有必要妄自菲薄,也不应该妄自尊大。程序员不一定要当一辈子程序员。我看到过程序员转行做项 目管理、行政管理、杂志编辑、报社的IT部门主管、经营装潢材料、开教育软件公司、去外企做FAE,做sales,也看到过程序员去读博士、博士后,当大 学老师、搞科学研究。程序员转行以后就不是程序员了。但如果一个人还是程序员,就应该做好程序员的本职工作。
评价一个程序员的水平,我觉得主要有4点:语言、环境、思想和经验。一个优秀的程序员既可以对着UML图讲系统架构,也可 以讲出系统运行中每个时刻每个字节的含义。要达到这样的水平,需要长时间的积累。如果每个程序员都是工作几年就转行,那么中国的软件开发水平就很难提高。 要提高中国的软件水平,社会上应该形成能让程序员安心地研究和工作的氛围,而不是让他们整天担心35岁之后怎么办或者整天想着怎么成为学者、大师、科学 家、大科学家、大哲。
对于现阶段的中国,理论研究和“将理论付诸实现的能力”,究竟谁更重要?这是仁者见仁,智者见智的事情。我一味强调“实现的能力”,是因为现在的中国太不重视“实现”了。
在我看来,中国人不用自己的CPU、不用自己的操作系统、不用自己的办公软件、不用自己的手机芯片、不用自己的手机软件,不用自己的卫星导航芯片,其主要原因不是缺乏理论,而是缺乏“将理论付诸现实的能力”。例如:大规模软件设计能力、项目管理能力、商务推广能力等。
国内有很多单位搞过自己的CPU、自己的操作系统、自己的办公软件、自己的手机芯片、自己的手机软件、自己的卫星导航芯 片,为什么不能取得商业的成功呢?其中有标准、专利的因素,但缺乏实现和推广的能力是一个很重要的因素。如果所有理论只停留在论文、出版物、学位答辩、专 家或院士的头衔上,这种理论有什么意义呢?
有的朋友说国内做不出东西是因为没有鼓励创新的环境。但就我看到的大多数项目,国家是花了很多钱的,项目领头人也是有真才实学,有自己的技术的。为什么还是不成功?
做一个产品不是光有核心技术就可以了。这些产品没有获得成功不是因为核心技术,失败的原因在于具体的软硬件设计、人性化设 计、项目管理、商业推广。其实这些看似不核心的技术里面也蕴含着很多经验、思想、教训。如果中国的每个程序员都想着做科学家,研究高深的理论。那么谁来把 这些理论变成有价值的东西呢?周伟明言论的危害就在于此。
在不少人的思维中,总是以官僚为高,劳动者为低;脑力劳动为高,体力劳动为低。这种思维模式是有害的。一个人的价值在于他 为社会作了多少贡献,而不在于他占有了多少社会资源。社会需要卓越的管理者,但不需要每个人都成为管理者。社会需要科学家,但不需要每个人都成为科学家。 如果一个社会的每个人都只想着出人头地,做人上人,占有更多的资源,这个社会能做出稳定可靠的产品吗?
有的网友说“你和周伟明究竟谁是盲人”?关于这一点,我在一篇旧文中说过,这世界上唯一的真理就是不要盲目相信真理。不要盲目跟随别人,我的经历决定我的看法,你要根据自己的经历和体验形成你自己的看法。

阅读(971) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~