90% 和 10%
以 ChatGPT, CoPolit 为代表的大语言模型技术,正在颠覆很多领域,大家都在想 – 我的技能还有用么?我的行业还能保住么?
前两周,软件工程界的领军人物 Kent Beck 发了一个关于 ChatGPT 的感想,结果引起了很多转发和讨论。 他写一个博客进一步解释:
[翻译文章,原文来自 https://tidyfirst.substack.com/p/90-of-my-skills-are-now-worth-0 ]
我(Kent Beck)昨天发了一个推,结果反响强烈:
https://twitter.com/KentBeck/status/1648413998025707520?s=20
我想对此多说几句。
首先,我 不知道
哪些技能在90%中,哪些在10%中。(我待会儿就会告诉你为什么我这么划分)。 我们回到了 3X 的探索领域:探索Explore / 扩展 Expand /提取术语 Extract terms。找出答案的唯一方法是尝试一下很多想法。
其次,为什么我得出的结论是,我 90% 的技能在经济上变得毫无价值?我是从一些经验中疯狂地推断。
昨天,我们一群人做了一个单词练习。我拿了一个语义正确的句子,把它变成了有力并抓眼球的东西。我通过一系列的单词变换做到的。有人说,“这意味着XYZ”,我说,“写下来吧“。然后我修改句子,用一个较强的动词代替了一个弱动词——例如, “想要” (would like to)变成了“渴望” (crave)。
在尝试了 ChatGPT之后,我意识到 ChatGPT 也可以同樣地打出同样的句子,而且可能更快。任何知道怎么提问的人都可以从 ChatGPT 那里得到差不多的结果,当然,这种技能和我说的 10% 技能有关系。
我花了我在这个星球上的 1 - 2% 的时间写作,就是把一些单词连成句子。对于程序员来说,我很写得挺不错的。但是,这个差异化技能的价值刚刚被 ChatGPT 降低到了零。现在,任何人都可以像我一样把单词排连成句子。
我可以列出过去对我和客户有价值的技能。其中许多现在在很大程度上是可以复制的。其他的,比如烘焙,就没有那么多了(但在咨询环境中也很少有价值)。
第三,技术革命通过以下方式进行:
- 极大地降低过去昂贵的东西的成本。
- 探究那些突然变得便宜的东西究竟有什么价值。
ChatGPT 可以用 Biggie Smalls(愿他安息)的风格写了一篇关于 测试需求列表
的饶舌歌。这不是一个伟大的饶舌歌,所以我不会把歌词写在这儿,但这的确是一个饶舌歌。我做梦也想不到自己会写一个。现在我接下来可能做的事情的空间扩大了1000 倍。(用伍迪·格思里(Woody Guthrie)风格的民歌写同一主题,歌词也很蹩脚。)
第四,每个人都可以说,“是啊,但ChatGPT不是很好”,我想提醒你,技术革命不是关于绝对值,而是增长率。如果我现在很大,你很小,但你成长得更快,那么你超越我只是时间问题。
我的技能在不断提高,但 ChatGPT 的技能进步得更快。它超越我,这只是时间问题。
下一步是什么?我要把能想到的一切都用 ChatGPT 尝试一下。我已经在我的艺术作品上训练了一个模型。我会在 ChatGPT 的协助下尝试各种任务,看看什么能成功。
以上是 Kent Back 的文章的部分翻译, 他还让 ChatGPT 写了两篇小文,一篇同意他的观点,另一篇反对他的观点。 你可以在原博客中看到:https://tidyfirst.substack.com/p/90-of-my-skills-are-now-worth-0
类似的划分
Kent 在他的文章中并没有提及划分 90% 和 10% 的理由, 但是在软件开发领域, 另一位大师以前倒是做过类似的划分。
瓦茨·汉弗雷 (Watts Humphrey)说过:软件领域可以分为两个方面,坚持不懈的工程工作占了 90%,技艺创新的大爆发只占 10%. 我们想一下软件工程师每天的工作,我们看单纯花在 代码相关 事项上的时间, 90% 都花在哪里了?
- 设置环境,适配环境
- 同步代码
- 写代码做各种数据的接收,解析,发送,增删改查 …
软件工程师可以回想一下,自己做的事情中,足够独特、或者有创意,能写成博客的,是有 10% 么?
从我们目前看到的 CoPilot 以及各种 AI 辅助工具、云 IDE (例如 CSDN 的 InsCode)来看,它们的确可以取代日常的各种简单工作,随着 AI 能力的提高(Kent 的文章提到,AI 的进步速度要大大超过人类),他们在这些初级、常规性的工作中一定能做得非常好。 那么,人类软件工程师的 10% 核心技能到底是什么呢?
我觉得,10% 的技能有这些方面:
- 对技术的娴熟掌握,高效 debug 的能力
- 对软件体系架构的全面理解,集成的能力,把你写的 1000 行代码集成到现有的十万行代码的系统中去,能把各个模块集成、优化为一个高效的系统。
- 对软件运行数据的理解,能从数据中洞察到问题,而不只是一个会念数据的人类。
- 提问的能力,向用户提问,了解用户的真正需求,向领导、同事提问,了解大家的思路,当然,还有从对方的角度思考问题的能力,交流的能力。
上面这些能力,如果有了 ChatGPT,AI编程工具的帮助,有很大可能会发挥出有 100 倍、1000 倍的威力。
关于 Kent Beck
Kent Beck 肯特·贝克 (1961 年生)
美国软件开发工程师、软件工程咨询师
他软件开发方法学的意见领袖,是最早研究软件开发的模式和重构的人之一,是敏捷开发的开创者之一,更是极限编程和测试驱动开发的创始人,同时还是JUnit的作者,他的著作有 《重构》,《测试驱动开发》等。 他对现代软件开发影响深远。
关于 瓦茨·汉弗雷 Watts Humphrey
瓦茨·汉弗雷 (1927 - 2010) 软件工程的奠基人,软件成熟度模型 CMM 的提出者。 详情:https://www.sohu.com/a/344014634_505788