写点什么

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:434913

评论 1 条评论

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

菜单栏图标管理软件推荐 Bartender最新激活版

mac大玩家j

Mac软件 菜单栏管理工具 菜单栏工具

大数据之云平台的使用与总结 主赛道:技术人的 2023 总结

Echo_Wish

大数据 云平台 年度总结 2023 开天平台

总结:我在技术写作中踩过的 6 个坑

Java 工程师蔡姬

技术人 21 天技术人写作行动营

git常用命令之Fetch

百度搜索:蓝易云

git 云计算 Linux 运维 云服务器

简约好用的Markdown文本编辑器:Typora中文激活版

mac大玩家j

文本编辑器 Mac软件 markdown编辑

和鲸科技CEO范向伟受邀出席港航数据要素流通与生态合作研讨会,谈数据资产入表的战略机会

ModelWhale

数据 数据资产 数据要素 港航

关于Stable Diffusion模型优化分享

AI Stable Diffustion

WorkPlus搭建高效即时通讯,打造高效协作新标杆

WorkPlus

欧拉与AI深度结合:操作系统升级带来全新智能体验

彭飞

微服务的学习与实践 主赛道:技术人的 2023 总结

Echo_Wish

微服务 云原生 年度总结 2023 技术总结

WorkPlus:保护组织数据安全与提升企业效率的局域网即时通讯软件

WorkPlus

从0到1:志愿者小程序开发心得

CC同学

PWM 调光的线性降压 LED 恒流驱动器

梦笔生花

一文搞懂Android和嵌入式Linux开发差异点

巫山老妖

找不到想找的图片?半小时,帮你实现一个AI版“图片搜索引擎”

鹤涵

Redis 核心技术与实战 openai AIGC ChatGPT

活动 | Mint Blockchain 将于 2024 年 1 月 10 号启动 MintPass 限时铸造活动

NFT Research

blockchain NFT Pass

WorkPlus即时通讯软件,带来更轻松、高效的沟通体验

WorkPlus

WorkPlus高效助力企业沟通的专业级即时通讯软件

WorkPlus

Centos7系统K8S集群安装教程。

百度搜索:蓝易云

Linux centos Kubernetes 运维 云服务器

打破多APP困境,WorkPlus统一入口让企业协同更高效

WorkPlus

openEuler社区与9大海外开源基金会深入合作,构建全球开源新生态

彭飞

openEuler商业化进展可观:累计装机量超610万套,市场持续扩容

彭飞

Raw图像处理推荐 Capture One Pro 23中文最新版

胖墩儿不胖y

Mac软件 raw图像 raw图像处理工具

专业的磁盘管理工具:DiskCatalogMaker 中文激活版

胖墩儿不胖y

Mac软件 磁盘管理工具 磁盘清理管理

WorkPlus即时通讯app-私有化部署的最佳解决方案

WorkPlus

文心一言 VS 讯飞星火 VS chatgpt (158)-- 算法导论12.3 5题

福大大架构师每日一题

福大大架构师每日一题

Merlin Protocol,一个专业的比特币生态资产适配协议

TerpLayer

区块链

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