链资讯 链资讯
Ctrl+D收藏链资讯
首页 > Gate.io > 正文

EXT:2021 年Solidity开发者报告:概览加密世界最庞大的开发者群体_STU

作者:

时间:

原文标题:《Solidity Developer Survey 2021 Results》

Solidity 语言的开发者使用情况如何?我们从 400 多份问卷中看到了这些。

这是由 Solidity 官方开展的第二次结构化的年度大型 Solidity 开发人员调查(2020 年调查报告可点击此处查看),以 Solidity 语言的开发者使用情况为主题,围绕开发者数量、开发者简介、开发者属性、开发者开发经验、即将推出的功能和语言设计、社区Solidity 等多个维度展开调查。

这篇文章中,我们将总结和分析 2021 年 Solidity 开发者调查的结果。

调查对象:总共有来自 73 个不同国家/地区的 435 名开发人员参与了此次调查,与 2020 年相比,这一数字增加了 100% 以上。覆盖的国家和地区也从 2020 年的 48 个急剧增加到 2021 年的 73 个。超过 20% 的用户表示居住在美国,其次是印度(9%)和德国(4%),大约 9% 的人更愿意不分享其位置的详细信息。

开发人员简介:编程经验水平中等偏高,大多数受访者从事专业编程工作 3 年或以上,36.6% 甚至超过 6 年。

Solidity 体验:超过一半的受访者使用 Solidity 不到一年,而 15.5% 的受访者使用它超过 3 年,几乎 80% 的人每天或每周都使用 Solidity。

Solidity 专业知识:大多数受访者认为自己是 Solidity 专家,他们的专业知识自我评价为 7 或更高(满分 10 分)。4.2% 的人将他们的专业知识评为 10。80% 的受访者将 Solidity 用于他们的个人项目,大约 60% 的人也在工作中使用它,超过一半的受访者使用 Solidity 的时间不到一年。

开发者体验:大多数 (大于 70%) 认为 Solidity 开发者体验在去年有所改善,只有 1.6% 的人认为情况变得更糟。

语言准确性:60% 的开发者希望 Solidity 能够增加更多检查点,减少由于判例不足引起的错误,提升智能合约开发的准确性。26% 的人更愿意保持现状。

未来功能:更高效的优化器和捕获自定义错误的能力被列为正在讨论的最重要的未来功能。此外,对小数的支持、更好的阵列管理和解决堆栈太深错误等都是最受期待的功能。

喜欢和害怕的功能:受访者最喜欢 Solidity 的简单性、「易于学习」的方面、默认的 SafeMath 和修饰符,可怕的话题是调试、堆栈太深的错误以及缺少对小数的支持。

安全团队:发现Circom验证库漏洞CVE-2023-33252:金色财经报道,Beosin 发现Circom 验证库漏洞CVE-2023-33252,提醒zk项目方注意相关风险。Circom是基于Rust开发的零知识证明电路编译器,该团队同时开发了SnarkJS库用于实现证明系统,包括:可信设置、零知识证明的生成和验证等,支持Groth16、PLONK、FFLONK算法。

此前,Beosin 安全研究人员在?SnarkJS 0.6.11及之前的版本的库中发现了一个严重漏洞,当该库在验证证明时未对参数进行完整的合法性检查,使得攻击者可以伪造出多个证明通过校验,实现双花攻击。Beosin在提了这个漏洞以后,第一时间联系项目方并协助修复,目前该漏洞已修复完成。Beosin提醒所有使用了SnarkJS库的zk项目方可将SnarkJS更新到 0.7.0版本!以确保安全性。

同时针对此漏洞,Beosin安全团队提醒zk项目方,在进行proof验证时,应充分考虑算法设计在实际实现时,由于代码语言属性导致的安全风险。目前Beosin已将漏洞提交 CVE漏洞披露平台(Common Vulnerabilities and Exposures)并获取认可。[2023/5/25 10:39:47]

社区:不到三分之一的受访者曾参与过与 Solidity 语言设计相关的工作。

请注意,此调查仅以英语进行这一事实是在解释有关居住国分布和语言偏好的结果时需要考虑的重要因素。

首先,让我们看看参与本次调查的开发人员,我们将详细介绍位置和语言等一般信息,并详细了解他们的专业经验、编程偏好等。

2021 年的调查总共收到了来自 73 个不同国家/地区的开发人员的 435 份回复,与 2020 年相比,这一数字增加了 100% 以上。

国家和地区的数量也从 2020 年的 48 个攀升至 2021 年的 73 个,似乎也覆盖了地理上更加多样化的受众。

超过 20% 的人表示居住在美国,其次是印度(9%)和德国(4%),大约 9% 的人更愿意不分享其位置的详细信息。

受访者使用他们的母语涵盖多种语言,总共提到了 50 种不同的语言作为母语。

其中 35% 的受访者的母语是英语,其次是西班牙语(9.4%)、法语(5.9%)、俄语(5.9%)、葡萄牙语(4.9%)和德语(4.9%)。

成都印发首个“元宇宙”政策文件,2025年相关产业规模达1500亿元:金色财经报道,近日,成都市新经济发展工作领导小组办公室印发《成都市元宇宙产业发展行动方案(2022—2025年)》,这是成都首个聚焦元宇宙的政策文件。《行动方案》提出,到2025年,成都元宇宙产业体系初具雏形,相关产业规模达到1500亿元。构建起完整的成都元宇宙产业链,研究掌握一批核心技术、引进培育一批优质企业、融合打造一批特色应用场景、开发储备一批城市IP,对产业转型升级、城市治理形成引领带动作用。[2023/1/5 9:52:54]

超过 80% 的受访者在工作中主要使用英语。一些受访者还在工作中说西班牙语 (2.8%)、法语(2.1%)、俄语(1.6%)或葡萄牙语(1.6%)。

在母语非英语的受访者中,超过 90% 的人可以阅读英文版的 Solidity 文档,8.6% 的人更愿意用他们的母语阅读,其中最常被提及的是普通话和繁体中文、西班牙语和葡萄牙语。

请记住,此调查仅以英语进行,这可能会影响此问题的结果。我们仍然相信 Solidity 文档等资源的国际化是降低进入门槛的关键因素,我们的目标是支持社区努力通过新的、更清晰的结构化翻译指南进行翻译。

工作经验和就业

77.1% 的受访者目前有工作,大约 10% 是学生,12.5% 目前没有全职工作。

受访者主要在科技(62.8%)和金融服务(15.5%)领域工作,除此以外教育、媒体以及游戏等领域的占比也相对较高。

大约 10% 的人是编程新手,并且只从事专业编程不到一年。不过值得一提的是,拥有超过15年编程经验的资深开发者占比也达到了这一数字。而约有30%的受访者拥有3-5年编程经验。参与本次调查的受访者编程经验年限基本呈现正态分布。

Kava 9主网将于2022年1月20日上线:12月30日,据官方消息,Kava 9主网已准备就绪,计划将于北京时间2022年1月20日00:00上线。[2021/12/30 8:14:11]

总体而言,编程经验水平处于中高水平,大多数受访者专业编程 3 年或以上,36.6% 甚至超过 6 年。

有趣的是,大多数受访者(80.4%)将 Solidity 用于他们的个人项目,大约 60% 的受访者在工作中使用 Solidity,而 40% 的受访者主要在工作中使用另一种编程语言编写代码。

超过 20% 的人表示他们正在领导一个编程团队。

在开源贡献方面,60% 的受访者表示他们从未或很少为使用 Solidity 编写的开源项目做出贡献。

不过也有约 30% 的受访者表示每天或每周都会这样做。

编程语言首选项

JavaScript 和 Solidity 在最常用的编程语言中排名第一(均为 27%),其次是 TypeScript(14.7%)和 Python(10.9%)。

在「最喜爱的编程语言」票选中,Python 成功击败 Solidity 「反客为主」,获得了 22.7% 的受访者青睐,其次是 Solidity(19.4%)、JavaScript(14.5%)、TypeScript(10.8%)和 Rust(8.4%)。

操作系统

与 2020 年的调查类似,macOS 和 Linux 似乎同样受欢迎。

大约 40% 使用 macOS,紧随其后的是 Linux(36.6%),22% 的受访者使用 Windows,其中大多数人表示除了 Windows 之外还使用 macOS 或 Linux,也有一些开发人员同时使用 Linux 和 macOS,甚至同时使用这三个操作系统。

以太坊客户端Erigon发布v2021.07.03版本,配置中添加伦敦升级区块:官方消息,以太坊客户端Erigon发布v2021.07.03版本,变更包括在配置中添加伦敦升级区块、EIP-1559支持eth_call和trace_*API、eth_syncing阶段性展示进度等。[2021/7/15 0:54:03]

大多数受访者认为自己是 Solidity 专家,他们的专业知识自我评价为 7 或更高(满分 10 分)。

4.2% 的人将他们的专业知识评为 10,大约 23% 可以被认为是初学者或自评专业水平为 4 或更低的低频用户。

与去年相比,初学者的比例略有增加,超过一半的受访者使用 Solidity 的时间不到一年。

15.5% 的人使用 Solidity 超过 3 年,因此可以被视为 Solidity 老年人。

Solidity 仍然看起来相当容易学习,26.7% 的受访者在不到一个月的时间内感到高效,30.7% 的受访者在不到半年的时间内感到高效,7.7% 的人需要一年多的时间才能适应这种语言。

23.3% 的人感觉还没有效率,其中超过 75% 的人是初学者,并且使用 Solidity 的时间不超过 6 个月。

Solidity 开发人员简介

大多数(大约 80%)受访者每天或每周都使用 Solidity,8% 的人表示「很少」或「从不」使用 Solidity,其中几乎所有主要使用另一种编程语言的代码都在工作中,大多数人表示他们使用 Solidity 的时间还不到 3 个月。

超过 50% 的人使用 VSCode 作为编辑器来编写 Solidity,其次是 Visual Studio(14%)和 Remix(11%),7% 的受访者使用 Vim,其次是 IntelliJ(5.8%)和 Atom(3%)。

公告 | IOST将于2020年1月20日关闭社区门户IOST Hub:据IOST基金会官方消息,由于社区门户IOST Hub中心用户数量正在逐渐减少,与此同时维护成本也在不断增加,为此,IOST基金会决定将于2020年1月20日12:00:00暂时关闭IOST Hub。社区用户需在IOST Hub关闭之前将获得的奖励及时提现。[2019/12/19]

与 2020 年相比,2021 年 IntelliJ、Atom、Vim 和 Sublime 的使用量减少了。

Hardhat 成为最受欢迎的以太坊专用开发环境,近 45% 的受访者使用它,Truffle 和 Remix 紧随其后,各自的用户份额约为 17%。

相对较少份额的以太坊专用开发环境是 Brownie(7.2%)、Dapptools(5.6%)、Scaffold-ETH(3.2%)、Foundry/Forge(1.1%)和 Embark(0.5%)。

与 2020 年相比,Truffle (2020: 34.6% -> 2021: 17.9%) 和 Remix (2020: 29.3% -> 2021: 17%) 份额大幅下降,而 Hardhat、Brownie、Dapptools 和 Foundry 等新来者的用户份额增加。

0.8.x Solidity(86.3%)版本是迄今为止最常用的版本,0.7.x(23%)和 0.6.x(18.3%)版本系列仍有待使用,而比这更旧的版本几乎不再被使用。

与 2020 年相比,这是一个很大的发展,当时大多数用户仍在使用 0.6.x 版本系列,幸运的是,只有少数人仍在使用 0.4.x 或 0.5.x 系列的非常旧的版本。

提醒:请确保经常更新您的代码。自 0.4.x 以来添加了几个重要的错误修复和安全改进!

大多数人(大于 70%)认为 Solidity 开发人员的体验在去年有所改善,只有 1.6% 的人认为情况变得更糟。

当陷入 Solidity 问题时,80% 的人会尝试在以太坊 StackExchange 或 StackOverflow 上寻找解决方案,许多人还向他们的同事寻求帮助(32.9%)或观看教程(38.1%),暂时搁置问题去做其他工作,稍后再尝试解决也很受欢迎(29.2%)。

30% 的受访者在使用 Solidity 开发时不会多次遇到相同或相似的问题。其中堆栈太深、字节码大小限制、调试问题、优化器的不确定性和阵列处理是最常被提及的问题。

更高效的优化器和捕获自定义错误的能力被列为正在讨论的最重要的未来功能。

此外,对小数的支持、更好的阵列管理和修复堆栈太深是最受期待的功能。

我们注意到受访者使用了各种不同的术语,例如「floats」、「floating point arithmetic」、「floating point number」、「fixed point numbers」、「fixed point math」,我们将这些归类为「factional numbers」,并假设以上所有内容最终旨在描述「fixed point math」。

最常提到的预期功能按降序排列:

「floats」

更好的阵列管理/更多的阵列和映射功能

修复堆栈太深

Gas 优化/优化器改进

更好的调试

更好地支持字符串

建设/开发时更容易/更好的 Gas 计量

console.log()

require() 的自定义错误

generics

更好的文档(尤其是内联汇编、Yul 等高级内容)

通过 Yul 的代码生成

自定义值类型

fixed point mat

语言服务提供商

受访者最喜欢 Solidity 的简单性、「易于学习」的方面、默认的 SafeMath 和修饰符。

最常提到的喜欢的功能按降序排列:

简单

简单易学

特定领域的语言/工作的正确工具/「它有效」

默认情况下的 SafeMath /over- & underflow 检查

修饰符

映射

干净的语法

接口

静态类型

可读性

inheritance

好的工具

结构

内联汇编

delegate call

require and assertions

自定义错误

内存管理

事件

libraries

编译器安全

ABIEncoderV2

明确性

灵活性

不变性

语言安全

面向对象

吐槽最多的关键字是是调试、堆栈太深错误和缺少对小数的支持。

被吐槽频次降序排列:

调试

堆栈太深

缺少浮点数/定点数

模棱两可/通用(还原)错误消息

数组

字符串

文档难以阅读和导航

次要版本的重大更改/缺乏兼容性

安全

Gas 成本/部署成本

测试

Gas 优化

社区资源中的过时资源/教程

越来越复杂

returns

显式转换

缺少关于内联汇编/yul 的文档

缺少 console.log

内存分配

缺少标准库

reentrancy

类型系统

60% 的开发者希望 Solidity 能够增加更多检查点,减少由于判例不足引起的错误,提升智能合约开发的准确性,只有约 26% 的受访者对现状足够满意。

不到 20% 的受访者曾参与过与 Solidity 语言设计相关的工作,6.2% 参加了 Solidity 论坛的讨论,5.1% 参加了语言设计电话会议,6.4% 在 Solidity 存储库中打开或贡献了 Github 问题。

在大约 80% 的未参与语言设计的人中,几乎 8% 的人表示不感兴趣,而 35% 的人工作太忙,40% 的人不知道如何参与。

大多数人喜欢通过在 Twitter 或 Mastodon 上关注 Solidity 来了解 Solidity 版本、安全警报和公告的最新信息,其他常用的信息获取方式是 Solidity 博客和 Solidity GitHub 发布页面。

超过一半的受访者与其他 Solidity 开发人员互动,有趣的是,仍有近 45% 的人表示他们很少或从不与其他 Solidity 开发人员联系。

作为调查的最后一部分,我们想知道有多少参与者同意或不同意关于 Solidity 社区和 Solidity 团队工作的一些陈述。

75% 的受访者在 Solidity 开发者社区中感到受欢迎。

大约 80% 的人同意或有点同意他们对 Solidity 团队的工作充满信心。

超过一半的人觉得欢迎为 Solidity 做出贡献,但只有不到一半的人表示他们知道如何为 Solidity 贡献想法或反馈。

大约 25% 的人相信 Solidity 团队了解他们作为开发人员的需求,另有 40% 的人有些同意,而只有一小部分人不同意或强烈不同意。

原文作者:Solidity Developer Survey 2021 Results

原文编译:杨树

标签:EXTNEXTNEXSTUNextEarthNEXTYPEdigifinex数字币官网STUART

Gate.io热门资讯
BOT:BAYC无聊猿游艇俱乐部终于回应了新纳粹主义的指控_BOTH

有些时候,感觉整个互联网都疯了。 从Twitter到电视午夜档,超火爆的无聊猿游艇俱乐部(BAYC)NFT系列随处可见。贾斯汀-比伯(Justin Bieber)刚刚以130万美元的价格买了一件无聊猿。阿迪达斯与BAYC建立了全面的合作伙伴关系。今年年初,无聊猿的总体销售额正式超过10亿美元。 不过,并不是每个人都对这种炒作深信不疑。

BOTH:Katie Haun:加密世界的新女王_加密货币市场行情走势

在安德森-霍洛维茨公司参与领导了三只大型基金之后,凯蒂·豪恩开始独自创业,并且正在筹集一只规模达10亿美元的加密基金.

数字人:虚拟数字人 活得并不容易_数字人民币什么时候全国使用时间

题图|虚拟数字人AYAYI,燃麦科技官网3月25日,抖音@柳夜熙账号更新了短剧“地支迷阵”的第五集,在科幻+玄幻的背景下,虚拟数字人和现实存在的人类互相倾轧,冰冷的科技和温暖的人性迸撞出火花.

KET:Web3需要中间件 但可能不需要去中心化_TPS

区块链的发展历来有两大主题,一是作为底层操作系统的公链基础设施,二是满足各类C端需求的Dapp.

CRV:iZUMi Research:万字报告带你读懂 DeFi 流动性现状以及展望未来(3)_OneSwap

03?DEX 对流动性效率的提升——底层交易的流动性资本效率在最基础 Uniswap V2 的 x*y=K 恒定乘积 AMM 机制的基础之上,衍生出了众多升级版本的 AMM 机制.

CRV:一文读懂 Web3:互联网发展的新时代_CUR

Web3 这个新鲜的专业名词诞生于 2014 年,在一开始,它被用来描述实现去中心化共识的新型协议,而到如今,它已经成为了对公链生态、应用程序甚至设计理念的统称.