深入探究顶级 Web 开发者的痛点

通过多场一对一对话收集的关于开发者主要痛点的分析洞见。

几个月前,Paul Kinlan 发布了2021 年开发者面临的主要痛点,因此,在本文开头先介绍一下过去两个季度的最新情况,似乎再合适不过了。数字略有变动,但排名没有变化。

挑战 2021 年第 1 季度 2021 年第 2 季度 2021 年第 3 季度 2021 年第 4 季度
跟上 Web 平台或 Web 标准的变化。 27% 26% 27% 22%
跟上大量新工具或框架以及现有工具或框架的发展。 26% 26% 25% 21%
让设计或体验在各种浏览器中都以相同方式发挥功用。 26% 28% 24% 21%
在不同浏览器中进行测试。 23% 24% 20% 20%
了解并实施安全措施。 23% 25% 20% 19%

正如 Paul 在博文中所述,我们需要解决这些痛点。为了实现这一目标,我和同事 Kadir Topal 采访了 18 位开发者。我们的目标是调查并开始了解如何解决开发者的主要痛点。

开发者讨论

免责声明: 这些数据分析基于与开发者的少量对话。使用“全部”或“部分”时,指的是接受采访的开发者,而不是整个社区。我们需要进行更多研究,才能将这些数据洞见推广到更广泛的范围。

这些对话让我们深刻感受到 Web 开发者社区的多元与精彩,在此,我要向所有与我们交流的开发者致以诚挚的谢意。有些开发者拥有超过 25 年的经验,而有些开发者则是在 2020 年才开始从事开发工作。有些开发者通过攻读计算机科学学位开启了自己的职业生涯,而另一些开发者则是自学成才。有些开发者会主动寻找新功能,并通过阅读浏览器版本说明来跟上最新动态,而有些开发者则通过同事和朋友了解新功能。有些人认为复杂性是工作的一部分,并乐于接受挑战,而另一些人则只想完成工作。在考虑如何解决这些痛点时,请务必牢记这种多样性!

所有开发者都有一个共同点,那就是他们都在使用 CMS 或框架来完成工作。Wordpress、React、Bootstrap、Angular 和 Tailwind 都有提及,但没有开发者在生产环境中使用原生 Web 平台。在启动项目时选择框架是一项挑战,开发者经常需要考虑非技术要求。例如,是否容易聘请到熟悉该框架的开发者。如果解决方案中不包含框架和 CMS,我们就无法改善开发者痛点。

说到 Web 平台,大多数开发者都将其理解为他们在其上进行开发的平台。这不仅包括 Web 平台的传统定义,还包括 CMS、框架、工具和 polyfill。在许多情况下,跟上这些变化是最大的难点。这改变了我们对该问题的解读,现在我们知道需要更新调查问卷,将其拆分为不同的部分,以减少歧义。

另一个不明确的领域是网络标准的定义。当被问及有关跟上标准步伐的示例时,许多开发者反而指出,跟上最佳实践的步伐存在困难。这是我们需要在调查问卷中澄清的另一个方面。

开发者在实现特定用例和模式时会寻找最佳实践。博文和 StackOverflow 被提及为最佳实践的来源,但开发者经常会想,他们阅读的信息是否确实是最佳实践,以及是否与最新功能和 API 保持同步。他们希望通过更官方的渠道来阅读这些内容。

跟上支持新用例的功能和 API 的步伐是一个较小的问题。开发者更难应对的是导致最佳实践发生变化的功能、API 和平台变更。

大多数开发者都认为,兼容性是最大的挑战之一。通过 Compat 2021 和 Interop 2022 等努力,情况正在改善,但显然开发者认为这个问题尚未解决。

大多数开发者都会以某种方式使用 polyfill。不过,在许多情况下,开发者无需感知 polyfill 的使用,因为 Babel 等工具或框架可以自动添加 polyfill。对于自行管理 polyfill 的开发者来说,判断 polyfill 是否“好”可能是一个难题。开发者提到,他们会使用 NPM 上的安装次数和 polyfill 的创建者作为信号。一些开发者提到,他们正在努力移除因不再支持 IE 11 而变得不必要的 polyfill。

框架会引入碎片化问题。我们收到报告称,开发者“受困”于旧版框架,因此可使用的功能受到限制,但迁移到同一框架的新版本可能成本高昂且难以证明其合理性。

总结

现代 Web 开发涉及许多不断变化的要素,包括标准、浏览器、库、polyfill、CMS、框架、最佳实践和工具。这种多样性是 Web 的一大优势,但目前,每个开发者都需要自行理解每个部分以及它们之间的兼容性。

我想知道,有没有一种方法,既能让开发者更清楚地了解所有这些部分是如何联系在一起的,又能让所有这些部分更加协调一致,同时又不影响多样性。这是一个庞大而复杂的问题,很难一蹴而就。但该从何处着手?

如果您有想要分享的观点和意见,我也很想和您聊聊。我会设置一种直接预约对话的方式,但在此期间,我的 Twitter 私信功能是开放的。欢迎联系我们,我们可以抽时间聊聊!