中国程序员和美国程序员工资 (中国程序员和外国人)

为什么EDA(芯片设计工具)、MatLab,法国达索公司的CATIA、SolidWorks, Autodesk公司的maya等三维动画软件,甚至于Photoshop、Corldraw等等软件,都掌握在欧美国家手中。美国动不动就将我国的大学和企业列入实体清单,不允许使用Matlab、EDA之类的基础软件。于是,有人就问,为什么中国的程序员做不出来这样的软件?

如何区分中国程序员和外国程序员,国外程序员与国内程序员

科研、工业基础软件比工业本身更难

网上经常能看到关于中国程序员与欧美程序员之间的对比,但大多数人关注的常常是表面现象,对于为何会产生这些表面现象的原因却知之甚少。

如何区分中国程序员和外国程序员,国外程序员与国内程序员

我们在科研、工业基础软件方面与欧美至少有20年的差距,这个差距不是想弥补就能弥补的。工业软件的开发至少需要两面的能力积累,一方面是在工业领域里大量的科研、技术、创新累积,第二方面是对第一方面知识、经验的数学抽象。通过以上两个方面的结合,通过程序员之手才能够实现好的工业软件。

如何区分中国程序员和外国程序员,国外程序员与国内程序员

工业软件是一个动态发展的过程,任何软件开发出来后,都需要不断地修改bug和优化迭代。工业软件的基础是行业专业理论、知识、经验的程序化,而高超的编程能力的基础恰恰是工业行业的专业知识与数学算法的完美结合。每一次算法的优化和提高,都能够带来设计工具生产力巨大的提高。

如何区分中国程序员和外国程序员,国外程序员与国内程序员

对于我国来说,即便从建国开始算起也不过区区70年,我们的工业化道路还处于追赶西方的阶段。反观美国和欧洲的工业化道路,至少走过了200年的时间。也就是说,即便我们积累了70年的工业技术,但很多领域还没有形成领先优势。也就是说,在没有形成领先优势的情况下,我们还处于被美西方的工业基础软件领导的局面,不可能出现超越西方的工业基础软件。

中国企业急功近利

有没有发现,中国的企业比欧美企业更加急功近利。这其实有外部环境的原因,也有中国人喜欢走捷径的原因。

如何区分中国程序员和外国程序员,国外程序员与国内程序员

对于外部环境这个原因,由于中国的企业面临的竞争对手是十分强大而且发展了很多年的欧美企业,第一个目标就是要先活下来。所谓先活下来最直白的说法就是赚钱是第一位的目标,甚至是唯一目标。这就决定了,中国的IT企业更加注重成熟技术的排列组合,而不是新技术的研发。

如何区分中国程序员和外国程序员,国外程序员与国内程序员

让西方人去研发,我们搞应用是一些企业的心声

有没有发现,当美国在上个世纪60年代发明互联网的时候,中国在90年代末才迎来了互联网的第一次繁荣。当智能手机出现的时候,欧美的App开始统治智能手机。当人工智能ChatGPT出现的时候,中国的企业才开始慌忙跟进。甚至有人说,中国的互联网等IT行业怎么做、怎么发展,从美国硅谷抄一个就可以了。我们不需要创新,只需要拿来主义即可。

如何区分中国程序员和外国程序员,国外程序员与国内程序员

复制西方经验美其名曰学习先进

第二个导致中国企业急功近利的原因就是中国人喜欢走捷径,中国人很聪明,但凡有捷径的事情,大多数中国人就会毫不犹豫地选择捷径。什么是捷径,当然是坐享其成了。就像一个企业家所说,在中国很多行业与国外都有着一二十年的差距,我们只需要把国外的一些商业模式、技术搬到中国,就是高大上的暴利行业。

现实比理想更容易改变企业和人

中国的IT企业急功近利,这必然会将这思想传导给程序员们。比如,大量的游戏引擎、人物3D建构基础插件、算法,基本上都是欧美企业完成的。甚至于中国很多游戏公司的做出来的本土游戏,其人物却是一张张地欧美脸。

如何区分中国程序员和外国程序员,国外程序员与国内程序员

游戏引擎

拿来主义就能够赚钱,谁愿意花钱投资研发还不一定有好结果。就像任正非所说,花掉两千亿研发经费没有得到什么成果,只是培养出来一个余承东,培养了研发团队。研发风险大,而拿来主义即便失败了,与研发相比损失要小得多。

如何区分中国程序员和外国程序员,国外程序员与国内程序员

在现实与理想之间,99.99%的企业会像现实妥协。甚至于,中国的成*学功**培训者们几乎清一色是教你如何现实的,因为现实的企业才能快速赚钱。当企业都现实了,中国的企业才会把来料加工也当成高科技企业。比如电脑、手机这块的业务,中国大部分公司都是购买美国英特尔、AMD、高通等公司的CPU,然后购买日本或者德国、韩国三星的摄像头模组,操作系统使用安卓,基本上没有什么核心的软硬件是中国自主知识产权的东西。

不会造轮子还疯狂嘲笑造轮子

上面说了,中国的IT企业无比的现实,拿来主义盛行。传导到程序员身上的时候,自然还是拿来主义。比如,一些科研单位能够使用MatLab这款美国软件解决的事情,就绝不会自己去写基础算法来解决。拿来主义也好,喜欢走捷径也罢,总之一句话:有现成的绝对不自己从零开始造新的。

如何区分中国程序员和外国程序员,国外程序员与国内程序员

造轮子会被抹黑

正是由于企业和程序员们都是这样的理念,甚至在程序员行业里形成了“不重复造轮子”的理念。什么叫造轮子,举个例子,就像英特尔公司的图形图像处理库OpenCV,几乎是工业领域的标准图形图像处理库。中国绝大多数机器人、人脸识别、车牌识别等工业设备、软件都使用英特尔这个OpenCV库。如果我们不使用OpenCV,而是自己重新写一个完全拥有自主知识产权的图形图像处理库,这便是造轮子。

如何区分中国程序员和外国程序员,国外程序员与国内程序员

不造轮子也就算了,还疯狂嘲笑造轮子的程序员。因为造轮子是非常消耗时间和精力的,毕竟有一堆十分好用的欧美轮子做对比。如果你造出来的轮子不如欧美的轮子,公司领导和同事就会批评你自作聪明浪费时间。如果你造出的轮子比欧美的轮子好用,请问你何德何能,欧美用几十年积累的轮子还不如你三分钟写出来的轮子?

如何区分中国程序员和外国程序员,国外程序员与国内程序员

啥意思呢?就是说花费大量时间和企业的成本造出来的轮子不如欧美轮子要被嘲讽和批评,甚至要被开除。而造出超越欧美轮子的轮子,没有足够的时间和实践检验、打磨,根本无法与欧美轮子相媲美。这样一来,就没有程序员愿意干吃力不讨好造轮子的事了。

如何区分中国程序员和外国程序员,国外程序员与国内程序员

最可悲、可怜的是,程序员不造轮子,还嘲笑造轮子的程序员。这也就罢了,关键是嘲笑造轮子的程序员,自己根本不会造轮子。我们的程序员,怎么能够跟欧美程序员相提并论呢?

35岁程序员失业

在欧美,一个IT企业里,60岁以上的程序员很多,至少比中国多很多。曾经创造了风靡互联网开发语言JAVA的詹姆斯·高斯林,是一位计算机博士和计算机科学家。他1955出生于加拿大,至今他依旧活跃在程序开发的第一线。

如何区分中国程序员和外国程序员,国外程序员与国内程序员

2011年8月30日,66岁的詹姆斯·高斯林加入了谷歌公司。几个月后,就辞职了,加入了一家从事海洋机器人研发的创业公司。

如何区分中国程序员和外国程序员,国外程序员与国内程序员

之所以举立JAVA之父詹姆斯·高斯林这个例子,其实有三层意思。其一是,中国IT企业35岁被毕业,这样的环境不可能出现詹姆斯·高斯林这样的程序员。道理很简单,无论任何行业,35岁之前基本上都是在打怪升级阶段。过了35岁之后,无论是技术、经验还是眼界、大局观等,才具备了开创新局面的能力。35岁之前的工作是砌墙,35岁之后才是设计图纸。

如何区分中国程序员和外国程序员,国外程序员与国内程序员

其二,詹姆斯·高斯林对工作有着十分执着的追求,凡事不符合自己理想的工作,无论是世界顶级的甲骨文公司还是谷歌公司,他都没有丝毫留恋。在短短几个月发现这家公司不适合自己的时候,就果断离职了。而我们的程序员,内卷这么严重,能够加入一家头部公司,就算是天天整理代码也不会离职。

如何区分中国程序员和外国程序员,国外程序员与国内程序员

其三,企业的急功近利往往是带着迷一样的执迷不悟。企业往往以35岁以上的程序员跟不上技术发展的潮流为由让他们毕业,而根本不管所谓的新技术,往往是西方50岁以上的程序员开创出来的。指望那些刚毕业就能够发明创造出什么新技术、新算法,这无异*大海于**捞针。所以,企业赶走了35岁以上的程序员,实际上就是切断了自己企业创新的根。

如何区分中国程序员和外国程序员,国外程序员与国内程序员

任正非曾经讲过一个俄罗斯数学家加入华为十年,每次看到他都是在玩游戏。结果有一天,他告诉公司,3G的算法突破了。拿到上海一试验,证明了算法的正确性和可靠性。试问一下,有几个公司能够允许自己的员工在公司“玩”十年?创造发明与普通泥瓦匠砌墙,根本就不能相提并论,但中国的科技企业往往急功近利,可见一斑。

如何区分中国程序员和外国程序员,国外程序员与国内程序员

数学能力决定了工业能力

正如一位IT领域的企业家所说,我们国内没有好的创新环境。中国重视知识产权没有西方早,你搞一个什么创新一旦发布,过不了多久你会发现你这个创新被国内很多公司都给玩烂了。

如何区分中国程序员和外国程序员,国外程序员与国内程序员

一位企业家讲了一个故事,道出了中国科技领域为什么不顾欧美的原因。他说,在欧美,一条新开的马路边上开了一家加油站很赚钱,过不了多久,就会有咖啡店、披萨店、旅馆等商业出现。但如果这条新开的马路在中国,第一个开了加油站的人赚了钱,过不了一个月,你会发现这条马路两边全是加油站。

点评:

不是中国的程序员不聪明,也不是中国的程序员不够努力,更不是中国的程序员不愿意造轮子。而是中国的企业从上到下都充斥着浮躁和急功近利的气息,这才是让中国程序员不愿造轮子、不会造轮子的根本原因。

如何区分中国程序员和外国程序员,国外程序员与国内程序员

中国程序员需要鲁班精神

那么中国程序员的出路在哪里?个人觉得首先要改变35岁被毕业的现状,其次是要给与人才足够的成长环境、空间和时间。尽管我们所处的阶段与西方有差距,但我们必须鼓励造轮子的人、保护造轮子的人、培养造轮子的人。