-
Notifications
You must be signed in to change notification settings - Fork 4
/
js2021.yml
368 lines (292 loc) · 19.2 KB
/
js2021.yml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
locale: zh-Hans
translations:
###########################################################################
# General
###########################################################################
- key: general.results.description
t: 2021年 JavaScript 生态最新趋势的年度调查。
- key: general.livestream_announcement
t: 请务必于 2 月 22 日观看我们 [特别调查结果的直播](https://dev.to/sachagreif/state-of-javascript-2021-livestream-24a5) (英语)
###########################################################################
# Introduction
###########################################################################
- key: introduction.js2021
t: |
<span class="first-letter">在</span> 2021年发生了很多事情. 这项调查实际上一直推迟到2022年!
JavaScript 世界不断的发展,在一系列更快的构建工具和新的后端框架之间。 我们尽最大努力跟上进度,为这项调查提供了一些新的功能 ([关于新功能的更多信息](https://dev.to/sachagreif/whats-new-in-the-2021-state-of-javascript-survey-4eej)) 例如新的问题类型,交叉引用两个数据点的能力 (例如按经验水平划分的年收入),甚至可以自定义图表来展示您的见解! 在此阅读[今年的新变化](https://dev.to/sachagreif/whats-new-in-the-2021-state-of-javascript-survey-4eej) (英文).
然而,这并非一帆风顺。我们不得不处理一个[数据泄漏](https://dev.to/sachagreif/disclosing-a-state-of-javascriptstate-of-css-data-breach-2lg1)问题,幸好它看起来没有造成任何不良后果。我们一直在努力使调查更全面、更容易理解,以及更公正
尽管该调查只能代表 JavaScript 生态的一小部分,但我们希望您能找到您感兴趣的数据!
<span class="conclusion__byline">– Sacha Greif</span>
###########################################################################
# Tshirt
###########################################################################
- key: sections.tshirt.title
t: T-shirt
- key: sections.tshirt.description
t: |
## 支持 State of JavaScript 调查
糟糕的视频质量、笨重的磁带以及需要倒带,VHS 时代并没有太多值得怀念的地方。 但我们值得怀念的一件事是 90 年代用来装饰空白 VHS 磁带的惊人视觉效果.
但是现在,多亏了才华横溢的 Christopher Kirk-Nielsen,你可以享受所有这些复古的光芒,同时也能表达你对 JavaScript 的热爱!
- key: tshirt.about
t: T恤衫
- key: tshirt.description
t: |
我们使用由合作伙伴 Cotton Bureau 印制的高品质、超柔软的修身版型三重混纺衬衫。
- key: tshirt.getit
t: 购买
- key: tshirt.price
t: USD $29 + 邮费
- key: tshirt.designer.heading
t: 关于设计师
- key: tshirt.designer.name
t: Christopher Kirk-Nielsen
- key: tshirt.designer.bio
t: |
Chris 来自法国,现居美国,不仅是一位了不起的前端开发人员,还是一位擅长复古风格的天才插画家。 事实上,我们鼓励您也看看他的[其他T恤设计](https://chriskirknielsen.com/designs)!
###########################################################################
# Sections
###########################################################################
- key: sections.user_info.description
t: |
今年,有 **16,085** 名受访者参与了调查。为了突出不同的声音,展现更深刻的见解,我们做了一些特别的努力 来提供新的分析数据的方式。
- key: sections.features.description
t: |
JavaScript 可能发展得很快,但似乎 JavaScript 开发人员的发展速度更快,因为许多相对较新的功能已经显示出很高的采用率。
- key: sections.technologies.description
t: |
今年的结果表明 JavaScript 世界的高度碎片化。虽然这有时会让人头疼,但这些竞争同时也造就了一个非常活跃的生态。
- key: sections.tools_others.description
t: |
选择一项技术通常可以归结为在相互竞争的优先项之间进行一系列艰难的权衡, 今年我们尝试使用一种新的括号式的问题格式来捕捉这个过程。
- key: sections.environments.description
t: |
在 Web 开发方面,可访问性长期以来一直是最后才考虑的功能,但许多开发人员 现在意识到它实际上应该是其他一切功能的基础。
- key: sections.resources.description
t: |
突出展示博客、播客和网站效果不错,但今年我们决定更进一步,突出展示组成 JavaScript 社区的人!
- key: sections.opinions.description
t: |
无论是今天阻碍您前进的痛点,还是希望在未来使用的新功能,这些都是您向 JavaScript 发泄和分享你的抱怨的机会!
###########################################################################
# Charts
###########################################################################
- key: options.features_categories.language
aliasFor: sections.language.title
- key: options.features_categories.browser_apis
aliasFor: sections.browser_apis.title
- key: options.features_categories.other_features
aliasFor: sections.other_features.title
- key: blocks.tools_quadrant.description
t: |
此图表显示了每种技术的**满意度** (or **关注度**) over its total **使用率**.
可以分为四个象限:
- **1**: 使用率低,满意度高。 值得关注的技术。
- **2**: 使用率高,满意度高。 可采用的安全技术。
- **3**: 使用率低,满意度低。 目前较难推荐的技术。
- **4**: 使用率高,满意度低。 如果您目前正在使用这些技术,请重新评估它们。
###########################################################################
# Notes
###########################################################################
- key: blocks.gender.note
t: |
如果您有兴趣了解更多信息, 我们写了一篇[博客文章](https://dev.to/sachagreif/is-our-survey-biased-against-women-49oj)涉及调查的性别动态。
- key: blocks.css_missing_features.note
t: |
你可以在[这个项目](https://whatsmissingfromcss.com/)中探索这个问题答案的完整数据集。
- key: blocks.source.note
t: >
此图表汇总了引荐来源网址、URL 参数和自由格式答案的组合。
- State of JS: the [State of JS](https://stateofjs.com) mailing list.
- State of CSS: the State of CSS mailing list; also matches `email`, `by email`, etc.
- Work: matches `work`, `colleagues`, `coworkers`, etc.
###########################################################################
# Awards
###########################################################################
- key: award.feature_adoption_delta_award.comment
t: 随着 **{value}** 在 2021 年的发展,空值合并运算符 (??) 已迅速成为 JavaScript 不可或缺的一部分。
- key: award.tool_usage_delta_award.comment
t: esbuild 才两岁, 但随着 **{value}** 在过去一年的进步,它已经取得了进展。
- key: award.tool_satisfaction_award.comment
t: Vite 以极高的满意度 **{value}** 位居榜首!
- key: award.tool_interest_award.comment
t: 凭借 **{value}** 的关注度, Vite 再次摘金!
- key: award.most_write_ins_award.comment
t: 许多问题也接受书面回答,并且在**{value}**中提到Elm是最受欢迎的项目。
###########################################################################
# Conclusion
###########################################################################
- key: conclusion.js2021
t: |
<span class="first-line">与2016年相比,JavaScript 现在的状态要好得多</span>
在第一次进行 JS 现状调查时,只有 21% 的人使用了 TypeScript ,而今天有 69%。
我们过去常开玩笑说前端每天都会发布一个新框架,**React**和**Vue**现在已经连续6年占据主导地位。报告“JS发展太快”的人比例也从59%降至38%。但这并不是说语言停滞不前。在我们的调查中,**可选链**和**空值合并**API已经迅速成为最常用的新API,尽管它们只有2年的历史。
TC39带来了更多的好东西:您报告说日期管理是最缺少的功能,而 Temporal API 最近达到了 [Stage 3](https://github.com/tc39/proposal-temporal)。
工具生态系统也在快速发展,可以说 2021 年是 **Vite** 之年。 Vite 不仅以 98% 的满意度首次亮相,而且在我们的调查中,第一年的使用率已经达到 30%,甚至超过了 esbuild。 Vite 并不是唯一一个试图改善 JavaScript 构建工具状态的人——我们今天跟踪的 12 个工具中有 8 个不到两年! 虽然 **pnpm**、**Turborepo** 和 **Nx** 在我们跟踪 monorepo 工具的第一年中占据首位,但只有 25% 的人表示对该类别的状态感到满意,这表明仍有很多工作要做。
值得关注: 许多新进入者,如**Deno**、**Rome**、**Astro**、**Remix**,以及更多,现在都得到了风险投资支持公司的支持,这或许是脆弱的开源融资环境的可行替代方案。
作为[Third Age of JavaScript](https://www.swyx.io/js-third-age/)进入第三个年头,有抱负的开源人士和创业者的机会继续展现,我很高兴看到未来几年会带来什么!
- key: conclusion.js2021.bio
t: Head of DX at Temporal
###########################################################################
# Picks
###########################################################################
- key: picks.my_pick
t: "我的 2021 精选:"
- key: picks.intro
t: 我们请 JavaScript 社区的成员分享他们的 "年度精选"
- key: picks.lee_robinson.name
t: SvelteKit
- key: picks.lee_robinson.bio
t: Vercel 的开发者关系负责人
- key: picks.lee_robinson.description
t: |
SvelteKit 是一个构建网络应用的新工具,并且拥有一个充满激情且不断增长的社区。
- key: picks.vadim_makeev.name
t: 服务端渲染
- key: picks.vadim_makeev.bio
t: DevRel, Podcaster & Web Standards Advocate
- key: picks.vadim_makeev.description
t: |
是时候理清我们的优先级了。用户体验 > 开发者体验,这一直以来都是这样的。性能万岁!
- key: picks.ben_ilegbodu.name
t: Lee Robinson
- key: picks.ben_ilegbodu.bio
t: Ben Ilegbodu, Principal Frontend Engineer @ Stitch Fix
- key: picks.ben_ilegbodu.description
t: |
Lee 在指导和倡导 Next.js 方面一直很出色。他在 Next 这里给了我很大的帮助,而且还很乐于继续探索它。
- key: picks.shawn_wang.name
t: Supabase
- key: picks.shawn_wang.bio
t: Head of DX at Temporal
- key: picks.shawn_wang.description
t: |
Supabase 使更多的开发者接触到 Postgres ,并向大家展示了一个专注的小团队是如何超越那些规模比它们大 10 倍的同行的。
- key: picks.sarah_drasner.name
t: Pawel Kozlowski
- key: picks.sarah_drasner.bio
t: Director of Engineering, Core Developer Web at Google
- key: picks.sarah_drasner.description
t: |
Pawel Kozlowski 是那种能够以谦逊和好奇心对不同方法持开放态度的开发者,并且对改进东西感兴趣。
- key: picks.sara_vieira.name
t: Paul Henschel
- key: picks.sara_vieira.bio
t: International Agent of JS Bullshit
- key: picks.sara_vieira.description
t: |
Paul 在动画以及 ReactThreeFiber 上的工作使得在 web 上做任何的 3D 工作都变得更容易了。
- key: picks.mark_erikson.name
t: Ryan Carniato
- key: picks.mark_erikson.bio
t: Redux 维护者
- key: picks.mark_erikson.description
t: |
Ryan 的响应式 JS 框架 SolidJS 已经到 1.0 版本了,他还写了很多文章分析高级 JS 框架的实现概念。
- key: picks.miguel_angel_duran.name
t: Vite
- key: picks.miguel_angel_duran.bio
t: Front End Dev & Twitch Coding Streamer
- key: picks.miguel_angel_duran.description
t: |
除了 esbuild 和 swc 这些推动生态发展的神奇工具外,我很喜欢 Vite 。它的开发者体验很棒,且有着丰富的特性。
- key: picks.alyssa_nicoll.name
t: BroccoDev 的 Twitch 直播
- key: picks.alyssa_nicoll.bio
t: Sr. Developer Advocate at Progress
- key: picks.alyssa_nicoll.description
t: |
Mike Brocchi 最近开始在 Twitch 上直播。他是一位出色的程序员、开发者,最重要的是一位老师。我很喜欢看他的直播并向他学习。
- key: picks.michael_jackson.name
t: esbuild
- key: picks.michael_jackson.bio
t: Remix 的联合创始人
- key: picks.michael_jackson.description
t: |
我们一直在 esbuild 的基础上构建 Remix 编译器,它确实提高了 JS 打包器的标准。它的速度快得令人难以置信,而且它的插件 API 可以让我们做任何想做的事情。
- key: picks.david_khourshid.name
t: Remix
- key: picks.david_khourshid.bio
t: Pianist and founder of Stately
- key: picks.david_khourshid.description
t: |
Remix 是一个有点老派的全栈框架,但它以一种好的方式让你创建快速、复杂且易于访问的现代 Web 应用。
- key: picks.kent_c_dodds.name
t: Fly.io
- key: picks.kent_c_dodds.bio
t: Director of Developer Experience, Remix
- key: picks.kent_c_dodds.description
t: |
Fly 让我这么一个对 DevOps 不屑一顾的前端开发者能充满信心地部署一个真实的、全球分布的生产级应用。
- key: picks.tejas_kumar.name
t: Joe Haddad
- key: picks.tejas_kumar.bio
t: Web Developer, Conference Speaker, and Director of DevRel at Xata
- key: picks.tejas_kumar.description
t: |
Joe 在 Vercel 从事 Next.js 的工作,他一直希望自豪地展示它的能力,同时也积极地听取社区的反馈以更好地支持他们。
- key: picks.wes_bos.name
t: TC39 提案
- key: picks.wes_bos.bio
t: JavaScript Teacher & Podcast Host
- key: picks.wes_bos.description
t: |
一个 Git 仓库,其中包含了所有被提议添加进 JavaScript 中的内容。阅读人们对这门语言的所有想法,并看到它们经历各个阶段,真的蛮有趣的。
- key: picks.scott_tolinkski.name
t: SvelteKit
- key: picks.scott_tolinkski.bio
t: Creator of Level-Up Tuts, co-host of Syntax
- key: picks.scott_tolinkski.description
t: |
Svelte Kit 为 Sevelte 提供了奇妙的开发者体验,并拥有一个 Web 平台所期望的所有现代特性。
- key: picks.xxxx.name
t:
- key: picks.xxxx.bio
t:
- key: picks.xxxx.description
t: |
###########################################################################
# Sponsors
###########################################################################
- key: sponsors.frontendmasters.description
t: Advance your skills with in-depth, modern front-end engineering courses.
- key: sponsors.polypane.description
t: The browser for ambitious devs. Build responsive, accessible and fast websites with ease.
- key: sponsors.google_chrome.description
t: Thanks to the Google Chrome team for supporting our work.
###########################################################################
# FAQ/About
###########################################################################
- key: about.content
t: >
JS 现状调查于 2021 年 1 月 13 日至 **2022** 年 2 月 2 日进行,收集了 16,085 份回复。该调查由我 [Sacha Greif](https://sachagreif.com/) 在开源贡献者和顾问团队的帮助下进行。 今年的logo和 T 恤由 [Christopher Kirk-Nielsen](http://chriskirknielsen.com/) 设计。
### 调查目标
该调查以及 [State of JavaScript](https://stateofcss.com/) 旨在确定 Web 开发生态中即将出现的趋势,以帮助开发人员做出技术选择。
因此,这些调查的重点是预测未来几年会发生什么,而不是分析现在流行什么,这就是为什么并不总是包括目前最普遍的功能或技术。
它们也应该被视为**特定开发人员子集的快照**,而不是代表整个生态。
### 调查设计
该调查的设计部分基于去年的调查,并设有一个公开的反馈期,在 [GitHub](https://github.com/StateOfJS/Monorepo/issues/56) 上讨论了调查大纲。
所有调查问题都是可选的。
### 调查受众
该调查可在线公开访问,并且不会以任何方式过滤或选择受访者。受访者主要是来自过去调查(通过专门的邮件列表提醒)和社交媒体流量。
请注意,框架、库等可以自由鼓励其受众参与调查,其中已有框架、库等通过横幅、推文等利用这点规则。流量来源的详细分类包含在“来源”表中。
### 代表性 & 包容性
虽然我们认为让每个社区都有发言权很重要,但现实是,像这样的公开调查总是很难恰当地代表每个人。
为了平衡这一点,我们正在实行三种不同的策略:
- **外展**: 我们一直尝试接触不同的组织(像 BIPOC 或 LGBTQ 组织,或在线教学平台),以尝试使我们自己的受众多样化。
- **数据分析**: 通过刻面和变型等特征,我们一直在努力让任何群体的声音更容易浮出水面,无论它在我们的数据中可能多么小众。
- **降低壁垒**: 我们正在着力解决调查时间过长、无法访问、加载缓慢、仅限英语等都对调查有着负面影响的问题。并在这个过程中使我们的受众更加多样化。
### 项目资金
该项目的资金来源多种多样:
- **T恤销售**
- **图表赞助**: 社区成员可以为调查捐款,以换取他们的名字出现在报告中
- **赞助商**: 每个页面底部的推荐资源链接由我们的合作伙伴 [Frontend Masters](https://frontendmasters.com/) 提供。
- **其他资金**: 今年,[Google Chrome](https://www.google.com/chrome/) 团队拨出一笔小额预算来帮助聘请 [无障碍顾问](https://fossheim.io/) 进行 JS 和 CSS 调查。
尽管有这些资金来源,这些调查总体上仍然主要是一个自筹资金的项目,任何贡献或赞助都将不胜感激。我特别想与更多的浏览器供应商密切合作,因为他们在网络生态系统中扮演着如此重要的角色。
### 技术概述
你可以在 [此处](https://dev.to/sachagreif/how-the-state-of-js-css-surveys-are-run-4lnb) 找到有关调查运行方式的更深入的技术概述.
- **数据收集**:自定义 [Vulcan.js](http://vulcanjs.org/) 应用程序。
- **数据存储/处理**:MongoDB。
- **数据 API**:Node.js GraphQL API。
- **结果站点**:[Gatsby](https://www.gatsbyjs.com/) React 应用程序。
- **数据可视化**:[Nivo](https://nivo.rocks/) React dataviz 库。
- **类型**:[IBM Plex Mono](https://fonts.google.com/specimen/IBM+Plex+Mono) 和 [Bebas Neue](https://fonts.google.com/specimen/Bebas+Neue)。