速来报名!AICon北京站鸿蒙专场~ 了解详情
写点什么

GPT-4 预示着前端开发的终结?你准备好面对无法预测的技术挑战了吗?

作者:Josh Comeau

  • 2023-04-10
    北京
  • 本文字数:4934 字

    阅读完需:约 16 分钟

GPT-4预示着前端开发的终结?你准备好面对无法预测的技术挑战了吗?

过去几个月来,我跟很多刚刚步入前端开发领域的朋友们交流过,大家都对步步紧逼的 AI 感到焦虑。他们看到 GPT-4 等工具带来的令人印象深刻的演示,担心自己学成 HTML/CSS/JS 知识之日,就是岗位消失之时。


这类情绪绝非个例,Twitter 上早已是哀鸿一片。



澄清声明我先向大家承认,这个话题跟我有切身关联:我的工作就是在网上教学员开发软件。如果开发者岗位逐渐消失,那我的饭碗也就完了。

但我向大家保证,我在本文中表达的所有观点都出于自己的真实判断。欢迎大家自行斟酌这些观点是否存在偏见。


“又”要被替代了


CSS 语言最初发布于 1996,随 IE 3 一同推出。两年之内,首款“无代码”网站构建器 Homestead 就跟大家见面了。


Homestead 能帮助人们在无需编写代码的情况下,轻松构建起自定义网页:



也就是说,从 Web 开发这类岗位刚刚出现时,就有人担心会被某些新技术所淘汰。2000 年代的威胁源头是 WordPress,2010 年代是 Webflow,2020 年代初则是“无代码”工具。


其实从某种意义上讲,Web 开发者确实已经过时了。如今,本地面包小店、牙医诊所或者艺术家如果需要一个网站,那大概率不会花几万美元聘请开发者从零开始做设计。他们可以直接前往 SquareSpace,找到自己喜欢的模板,然后每月花 20 美元来运营自己的业务门户。


但就算这样,Web 开发者也仍然存在。


上星期,OpenAI 公布了 GPT-4,期间有一段令人印象深刻的演示:GPT-4 能够将手绘的网站草图转化成功能齐全的网站,甚至包括一些 JS 来连接“Reveal Punchline”按钮。




这功能确实很酷,在原型设计方面有很大的潜力……但我们还是得明确一点:几十年来,我们的 Web 开发者负责构建的从来不是这类页面。演示中的 HTML 文档跟目前前端开发者编写的各种代码,可以说是天渊之别。


展望未来


到目前为止,我个人看到的大部分演示都非常有限:要么是一个简单的 HTML 页面,要么是 JS 函数。总之,就是那种开发者可以随手搞定的东西。


但这一切还仅仅只是开始!如果 AI 继续保持目前的发展速度,再过几年就能构建起完整的应用程序了,对吧?


我当然不是什么大语言模型专家。但对于 GPT-4,我完全能够理解它的宏观工作原理。


从本质上讲,大语言模型是一种超级强大的文本预测器。给定一个提示,它们就能使用机器学习来尝试找到最可能符合提示要求的字符集。


OpenAI 等厂商花费了大量的时间和精力来调整模型,借此改善输出质量。一大群人工标者对模型的输出进行“评级”,借此引导模型不断学习和进化。


如果大家体验过 CHatGPT 或者 Bing 的 AI 搜索等工具,就会发现这些回答大概有个 80% 的正确率,但 AI 却表现得像是有 100% 的把握。


大语言模型无法验证或者说测试自己的假设,无法确定自己的表达内容是否为真。它们还是在玩概率游戏,猜测给出的字符应该会跟用户在提示中输入的字符相匹配。


有时候,AI 甚至会给出非常荒谬的回答。OpenAI 团队将其称为“幻觉”。


随着技术进步,预计某些粗糙的问题会被一一克服。但从根本上讲,AI 或多或少还是会存在准确度问题。毕竟 AI 工具没有任何机制能够对自己的响应做出客观验证。


因此,准确率可以不断提高,但永远达不到完美。而趋于完美,正是 AI 真正取代 Web 开发者的前提。如果它本身不是程序员,那就无法判断哪些部分是对的、哪些是错的。AI 自己发现不了“幻觉”。


但大家别急,我也认真看了 GPT-4 的演示,AI 似乎能够自我纠正!只要复制 / 粘贴错误消息,它就能找到并解决问题。


但是……并不是所有幻觉都会引发异常。比如说,我最近用 GPT-4 在 React 上生成了一个〈Modal〉组件,虽然输出非常好,但还是存在一些可访问性错误。创建应用程序的人可能注意不到这些问题,不过最终用户肯定会发现!


还有代码中的安全漏洞呢?一旦引发可怕的错误,该由谁来承担责任?


还有一点:生成一个 50 行的 HTML 文档,跟输出生产就绪的 Web 应用程序之间根本就不是一回事。像博客这样的小型 JS 应用就有大约 6.5 万行代码,总计 900 多个文件。这还不包含写作文本,单是 JavaScript 和 TypeScript 的体量。


也就是说,即使准确率达到 95%,在这样的应用规模下也将很难调试。这相当于一位开发者用几个月时间构建一个巨大的项目,但却从未做过任何代码测试,直到 100% 完成后才加以验证。这不是生产力提升,而是前所未有的噩梦。


AI 不是什么神迹和魔法,它的质量直接取决于训练数据。而代码片段在互联网上随处可见,往往高度通用。相比之下,每个代码库都是独一无二的,网上鲜有大型开源代码库。那么,AI 要如何学会构建能够实际应用的大型项目?


按现在的发展速度看,很快非开发者就可以直接跟聊天机器人对接,轻松启动一个小型独立项目。也就是说,如今的 Webflow 等工具会被 AI 所替代,而且效果更好、功能更强,这绝对是件大好事!


但要让科技大厂们放弃自己的开发队伍,全面选择 AI 工程师?那还有很长的路要走,前面提到的这些潜在问题将严重阻碍这种想象在现实中落地。


增强,而非替


说了这么多,我就明确给出自己的态度吧:我其实非常看好 AI 技术 😅。


我认为最有可能的情况,是 GPT-4 这类工具被整合进开发者工具当中,用来扩大熟练开发者的生产能力。


木匠并没有被电动工具所替代,会计师没有被电子表格替代,摄影师没有被数码相机 / 智能手机替代,我认为开发者也不会被大语言模型替代。


我当然不确定未来的开发者职位总量会不会有所下降;毕竟如果每位开发者的效率都显著提高,那岗位方面的整体需求应该减少才对。


但也不一定。就目前来讲,软件开发者仍处于供不应求的状态。在我工作过的每家公司,大家都有太多想做的事情,只因开发者数量有限而被迫作罢。


那如果开发者的工作效率瞬间提升 2 倍,结果会如何?无疑是修复更多 bug、发布更多功能、赚取更多利润。我们可以开发的东西太多了,根本不存在开发者过剩一说。


我反倒认为,大语言模型的普及会增加开发者的职位总量。


目前,很多企业根本就不雇用软件开发者。我曾在一家名叫 Konrad Group 的公司工作,这是一家专为客户构建 Web 应用程序的企业,客户名单里不乏家喻户晓的大厂。但因为开发成本太高,他们发现与其招聘固定开发人员,还不如把这活儿外包出去。


这些财富五百强公司会根据当前的软件开发成本做核算。这里我们假定一个场景:如果他们需要 4 名开发人员,平均年薪 15 万美元,那每年就是 60 万美元。在这种情况下,他们不如向外包机构支付 50 万美元来搞定这方面需求。但如果大语言模型真能提高开发者的工作效率,他们也许只雇 2 名年薪 15 万美元的开发者就够了。突然之间,原本自己没法做的项目现在可以做了!


我要澄清一下:我不是经济学家,以上案例安全就是随口一说。我不知道未来的情况会不会朝这个方向发展。但我想提醒大家,大语言模型的爆发并不一定会摧毁我们的工作和生活。没人知道未来会向哪里去,而我实在受不了人们言之凿凿地把前景描述得愁云惨淡。


网上不乏与我相同的观点


Aaron Blaise 是一位经验丰富的动画师兼插画家。他在迪士尼工作了近 20 年,曾为《美女与野兽》(1991)、《阿拉丁》(1992)、《风中奇缘》(1995)等经典影片做出贡献。


几周之前,他在 YouTube 上发布了一段视频,题为《迪士尼动画师对 AI 动画的反应》(https://www.youtube.com/watch?v=xm7BwEsdVbQ)。他的观点跟我很像,并不觉得 AI 工具是种威胁,而认为它将提高动画师的生产力并创造出更多动画岗位。


来自几十个行业的艺术家和知识工作者们都在讨论这方面话题,毕竟很多人担心自己的工作会被 GPT-4、DALL-E 2 和 Midjourney 等 AI 工具所吞噬。


GPT-4 能通过模拟律师考试吗?可以,而且得分在人类应试者里能排进前 10%。所以律师们也慌了。


我个人认为,大多数专业人士都能找到将 AI 技术整合进工作流程的办法,借此提高自己的生产力和价值。一部分任务可能被全面委托给 AI,但只是部分任务、而非整个工作。


那如果我是错的,事实证明大语言模型可以全面取代软件开发者,又该怎么办?如果真是这样,那我觉得也不用太担心了,到那时候绝大多数知识工作者都会被“清洗”。


这样一来,我们就算是转行、转专业也没有用,AI 海啸之下将没有安全的高地。所以与其去赌未来会不会朝着最糟糕的方向去,倒不如专注于自己热衷的工作、感兴趣的问题、擅长的方向。


前端开发与其他工程学科


网上有帮家伙,一直在暗示前端开发特别容易被 AI 替代,还建议开发者再精进一步,往后端或数据工程那边努力。


但我的观点恰恰相反。我觉得开发者群体根本就不用担心被淘汰,如果非得说哪部分群体更危险,我倒认为是后端。


OpenAI 的 GPT-4 直播展示了两段与代码相关的内容:


  • “Joke website”前端;

  • 基于 Python 的 Discord 机器人。


在这两个项目中,Python 代码对我来说似乎更接近生产。我最近用 Node.js 构建了一个 Discord 机器人,跟 GPT-4 生成的代码确实差不多。


相比之下,AI 为那个笑话网站生成的基础 HTML 文档,就跟我每天编写的前端代码间相隔十万八千里。


这可能有点以偏概全,但过去十年来,我发现很多复杂性要素已经从服务器转向了客户端。


Monolithic Express 应用程序已经转化为无服务器函数的集合,而我们的前端也从超链接数字文档发展为成熟的桌面质量应用程序。


再有,前端是用户与之交互的产品部分。企业当然希望自己的产品能体现出定制化、独特性和根据品牌形象精心设计等特点。与之对应,后端则完全不可见,所以通用后端要比通用前端更让人易于接受。


用大语言模型辅助学习


我听有些人说,ChatGPT 能帮助大家快速学习技术性技能。如果各位对教程中的某些内容感到困惑,不妨问问神奇的 AI。


这对我来说是个非常有趣的用例。从本质上讲,ChatGPT 就像你的结对程序员,能帮助你了解自己不熟悉的事物。你可以向它提出具体问题,并获取具体答案。


当然,使用过程中也要当心。利用 AI 工具来学习,也有正确的方式与错误的方式之分。


所谓错误的方式,就是把 AI 当作 GPS 导航。当我们打算开车前往某地时,就会把地址输入 GPS,然后不假思索地按它的指示前进。等到了目的地附近时我会把导航关掉,整个过程不做任何思考和评判。结果就是,我的方向感完全萎缩了,现在如果没有合成语音的指示,我根本不知道该往哪里走。😬


与之相对,我们最好把大语言模型当成“被告”,而自己则扮演“陪审团成员”。


你要认真听它在说什么,但不可全盘相信。保持怀疑的态度,以批判的心态考量一字一句。


不可盲目复制 / 粘贴 ChatGPT 生成的代码,而是逐行检查并保证你理解了其中内容。有不清楚的地方要提醒它做出澄清,并配合权威来源(例如官方文档)仔细检查看似可疑的部分。请记住,大语言模型 100% 自信,但却并非 100% 准确。


通过这种方式,相信大语言模型能够创造出前所未有的价值。😄


给各位年轻开发者的忠告


我之所以要写下这篇文章,就是想鼓励各位正在学习 Web 开发、并为大语言模型的爆发式进步压得喘不过气的朋友们。很多人彻底失去了信心,认为随着 AI 技术的继续成熟,自己耗费时间和精力掌握的所有技能将被无情淘汰。


我不敢保证未来一定不会这样。但我对 AI 能够给工作方式带来的影响仍抱怀疑。早在 2007 年,我就开始研究 HTML/CSS/JS,多年以来情况已经发生了很大变化。但开发者们仍然凭借强大的适应性,与技术一同进步、携手为网络世界塑造新的样貌。


到目前为止,我还没看到有切实迹象表明前端开发的工作处于危险之中。我也想象过未受任何专业训练的非开发者,在不了解 Web 技术的情况下会开发出怎样的 Web 应用程序。太多的因素会导致其无法运行了,所以即使 GPT 未来继续保持迭代,大家也没必要过于焦虑。这,又何尝不是另一种“幻觉”。


再次强调,我的观点很可能是错的,毕竟我可没有能预见未来的水晶球🔮。但未来总有不确定性,没准明天太阳就爆炸了,谁知道呢。但我真的很难相信 Web 开发者会被迅速淘汰,反而更担心潜在开发者会因为这种莫须有的可能性而放弃学习。


总之,但愿不要五年之后软件开发者需求更旺之时,大家才感觉后悔、反思当下的自己为什么要停止追求梦想。请继续努力吧,各位同学!❤️


原文链接:


https://www.joshwcomeau.com/blog/the-end-of-frontend-development/

相关阅读:

GPT-4:不了不了,这些我还做不到

3 分钟快速了解 GPT-4

对话 OpenAI Greg Brockman:GPT-4 并不完美,但人类也一样

GPT-4 重磅发布,吊打 ChatGPT!编程能力牛到让我睡不着:10 秒做出一个网站,1 分钟开发一个游戏

2023-04-10 12:434972

评论 1 条评论

发布
用户头像
我不做后端,但我臆想后端更容易被替代。
生产力提升,程序员会做更想做的事情。新需求、能赚钱的新行业有没有不确定,但是企业竞争,旧行业一定会压成本导致失业。
2023-04-11 01:35 · 江苏
回复
没有更多了
发现更多内容

在 Windows 平台下安装与配置 MySQL 5.7.36

小齐写代码

Java时间处理---Java8中时区相关类库介绍

程序员万金游

Java 面试 #java #程序员 #JavaSE

记录TritonServer部署多模型到多GPU踩坑 | 京东云技术团队

京东科技开发者

人工智能 gpu 企业号10月PK榜

AI大模型下一步怎么走?百度携AI原生应用抢先作答

陈橘又青

文心一言

IPQ9554 with QCN6274 Solution forCommercial Applications|Wi-Fi7

wallyslilly

ipq9554 qcn6274

Java基础面试题【Spring】一

派大星

Java 面试题

SAAS堡垒机安全吗?为什么性价比那么高?

行云管家

云计算 软件 SaaS SAAS软件

cad设计绘图工具:AutoCAD 2024 for Mac

展初云

设计 Mac软件 cad AutoCAD 2024下载

Sync Folders Pro for Mac(文件夹数据同步工具) v4.6.7永久激活版

mac

苹果mac Windows软件 Sync Folders Pro 文件夹同步工具

Mac专业级的PDF编辑和管理软件:Acrobat Pro DC 2023

展初云

Mac软件 PDF编辑 PDF管理

HTX 与 Zebec  Protocol 展开深度合作,并将以质押者的身份参与 ZBC Staking

西柚子

塑造未来经济的游戏规则改变者:去中心化金融交易所的发展

区块链软件开发推广运营

交易所开发 dapp开发 区块链开发 链游开发 NFT开发

TDengine 资深研发整理:基于 SpringBoot 多语言实现 API 返回消息国际化

TDengine

时序数据库 ​TDengine

简单好用的pdf编辑工具 PDF Expert 最新中文版

胖墩儿不胖y

PDF 编辑pdf pdf处理工具

RazorSQL for Mac(数据库查询工具) v10.4.6完整激活版

mac

苹果mac Windows软件 RazorSQL SQL数据库管理工具

HTX 与 Zebec  Protocol 展开深度合作,并将以质押者的身份参与 ZBC Staking

大瞿科技

宁夏企业过等保选哪家测评机构好?选哪家堡垒机?

行云管家

等保 等级保护 宁夏

当 BACnet 遇上 IoT,你将体验到不一样的大楼

华为云开发者联盟

云计算 后端 物联网 华为云 华为云开发者联盟

腾讯云大数据ES:使用Elastic APM监控SpringBoot服务的最佳实践

腾讯云大数据

ES

如何将电脑上的“小电影”隐藏为一张图片?这波操作绝了!!

冰河

程序员 图片 视频创作 知识分享 小视频

DBeaverUE for Mac旗舰激活版 数据库管理软件

iMac小白

DBeaverUE下载 DBeaverUE破解版

深耕全面预算管理 拥抱企业数字未来

智达方通

自动化 全面预算管理 全面预算管理系统

程序员常用的19款办公软件和开发工具推荐!

彭宏豪95

效率工具 开发工具 科技 办公软件 软件开发工具

iOS代码混淆和加固技术详解

雪奈椰子

「我在淘天做技术」一篇文章告诉你商品团队在做哪些有意思的事?

阿里技术

校园招聘 商品域

Mac电脑网页视频处理工具iTubeGo中文免激活版

mac大玩家j

视频处理工具 视频编辑器 在线视频工具

高效利用内存资源:掌握Redis内存管理与淘汰策略

树上有只程序猿

redis 内存管理

文件比较对比软件中的佼佼者Beyond Compare 4 for Mac

展初云

Mac Mac软件 文件比较对比工具

专注二次元的 Niji 模型上线独立 APP;华为整体销量已超越苹果丨 RTE 开发者日报 Vol.68

声网

HarmonyOS音视频开发概述

HarmonyOS开发者

HarmonyOS

GPT-4预示着前端开发的终结?你准备好面对无法预测的技术挑战了吗?_大前端_InfoQ精选文章