Video thumbnail

    Valuable insights

    1.年度调查揭示行业趋势: 通过运行 State of JS、State of CSS 等年度开放调查,可以系统地了解全球网络开发者的工具使用偏好和技术采纳情况。

    2.Solid 框架满意度领先: Solid 框架在最新的 State of JS 调查中表现出色,连续四年蝉联满意度榜首,表明开发者对该工具的积极评价极高。

    3.TypeScript 成为默认标准: 调查数据显示,使用纯 TypeScript 的开发者群体已成为最大组成部分,标志着 TypeScript 正逐步成为现代 Web 开发的默认编码方式。

    4.CSS :has() 受欢迎度高: :has() 选择器被评为过去一年中最受欢迎的新 CSS 特性,因为它开创了基于元素内容而非其父级进行定位的新可能性。

    5.浏览器互操作性标准建立: 浏览器基线指标(Baseline Indicator)帮助开发者判断新特性是否安全使用,例如 CSS :has() 已在所有主流浏览器中实现支持。

    6.AI 代码生成普及度有限: 尽管存在广泛讨论,但仅有 22% 的受访者表示他们大部分代码由人工智能生成,多数开发者仍以手动编码为主。

    7.工程师头衔与高收入相关: 在最新的 State of Devs 调查中,拥有“工程师”(Engineer)头衔的开发者群体,其中位数收入往往高于“开发者”(Developer)群体。

    8.体育运动是开发者爱好: 尽管存在刻板印象,但体育运动是开发者最常从事的爱好之一,甚至超越了电子游戏等其他常见选项。

    9.调查数据对行业影响: 浏览器厂商会参考 State of CSS 等调查数据来确定 Interop 计划的未来焦点,社区反馈直接影响技术路线图的制定。

    10.开发者对 JS 仍持积极态度: 出乎意料的是,开发者对 JavaScript 生态的整体满意度很高,这与几年前普遍存在的“JavaScript 疲劳”现象形成对比。

    Sasha Grief 谈网络现状

    本次分享由 Sasha Grief 主讲,主题聚焦于网络开发的现状。演讲者明确指出,讨论范围并非笼统的 Web 状态,而是基于其每年组织的一系列开放式网络开发调查所获得的见解,例如 State of JS、State of CSS 和 State of HTML 等。这些调查允许任何开发者参与,旨在收集广泛的用户数据。为了使分享更具互动性,演讲者设计了一个现场互动问答环节,参与者需通过数手指的方式来记录自己的生命值,共有三条初始生命,答错一次则失去一条,以测试知识掌握程度。

    前端库使用情况与测试开始

    互动环节首先考察了最新 State of JS 调查中三大最常用的前端框架。选项 A 提到了 Svelte、Solid 和 HTMX,选项 B 则是 Backbone、Knockout 和 Mood Tools,而选项 C 包含 React、Vue 和 Angular。对于未曾听闻选项 B 的年轻开发者无需担忧,因为这些是较早期的技术。最终答案揭晓为选项 C,即 React、Vue 和 Angular 依然是最广泛使用的框架。

    框架满意度排名揭晓

    调查不仅询问了使用情况,还深入了解了开发者对所用框架的感受。在满意度方面,有一个框架获得了压倒性的积极评价并名列第一。数据显示,Solid 框架(图表中黄色/橙色线)已连续四届调查中位居满意度榜首,表现非常抢眼。紧随其后的是绿色线条代表的框架,第三名则是 Vue.js,显示出其正在稳步回升。值得注意的是,大多数框架的满意度绝对值都保持在 70% 以上,这表明开发者在很大程度上享受使用当前这些框架的过程,是对维护者日常工作的肯定。

    GitNation 会议体验

    演讲者对本次会议的场地表示赞赏,提到能站在一个童年时非常喜欢的场馆里进行演讲是一种荣幸。该会议的一个显著优点是,在演讲结束后会设有专门的讨论室,与会者可以立即就演讲主题与其他参会者进行深入交流。演讲者从业余到专业演讲的十五到二十年间,认为本次会议的场地是所经历过的最优质的场地之一。

    JavaScript 调查结果与 TypeScript

    接下来的问题聚焦于 TypeScript 的使用情况。在受访者中,是仅使用 JavaScript、使用五五开的混合模式,还是仅使用 TypeScript 的开发者占多数?结果显示,最大的群体是选项 C,即完全只使用 TypeScript 的开发者。图表清晰地展示了 100% 使用 TypeScript 的群体占据了最大的比例。这强有力地证明了 TypeScript 不仅已经进入主流,而且正在成为编写 Web 代码的首选和默认方式。

    “这表明如今 TypeScript 不仅已成为主流,而且实际上正成为编写 Web 代码的默认方式。”

    TC39 委员会的未来提案

    TC39 委员会负责决定 JavaScript 语言未来将采纳的新特性。每年该委员会会审议大量提案,但其中一个选项并非真实提案。问题在于,以下哪个选项不是真实的提案:A. 显式资源管理 (Explicit Resource Management),B. Temporal,C. 反向线程 (Reverse Threading),或 D. 装饰器 (Decorators)。

    • 最受期待的提案之一是 Temporal,它将提供处理日期和时间的新方式,有望减少对 Moment.js 等第三方库的依赖。
    • 显式资源管理 (Explicit Resource Management) 和装饰器 (Decorators) 也是真实且重要的提案。
    • 反向线程 (Reverse Threading) 并非一个真实存在的提案,它实际上与螺栓和螺丝有关。

    CSS 特性采纳与浏览器支持

    尽管这不是 CSS 专场,但调查中仍包含关于 CSS 特性的问题。受访者被问及过去一年中最享受使用的特性是哪一个,选项包括 :has、子网格 (subgrid) 或 float right。最终的赢家是 CSS 的 :has 选择器。这是一个非常出色的新特性,它允许开发者根据元素包含的内容(子元素)来定位该元素,而不是像传统 CSS 那样仅基于其父元素进行定位,这为 CSS 带来了许多新的可能性。

    CSS :has 选择器的浏览器支持

    拥有新特性固然重要,但如果浏览器不支持,其实用性就会大打折扣。因此,调查询问了截至 2025 年 6 月,四大主流浏览器对 CSS :has 选择器的支持情况。答案是 D,即所有四个浏览器均支持。这得益于浏览器厂商共同制定的“基线指标”(Baseline Indicator)标准,它告知开发者哪些功能是安全的。:has 选择器已被标记为“新近可用”(newly available),意味着自 2023 年 12 月起,所有四大浏览器均已支持该特性。

    • 在浏览调查结果时,可以点击任何特性以获取额外信息。
    • 这些信息包括基线状态以及指向 MDN 和 Can I Use 等资源的链接。

    基线指标的“广泛可用”定义

    在 State of HTML 调查中,继续探讨了基线指标。当基线指标显示某特性处于“广泛可用”(widely available)阶段时,即基线的最终阶段,这表示该特性得到了主要浏览器长达 30 个月以上的支持。例如,像 `aspect-ratio` 这样的 CSS 属性,虽然感觉上是新的,但其实际上已经超过两年多时间处于良好支持状态。

    浏览器互操作性与 AI 使用情况

    浏览器互操作性问题是调查中经常被问及的重点。State of HTML 调查曾询问开发者因互操作性差而无法使用的特性,排名前三的是 Popover API、锚点定位(Anchor Positioning)和视图转换 API(View Transition API)。值得关注的是,浏览器厂商有一个名为 Interop 的倡议,每年聚集在一起决定重点修复的领域。2025 年的重点领域包括锚点定位、背景滤镜(Backdrop Filter)和核心 Web 指标(Core Web Vitals)。

    • State of HTML 调查数据。
    • State of CSS 调查数据。
    • 社区反馈,表明厂商对开发者意见持开放态度。

    Web 开发中 AI 的实际应用

    接下来讨论了 State of WebDev AI 调查的结果,该调查侧重于普通 Web 开发者如何使用或未使用 AI 工具。一个关键问题是:受访者中有多少比例的开发者通过 AI 生成了其代码的大部分(超过一半)?令人惊讶的是,只有 22% 的受访者属于这一类。图表显示,不使用 AI 的开发者比例最高,而使用 AI 完成所有工作的开发者比例仅为 11%

    • 大部分开发者处于中间地带,或者更倾向于不使用 AI。
    • 演讲者本人仅偶尔使用 ChatGPT 生成辅助函数或样式,并未像社交媒体上看到的那样使用 AI 编写整个应用。
    • 认为自己仍以手动方式编码的开发者不必感到“错失恐惧症”(FOMO)。

    State of Devs 调查洞察

    State of Devs 调查于 2025 年 4 月进行,数据非常新近,甚至尚未完全发布,因此分享的是独家预览结果。该调查的独特之处在于,它不关注代码,而是关注构成开发者的其他方面,包括职业、工作场所、健康和个人爱好。其中一个问题是关于工作头衔与收入的关联性。

    头衔与收入的关联性分析

    数据显示,特定工作头衔与更高的中位数收入存在关联。在“开发者”(developer)、“工程师”(engineer)、“网站管理员”(web master)和“顾问”(consultant)中,答案是“工程师”。查看数据可以发现,所有工程师相关的职位往往排在收入排名的前列,而开发者职位则相对靠后。因此,在不将相关性等同于因果关系的前提下,建议开发者可以在简历上将“前端开发者”更新为“前端工程师”,如果条件允许的话。

    开发者的热门爱好揭晓

    最后一个问题是关于开发者最喜欢的爱好。选项包括电子游戏、电影、阅读或体育运动。演讲者提到自己喜欢攀岩(bouldering),并邀请感兴趣的人稍后结伴前往。不幸的是,关于体育运动的刻板印象在数据中得到了证实,体育运动是开发者最受欢迎的爱好。

    • 在 2025 年的调查中,最受欢迎的具体电子游戏是《博德之门 3》(Baldur's Gate 3)。
    • 第二名是《Valatro》,演讲者表示自己因沉迷而不得不很快停止游玩。

    调查结果总结与挑战

    本次分享总结了几个关键学习点。首先,开发者可以比想象中更多地使用新的 CSS 特性,这得益于像 Can I Use 这样的工具和基线指标的普及。其次,TypeScript 已经成为事实上的默认标准,生态系统正朝着这个方向发展。第三,大多数开发者目前对 AI 的使用频率并不高,关于 AI 取代人类编码员的担忧可能被夸大了,因为仍需要有人手动编写代码供 AI 学习。

    网络变化速度与调查作用

    网络变化迅速,而调查可以帮助人们跟上步伐。参与调查不仅能使人接触到许多可能不了解的新特性和新库,同时回顾调查结果也能了解即将到来的趋势,这些结果本身就是探索其他资源的良好起点。演讲者特别提到,State of CSS 2025 调查当前正在开放征集中,鼓励大家在活动结束后参与。

    调查覆盖范围与偏差控制

    在问及最大的挑战时,演讲者指出了双重挑战:一是如何触达尽可能多的人群,例如通过播客等渠道传播信息;二是如何确保受众群体不产生单向的偏见。例如,如果特定社区(如 fujs)在主页上发布链接,那么该社区的成员将在调查中过度代表。这在性别、国家和种族多样性方面尤为突出,需要更审慎地进行外联以确保样本的广泛代表性。

    JavaScript 数据与 AI 采纳情况

    关于调查数据中最令人惊讶的发现,演讲者表示,总体的积极性令人意外,开发者对 JavaScript 的厌恶程度并不像人们想象的那么高。与八九年前普遍讨论的“JavaScript 疲劳”相比,现在情况已有所改善。React 和 Vue 等框架已存在近十年,生态系统变化速度在框架选择方面已趋于稳定,且开发者对现有工具的认可度很高。

    AI 工具使用中的滞后现象

    针对低 AI 使用率的疑问,演讲者认为这不是因为限制,而是因为习惯的养成需要时间。调查显示,ChatGPT 等工具的使用率很高,但像 Cursor 或代码生成器 Bolt/V0 这样的更专业化工具的使用率则远低于前者。这表明 ChatGPT 正在成为主流,但更专业的工具存在一定的滞后期,预计这种滞后会逐渐缩小,但整体 AI 采纳速度可能仍会慢于倡导者所预测的速率。

    调查名称
    最高参与人数
    当前大致人数
    State of JS
    超过 20,000 人
    通常约 10,000 人
    较小型调查
    N/A
    约 5,000 人

    数据收集的挑战与处理

    关于数据收集,参与人数的多少极不稳定,有时一个知名 YouTuber(如 Fireship)的提及就能带来数千份回复。对于最大的调查,通常能获得约 10,000 份回复,较小的调查约 5,000 份。另一个关键工作是数据标准化,因为调查包含大量自由文本输入的问题。需要大量人工工作将这些文本转化为可用数据,尽管演讲者正尝试使用正则表达式和 ChatGPT 等大型语言模型(LLMs)进行自动化,但目前仍需人工逐一审核和批准建议。

    调查问题的选择流程

    问题选择过程是一个多阶段的社区驱动流程。在每份调查的结尾,都会有一个特定问题询问参与者希望下一届调查如何演进。此外,还会开设一个 GitHub Issue,供人们提出新想法,该 Issue 会开放长达一年时间。基于这两项输入,演讲者会创建一个包含新问题的调查预览版,开放约一个月供社区建议新问题或评论现有问题,最终确定并发布正式调查。

    • 在当前调查结束时提出新问题建议。
    • 在专门的 GitHub Issue 中提供反馈。
    • 在预览期内对草案问题进行评论和建议。

    因此,最终的问题选择是演讲者个人主观判断与社区输入相结合的结果。当被问及 22% 使用 AI 超过一半代码的比例是否过高,暗示可能存在倾向于技术爱好者的选择偏差时,演讲者回应称,在邮件列表中特意邀请了那些不使用 AI 的人参与,以期减轻这种偏差,但完全消除偏差仍然是一个挑战。

    调查动机与技术转型

    关于启动这些调查的初衷,演讲者回忆道,当时正在使用一个名为 Meteor.js 的全栈框架。Meteor.js 的核心理念是提供一体化的解决方案,涵盖服务器、客户端和模板等。然而,当演讲者离开这个高度自洽的生态系统,开始接触更广泛的 JavaScript 生态时,感到了极大的困惑。最初启动调查的冲动,正是为了帮助自己弄清楚在投入了大量时间于一个封闭系统后,应该将时间投资于哪种技术。

    • 感谢听众参与了这场互动问答。
    • 希望听众能利用调查结果来跟上技术发展步伐。

    Useful links

    These links were generated based on the content of the video to help you deepen your knowledge about the topics discussed.

    This article was AI generated. It may contain errors and should be verified with the original source.
    VideoToWordsClarifyTube

    © 2025 ClarifyTube. All rights reserved.