Clojure

State of Clojure 2019 Results

2019年2月4日
亚历克斯·米勒

欢迎来到克洛瑞尔州的年度调查结果! 每年,我们都会对Clojure和ClojureScript开发人员进行调查,以评估该语言及其用户的状态. 感谢所有花时间完成调查并提供意见的人. 今年,我们有2461名受访者. 一些重点:

  • 许多公司将 Clojure用于Web开发,商业服务和企业应用程序中的广泛领域,包括金融服务,企业软件,零售,广告,医疗保健等.

  • Clojure因其对函数式编程,不变数据,交互式REPL和易于开发的惯用支持而受到重视 .

  • 正如在许多欣欣向荣的讨论论坛,会议和用户群体中所看到的那样,Clojure及其社区是活跃而充满活力的,并积极参与社区图书馆的发展.

有关更多详细信息和完整结果 ,请参见下文.

A Language for Work

在2010年的第一批Clojure调查中,有27%的受访者表示使用Clojure进行工作,有33%的人从事严肃的爱好项目. 多年来,这个数字一直稳定增长,我们现在看到66%的人在工作中使用它,而54%的人在认真的业余项目中使用它.

Clojure被广泛用于各个领域-Web开发(81%)和开源(48%),当然,还构建和提供商业服务(31%)和企业应用程序(22%). 这项工作发生在各种各样的行业中,包括金融服务,企业软件,消费软件,零售,媒体/广告,医疗保健,教育等等.

在过去的四年中,Clojure开发人员在1至10人的公司中所占的比例下降了,今年已降至35%(而三年前为44%). 我们看到在规模超过1000和11-100的公司工作的开发人员有所增加. 我们还看到,这些Clojure项目的消费者数量减少了"团队内",而增加了"外部团队"或"组织外部".

今年,我们增加了一个新问题来评估Clojure开发人员的总体经验水平. Clojure用户中将近一半(49%)拥有11年或以上的经验,而21%的用户具有21年或以上的经验. 最近的JVM生态系统调查提出了类似的问题,为了进行比较,有42%的人具有11年或以上的经验,只有3%的人具有21年或以上的经验. 平均而言,Clojure开发人员比其他JVM开发人员更有经验.

调查评论说:

  • "多亏了Clojure和ClojureScript,我才能维持生计,构建并维护大型系统并按时交付复杂的解决方案.谢谢!"

  • " Clojure经过精心设计和稳定.它是一种动态,实用的Lisp,实际上可以卖给老板.(我从未想过要写的一句话)."

  • "我们的团队无法用其他任何语言摆脱所有兔子的帽子.关于Clojure,我唯一担心的唯一问题是如何确保我再次在Clojure和Clojurists工作我现在的演出应该结束吗?"

每天都有成百上千的公司和成千上万的Clojure开发人员在使用Clojure或ClojureScript,并将其作为业务基础. 调查表明,Clojure开发人员越来越多地在大型公司中使用它来工作,从而影响了越来越多的用户.

Strengths of Clojure

For years we have asked people what aspects of Clojure were most important to them. These answers are remarkably consistent and this year was no different. However it is good to reexamine these strengths to see why developers value Clojure. The big four that are always at the top of the list are: functional programming, immutability, the REPL, and ease of development. These traits are interrelated. Language support for immutable persistent data structures makes functional programming idiomatic and effective. A REPL on a live, growing system, with data loaded, is a great way for developers to try their new code in context as it is written, improving quality.

其他重要功能包括主机兼容性/互操作性(允许我们充分利用基础平台及其库,无论是JVM还是JavaScript),社区,运行时性能,表达语法,并发支持以及跨层共享语言.

关于该语言的一些评论:

  • "质量贯穿Clojure.语言设计,图书馆设计,交互开发,社区建筑经验,都是一流的."

  • " Clojure /脚本允许我创建其他语言无法实现的东西."

  • " Clojure美观,实用且简洁.它确实使我对编程的热爱恢复了活力."

  • "我真的很欣赏Clojure精心设计的设计.我们认为Clojure在给我们提供最小化干扰的语言的同时,给我们带来了明显的优势."

Vibrant Community

Clojure社区活跃,不断发展,并始终提供帮助. 多年来,主要的通信机制随着行业的变化而变化,从IRC到邮件列表,再到最近的Slack. 我们已经对此进行了两年的跟踪. Slack仍然很强大,有64%的受访者使用它(请注意,这可能会因我们在广告中刊登的位置而有所偏差!). Clojure subreddit继续强劲增长,达到55%的使用率. YouTube上的ClojureTV是今年的新回答,但几乎有一半的人正在用它来观看Clojure视频. 官方的Clojure邮件列表今年又有所下降,因为人们不再使用"旧学校"邮件列表. 而Clojure发生通讯的原始位置是IRC,而该位置继续不使用,现在只有7%.

我们还添加了一个新问题来评估Clojure用户如何与生态系统互动. 96%的人表示对语言和图书馆感到满意,有65%的人在从事建筑服务或产品,有51%的人主张在组织中使用Clojure. 超过四分之一(28%)的用户积极帮助新用户(在Slack,Reddit或邮件列表中很常见). 有25%的人报告创建或维护开源库,在库中提交问题(17%)或提供拉动修复请求(15%).

用户的一些引用:

  • "过去几年来,我们非常高兴地看到生态系统在卓越上融合,非常感谢所有的工作和精心的设计!"

  • "我喜欢社区的持续发展,人们普遍友好."

  • "感谢出色的语言,稳健的动手能力以及热情的社区!"

The Data

如果您想了解全部结果,可以在这里找到过去和现在的完整数据集:

再次感谢您使用Clojure和ClojureScript并参与了调查!