国外与国内,数学与计算机 (转)[@more@]
一点看法一点体会——作者:骄傲的中国人
其实很早就想写这遍文章了,趁有点时间,想把自己的感受说一
下。我的写作水平just so so,写english还好一点,因为不用象中
文那样,要注意那么多的修辞方式和文采,只需平铺直叙就行了。
可能我天生就是要注定学Computer的,因为从小学到现在,只有
两堂课是可以的——数学,英语。我那股凡事都要问个为什么的牛脾
气,更在学数学中体现得淋漓尽致。整天地查书,追问着同学,老师
每一条算式,定理的推算和证明,直到最后得知那是一条公理,才心
有不甘地停止了穷追猛打,甚至还想弄一些鬼点子来推翻公理。以至
同学、老师一见到我就觉得烦。可惜我学艺不精,小中大学都被选拔
参加过不少数学竞赛,却没有拿过一次理想的成绩。我那牛脾气也延
续都到写program中,几乎什么都喜欢自己implementation。所以我不
太喜欢VB, Delphi,CBC,什么都用别人的Component。觉得有一种压
抑感,由于是从SDK学起的,所以 windows的机理也比较清晰,以前还
打算把MFC source codes改写成为自己的classes,可惜MFC实在庞大,
而且还在不断updated,以我一个人的能力完成了约1/3,已经精疲力尽
了。以前在国内一直梦想着能到 Symantec 这样的公司做developer,
因为很想弄清楚为什么 norton能把Windows control 起来。
以前总觉得国外的programmer很厉害,若不是的话,为什么能开
发出这么多改变人类生活Software,但出来见识过了,才知道在技术
上,他们也不过如此,反而觉得国内的高手还多一些。也许这与教育
制度有关,国内普遍都认为只要数学学好了, 计算机也就没问题了,
君不见国产的教科书都是以那些枯燥的数学问题来教导初学者。诚然,
数学思维对写code有莫大的帮助,我也是受益者,所以中国人写 程序
在同等外界条件下( 硬件,资料等)绝对比鬼佬强。但同时也带来了
严重的错误观念——“ 编程研究到一定程度,归根结底是数学问题”。
刚出来的时候,我也是这样认为。
我哥也是Master of Computer Science出身,由于他自己的努力,
还没到30岁,已经在3com总部担任Project manager了。他以前在silion
valley 多间公司做过,包括Symantec。兄弟俩经常就computer的问
题进行讨论,他为了我能尽快适应silicon valley的文化,不断把不
少 经验告诉我,使我收益非浅。发现其实是观念上的不同。这里认为
“编程研究到一定程度,归根结底是管理和人类发展的问题”。
一、管理问题: 其实写code在一个software product生产过程中只
占一小部分,关键在于如何使product占有market和有效管理整个pro-
duct的开发过程。这学期在Project Management Course学习中,有两
点很有感受。
(1) At some point in the development, Better becomes the
enemy of Good.
(2) Engineers are very good at taking more time and sp-
ending more money to make "better" than what the customer
ever wanted or has the time or money to pay for.
(3)一群水平一般的Engineers + 一个优秀,经验丰富的Manager
>> 一群拔尖的Engineers。
而中国恰好在管理上缺乏优秀人才,制度和观念更是与silion
valley 的不能同日而语。因此,尽管国内优秀的programmer相当多,
但是只是一盘散沙,白白浪费掉。可叹的是有不少国人还白日做梦地
期盼着中关村能取代硅谷。若制度和观念不改变的话,即使把全国最
优秀的程序员聚积在中关村,也别想追上硅谷。另一个典型的例子,
Linux 如今高唱入云,而且聚积了世界上许多优秀程序员的成果,但
是若它的开发和维护仍停留在以个人或小群体的基础上,没有 系统性,
规范化。即使它的 性能比Windows 要好许多,也只能成为那些发烧友
桌上的宠物,永远不能登大雅之堂!如今不少大公司加入其中,对它
开发和维护的管理有很大帮助,才有可能向 microsoft叫板!
二、人类发展从计算机技术的发展历史来看,计算机最终解决的
是人类发展问题,而不是数学问题。很简单的例子就是,Programming
Language的发展,asm-> c-> c++-> Java-> Corba(注意:CORBA不
是一种语言)
可以看到这样的发展,主要是为了方便一个Software,一个Pro-
duct 的更有效的开发和应用。简单地说,c使程序员摆脱了机器语言
的苦涩,c++(也可以说 object-oriented Languages)使产品的组成、
开发、维护更符合人类的思维方式,java在Inte .NET流行的这个年代,
顺理成章地成为了宠儿,CORBA更是进了一大步,承诺Language-inde-
pendence, Platform-independence, Location-independence。已
经是相当成熟的Distributed Object Computing。看了许多CORBA 的
书,颇有感叹,CORBA应该说是人类思维的发展的一个体现。同时,
为中国计算机的研究无奈!这里的研究可以说是以人为本,为的是在
整体上运用计算机促进人类发展,而国内的研究更多的是在于算法等
局部,微观的研究,这方面虽然是必要,但在观念上可以看得出人家
已经高一个层次了。不夸张地说,silicon valley,它有自己独特的
文化,在这里,不但可以看到到计算机技术的飞速发展,同时也从中
感受到人类思维的发展。这也是为什么要独立开办一个Computer science
department的缘故。毕竟,数学与计算机有紧密联系,但同时也有许
多本质的不同。
以上是我出国后感觉到的不同,归根到底就是两个字:“观念”。
这也是我一家之言,盼能与大伙讨论一下,为中国的计算机发展出一
分绵力。
其实很早就想写这遍文章了,趁有点时间,想把自己的感受说一
下。我的写作水平just so so,写english还好一点,因为不用象中
文那样,要注意那么多的修辞方式和文采,只需平铺直叙就行了。
可能我天生就是要注定学Computer的,因为从小学到现在,只有
两堂课是可以的——数学,英语。我那股凡事都要问个为什么的牛脾
气,更在学数学中体现得淋漓尽致。整天地查书,追问着同学,老师
每一条算式,定理的推算和证明,直到最后得知那是一条公理,才心
有不甘地停止了穷追猛打,甚至还想弄一些鬼点子来推翻公理。以至
同学、老师一见到我就觉得烦。可惜我学艺不精,小中大学都被选拔
参加过不少数学竞赛,却没有拿过一次理想的成绩。我那牛脾气也延
续都到写program中,几乎什么都喜欢自己implementation。所以我不
太喜欢VB, Delphi,CBC,什么都用别人的Component。觉得有一种压
抑感,由于是从SDK学起的,所以 windows的机理也比较清晰,以前还
打算把MFC source codes改写成为自己的classes,可惜MFC实在庞大,
而且还在不断updated,以我一个人的能力完成了约1/3,已经精疲力尽
了。以前在国内一直梦想着能到 Symantec 这样的公司做developer,
因为很想弄清楚为什么 norton能把Windows control 起来。
以前总觉得国外的programmer很厉害,若不是的话,为什么能开
发出这么多改变人类生活Software,但出来见识过了,才知道在技术
上,他们也不过如此,反而觉得国内的高手还多一些。也许这与教育
制度有关,国内普遍都认为只要数学学好了, 计算机也就没问题了,
君不见国产的教科书都是以那些枯燥的数学问题来教导初学者。诚然,
数学思维对写code有莫大的帮助,我也是受益者,所以中国人写 程序
在同等外界条件下( 硬件,资料等)绝对比鬼佬强。但同时也带来了
严重的错误观念——“ 编程研究到一定程度,归根结底是数学问题”。
刚出来的时候,我也是这样认为。
我哥也是Master of Computer Science出身,由于他自己的努力,
还没到30岁,已经在3com总部担任Project manager了。他以前在silion
valley 多间公司做过,包括Symantec。兄弟俩经常就computer的问
题进行讨论,他为了我能尽快适应silicon valley的文化,不断把不
少 经验告诉我,使我收益非浅。发现其实是观念上的不同。这里认为
“编程研究到一定程度,归根结底是管理和人类发展的问题”。
一、管理问题: 其实写code在一个software product生产过程中只
占一小部分,关键在于如何使product占有market和有效管理整个pro-
duct的开发过程。这学期在Project Management Course学习中,有两
点很有感受。
(1) At some point in the development, Better becomes the
enemy of Good.
(2) Engineers are very good at taking more time and sp-
ending more money to make "better" than what the customer
ever wanted or has the time or money to pay for.
(3)一群水平一般的Engineers + 一个优秀,经验丰富的Manager
>> 一群拔尖的Engineers。
而中国恰好在管理上缺乏优秀人才,制度和观念更是与silion
valley 的不能同日而语。因此,尽管国内优秀的programmer相当多,
但是只是一盘散沙,白白浪费掉。可叹的是有不少国人还白日做梦地
期盼着中关村能取代硅谷。若制度和观念不改变的话,即使把全国最
优秀的程序员聚积在中关村,也别想追上硅谷。另一个典型的例子,
Linux 如今高唱入云,而且聚积了世界上许多优秀程序员的成果,但
是若它的开发和维护仍停留在以个人或小群体的基础上,没有 系统性,
规范化。即使它的 性能比Windows 要好许多,也只能成为那些发烧友
桌上的宠物,永远不能登大雅之堂!如今不少大公司加入其中,对它
开发和维护的管理有很大帮助,才有可能向 microsoft叫板!
二、人类发展从计算机技术的发展历史来看,计算机最终解决的
是人类发展问题,而不是数学问题。很简单的例子就是,Programming
Language的发展,asm-> c-> c++-> Java-> Corba(注意:CORBA不
是一种语言)
可以看到这样的发展,主要是为了方便一个Software,一个Pro-
duct 的更有效的开发和应用。简单地说,c使程序员摆脱了机器语言
的苦涩,c++(也可以说 object-oriented Languages)使产品的组成、
开发、维护更符合人类的思维方式,java在Inte .NET流行的这个年代,
顺理成章地成为了宠儿,CORBA更是进了一大步,承诺Language-inde-
pendence, Platform-independence, Location-independence。已
经是相当成熟的Distributed Object Computing。看了许多CORBA 的
书,颇有感叹,CORBA应该说是人类思维的发展的一个体现。同时,
为中国计算机的研究无奈!这里的研究可以说是以人为本,为的是在
整体上运用计算机促进人类发展,而国内的研究更多的是在于算法等
局部,微观的研究,这方面虽然是必要,但在观念上可以看得出人家
已经高一个层次了。不夸张地说,silicon valley,它有自己独特的
文化,在这里,不但可以看到到计算机技术的飞速发展,同时也从中
感受到人类思维的发展。这也是为什么要独立开办一个Computer science
department的缘故。毕竟,数学与计算机有紧密联系,但同时也有许
多本质的不同。
以上是我出国后感觉到的不同,归根到底就是两个字:“观念”。
这也是我一家之言,盼能与大伙讨论一下,为中国的计算机发展出一
分绵力。
来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/10752043/viewspace-987855/,如需转载,请注明出处,否则将追究法律责任。
转载于:http://blog.itpub.net/10752043/viewspace-987855/
本文探讨了编程的本质,指出其不仅是数学问题,更涉及管理和人类发展。对比国内外编程文化,强调观念差异对行业发展的影响。
3771

被折叠的 条评论
为什么被折叠?



