03.08 中国IT从业人员如此之多,为什么没有世界流行的核心技术产生,比如编程语言、操作系统、数据库等?

笑压群芳


看了一些回答,个别人的说法有些偏见。

1. 我国IT行业还很落后,目前国内主要集中在应用层表面开发,核心开发几乎无人涉及。至于说什么什么数据库已经国产化,那也只是拿国外已有的软件进行了浅层的优化,并没有达到核心,并非完全国产。

2. 很多人对IT行业有误解,甚至IT从业者不少也有误解,以为开发就是写写代码,这就大错特错了。

IT的核心代码与硬件分不开的。国外大公司的核心代码与硬件是紧密关联的,否则很难达到高效。就那阿里云的数据库来说,如果他们能设计出符合他们数据库硬盘读写规则(寻道/寻址)、特殊的磁盘格式(比NTFS或ext更适合)、更适合的内存读写算法、更符合国情的网络协议、更快捷的主板总线调度机制……那么他们的数据库性能比现在还可以提高几百倍。

3. 国际上IT行业并非软件商做软件,硬件商做硬件,很多核心软件是软件商和硬件商一同开发的。这方面我们还很薄弱(华为在网络的软件和硬件均有国际优势),很多硬件的标准已经成为行业标准,而前期我国几乎没有参与标准的制定,因此我国绝大部分厂商不掌握核心技术,并且还要遵守标准。大家主要还是在国外厂商的IDE平台下开发软件,使用国外的开发语言,不明其理的遵守着他们的规则,稍稍在某个软算法上取得一些优化,就非常有成就感——其实人家有更好的方法;加上几十年的迭代更新,老外的软硬件核心已经达到一定层次,我国只有另辟蹊径(如在某个新领域之初掌握话语权,U盘就是国人的发明),并好好维护(U盘是国人发明的,但起产品做的最好的是老外,我们负责焊装和制造),我国的IT局面才会有提升和进步。

可以看到,我国在这方面非常欠缺,大企业很难关注此领域,个人和小团体更没能力来做,包括 deeplinux(深度linux)也只是软件层面的优化和开发。

4. 以上我是从通用计算机开发的角度来说的,至于个性化的软硬件一体化开发,如工控机、军事领域的开发等,不在我说的范围。


北山闲话


从事软件开发多年,明显感觉到周围的技术人员数量在增加,有关软件开发的企业也是越来越多,特别是在刚毕业的大学生中接触到软件开发的机会也是越来越频繁,中国的软件从业人数已经变得越来越多了,而且技术人员的水平越来越高,所以很多人提出了是不是我们也该有属于自己的核心技术,包括拥有自己的编程语言,操作系统,数据库等等。

为什么中国没有世界流行的核心技术

只要是技术类的都需要时间积累,现在国内主要是在应用级别的开发取得了突破,但在核心技术领域明显的准备不足,就拿编程语言来讲,现在主流的编程语言是英语为主线,国内很多人喊着既然有几百万的程序员自己开发一个编程语言还不是很简单的事情,就单纯的技术实现来讲国内程序员有能力打造一种编程语言,但问题是做出来了是不是有人愿意来使用,国内程序员还在围绕着国外成熟的编程语言在展开应用级开发,任何一种编程语言的产生是需要解决当前问题。

现在全球的编程语言有500多种,真正走向主流的编程语言也不过十几种,每种编程语言能够留存在必然意义,针对中文编程国内曾经整出来了一个易语言,但目前发展的比较一般,基本上成为外挂的代名词了,已经失去了当初这门编程语言设计的初衷了,编程语言的形成需要很多历史的契机,不是单纯的技术方面的问题,还需要大家觉得这种编程语言能够乘风破浪,现在国内虽然很多编程高手,但在编程领域真正有影响力还是少,像编程祖师爷这种级别的程序员少的可怜,因为祖师爷级别的多了就能影响到整个编程方向的推进,起码在这块还欠缺的比较多。

除了编程语言现在操作系统生态问题已经逐渐提上日程,华为的余承东最近在接受采访的时候讲到如果谷歌的服务不给授权,很可能在P40的时候同步鸿蒙系统到手机上,华为在承受操作系统生态之痛,因为谷歌的安卓授权问题在欧洲的销量下降,而且还在时刻担心是不是谷歌会取消授权,现在国内企业由于取得了长足的进步,已经在很多领域交叉到欧美先进的企业,但是欧美长时间的优越感肯定会在短期内不舒服,必然有一些手段出来,打压华为只是打压中国科技的开始,最终的结果是大家都认可了国内科技的进步,这样的国际需要一个长时间的积累,放在具体培养操作系统生态也是这种状态。

如何让中国软件走向世界

国内大部分的软件公司主要还是应用级开发,更加直接点属于解决温饱的阶段,绝大部分软件公司还处于这种阶段,所以先把基础打好再去考虑更加高大上的层次,不是因为人多势众就应该有编程语言生态或者软件核心技术,任何东西的成熟都需要时间,照着这种势头发展下去中国拥有自主的编程语言等软件核心技术是时间问题。

需要更多像华为一样的企业,坚持自主研发的方向,积累到一定程度之后在很多方面都开始慢慢展示出实力,现在国内企业主要从事应用级的开发比较多,真正在核心技术上的突破下的功夫明显不够,一个科技企业真正要强大,靠的是强大的技术实力,曾经在一个互联网公司,一次老板在开会提到了谷歌公司的产品能力不足,但是谷歌一直坚持技术创新到现在还在顶端技术公司行列,而现在自诩为产品很厉害的公司市值已经跌得一塌糊涂,科技公司始终绕不开技术实力,可能在短期内产品能力能够帮助占领市场,但提升整个市场的竞争力靠的只能是核心技术实力,纯正的应用开发早晚在遇到市场瓶颈期的时候出现枯萎。

需要有更多的中国企业走向世界,只是在窝里横很难成为真正的世界巨头,美国几个超级巨头都是具有全球影响力的公司,先要走出去学习,然后把先进的技术以及文化吸收进来,然后自我消化变成自己的东西,积累到一定程度在这个基础上进行创新,技术类的东西不是一蹴而就的事情,需要长时间积累,水到渠成的事情,希望能帮到你。


大学生编程指南


有啊,去看下阿里巴巴的技术产品,阿里旗下的服务框架Dubbo、分布式文件系统FastDFS、淘宝Hadoop作业平台宙斯Zeus、分布式数据库OceanBase等很多世界级别的先进技术,都是通过双11双12丰富实战经验研发出来的。

再看我们华为,自己的鸿蒙操作系统,震撼全世界,打造整个物联网生态的系统,微软系统也就在电脑上用用,鸿蒙操作系统可以搭建在任何物体上,是不是中国的骄傲呢?



APP开发技术员


中国在计算机领域没有世界流行的核心技术,和中国目前IT从业人员的数量多之间其实关系并不大。那和什么关系大呢,为什么没有世界流行的核心技术产生呢,下面个人发表一下浅见。

一、起步较晚

目前主流的编程语言、操作系统、数据库都诞生于何时呢?

TIOBE 8月编程语言前20排行榜如下:

其中第一名的JAVA语言诞生于1995,第二名的C语言诞生于1972年,第三名的python诞生于1991年。可以说榜上前10名的编程语言大多数都能诞生于2000年之前。而10名之后的市占率都是特别小。

而对于大家熟悉的操作系统更是如此,Windows诞生于1985年,UNIX 操作系统诞生于1969年,Linux诞生于1991年,macOS诞生于1984年。可以看出,主流的操作系统在1991年都已经诞生,那时中国的IT刚刚起步。

而对于数据库,也是如此。按照 DB-Engines.com, 一个专门跟踪数据库流行程度并每月发布数据库排名的一个网站的统计,排名前5的数据库分别为Oracle, MySQL, SQLServer, PostgreSQL 和 MongoDB。

排名第一的Oracle诞生于1977年。MySQL的第一个内部版本发行于1995年5月23日。SQLServer单一个版本发布于1989年。PostgreSQL虽然第一个版本发布于1995年,但前身可以追溯到二十世纪八十年代。而只有第五名的MongoDB数据库发布较晚,于2009年2月首次亮相。

从上面可以看到,这些计算机领域的主流技术大多在在1990年代就以诞生甚至更早,可以说中国起步真的很晚。

二、生态、技术、专利,一步慢步步慢

先发制人,后发治于人。计算机领域可以说是发展最迅猛的领域之一。从智能手机短短十来年的发展就可以看出来。

对于操作系统,生态的概念大家早已耳熟。国外系统之上的巨量应用,让早已习惯一个系统的用户很难去选择一个新出现的光秃秃的国内系统。更何况国内系统本身的技术并不一定优于国外系统,毕竟先发优势很大。在自由市场竞争下,国内系统根本没有竞争力。

而对于编程语言,同样也有生态之说。即使新出现的语言比之前的语言技术更先进,但大规模流行也是有一定困难的。学习一门新的语言是有成本的,对于应用开发者来说,如果能用原有语言实现,很少有人愿意用新语言实现。毕竟,新语言可能有不知名的BUG,较少的资料文档,以及完全空白的可参考的开源代码。因此,即便是谷歌推出kotlin替代JAVA,苹果推出swift替代Object-C,但进度并不快。就像新能源汽车替代传统燃油汽车一样,过程很慢,短期很难流行。

而数据库和编程语言面临的困境可谓是差不多。对于开发者用新的数据库的成本也不小。

当然,这一些还都是在推出的产品优于之前产品,没有专利壁垒的情况下。而不出现比国外更优秀的产品,不是IT从业人员质量过于低,而是要想超越早出发几十年的国外产品,需要付出的代价是巨大的,需要大公司的投入。

三、国产产商正在跟进

目前,华为已经发布高斯数据库和鸿蒙系统,而其他一些大公司也在跟进。可以说中国计算机领域几十年发展的潜力正在迸发,未来会产生越来越多的主流技术。当然,这需要大家内心等待,比较这些技术不是一蹴而就的,需要日积月累。


数码记录者


中国确实有自己的编程语言和操作系统(对数据库不了解,不回答),我知道的有汉编、易语言、习语言,操作系统有YUN OS、鸿蒙。那么,中文编程语言为什么没有流行于世界?个人看法是,中文编程语言自身存在短板,难以带动很多人赚钱形成产业,专业术语叫没有建立自己的生态系统。

下面我一一分析。

计算机科技诞生于英语区,使中文编程语言面临先天不足

英国科学家阿兰.图灵在1937年首次提出通用计算设备构想,1944——1945年期间,美国科学家冯.诺依曼提出现代计算结构模型。

1950年,第一台现代计算机EDVAC诞生于宾夕法尼亚大学。到今天为止,计算机经历了5代发展:真空管计算机、晶体管计算机、集成电路计算机、个人计算机和智能手机,它们均诞生于美国。

世界上第一部智能手机既不是出自苹果,也不是出自诺基亚,而是蓝色巨人,产品名为IBM Simon,意外不意外?IBM Simon诞生于1993年,由IBM与BellSouth合作制造。


迄今为止,计算机编程语言分为机器语言(由0和1组成)、汇编语言和高级语言,基本都由美国人发明。

看到这里,有人难免会问,这么多好处都被英美捞了,他们运气好到爆啊!

真不是运气好这么简单,因为现代计算机的所有成就建立在现代数学、物理学和化学的基础之上,这三大学科的科技树又是西方点亮的。

结果就是英语编程语言占尽先发优势,比中文编程语言早出现至少20年时间(最早的中文编程语言是上世纪七十年代的DOS环境下的编程语言),当英语编程语言已经成熟时,中文编程语言刚刚萌芽,所以追赶起来非常困难。

生态系统难以建设是中文编程语言最大的障碍

计算机软硬件的原创技术出现在英语区,意味着有时间建立编程语言的生态系统。对已经功成名就的英语编程语言来说,生态系统是保家卫国的护城河与城墙,对新生的中文编程语言来说,生态系统就是难以逾越的珠穆朗玛峰。

商业上的生态系统是个类比词汇,简单说就是你调动了多少行业资源。以现在最流行的编程语言之一的JAVA为例,运行JAVA编写的程序的设备数量超过100亿,超过了地球现有人口的总和,开发人员大约900万。

图为现有流行编程语言的市场份额和开发人员收入数据。编程语言建设生态系统不仅需要时间,更需要财富效应吸引开发者,后一条更为重要。能让很多人赚到钱的编程语言才是牛掰的编程语言,让人赚的越多的编程语言越牛掰。现有流行的编程语言,其市场份额和给开发人员带来的收入呈正相关关系,即市场份额大的编程语言,带给开发人员的收入往往较高。


下面接着回答第三个问题:为什么中文编程语言难以产生财富效应?

现有中文编程语言革命性创新不足

一种新的编程语言的流行,必然是解决了现有流行编程语言的痛点,换句话说就是用革命性创新(不是颠覆式创新,颠覆式创新是新产品取代旧产品)解决现有流行编程语言的短板。

由于用机器语言编写的程序非常单调乏味(全是0和1组成),而且很难发现错误,所以人们发明了用符号编写程序的编程语言,这就是汇编语言。使用一段时间后,大家发现,用汇编语言编程还是很枯燥,而且很繁琐,于是更高效的高级语言出现。

提高开发人员效率,是新的编程语言立足的首要条件。遗憾的是,现有的中文编程语言缺乏革命性创新,一般都是把英语代码变成汉语,运行时机器还要将汉语代码编译成英语代码,并不比英语编程语言更高效。

既然相比现有的JAVA、C++等流行编程语言,中文编程语言优势不明显,那开发人员何苦冒险更换编程语言?结果,中文编程语言没有产生财富效应,生态系统始终建立不起来。

所以,中文编程语言要成为流行语言,首先还是要审视创新力度是否足够强大,能否产生财富效应建立生态系统,这个和有多少说中文的开发者没有关系。


魔铁的世界


这个问题可以从两部分来看:

1.无论是数据库还是编程语言,国外已经做得相当完善,可以拿过来直接用,重新做的成本太过高昂;

2.我国在IT行业更注重应用,而不是研发;

中国为什么在世界上没有领先的IT技术?

几乎所有IT相关的东西,都离不开编程语言。一般来讲,编程语言都会产生在三个地方,大学/研究所,IT公司,有能力有兴趣的组织或个人。

很多编程语言都是美国人搞出来的,也正因如此,谷歌是美国的,微软是美国的,苹果还是美国的。不夸张的说,美国人的IT行业雄霸全球,也引领着世界潮流的发展。究其根本,就是因为像操作系统,数据库,编译器,网络协议栈这些最基础的东西,都是他们设计出来的。这里不是长他人志气灭自己威风,美国确实是新技术的发源地,不如别人的地方,这个得承认。

我们的计算机行业发展的时间很短,底蕴不足,别人在搞计算机,搞半导体,搞网络建设的时候,我们在搞一段至今不能说的“伟大斗争”。在人才,特别是高端人才的比率上远远不如美国。再加上一些体制内不怎么方便说明的原因,国内的大学和研究所能做出如同windows或oracle这样牛掰东西的可能性着实渺茫。

大部分企业目光仍然停留在既得利益层面

表面上看起来,中国的互联网行业和计算机行业蒸蒸日上,但究其根本,主要还是在应用层折腾,使用别人的语言来实现业务。

和国外不同,国内的互联网创新大多停留在业务模式,商业模式的创新上面,说白了也就是怎么更好的赚钱。当实现业务,抢占市场和用户以便更好的盈利成为了企业的第一需求时,谁还有心思去搞基础研究呢?

搞基础研究所需要的时间,精力,资金都是个无底洞,还有失败的可能。就以编程语言为例,有中文的编程语言吗?当然有,那就是半死不活的易语言,可我从没有见过那家公司要招懂易语言的人才。至于操作系统和处理器,我们不是没有搞过,结局无比惨淡(参见2000年的方舟计划)。现在虽然看上去我们什么都有了,但实际上最根本最核心的东西,依旧是老外的。

国内众多的“码农”,可能其中会有天赋异禀惊为天人的,但在市场的大环境影响下,很快也会变成一个唯利是图的商人。大企业不想冒风险搞基础研究,小企业没钱搞研究,别想着只靠国家补贴,国家用钱的地方也很多;至于个人就更是个笑话了,我最大的理想就是做一个跟IOS一样厉害的操作系统,但我看着每个月五六千的房贷车贷,想想相亲时对面姑娘开口三十万的彩礼钱,想想那些明明不懂技术的外行领导对真正技术人员的颐指气使,嗨,还是洗洗睡吧!


(谢谢您看到最后,麻烦点个赞或者关注吧~)


爱思考的奥特曼


计算机是外国人发明的,编程语言是外国人发明的,操作系统是外国人发明的。外国人给你一个黑盒子比如CPU,内部看不到,只公开输入输出,会用就行,那软件则将函数或将函数封装成黑盒子你调用就行,至于函数内部实现或函数封装是看不到的。所以黑盒子才是核心技术!而程序员触碰不到!

总的说来还是不善长!比如一通讯协议是由一个极为有限的范围使用后来才成协议!但中国从未诞生!

如创造一操作系统象“1十1”一样简单,先在某一小领域使用,然后人们发现它是个宝,争向使用,从而袭卷中国乃至全球!显然,中国不会诞生。

中国是勤劳民族但不是智慧民族!


h168j


所有的协议标准都是西方世界定的,你要标新立异的搞个新标准学说 也是建立在前人的基础上。计算机 最原始的语言是2进制,只有01。后来所有的语言都是 用过更自然的语言去完成了复杂各种0101的计算,出了各种库可以调用,让编程更简单。中国也推出过易语言 纯中文编程,我是没用过,这是一个没有意义的语言,现在这些年也没怎么听说。现在来源的程度越来越高,包括 操作系统 内核Linux 等,根据自己的需要进行改动。大家的开发创新更是遵守统一一个标准与接口 ,而不是乱创新各种平台 生态 接口 然后把钱都花费在了推广 补贴 拉拢各种软件商来支持。中国的码农在应用级已经很出色了,未来的ai来了 可能编程会更容易,那时候需要的不是编程语言 而是更加出色 优化的算法的比拼。所以现在已经过了 要去拼协议 标准 指定的年代了 没意义去做那些


Dean630


做基础需要需要多年才能达到应用,私企没有这样的雄厚资金。另外,基础工程是国家层面的战略,私企是以追逐利润为目的的。


老牛90570656


要成就一套称霸世界的操作系统,除了技术员的数量,还需要质量,更需要这些元素:

1)分享和奉献精神,敢于开源,有donate观念

2)博爱之心和世界观,把代码工作者当作一家人,无论来自哪个国家

3)有全球团队协助与分工的领袖担当和顺服之心,而不是二选一的博弈心态。就是创办者心甘情愿的担当领袖的责任,甚至把使命看重于暂时的利用;而其他成员甘心协作。

系统底层工作也是就像基础科学、基础材料和基础和工业一样,是一个日积月累的庞大的不断修复和改善的过程。

所以,一个民族必须要有追求比利益更高贵的信仰,一个超越国家和种族的信仰。为了房子、为了钱、为了尊严、为了名利……这些都会驱使一个人成为伟大,但更伟大的是超越这些的博爱之心,为了全人类的便利服务这种爱心❤。


分享到:


相關文章: