Solana开发者生态报告2023
2023 年,Solana开发者生态系统在工具、开发者体验、内容质量和可用编程语言的多样性方面取得了重大进步。 如今,Solana 开发者生态系统在开源存储库上每月拥有超过 2500 名活跃开发者,加入生态系统的专业开发者不断增长,开发者环境也日趋成熟。
一键发币: SOL | BNB | ETH | BASE | Blast | ARB | OP | POLYGON | AVAX | FTM | OK
Solana 开发者生态系统持续发展。 整个 2023 年,开发者生态系统在工具、开发者体验、内容质量和可用编程语言的多样性方面取得了重大进步。 如今,Solana 开发者生态系统在开源存储库上每月拥有超过 2500 名活跃开发者,加入生态系统的专业开发者不断增长,开发者环境也日趋成熟。
1、了解开发者生态系统
任何区块链上开发者生态系统的健康对于维持网络都至关重要。 衡量生态系统的健康状况很困难。 虽然没有一个因素可以说明全部情况,但以下指标对于衡量至关重要:
- 每月活跃开源开发人员总数:在生态系统中构建的每月活跃开源开发人员数量。
- 开发者留存:生态系统促进持续开发的“粘性”。
- 开发人员经验水平:开发人员的专业经验。
- 开发者增长:在任何给定点进入生态系统的开发者数量。
1.1 每月活跃开发者总数
衡量网络增长情况的最简单方法之一是在链上构建的每月活跃开发人员的数量。 在 Solana 基金会,我们使用开源服务来收集开发人员数据,并公开说明了我们如何收集这些数据。 去年,我们全年在 Solana 上构建的每月活跃开发人员数量稳定在 2500 - 3000 名左右。
维持稳定数量的开发人员是生态系统健康的重要指标,因为它展示了生态系统吸引和留住新人才的能力。
值得注意的是,这种衡量仅考虑到为公共存储库做出贡献的开发人员,而不考虑在私有存储库中发生的开发人员活动。 这可能会导致低估任何给定时间点的活跃开发人员数量。 Solana 基金会致力于支持 Solana 区块链上开源社区的发展,基金会对公共开发的重新支持将有助于推动基于 Solana 的应用程序的未来创新。
1.2 开发者保留
衡量每月活跃开发者只是故事的一部分。 如果保留率较低,大量尝试区块链的开发者可能无法转化为开发者社区的可持续增长。 低保留率会带来风险,可能导致开发人员在对网络做出有意义的贡献之前就离开。 为了进一步衡量开发者社区的健康状况,衡量保留率以及每月活跃开发者至关重要。
就本报告而言,如果开发人员在开始后连续三个月内至少做出一次提交,则他们被定义为留存。
2023 年,Solana 生态系统内的 3 个月开发者保留率从 31% 增加到 > 50%,从而留住了更多开发者加入生态系统。 保留率的增加可能是由于以下几个原因造成的:
- 开发人员拉新正在改善。
- Solana 区块链已成为开发者更明确的选择。
- 生态系统中的机会增加了。
随着 Solana 基金会发布了多份关于如何入门的新指南,开发人员拉新流程在去年稳步改善。 通过多个重点和难度各异的开发者训练营,每 6 个月就有 400-500 名高级开发者毕业,意图在 Solana 上进行构建。 最近 Solana Hyperdrive Hackthon的数据显示,前 150 名提交作品中的约 50% 以及获胜者的约 50% 完成了其中一项训练营。
基于 Solana 的生态系统团队也给予了大力支持。 例如,Helius 团队发布了关于开发人员为何应选择在 Solana 上进行构建的博客文章。
虽然生态系统内开发人员的机会很难衡量,但 jobs.solana.com(聚合整个 Solana 生态系统工作岗位的资源)上发布的工作岗位数量随着时间的推移一直在稳步增加,从 2023 年 1 月的 15 个增加到 2023 年 1 月的 95 个。 出版时间。 仅 2023 年 12 月一个月就增加了 41 个工作岗位。 虽然这是一个不完美的指标,但工作对于保持新人才在网络上做出贡献和建设非常重要。
1.3 开发人员经验水平
链上开发人员的技术水平直接影响链的整体成功。 如果网络中有大多数高级开发人员在网络上构建应用程序,则构建的应用程序获得新用户的可能性就更高。 在 Solana 上,超过一半进入生态系统的开发人员拥有至少 3 年的经验,从而为网络上构建的应用程序做出更高级的贡献。
衡量这一点的一种方法是衡量 Solana Hacker Houses 参与者的经验水平,这是由 Solana 基金会在世界各地主办的为期一周的活动。 这些活动充当学习和交流空间,并设有专门针对开发人员和创始人的演讲和办公时间。
在 2023 年参加 Solana Hacker Houses 的 1059 名开发者中,52.5% 的人表示他们拥有三年以上的开发经验——比我们活动中的任何其他群体都多。
1.4 开发者增长
尽管 Solana 生态系统相对较新(Solana 主网测试版于 2020 年 3 月上线),但其开发者生态系统已发展成为每月活跃开发者总数第二大的生态系统。 这种增长是由于许多不同的因素造成的,很难确定是什么导致大多数开发人员加入。 自主网测试版启动以来,Solana 基金会已经运行或资助了各种举措,其核心目标是发展开发者生态系统。 一些关键举措包括 Solana 黑客马拉松、Solana 黑客之家、Breakpoint、教育训练营和赞助的大学活动。 许多生态系统主导的团体也为这种增长做出了贡献,例如 SuperteamDAO、mtnDAO、Metcamp 和 Gen3。
我们预计 Solana 黑客马拉松将成为开发者生态系统健康状况的首要指标。 自 2020 年以来,Solana 基金会赞助的黑客马拉松已举办八届。过去三年,启动了 3000 多个项目,并为提交给黑客马拉松的项目筹集了超过 6 亿美元的资金。 每届黑客马拉松中,提交的项目数量都会增加。 最近的黑客马拉松 Solana Hyperdrive 收到了 900 多份参赛作品。
1.5 全球增长
值得注意的是,虽然生态系统整体在增长,但其中很大一部分增长来自世界各地的新加入地区。 全球开发者生态系统的努力源于自下而上的社区哲学,该社区向外发展。 SuperteamDAO 就是一个例子,这是一个专注于印度的开发者社区。 SuperteamDAO于2023年初开始向其他国家扩张,目前在8个国家设有分支机构。 其他具有类似理念的团体包括新加坡的 MetacampDAO 和美国的 mtnDAO。
虽然 Solana 基金会目前并不每天跟踪详细的区域增长情况,但每六个月举行一次的 Solana 黑客马拉松可以揭示区域层面的增长率。
Solana 基金会最近举办的黑客马拉松 Hyperdrive 有 151 个国家/地区的参与者。 其中,来自 65 个国家的参与者提交了最终意见书。
从历史上看,美国一直是 Solana 黑客马拉松中代表人数最多的国家,印度紧随其后。 近年来,美国以外的黑客马拉松参赛作品比例大幅增长,从 2021 年的 76% 增长到 Hyperdrive 的 91%。 在印度、德国、中国、英国、土耳其和越南等拥有深厚工程人才的国家,开发者社区一直是优先关注的焦点。 来年值得关注的国家包括巴西和拉丁美洲、日本、法国、尼日利亚和以色列。
作为 Solana 生态系统中最成熟的地区,美国在黑客马拉松获胜者方面仍然占据主导地位,但这些数字仍在发生变化。 最终,均匀分布在世界各地的高质量项目应该是任何开发者生态系统的目标。
2、以 Solana 为基础进行构建
区块链的广泛采用取决于强大的基础设施和开发人员工具的可用性,以实现无缝入门和持续开发。 在选择要构建的生态系统时,开发人员会考虑以下几个关键因素:
- 开发人员体验:学习和构建应用程序有多容易?
- 维护:维护和监控生产中的应用程序需要多少工作?
随着 Solana 生态系统的不断发展,预计这些领域也将变得成熟并且更容易被开发人员使用。
2.1 开发者经验
开发人员体验是任何生态系统的关键部分——可用资源和工具的成熟度可以决定开发人员的构建过程的成败。 如今,Solana 区块链拥有成熟的工具生态系统和大量供开发人员入门的学习资源。 展望未来,我们有机会围绕端到端构建项目释放更多资源,以帮助加速新开发人员的速度,以及帮助调试和了解计算资源使用情况的工具。
Solana 协议众所周知的并行处理只有通过让开发人员预先声明他们正在使用的状态部分才能实现。 由于这项前期工作,开发人员需要适当的框架和工具来更轻松地管理所有状态。 决定是否要在 Solana 上进行构建的开发人员会提出以下问题:
- 文档和示例:在构建时参考可用文档和资源有多容易?
- 计划和课程:开发人员可以接受哪些教育?
- SDK 和框架:是否存在通用 SDK 和框架来加速我的开发?
- 本地开发工具:本地工具的可塑性如何,以便我可以快速构建新应用程序的原型?
- 工具对等:Solana 与其他生态系统相比如何?
2.2 文档和示例
Solana 区块链的当前文档主要是概念性的,包括帮助开发人员开始在 Solana 上进行构建的指南。 在过去的一年里,我们创建了大量的程序示例来帮助任何人在 Solana 上构建链上应用程序,这有助于快速启动链上开发者生态系统。 Solana Cookbook 提供了全面的客户端代码示例选择,其中包括数百个代码片段,每个代码片段至少包含三种不同的编程语言。
对于寻求有关 Solana 协议如何工作的更多信息的开发人员来说,目前缺乏有关最新内部结构的最新信息。 这在一定程度上是由于 Solana 协议更新的快节奏造成的。 将制定 Solana 改进文档和协议规范,通过在实施之前放置文档来填补缺失的空白。 随着 Solana 的不断成熟,越来越多的研究人员(例如 Umbra Research)开始撰写有关内部结构的文章,最新信息应该在文档中更加常见。
2.3 教育项目和课程
截至本文发布时,有多个完整的教育计划和课程可以帮助开发人员进入 Solana 生态系统。 其中包括自助课程和讲师指导的、基于队列的课程。 教育发展计划的多样化结构有助于开发人员以他们喜欢的方式学习,保持高度责任感并提高参与者的成功机会。
过去 12 个月的自助教育计划和课程包括:
此外,一些讲师指导的课程包括:
2.4 SDK 和框架
Solana 开发者生态系统拥有影响大多数开发者的强大 SDK 基础。 在 UI 框架上,Solana 区块链高度集中了 React 和 Next.js 工具。 对于每种语言,我们可以使用以下工具来评估可用的工具:
- Solana SDK:用于与 RPC 交互并创建交易以与区块链交互的 SDK。
- 程序框架:使用特定编程语言创建 Solana 程序的能力。
- 开发人员影响:以使用编程语言或 UI 框架的开发人员百分比来衡量。
SDK可用性:
Language | SDK | Program Framework | Developer Impact |
Rust | Available | Native/Anchor | High |
Solidity | Solang | High | |
TS/JS | Available | Not Available | High(69% total) |
Python | Available | Seahorse | High(52% total) |
Java | Available | Not Available | High(49% total) |
PHP | Available | High(32% total) | |
C++ | Available | Native | 23% |
C# | Available | Not Available | 21% |
C | Not Available | Native | 19% |
GoLang | Available | Available | 17% |
Kotlin | Available | Not Available | 14% |
Dart | Available | 8% |
进入生态系统的新开发人员现在可以通过使用 Typescript 进行编写来完全开始在 Solana 上进行构建,而无需学习 Rust 或编写 Solana 智能合约。 不仅如此,不同技术领域的开发人员也有新的工具可以使用。 游戏开发人员拥有功能齐全的 Unity SDK、Godot SDK 和 Unreal Engine SDK。 金融科技开发人员可以通过 SolanaPay 快速掌握 Solana 的速度。 今天在 Solana 上进行构建比以往任何时候都更容易。
2.5 用户界面框架
scaffold和wallet-adapter的存在都是为了让开发者对每个 UI 框架的体验更轻松。 目前支持最多的框架是React和Next.js,覆盖了大量的开发者。
- scaffold:一种允许开发人员快速设置样板网站的工具。
- wallet-adapter:支持与 Solana 钱包轻松集成的工具。
Scaffold | Wallet-adapter | Impact | |
Rust | Available | Available | 43% |
Angular | Not Available | Available | 20% |
Next.js | Available | Available | 17% |
Vue.js | Available; Not Maintained | Available; Not Maintained | 17% |
Laravel | Not Available | Not Available | 8% |
Svelte | Not Available | Not Available | 6% |
2.6 本地开发
本地开发环境是工具的集合,使开发人员能够在本地计算机上进行构建,以加速开发并降低构建开销。 为了构建新的应用程序,开发人员首先在本地计算机上进行构建。 本地开发环境的有效性可以极大地减少开发人员在构建新框架时遇到的摩擦。
人们如今在 Solana 上构建的主要本地环境工具是 Solana tool suite。 Solana工具套件使开发人员能够在本地计算机上运行测试验证器、发送交易、空投、部署智能合约以及针对其环境运行测试。 该工具允许开发人员从头到尾在生产环境中运行应用程序。
与 EVM 中的 Foundry 等成熟工具相比,Solana 工具套件能够通过 CLI 发送交易,并提供轻松复制主网上帐户的功能,但体验并不那么简单。 拉取帐户比 Foundry 更加手动,因为 Solana 上的智能合约是无状态的,这意味着用户必须在许多不同位置收集或创建状态才能在本地运行测试。 发送交易是可能的,但不能扩展到任何智能合约。 这是因为 Solana 协议在与智能合约交互时为用户提供了序列化的选择,导致存在多种不同的通信方式并且没有直接的标准。 从长远来看,这两个问题都是可以解决的。
2.7 工具与其他生态系统的同等水平
衡量 Solana 生态系统工具可用性的一种方法是将其与 Foundry 之外的 EVM 中的流行工具进行比较。 通常,首次接触 web3 和智能合约的开发人员除了 EVM 编程范式之外,还会学习 Solidity 作为他们的第一语言。 第一次接触 EVM 会使后来加入 Solana 生态系统变得复杂,因为它通常需要开发人员忘记他们对 EVM 的了解,才能使用 Solana 协议的帐户模型正确进行开发。 在 5800 名每月活跃的 Solidity 开发人员中,只有 7% 曾经尝试过 Solana 开发。
一些工具已经存在,可以帮助加快 Solana 区块链的采用以及 EVM 开发人员的迭代速度。 Solidity 开发正在通过以下项目实现:
- Neon:EVM 兼容的开发环境
- Hyperledger Solang:Solana 上的 Solidity 编译器
除了 EVM 兼容环境之外,许多开发人员可能会使用 Solana 原生开发实践。 对于 EVM 生态系统可用的大多数主要工具,都有一个 Solana 等效工具:
Tool | Description | Solana Equivalent | Developer Impact |
HardHat | Testing framework with local network | Solana Test Validator | High |
Testing Framework | Testing framework | Program-test, BankRun.js | High |
Ethers, Wagmi | Frontend framework | @solana/web.js | High |
Remix | Web-based IDE | Solana Playground | High |
Debugging | Breakpoint debugger | Bokken, Ledger Tool Debugger | High |
ABI | Common ABI for interaction between Programs | Anchor Framework's IDL | High |
VSCode Extension | Extension to speed up Solidity development | Solana Playground Extension | Medium |
Etherscan | Blockchain explorer | SolanaFM, XRay | Medium |
Ganache | UI-based developer environment | Lava Suite (Beta) | Medium |
scaffold-eth | dApp boilerplate | create-solana-dapp | Medium |
Blocktorch | Smart contract observability platform | Ironforge | Medium |
EthLint | Linter | Rust Analyzer, Clippy | Low |
Eth Fiddle | Sharable, executable smart contract code snippets | Solana Playground Snippets | Low |
鉴于 Solana 区块链与 EVM 相比出现更晚,这证明了开发者生态系统构建了使 Solana 开发者体验更好所需的所有工具。 虽然尚未满足 Foundry 的所有标准,但 Solana 生态系统处于进一步完善和成熟其工具生态系统的有利位置。
3、维护
任何将应用程序部署到生产环境的开发人员都知道,能够轻松维护应用程序将减轻很多麻烦。 在维护应用程序时,Solana 协议如何堆叠?
了解维护应用程序有多么容易可以归结为以下几点:
- 测试和调试:编写测试来维护功能和调试潜在问题有多容易?
- 安全性:如何保证应用程序的安全?
- 分析:如何正确监控生产中运行的应用程序?
3.1 测试与调试
测试和调试在开发生命周期中非常重要。 与测试和调试相关的工具可以在数小时的软件开发时间中得到回报,帮助公司更快地发现问题并降低生产风险。 2023 年,开发者生态系统已经构建了工具,使测试和调试过程变得更加容易。
- 调试器:在过去的一年里,创建了两种使用步骤调试器的方式,Bokken 和 ledger-tool 的调试器。 借助这些工具,你可以单步调试基于 Solana 的智能合约上的断点,了解每行代码的账户状态。
- 测试:Anchor 框架的 mocha 测试是当今 Solana 智能合约最常用的测试框架。 在过去的六个月中创建了Solana Bankrun ,从而实现了更快的测试和更多的测试功能。 Solana-program-test也存在,具有类似的功能和速度。
- 代码覆盖率:Solana 上缺乏智能合约的代码覆盖率工具。 开发人员可以使用通用的 Rust 代码覆盖率工具,但大多数工具都无法准确测量您的覆盖率。
- 日志记录:大多数情况下,基本 Solana 记录器在 solana 程序中使用。 该记录器可以通过智能合约日志获取,并通过 Geyser 或 sologger 进行管道传输以帮助分析。 Ironforge 等 SaaS 工具也可以帮助监视生产中的应用程序日志。 在过去的一年中,通过 Anchor 框架对基础记录器进行了改进,以避免许多早期的限制。
- 事件:Anchor 框架目前提供了一种非常基本的方法来处理 Solana 链上应用程序中的事件。 然而,这个框架并没有提供一个即时事件队列,你可以使用它来捕捉提示,而无需涉及一些基础设施。 有一些关于未来改进 Solana 上的活动的建议。
3.2 安全
对于任何想要安全运营的公司来说,在生产中拥有安全的应用程序至关重要。 去中心化应用程序的安全性更为重要。 如果你不小心,智能合约中的任何错误都可能导致大量资金损失。 如今,开发人员如何确保智能合约的安全?
- CI 扫描:开发人员可以通过 Github Actions 使用基本扫描来扫描智能合约中的小漏洞。 这种扫描可以帮助他们在进行任何部署之前快速找到漏洞。
- 审计:任何认真的智能合约开发人员都会接受生态系统内第三方公司的审计。 在 Solana 开发存在的几年里,出现了多家只专注于审计的公司。
- 模糊测试:针对常见已知漏洞进行适当的模糊测试是确保智能合约安全的好方法。 有像 trdelnik 这样的模糊测试框架,可以提供一种快速的方法来了解您的智能合约是否容易受到简单威胁。
- 实时扫描:在生产中运行时,最好通过实时扫描事务中的异常情况来主动应对任何潜在威胁。 Riverguard 在主网上提供高水平的扫描,以了解链上应用程序是否容易受到特定交易模式的攻击。
Solana 开发者生态系统拥有大量工具来确保链上应用程序在生产中的安全。 但是,随着开发人员技能水平的提高,更复杂的攻击也在不断提高 - 我们不断改进我们的应用程序,围绕安全性进行进一步的教育和工具对于成功至关重要。
3.3 分析
开发人员寻求有关其应用程序及其竞争对手的应用程序性能的分析。 如今,分析平台通过原始交易和解析交易支持来支持 Solana。 由于 IDL 中数据缺乏可用性和深度,分析平台速度缓慢且无法提供丰富的账户分析。 一旦 Anchor 提供的 IDL 框架得到改进并在全球范围内可用,对智能合约的分析也将得到改进。
4、未来的机会
Solana 开发者生态系统仅存在四年。 那时,帮助开发人员构建的内容和工具的可用性培育了当今成熟的生态系统。
生态系统内仍然存在大量机会。 未来,开发者生态系统必须进一步完善本地开发环境,以匹配Foundry提供的一流工具,添加更强大的事件系统,并提供更多端到端的产品示例,以加速新产品的开发。 应用程序。
Solana 基金会不断致力于帮助 Solana 开发者生态系统发展,鼓励新开发者为开发者体验做出贡献,并支持工具的成熟。
原文链接:The 2023 State of the Solana Developer Ecosystem
DefiPlot翻译整理,转载请标明出处