最近大家都很亢奋,因为 ChatGPT 来了。乐观者认为,他拉低了许多技术的门槛,能成为有史以来最强大的工具;悲观者认为,他将风卷残云,所到之处人工立刻失去价值。
我最关心的是,程序员会不会被 AI 替代?
我并不认为这就是坏事,因为连程序员都会被取代的时候,说明 AI 已经将社会生产效率拉高到了一定程度。也许这种生产效率可以让大部分人吃喝不愁,只要清闲过日子。
不过,真有这么一天,我该去做什么呢?我还没想好,但是我想分享最近与 ChatGPT 打交道的几件小事:
故事一:小试牛刀
刚接触时,还是 GPT-3.5 的版本。当时,我们遇到了一个开发上的问题:Webview 是否可以把 Blob 以不转码的方式传输到 Android。同事小米试着用 ChatGPT 查了一下,得到了一个令人兴奋的思路:
以图中代码所示,是可以传输字节流的。于是我和光哥就兴冲冲地去尝试了,最终发现,这条路行不通。因为 ChatGPT 捏造了代码,实际上 @JavaScriptInterface 和 btye[] 是不可能同时出现的,所以这段代码是错的。
前几天,我费尽周折用上了 GPT-4,试着再搜索一下之前的问题:
可以看到,他已经修正了他的结论,建议我们采用 base64 转 string 的方式,并且当我追问还有没有其他方式时:
他的回答是:起一个服务器来解决问题。这是之前我们多方探索,多次尝试才得到的结果。用最新版本的 ChatGPT 只需要两分钟,简单估算了一下,如果一开始我们就用 ChatGPT 来解决问题,我们可以节省至少 20 小时。这是最恐怖的降本增效。
故事二:习以为常
昨天我和火灵遇到了一个 CSS 问题,鉴于我们都是前端菜鸟,花了半小时也没找出问题,于是就请教了老鸟长风,发现是行级元素和块级元素的问题。这是一个老鸟都懂,菜鸟很容易忽视的问题,我试着再用 ChatGPT 搜索一下:
半分钟解决问题,何须讨论?何须问人?
故事三:开始依赖
基于 ChatGPT 之前的良好表现,我已经开始逐渐依赖他了。我准备写一个 Vue3 的组件,但是我是 CSS 苦手,于是我求助于 ChatGPT:
我填充了一下 items,拿到 ide 里跑了一下,发现居然大差不差了,但是有个 bug,底部没有按照我的要求只展示六个,于是我纠正了一下:
再跑一下代码试试,效果出来了:
他成功修正了之前的错误,虽然细节上还需要一点调优,但是基本上大差不差了,借助于 ChatGPT 我很快完成了这个组件的编写。
我的思考
相信通过这三个小故事,你能感受到,我是怎么一点一点依赖上 ChatGPT 的。他不断在进化,不断自我修正,慢慢成为我最趁手的工具。他先替代掉 Google,再替代掉老鸟同事,最后替代掉我的编码能力,目前就差最后一步替代不了,也就是确认结果的能力。
等到图片入口开放(目前 GPT-4 也只开放了文字接口),也许我只要很少一点文字,再附上设计稿,就能完美输出页面了。
AI 会替代程序员吗?
- 我觉得至少目前不会,还需要程序员来判断代码是否正确,效果是否符合预期。
AI 未来会具备确认结果的能力吗?
- 我想过可能用 AI 来确认 AI 的结果,不过还没想清楚,所以也不太确定
我们应该做点什么呢?
- 目前来看,拥抱和掌握 AI 是对我们最有利的选择,怎么利用 AI 指数级提升地我们的工作效率,可能是现阶段最需要操心的事情,其他的只能交给时间了~