印度编程其实并不怎样!

wjc 2001-05-22 03:01:00
Posted by our good friend 转载 on June 12, 2000 at 14:54:52: to Chinese Students in USA BBS

我在工作中,接触到印度软件公司开发出来的软件: 整个体系架构非常清晰,按照我们的要求实现了全部功能,而且相当稳定。但是打开具体的代码一看,拖沓冗长,水平不咋样。我们自己的一些程序员就有怪话了,说他们水平真低。但是! 印度人能够把软件整体把握得很好,能够完成软件,并得到相当好的设计文档。而中国人在那里琢磨数据结构、算法,界面人员就还没编码就想着是Outlook式的还是Visual Studio式的界面。到最后就成为Code 高手,对某些特定的开发工具精通,但是就是不能保证能够把一个软件稳当、完整的开发出来。

举个简单的例子:

软件中需要一个列表,用来表示我们处理的事务。该类表在业务繁忙的时候将变得很大。中国人就用双向链表,抱着《数据结构》书在那里写链表的类。印度人开了一个大数组,然后就开始干。为什么印度人不用链表,他们说:1、你们给出的设备(小型机),最少具备512M内存,浪费一些没有什么。2、数组方式访问方便、效率高。 看出了一拿到东西就吭哧吭哧作Code,和好好进行软件分析的不同了吗?正好前几天我有几个同事从印度回来和我们交流,那家公司是CMM4级公司. 我感受的几点:

1,流程重于项目

2,QC(就是QA)独立于研发部门,专门检查研发部门的开发流程是不是按照既定流程走.如果QC觉得流程不对,他会直接上报高层, 项目肯定就此停止.

3,所谓的项目经理(PC)一般也是从编码人员升上来的,并不是所谓的不懂技术,一般都至少有四年以上的经验

4,PC主要就是制定开发计划,负责协调,填写各种表格.

5,所有的东西(包括草稿)都有文档.

6,详细文档要求达到只有这个文档就可以编码的程度,一般写文档时间占60%,编码时间极少

7,有各种详细的review(同行评审),项目组内的,项目组之间的,客户的...

8,计划很详细,的确能达到小时级,但是实际情况还是误差比较大,所以他们也有加班.

先学习UML和Rose以及RUP,不要总是要找着证据。在中国的软件开发水平下,很难给你一个好的例子,OK?中国人总是要看到一个东西有了试验田,而且稻子长得好,才换稻种。要知道在国外上述的软件开发模式的应用,大可以看看Rational网页上的story。Just do it! 一句话,中国的软件开发水平低得很。赶不上印度人,印度的软件公司可以让高中生编代码,它的软件工程水平可想而知。当然,你如果是个很牛的程序员。估计够呛,因为中国的气氛中,很牛的程序员都很难接受软件工程的。你可以测试一下自己, 看看自己适不适合现在学习软件工程:

1、你是不是不能忍受一个编程序不如你的人做你的项目经理?

2、你是不是觉得你的老板对客户吹牛皮、夸大自己而感到不舒服?

3、你是不是一个拿到一个需求脑袋里第一念头就是如何实现的人?

4、你是不是很崇拜Stallman,Linus,很讨厌Microsoft?

5、你是不是曾经在深夜编码的时候,突然感觉到一种乏味,对Code的生涯感到一种无趣?

以管窥豹──印度神话 作者:"Kino" 我们现在处于深深的自卑当中,感到中国的软件工程水平的低下已经是牵涉到民族劣根性的问题了。

1、他们的软件教育水平: 我们招聘印度人,给应聘者出了一份与国内差不多的试卷,有基础概念和编程题目。 等到他们完成后,我们这些中国的自认高手惊呆了!他们的编程题目简直象是抄袭的?程序结构,注释,变量命名就不说了吧,全部都是极其类似!反观中国的牛人、高手,每个人有自己的一套。到了新的岗位,先把前任的程序贬损一通,然后自己再开发更多的问题的代码来代替。我的公司统计,一个软件中有4个以上 CSocket版本,

> 每个人都觉得别人做得差,自己再搞一套。中国人,就是这个样子,还会辩解说“我们这样有创造性”。 其实软件发展,早就走过了求伯君那个编码英雄的年代,程序员已经是个坐办公室的蓝领了。你具备拧好一个螺丝钉的能力就可以了。Code是最低级的事情了。

2、他们许多公司的项目经理根本就不懂技术。 中国的项目经理如果不能在技术上压服下属,那么下属将与他搞鬼,越是高手越喜欢搞鬼,根本不知道作软件的终极目的是从别人兜里掏钱,而在内部搞不团结。技术高手都会纠集一些对他技术上崇拜的菜鸟,与管理层作对。而印度的软件经理根本就不懂正在做的东西,许多甚至直接就是MBA,或者是领域专家 (工业设计、地理专家等),而不是编码的专家。但是却能够领导大群素质良好的程序员把工作做好,没有内部不团结的情况。许多印度的程序员加入一个公司很长时间,都不知道自己整天编的代码是干什么用的。给他们的任务可能就是一个函数的声明以及该函数要实现的功能。我们呢?

3、他们的编程人员的流动率达到30%! 他们的编程人员流动率(包括内部项目之间的流动)高达30%,可以想见他们的文档水平如何。他们的产品不依赖任何一个人,谁都可以立即辞职,产品的开发还是会正常进行。 而中国,是老板怕总工。技术骨干拥兵自重,抗拒管理。任何制定好的计划,都有可能被技术人员推翻或者跟你消极怠工。

4、他们的开发计划能够做到小时级别。 如果一个印度公司的项目经理没有上班,那么他的下属将可能不知道作什么。他们的计划一般都定到天,每个基层开发人员每天的工作量就是8小时。而我们能够给出月度计划的公司就很少,而给出的月度计划要么不可能实现,要么就可 能被取消。开发人员被初略的给个任务,他在月初,可以慢慢琢磨是做成什么样子,然 后上上网,聊聊天。到了月中和月末,就开始熬夜编码。

看到每年,从各大高校不尽牛人滚滚来,我们是不得不要召人,同时又是不抱希望。我 公司现在有意以后将核心软件开发外包给印度公司,中国人?做做界面吧,中国人做界 面会极尽奇技淫巧,搞得花里胡哨的。 BTW,我公司非外企,大家不要误会我们有什么种族歧视。但是我们现在就是对自己歧 视,自卑得很。中国的程序员骂微软,追Linux是全世界最狠的,可是我们除了汉化Linux,做了什么东 西出来。CDE是瑞典人写的,Linus是芬兰的,GNome是墨西哥人写的。哎,我们曾经是多么的瞧不起印度人。
...全文
288 20 打赏 收藏 转发到动态 举报
写回复
用AI写文章
20 条回复
切换为时间正序
请发表友善的回复…
发表回复
t 2001-06-11
  • 打赏
  • 举报
回复
没啥意思
whitehare 2001-06-10
  • 打赏
  • 举报
回复





什么陈年文章






actor 2001-06-09
  • 打赏
  • 举报
回复
虫和龙的讨论,中国人是虫和龙的辨证矛盾统一体
ckj2018 2001-06-09
  • 打赏
  • 举报
回复
楼上的说得对,我赞成
jisheng 2001-06-09
  • 打赏
  • 举报
回复
呵呵,如果不盗版,我们这些穷学生一辈子都买不起一套vc、photoshop
我认为中国人很穷,盗版鬼佬的软件无伤大雅:)
不过不要盗版自己人的软件。
Kern 2001-06-09
  • 打赏
  • 举报
回复
面对现实,从我做起!
Tningfeng 2001-06-09
  • 打赏
  • 举报
回复
印度不怎么样,但他就受到国际的认可,而我们呢?我们也不怎么样,只是国内的环境实在太令人觉得悲伤,没有盗皈就不会有中国今天的落后地步,为什么只盗软件不盗硬件,是因为软件好盗技术 不难!
jokerman 2001-06-09
  • 打赏
  • 举报
回复
软件是一种技术,但它也同时作为一种产业而存在,绝大多数软件,都要面向市场,创造利润,因此其形成的过程-开发过程-必须遵循一定的规则或者规范,必须考虑质量的要求,必须考虑客户的利益-可靠、适用、稳定、易于操作,软件的开发有艺术的成分,但软件产品绝不是艺术,其开发过程的管理即软件工程的水平高低决定了软件的市场价值,软件的编码水平只是其中的一面,但绝对不是最重要的一面。印度的软件开发值得我们学习,一个成熟而理性的人应该都能够做出这样的判断。
parkmann 2001-06-08
  • 打赏
  • 举报
回复
补充一句,印度人写不出CDE,Linus,GNome,但是它们能做出能赚钱的软件.
parkmann 2001-06-08
  • 打赏
  • 举报
回复
软件工程应该重视,但老兄你有点偏激.印度人写的软件,就像是德国人的足球(虽然我很崇倡那种锲而不舍),功利!很难带动局部技术的进步.编码不是体力劳动,编码中还是应该有优秀的技巧的,只是这些东西只有高手才有能力开拓,菜鸟门不必盲从,否则会走火入魔.当优秀的技巧为众人所皆知的时候,也就固化成了算法,于是程序员的整体水平得到了提高.
mycode 2001-06-08
  • 打赏
  • 举报
回复
科技以人为本;
中国的coding比印度强;最终也会比印度强;
Youloveme 2001-06-08
  • 打赏
  • 举报
回复
原来我是代码工人,领教!以后要好好学习!
Xmotion 2001-05-25
  • 打赏
  • 举报
回复
作为任何一个行业,开始时都只有英雄,而到成熟时,也都只有岗位,只有工人(包括系统分析员、高级程序员、和所谓的"代码工人")。

专家是针对外行人说得。
arfayr 2001-05-25
  • 打赏
  • 举报
回复
努力方向!
meixiaolong 2001-05-24
  • 打赏
  • 举报
回复
看来我们在做软件的时候得来个改革,学习他们先进的东西,
wjc 2001-05-24
  • 打赏
  • 举报
回复
印度的软件业的工程化程度很高,软件的开发不是以人为中心的,而是以文档和规范的管理,敢问现在中国哪几家公司可以做到完全的工程化开发?
c_hk 2001-05-24
  • 打赏
  • 举报
回复
印度阿三?至少印度政府对IT的态度比中国强
liuyj 2001-05-24
  • 打赏
  • 举报
回复
我觉得入关后我会失业的。
redkid 2001-05-23
  • 打赏
  • 举报
回复
印度不怎么样,美国人也不聪明,日本人目光短浅,中国人什么都好,因为这段文字是用中文写的.
zzroom 2001-05-23
  • 打赏
  • 举报
回复
这几篇文章表明印度软件界的工程管理水平确实比我们高。

1,265

社区成员

发帖
与我相关
我的任务
社区描述
软件工程/管理 管理版
社区管理员
  • 研发管理社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧