原文标题:《SolidityDeveloperSurvey2021Results》
Solidity语言的开发者使用情况如何?我们从400多份问卷中看到了这些。
这是由Solidity官方开展的第二次结构化的年度大型Solidity开发人员调查,以Solidity语言的开发者使用情况为主题,围绕开发者数量、开发者简介、开发者属性、开发者开发经验、即将推出的功能和语言设计、社区Solidity等多个维度展开调查。
这篇文章中,我们将总结和分析2021年Solidity开发者调查的结果。
摘要
调查对象:总共有来自73个不同国家/地区的435名开发人员参与了此次调查,与2020年相比,这一数字增加了100%以上。覆盖的国家和地区也从2020年的48个急剧增加到2021年的73个。超过20%的用户表示居住在美国,其次是印度和德国,大约9%的人更愿意不分享其位置的详细信息。
开发人员简介:编程经验水平中等偏高,大多数受访者从事专业编程工作3年或以上,36.6%甚至超过6年。
Solidity体验:超过一半的受访者使用Solidity不到一年,而15.5%的受访者使用它超过3年,几乎80%的人每天或每周都使用Solidity。
Solidity专业知识:大多数受访者认为自己是Solidity专家,他们的专业知识自我评价为7或更高。4.2%的人将他们的专业知识评为10。80%的受访者将Solidity用于他们的个人项目,大约60%的人也在工作中使用它,超过一半的受访者使用Solidity的时间不到一年。
开发者体验:大多数(大于70%)认为Solidity开发者体验在去年有所改善,只有1.6%的人认为情况变得更糟。
语言准确性:60%的开发者希望Solidity能够增加更多检查点,减少由于判例不足引起的错误,提升智能合约开发的准确性。26%的人更愿意保持现状。
未来功能:更高效的优化器和捕获自定义错误的能力被列为正在讨论的最重要的未来功能。此外,对小数的支持、更好的阵列管理和解决堆栈太深错误等都是最受期待的功能。
喜欢和害怕的功能:受访者最喜欢Solidity的简单性、「易于学习」的方面、默认的SafeMath和修饰符,可怕的话题是调试、堆栈太深的错误以及缺少对小数的支持。
社区:不到三分之一的受访者曾参与过与Solidity语言设计相关的工作。
调查对象
请注意,此调查仅以英语进行这一事实是在解释有关居住国分布和语言偏好的结果时需要考虑的重要因素。
首先,让我们看看参与本次调查的开发人员,我们将详细介绍位置和语言等一般信息,并详细了解他们的专业经验、编程偏好等。
2021年的调查总共收到了来自73个不同国家/地区的开发人员的435份回复,与2020年相比,这一数字增加了100%以上。
国家和地区的数量也从2020年的48个攀升至2021年的73个,似乎也覆盖了地理上更加多样化的受众。
Binance.US在2022年损失了1.81亿美元:6月7日消息,法庭文件显示,Binance.US在2022年损失了1.81亿美元。[2023/6/8 21:22:29]
居住位
超过20%的人表示居住在美国,其次是印度和德国,大约9%的人更愿意不分享其位置的详细信息。
语言
受访者使用他们的母语涵盖多种语言,总共提到了50种不同的语言作为母语。
其中35%的受访者的母语是英语,其次是西班牙语、法语、俄语、葡萄牙语和德语。
超过80%的受访者在工作中主要使用英语。一些受访者还在工作中说西班牙语、法语、俄语或葡萄牙语。
在母语非英语的受访者中,超过90%的人可以阅读英文版的Solidity文档,8.6%的人更愿意用他们的母语阅读,其中最常被提及的是普通话和繁体中文、西班牙语和葡萄牙语。
请记住,此调查仅以英语进行,这可能会影响此问题的结果。我们仍然相信Solidity文档等资源的国际化是降低进入门槛的关键因素,我们的目标是支持社区努力通过新的、更清晰的结构化翻译指南进行翻译。
开发者简介
工作经验和就业
77.1%的受访者目前有工作,大约10%是学生,12.5%目前没有全职工作。
受访者主要在科技和金融服务领域工作,除此以外教育、媒体以及游戏等领域的占比也相对较高。
Glassnode:BTC链上活动缓慢恢复,但仅到2019-2020年熊市水平:金色财经报道,据区块链分析公司Glassnode最新数据显示,近期BTC链上活动正在非常缓慢地恢复,在链上交易层面可观察到的新链上实体数量中,新实体数量每天增加11万个。但是,这种恢复速率远远低于2017年和2021年第一季度,BTC交易数量也远远低于2021年上半年的峰值,目前约为22.5万笔/天,这与2019-20年整个熊市的水平相吻合(当时的活动是每天增加9万至11万个新实体)。[2021/11/16 6:54:04]
大约10%的人是编程新手,并且只从事专业编程不到一年。不过值得一提的是,拥有超过15年编程经验的资深开发者占比也达到了这一数字。而约有30%的受访者拥有3-5年编程经验。参与本次调查的受访者编程经验年限基本呈现正态分布。
总体而言,编程经验水平处于中高水平,大多数受访者专业编程3年或以上,36.6%甚至超过6年。
有趣的是,大多数受访者将Solidity用于他们的个人项目,大约60%的受访者在工作中使用Solidity,而40%的受访者主要在工作中使用另一种编程语言编写代码。
超过20%的人表示他们正在领导一个编程团队。
在开源贡献方面,60%的受访者表示他们从未或很少为使用Solidity编写的开源项目做出贡献。
不过也有约30%的受访者表示每天或每周都会这样做。
编程语言首选项
JavaScript和Solidity在最常用的编程语言中排名第一,其次是TypeScript和Python。
报告:2020年第一季度女性加密用户数激增:CoinMarketCap发布的一项新报告显示,2020年第一季度,女性加密用户增长43.24%。相比之下,2019年第四季度女性加密用户仅增长15.5%。此外,18-24岁的年轻加密用户增长65%,美洲和欧洲大陆的增长率超过50%。该研究强调,在拉丁美洲、欧洲和亚洲的一些国家/地区,平均增长率超过80%。阿根廷在整个拉丁美洲处于领先地位,增长率超过98.23%,其次是哥伦比亚(82.03%)、委内瑞拉(80.23%)。希腊以163.67%的增长率位居欧洲之首,紧随其后的是罗马尼亚(145.09%)、葡萄牙(89.95%)、乌克兰(86.68%)和捷克(85.6%)。在亚洲,只有印度尼西亚的增长超过88.92%。欧洲似乎是女性用户中增长率最高的国家,在2020年第一季度增长58.55%,其次是美洲,为50.59%。非洲的增长率仍然很低,仅为17.99%。(Cointelegraph)[2020/5/2]
在「最喜爱的编程语言」票选中,Python成功击败Solidity「反客为主」,获得了22.7%的受访者青睐,其次是Solidity、JavaScript、TypeScript和Rust。
操作系统
与2020年的调查类似,macOS和Linux似乎同样受欢迎。
大约40%使用macOS,紧随其后的是Linux,22%的受访者使用Windows,其中大多数人表示除了Windows之外还使用macOS或Linux,也有一些开发人员同时使用Linux和macOS,甚至同时使用这三个操作系统。
Solidity经验和Solidity开发人员简介
大多数受访者认为自己是Solidity专家,他们的专业知识自我评价为7或更高。
4.2%的人将他们的专业知识评为10,大约23%可以被认为是初学者或自评专业水平为4或更低的低频用户。
与去年相比,初学者的比例略有增加,超过一半的受访者使用Solidity的时间不到一年。
15.5%的人使用Solidity超过3年,因此可以被视为Solidity老年人。
动态 | 安徽省2020年政府工作报告:推动区块链等技术和产业创新发展:安徽省2020年政府工作报告,大力发展数字经济,加快建设江淮大数据中心,实施5G产业规划和支持政策,促进5G商用和应用场景落地,推动物联网、下一代互联网、区块链等技术和产业创新发展。(中国证券报)[2020/1/13]
Solidity仍然看起来相当容易学习,26.7%的受访者在不到一个月的时间内感到高效,30.7%的受访者在不到半年的时间内感到高效,7.7%的人需要一年多的时间才能适应这种语言。
23.3%的人感觉还没有效率,其中超过75%的人是初学者,并且使用Solidity的时间不超过6个月。
Solidity开发人员简介
大多数受访者每天或每周都使用Solidity,8%的人表示「很少」或「从不」使用Solidity,其中几乎所有主要使用另一种编程语言的代码都在工作中,大多数人表示他们使用Solidity的时间还不到3个月。
超过50%的人使用VSCode作为编辑器来编写Solidity,其次是VisualStudio和Remix,7%的受访者使用Vim,其次是IntelliJ和Atom。
与2020年相比,2021年IntelliJ、Atom、Vim和Sublime的使用量减少了。
Hardhat成为最受欢迎的以太坊专用开发环境,近45%的受访者使用它,Truffle和Remix紧随其后,各自的用户份额约为17%。
相对较少份额的以太坊专用开发环境是Brownie、Dapptools、Scaffold-ETH、Foundry/Forge和Embark。
与2020年相比,Truffle(2020:34.6%->2021:17.9%)和Remix(2020:29.3%->2021:17%)份额大幅下降,而Hardhat、Brownie、Dapptools和Foundry等新来者的用户份额增加。
政策 | 密码法表决通过:将自2020年1月1日起施行:十三届全国人大常委会第十四次会议26日下午表决通过密码法,将自2020年1月1日起施行。密码法,旨在规范密码应用和管理,促进密码事业发展,保障网络与信息安全,提升密码管理科学化、规范化、法治化水平,是我国密码领域的综合性、基础性法律。据了解,密码法草案一审稿将密码分为核心密码、普通密码和商用密码,并对密码进行分类管理。核心密码、普通密码属于国家秘密,核心密码保护信息的最高密级为绝密级,普通密码保护信息的最高密级为机密级。商用密码用于保护不属于国家秘密的信息。此外,随着密码法出台渐趋渐近,整个密码行业也将迎来规范化。据悉,密码的主要功能有两个:一个是加密保护,另一个是安全认证。国家密码管理局局长李兆宗表示,“密码在我国各个历史时期,都发挥了不可替代的重要作用。密码工作面临着许多新的机遇和挑战,担负着更加繁重的保障和管理任务,制定一部密码领域综合性、基础性法律,十分必要。” (新华视点)[2019/10/26]
0.8.xSolidity版本是迄今为止最常用的版本,0.7.x和0.6.x版本系列仍有待使用,而比这更旧的版本几乎不再被使用。
与2020年相比,这是一个很大的发展,当时大多数用户仍在使用0.6.x版本系列,幸运的是,只有少数人仍在使用0.4.x或0.5.x系列的非常旧的版本。
提醒:请确保经常更新您的代码。自0.4.x以来添加了几个重要的错误修复和安全改进!
Solidity用户体验
大多数人认为Solidity开发人员的体验在去年有所改善,只有1.6%的人认为情况变得更糟。
当陷入Solidity问题时,80%的人会尝试在以太坊StackExchange或StackOverflow上寻找解决方案,许多人还向他们的同事寻求帮助或观看教程,暂时搁置问题去做其他工作,稍后再尝试解决也很受欢迎。
反复出现的问题
30%的受访者在使用Solidity开发时不会多次遇到相同或相似的问题。其中堆栈太深、字节码大小限制、调试问题、优化器的不确定性和阵列处理是最常被提及的问题。
特点
未来功
更高效的优化器和捕获自定义错误的能力被列为正在讨论的最重要的未来功能。
此外,对小数的支持、更好的阵列管理和修复堆栈太深是最受期待的功能。
我们注意到受访者使用了各种不同的术语,例如「floats」、「floatingpointarithmetic」、「floatingpointnumber」、「fixedpointnumbers」、「fixedpointmath」,我们将这些归类为「factionalnumbers」,并假设以上所有内容最终旨在描述「fixedpointmath」。
最常提到的预期功能按降序排列:
「floats」
更好的阵列管理/更多的阵列和映射功能
修复堆栈太深
Gas优化/优化器改进
更好的调试
更好地支持字符串
建设/开发时更容易/更好的Gas计量
console.log()
require()的自定义错误
generics
更好的文档
通过Yul的代码生成
自定义值类型
fixedpointmat
语言服务提供商
最喜欢和最害怕
受访者最喜欢Solidity的简单性、「易于学习」的方面、默认的SafeMath和修饰符。
最常提到的喜欢的功能按降序排列:
简单
简单易学
特定领域的语言/工作的正确工具/「它有效」
默认情况下的SafeMath/over-&underflow检查
修饰符
映射
干净的语法
接口
静态类型
可读性
inheritance
好的工具
结构
内联汇编
delegatecall
requireandassertions
自定义错误
内存管理
事件
libraries
编译器安全
ABIEncoderV2
明确性
灵活性
不变性
语言安全
面向对象
吐槽最多的关键字是是调试、堆栈太深错误和缺少对小数的支持。
被吐槽频次降序排列:
调试
堆栈太深
缺少浮点数/定点数
内联汇编
模棱两可/通用错误消息
数组
字符串
文档难以阅读和导航
次要版本的重大更改/缺乏兼容性
安全
Gas成本/部署成本
inheritance
测试
Gas优化
修饰符
社区资源中的过时资源/教程
越来越复杂
returns
显式转换
缺少关于内联汇编/yul的文档
缺少console.log
内存分配
缺少标准库
reentrancy
类型系统
限制性
60%的开发者希望Solidity能够增加更多检查点,减少由于判例不足引起的错误,提升智能合约开发的准确性,只有约26%的受访者对现状足够满意。
Solidity社区
语言设计
不到20%的受访者曾参与过与Solidity语言设计相关的工作,6.2%参加了Solidity论坛的讨论,5.1%参加了语言设计电话会议,6.4%在Solidity存储库中打开或贡献了Github问题。
在大约80%的未参与语言设计的人中,几乎8%的人表示不感兴趣,而35%的人工作太忙,40%的人不知道如何参与。
随时了解情况
大多数人喜欢通过在Twitter或Mastodon上关注Solidity来了解Solidity版本、安全警报和公告的最新信息,其他常用的信息获取方式是Solidity博客和SolidityGitHub发布页面。
与其他Solidity开发人员的互动
超过一半的受访者与其他Solidity开发人员互动,有趣的是,仍有近45%的人表示他们很少或从不与其他Solidity开发人员联系。
作为调查的最后一部分,我们想知道有多少参与者同意或不同意关于Solidity社区和Solidity团队工作的一些陈述。
75%的受访者在Solidity开发者社区中感到受欢迎。
大约80%的人同意或有点同意他们对Solidity团队的工作充满信心。
超过一半的人觉得欢迎为Solidity做出贡献,但只有不到一半的人表示他们知道如何为Solidity贡献想法或反馈。
大约25%的人相信Solidity团队了解他们作为开发人员的需求,另有40%的人有些同意,而只有一小部分人不同意或强烈不同意。
原文作者:SolidityDeveloperSurvey2021Results
原文编译:杨树
“让加密市场走到阳光下……只会让我们看到引擎盖下发生的事情,”美CFTC主席表示。美国商品期货交易委员会(CFTC)主席RostinBehnam正期待国会议员解决委员会在数字资产领域缺乏执法权的.
1900/1/1 0:00:00跨链桥到底为何安全事故频发?大众所期望的跨链时代能否到来?自DeFi领域开始迅速窜红后,多链互通成为适应发展的必要需求,跨链桥也就自然而然的成为了当下市场发展的重心之一.
1900/1/1 0:00:00当谈到优秀的NFT项目时,我们将才华横溢的创造者、创新机制以及充满活力的社区视为重要因素。那糟糕的NFT项目具有哪些特征呢?下面,我列出了十三个危险信号,当你在探索新的NFT项目时,你需要将它们.
1900/1/1 0:00:002021年,元宇宙火了,火得一塌糊涂。从年初的罗布乐思上市,到8月字节收购VR公司Pico,再到脸书更名,大厂的“频繁出击”将虚拟经济之火不断燃到新高度.
1900/1/1 0:00:00以太坊联合创始人VitalikButerin:“你不能成立DAO来成为DAO,你需要DAO来真正做一些事情”。去中心化自治组织,也称为DAO,在加密世界中成为一个越来越流行的术语.
1900/1/1 0:00:00原文标题:为何NFT能抗跌?最近几周,一系列的宏观经济事件在加密市场掀起了轩然大波,也在提醒大家这个新兴行业无处不在的的潜在风险和波动性.
1900/1/1 0:00:00