科技巴士

开发者最讨厌的编程语言

巴士影院

近日,全球著名的 IT 网站 Stack Overflow 根据数百万开发者项目标签的使用频率,发布了一份编程语言的调查报告,试图找出最不受欢迎的编程语言。没想到开发者最想规避的编程语言中,PHP、Objective-C 和 Ruby 等语言纷纷上榜。

最不受欢迎的编程语言

在 Stack Overflow 上,开发者可以创建属于自己的“Developer Story”,用来记录项目开发、获得的成就等个人开发经验,相当于简历,待发布之后也可以提升职场机遇。在创建“Developer Story”时,可以添加喜欢或者不喜欢的语言标签,而本调查报告的数据来源正是基于此。

自动草稿
将该数据作为衡量标准,并以特定的编程语言列表(并非是像 Android 这样的平台或是 JQuery 这样的库)进行筛选, Stack Overflow 使用 Bayes 方法来预估这些平均值, 最终发现开发者中最不受欢迎的语言前三名分别为 Perl、Delphi 和 VBA,紧随其后的是 PHP、Objective-C、Coffeescript 和 Ruby。

自动草稿
如果此前看过有关 Stack Overflow 的编程语言报告,就会发现,那些很少被标记为不受欢迎的编程语言往往就是使用率快速增长的语言。比如 R、Python、Typescript、Go 和 Rust 等语言增长率都比较高。

下面我们可以通过比较每种语言的增长与标记“dislike”的百分比进行验证,橙色点表示最不受欢迎的语言。以下我们将统计数据限制在发达国家(如美国、英国、德国和加拿大)。

自动草稿
总体而言,语言的增长率与开发者“dislike”的频率之间有一种关系。被标记为“dislike”标签的编程语言占比在 3% 以上的,使用率越来越少,而最少被标记为“dislike”的 R、Rust、Typescript 和 Kotlin 语言使用率都在快速上升。

那些开发者喜欢及不待见的技术

上述分析仅考虑编程语言,而不是操作系统、平台或库。那么什么是开发者最不喜欢的技术?据调查报告显示,开发者最不喜欢的技术包括 Internet Explorer、Visual Basic、Flash、COBOL、Fortran 和 Pascal 。

自动草稿
普遍喜欢的技术则包括:机器学习、Git、Python 3.x、HTML5 和 CSS3 。

自动草稿
值得强调的是,以上并非是对某一语言的歧视,而仅仅是衡量哪些技术在至少一部分开发人员的使用过程中,是让他们感觉到舒服还是负面的。

独立的标签网络

我们可以将所有这些标签组合成一个故事,将其组织成一个网络。在最近的一篇文章中,Julia Silge 展示了如何构建一个技术网络来代表整个软件生态系统。如果我们根据每个“dislike”标签的对节点进行着色,我们可以了解生态系统的哪些部分比其他标签更具争议性。

自动草稿
通过将“Developer Story”标签放在子生态系统中,我们发现有独立的子系统的集群:微软(以C # 和 .Net 为中心)、PHP(WordPress 和 Drupal 环绕),和移动开发(特别是 Objective-C)。操作系统的集群内(右下),我们可以看到,系统如 OSX 和 Windows 被标记为“dislike”,但标签如 Linux、Ubuntu 和 Unix 却并非如此。

技术型的竞争之路

有意思的是,数据还体现了行业中存在的技术型竞争关系,像是 Linux 、OSX vs Windows,Git vs SVN,vim vs emacs ,React vs Angular 等。开发人员通常不愿意使用他们认为过时的东西,建议用更现代的技术来取代。

自动草稿
以上并不表示直接的因果关系,标签不被程序员使用,导致它们被放弃。一种可能性是,如果人们感觉到语言已经越来越受欢迎,就会很乐意公开表达自己的喜欢与不喜欢;另一种原因就是与时俱进,以新的更新替换旧而复杂的编程语言。

对此,在 Hacker News 上网友也发表了自己的看法:

@chrisaycock:

文章定义了开发者在日常工作中编程语言的“喜欢”vs“不喜欢”偏好。例如,Perl 是最不受欢迎的语言,然其真正意义是,开发者将其归入不想要此类开发工作。

分析表明,语言的“喜欢”与其在 Stack Overflow 上的增长之间存在着相关性。 相关性并不是因果关系,这只能意味着开发者所从事的工作会使用较多的热门的语言。

@throwaway2016a:

Python 持续地受欢迎令我惊奇。虽然我喜欢 Python,它也适用于数据科学,但我不明白为什么人们将其用于网站。如果考虑到易用性,并且如果要执行性能,PHP 和 Ruby 生态系统将会更加成熟,Go 和 Java 框架也更好。即使在数据科学世界中,个人也喜欢 R 超过 Python。

@lmm:

Python 和 Ruby 在很多方面较为相似,它们具有相似可用性的简单 Web 框架。个人使用 Python 已经有一段时间了,如果纯粹的作为 Web 开发者选择,那么 Ruby 可能会有一些轻微的优势,但是如果公司中的某个人已经使用 Python 作为系统管理脚本或数据科学项目,那么这足以提升规模。

(0)

本文由 广元巴士 作者:老司机 发表,转载请注明来源!

关键词:
巴士影院

热评文章

发表评论

电子邮件地址不会被公开。 必填项已用*标注