多少浮现中华的程序员就是社会风气上最牛的程序员,哪个国家和地面具备全世界最牛逼的程序员

那是一个正经的排名,译自
HackerRank
网站,一个特地给程序员做挑战赛的网站。

写在眼前:直白觉得中国的程序员想法多,肯钻研肯学习,但却不知道原来中国的程序员是社会风气上最牛的程序员。说来可能不信,但基于HackerRank官网的一篇通信,数据显示中华的程序员就是社会风气上最牛的程序员。特将此文翻译成中文,分享给大家。

正文

一经问哪儿的程序员最牛,很四人自然会认为是United States。毕竟United States有着众多杰出的程序员,如比尔(比尔(Bill))·盖茨、
肯·Thompson、 C
语言之父丹莱切斯特(丹尼斯(Denis))·里奇(Richie)、唐纳德(唐纳德)·克努特。可是,那几个年,印度的程序员规模升高是满世界最快的,俄联邦的黑客也愈来愈锋芒毕露。有何样办法来规定哪些国家的程序员是最牛的吗?

哪些国家和地段有着满世界最牛逼的程序员?

在HackerRank网站上,哪些国家在编程挑衅赛中显现最厉害呢?通过数量,大家期望可以找到问题的答案。

不少人自然会觉得是美利坚合作国。


HackerRank网站上,为了帮扶程序员升高技术,大家举办过数以千计的编程挑衅赛。来自世界各地比比皆是的程序员到场了那一个挑战赛,从
Python
到算法到安全到分布式系统都有提到。大家的社区也有跨越150万开发者的排名,并且社区的人数天天都在加强。

U.S.A.自然拥有许多第一名的程序员,如比尔(Bill)·盖茨、 肯·汤普森(汤普森)、
C语言之父丹尼斯·Richie、唐纳德(Donald)·克努特。不过,那么些年,其余一些国家和地区的上进明显更快,比如印度的程序员规模拉长全球最快,俄国的程序员也愈来愈锋芒毕露。

按照大家的数额呈现,中俄持有最具才华的程序员。中国程序员在数学、作用程序设计和数据结构方面当先了社会风气任何国家的程序员,而俄罗斯程序员则在算法领域占有主导地位,算法也是最风靡和最具竞争力的圈子。即便花旗国和印度在HackerRank上也有好多佳绩的程序员,但她们也不得不排在第28和第31。

但就是这么说,到底哪些国家和所在的程序员最牛逼呢,拿什么标准衡量啊?

1、全体综合名次

咱俩先从程序员中最受欢迎的测试项目初始分析。HackerRank程序员可挑选加入15个不相同世界,下表显示了各样领域的比例

图片 1
天克利特海北超过的圈子是算法领域,这一个世界得到了近40%的程序员青眼。这一个小圈子包括数据排序,动态编程,搜索关键字和别的依据逻辑的天职方面的挑衅。对于算法测试,程序员可利用他们挑选的言语,那或许也表达了该领域如此受欢迎的部分原因。排在第一位和第四位的Java和数据架构分别都占到了近乎
10%的比例。而分布系统和自贡的占比低于。

那就是说,基于这个测试,哪个国家的程序员全体得分最高呢?

为了弄驾驭,我们查阅了逐条国家所在世界的平均得分。计算平均得分前大家又为各种领域制定了打分标准(通过从种种分数减去平均值,然后除以标准差,也称为z分数),那样的话,固然每个领域的难度有距离,但大家也能对差别领域的私房打分,并形成从完整到个人的相比较系统。为了让结果更直观,大家根据z 分数框架的规律,做了一个 1-100 分数框架来分解。

俺们总计了 HackerRank 上程序员最多的 50 个国家,得出上边那张表单:
图片 2
是因为中国的程序员得分最高,所以将中国的分数作为 100
的基准分,则俄国的分数为 99.9 ,两国仅相距 0.01 。此外,波兰和瑞士联邦也以
98 的高分进入前列。巴基斯坦得分仅为 57.4 。

印度和美利坚合众国为全球贡献了最多的程序员,但并未进去榜单的前 25名 ,只分级以
76 和 78 的分数排行 31 和 28 。


HackerRank,为了扶持程序员提升技能,大家进行过数以千计的编程挑衅赛。千千万万来自世界各国和地区的程序员出席过这么些挑衅赛,使用的语言和技术也应有尽有,从
Python
到算法到安全到分布式系统都有提到。大家的社区曾经具有150万程序员用户,还在持续进步。

2、特定领域排行

即便中国的排行很出众,但也不只是雄霸所有榜单。哪个国家的程序员在特定领域的显现最好?我们来探视各样领域中上榜的国度。
图片 3
可以见见中国在一些世界格外非凡。中国程序员在在数据结构、数学和函数式编程方面制伏了其他国家的程序员。别的,俄国程序员在挑战举行最多的算法领域也摘得桂冠。其次是各自处于第二、第三任务的波兰和中国。

怎么解释不一样国家在不相同领域的程度差距?有可能是因为俄联邦的程序员更爱好插手算法类的交锋,也就会在这一世界投入越来越多精力,而多数神州程序员则更爱好涉足数据结构类的花色。

在HackerRank工作的一个软件工程师就是这么的,他叫Shimi
Zhang,是大家函数型编程领域名次前十位的程序员之一。他来自华夏哈拉雷市,两年前来到美利哥念书计算机科学博士,然后来到HackerRank工作。

来源中国的一级程序员Shimi
Zhang就中国程序员的超导之处表达了他的理念:

“和其余国家相比较,中国的高等教育资源比较少,中国的青少年学习编程的路本来就窄。很多别致的后生在获得来之不易的变成比赛,会真的痴迷于此。

在华夏,很多年轻人在中学时期就从头自学编程了,甚至还尝试解决的局地在环球也从没稍微人能解决的难题。

开办专门针对年轻人工程师的全国性比赛,如 NOIp (
全国青年信息学奥林匹克联赛)和 NOI (
全国青少年新闻学奥林匹克比赛),二零一九年至少有 3 个人在 NOI
中而且获得了亚军。那种针对年轻人进行的编程比赛是近十年内的倾向。

并且, NOI 中还有一个牛逼的尤其规定:若是一位选手在 NIO
中收获了金牌,他就不可以到庭国际音信学奥林匹克竞技的中国队选择赛,那就意味着,在国际新闻学奥林匹克比赛中获得金牌的中原运动员,都是首战告捷。”

故而大家梳理了 HackerRank
各样挑战赛中各国程序员的大成,基于数据印证各国的实力。

3、不相同国度程序员的偏爱

接下去,我们又相比较了每个国家程序员在不一样挑衅赛上费用的光阴,然后与HackerRank用户平均消费的时长进行相比较。那样一来,就能找出差异国度程序员在一定领域的偏好了。
图片 4
如上表所示,中国程序员在数学比赛中的插手度远远胜出大家预料的平均水平,那就能解释为啥他们能在那么些圈子高踞头名了。捷克人似的很欢畅shell,在这些单项他们是首先。

俺们根本根据编程的速度和精度加权对程序员打分和排行。

4、分裂国家程序员的编程语言偏好

但是除此之外那多少个国家,其余国家的拔取偏好和擅长领域接近并没有必然联系。我们也想清楚其余国家的程序员对一定的编程语言是不是有极度嗜好。比如印度程序员是还是不是对C++更感兴趣?墨西哥程序员是还是不是都用Ruby编码?
图片 5

总的来说,世界各地的程序员接纳 Java
的百分比都要压倒其余语言(唯有极个其余不等:如马来亚和巴基斯坦的程序员更爱好
C++,海南的程序员更爱好 Python
)。而斯里兰卡程序员也是JAVA比例使用最高的国家,在HackerRan中也名次排在第八的职位。

巴基斯坦、斯里兰卡和尼日利艾达m下排行位居低端,他们得以学学深造瑞士的定性。程序员在HackerRank社区上没有使劲就扬弃了挑战,得分为零。瑞士联邦的零记分用户比例是低于,瑞士联邦程序员也可谓称得上世界上最坚强的程序员。

实际对于世界各地的程序员来说,无论你来自哪儿,都有可能变成一下个盖茨或者克努特。

根据这个数量,假使大家设立一场黑客奥林匹克比赛,中国将得到金牌,俄联邦将获得银牌,而波兰则拿下铜牌。即便美利坚联邦合众国和印度的程序员令人值得表扬,但想进入前25,依旧须求再持续全力的。

翻译的内容相比较多,如有部分语句措辞不当的,欢迎提议。

初稿出处:https://blog.hackerrank.com/which-country-would-win-in-the-programming-olympics/

图片 6

一:全部排行

先是,看看程序员们最喜爱那种测试项目。

HackerRank的程序员可以在15个领域种选拔,下表彰显了各类领域被挑选的比重

1.png

千里迢迢超越的是算法,得到了近
40%的程序员钟情。这一个领域的挑战赛包括数据挖掘、实时工程、关键字搜索和局部基础逻辑项目。在算法领域,程序员可以方便地拔取任何他们想要选取的语言,同时,在编程类的面试中,算法也很重大,那恐怕是累累程序员会拔取训练算法的来头。

再来看看第二名和第三名, Java领域
和多少架构的比重分别都占到了近乎10%。分布系统和平安的占比低于(值得一提的是,在这么些领域,大家照旧统计到了数千份达成的体系)。

这就是说,基于那项测试,哪个国家的程序员全体得分最高呢?

率先,大家看看各样国家和地段的平分得分,统计平均得分往日大家为各种领域制订了打分标准(用个人得分与平均分之差再除以标准分,即z分数模型。)那样的话,固然每个领域的难度有出入,但我们也能对分裂领域的个人打分,并形成从总体到个人的比较系统。

为了让结果更直观,大家依据z分数框架的原理,做了一个1-100分数框架。

总计了 HackerRank 上程序员最多的50个国家,我们得出下边那张表单:

2.png

由表单可以看出,中国的分数最高,将中华的分数作为100的基准分,则俄国的分数为99.9,两国仅相距0.1。此外,波兰和瑞士联邦也以98的高分进入前列,榜单尾巴上的巴基斯坦得分仅为57.4。

印度和美利坚合众国为环球奉献了最多的程序员,但从未进来榜单的前25,只分级以 76
和 78 的分数名次31和28。

即便中国的私有平均分很出众,但完全影响力却稍显不足。

二:差距世界名次

这就是说,哪个国家或地面的程序员在特定领域表现最好啊?

看下表:

3.png

中原在一定多的领域都表现突出,比如,在数据结构、数学和函数式编程方面,中国的程序员就时时刻刻高人一头。

除此以外,如前文所说,社区中最受欢迎的是算法,那么些圈子摘得桂冠的是俄罗斯程序员,第二和第三名则是波兰和九州。

怎么解释不同国度和所在在差距世界的档次差别?一个或者的缘故是,
俄国的程序员更欣赏出席算法类的较量,也就会在这一领域投入越多精力,而一大半中华程序员则更爱好涉足数据结构类的档次。

一位名叫张世(英文名:)宓(音)的软件工程师就是那样。他在社区函数式编程领域名次前十,来自中国卢萨卡,为了得到总括机科学学士学位,两年前移民到United Kingdom,目前在
HackerRank工作。

从中国强烈的竞争环境中脱颖而出后,张世(英文名:)宓谈到中华程序员的出色之处时说道:

“中国的高等教育资源比许多国度都少,中国的小伙子通往编程的路本来就窄,很多别致的青少年在得到来之不易的火候后,会真正痴迷于编程。

在华夏,很多年轻人在中学时代就从头自学编程了,甚至,他们尝尝解决的一部分难题,在环球也从不稍微人能化解。

他们会主办专门针对年轻人工程师的全国性比赛,如NOIp(
全国青年音讯学奥林匹克联赛)和NOI (
全国青少年新闻学奥林匹克比赛),今年起码有3个人在NOI中并且得到了季军。那种针对青少年进行的编程竞赛在未来十年将成为主旋律。

并且,NOI
中还有一个很特其他确定:就算一位选手在IOI中收获了金牌,他就不可能接二连三出席这项比赛了,这就意味着,半数以上在国际音讯学奥林匹克比赛中获得金牌的中原运动员,都是首战告捷。”

三:分化国度程序员的溺爱

接下去,大家还将每个国家的程序员在分裂的档次中消费的年华,与社区享有程序员在这一类品种开销的平分时长举行了相比较。那样,大家就能找出不一致国度在一定领域的偏好了。

4.png

如上表所示,中国程序员在数学比赛中的参加度远远当先大家预料的平均水平,那就能分解为啥他们能在那些圈子高踞第一名了。捷克人似的很高兴shell编程,那些单项他们是首先。然而除了那两个国家,另海外家的取舍偏好和擅长领域接近并没有必然联系。

四:不相同国家程序员的编程语言偏好

除此以外,大家想精晓的是,每个国家的程序员对一定的编程语言是还是不是有与众不相同嗜好。孔雀之国人更爱好C++吗?墨西哥程序员都用Ruby吗?上边那张图突显了分歧国家在种种测试中的编程语言偏好:

5.png

如上所述,全球的程序员选取Java的百分比都要压倒其他语言(唯有极个其他不等:如马来亚和巴基斯坦的程序员更爱好C++,湖北的程序员更爱好Python)。斯里兰卡则是程序员选Java比例最高的国家,为
HackerRan进献了一定比例程序员的印度则排行第八。

除此以外,排在榜尾的巴基斯坦、斯里兰卡和尼泊尔也许要对坚定的瑞士联邦程序员投以崇敬的眼神了。因为只要社区上的程序员中途丢弃自己的档次,会吃零蛋。结果突显,瑞士联邦吃零蛋的程序员比例最低,称得上环球最顽强的程序员。

6.png

对每一个程序员来说,不论来自啥地方,都有可能变为下一个盖茨或者克努特。但只要确实要举办一个世界奥林匹克竞技,中国将获得冠军,俄联邦将获得季军,波兰则荣获亚军。至于美利哥和孔雀之国的程序员,他们当然值得礼赞,但要想进入前25,还得小伙伴们还得努把力啊。

编后:

尽管排行那种事物看看就好了,不过看看各国程序员的两样特色,依旧蛮有借鉴性哒~

初稿链接:Which Country Would Win in the Programming
Olympics?

作者:Ritika Trikha

本文已得到授权,转发中文版请联系简寻,么么哒

相关文章