文章插图
让我们做个大胆的设想,如果当软件需求发生变化的时候,我们不再是去改代码,而是直接修改需求对应的 prompt,然后基于 prompt 直接生成完整的代码,这个将是软件开发范式的改变 。
在这种范式下,我们需要确保代码不能有人为修改,必须都是由 prompt 直接生成,此时我们还需要对 prompt 做版本管理,或许会出现类似今天 git 的 prompt 版本管理的新物种 。
此时,从本质上来看 prompt 即是代码,而原本的代码不再是代码了,这就真正实现了基于自然语言(prompt)的编程,此时的编程范式将从 prompt to code 转变为 prompt as code 。
更进一步思考,当实现了 prompt as code,我们是否还需要 code,关于代码的很多工程化实践还重要吗?现在我们之所以认为代码工程化很重要,因为代码是人来编写,代码是人来维护的 。而当代码由 LLM 来编写,由 LLM 来维护的话,那么现有的软件架构体系还适用吗?这个时候或许才真正实现了软件研发范式的进化 。
思考 5:直接可运行,prompt to executable 软件开发范式的可能性
文章插图
在深入一步思考,直接可运行,prompt to executable 的基础设施会出现吗?
代码只是软件工程中的一部分,远远不是软件工程的全部,你想想你有多少时间占比是在编码的 。一般来讲,编码完成后往往要经历 CI 和 CD 等一些列的工程实践才能向终端用户交付价值 。
所以全新的软件范式是否可以实现从 prompt 直接到可运行的程序实例?目前来看,或许 Serverless 是可能的架构之一 。
思考 6:计算机教育的反思
文章插图
LLM 出现后,关于对计算机教育的反思我认为有两个层面的思考:
首先是,计算机学科研究方向的变化,之前 NLP、知识图谱、代码理解,代码缺陷发现、test oracle 生成等都是独立的研究方向,但是 LLM 表现出的 AGI 能力似乎让这些垂直领域的研究失去的意义,因为 LLM 的 AGI 能力都能解决,或许效果还更好 。
所以这些研究方向将何去何从是需要我们思考的 。有人说 LLM 是 NLP 的新里程碑,但也有人认为其更像是 NLP 的墓志铭,这句话很好的表达了我的观点 。
其次,LLM 一次次地证明了通过“死记硬背 + 简单推理”就能通过大多数人类的考试和技术面试 。那教育的终极目标又是什么?先进的人工智能尝试把机器培养成人,而落后的教育试图把人培养成机器 。计算机教育,其实我们整个教育到了需要彻底反思的时刻了 。
或者我们都错了?!
彼得德鲁克说过“动荡时代的最大风险不是动荡本身,而是企图以昨天的逻辑来应对动荡”,今天 LLM 对软件工程的影响,我还是在以以往的逻辑在做分析,这个基础可能本来就是错误,全新的时代需要全新的思维模式,然后我们拭目以待 。
【LLM对程序员的冲击和影响】
推荐阅读
- AIGC 生成代码正流行,对程序员是好还是坏?
- “五年内人类程序员将消失”预言引争议,AI真的那么强大了吗?
- “鱼骨线”怎么走?
- 张馨予晒与张柏芝12年前合照,跨时空对比感叹没变化,犹如逆生长
- 深浅交界概念不清位置就找不对!如何施钓鱼获多,钓深还是钓浅?
- 毛猛达直播间全程沪语,谈滑稽演员做广告,劝网友对潘前卫宽容
- 坐等二离!具俊晔在韩开泳池派对,衣衫不整打DJ,满屏都是辣妹
- 李玟老公立深情人设,被打脸!李玟出事当天的对话曝光,让人泪目
- 汪小菲接娃成功,张兰却再爆大瓜:S妈对汪小菲爸爸一见钟情
- 管理者应如何扮演好角色