程序员正在努力干掉自己?

花火田丁 花火田丁 2019-12-17 15:19:28 +0000

题图来自于NextDay


昨天看到一则新闻,标题是这样的

AI 辅助开发比人工编写代码快180多倍

底下一个评论也亮了

程序员努力干掉自己系列

看完这篇文章,原本想配上一句「怕不怕😂」发个圈,但点发送的那一刻,我竟犹豫了,想想如果真的有人问我「怕不怕」,我该怎么回答?或者真的给从业人员造成了恐慌,该如何是好(但其实我的担心是多余的,程序员总是有种让人窒息的自信

在我决定不发的那一刻,这件事本来就应该翻篇了,为什么今天又想起了呢,刚才在想「今天写什么呢」,在草稿箱里头闲逛,看到了很久之前不记得从哪摘抄来的一段文字:

我觉得未来的写作有可能是 AI 做一个粗加工,人类做一个精加工,这样完成一部小说。我相信这样的技术会把人类的写作推向更高的层次。这是我的一个想象,我觉得这样更好,没有必要非要对立起来,非要寻找人的东西。当你写作以后,你发现不是先有灵魂情感,可能先是技巧,技巧占很大的比重,是我们绕不过去的问题,所以我觉得完全可以利用 AI。AI 写作有可能真的带来未来的机遇,它可以契合很多人的需要,也加强了普通人跟文学的密切联系。所以 AI 的产生和对于文学的侵入,很大程度解构了文学写作的神秘性。

我在 自动驾驶这件事儿 一文中曾提到「从心底来说,人们不希望自己被系统所替代,那么正确的道理应该是找到那些目前系统尚不能好好完成的工作去做,或者是采用一个人机合作的方式,各司其职」,我对于现阶段的 AI 持乐观的态度,因为离真正的「人工智能」还有差距,我们可以暂且放下那个恐怖的 Basilisk 思想实验 带来的结论。(文后有 Basilisk 的出处,没看过的一定要看看!)

就像 AI 写作描述的那样,现阶段的 AI 更像人类的替身,“粗活累活”都交给 Ta。我开头提到的那篇标题很彪悍的文章里,在肯定了 AI 辅助软件开发取得的成效之后,给出了以下一段结论:

目前人工智能辅助开发还停留在非常初级的阶段,只能辅助开发人员编码和进行自动测试,无法实现大规模工业化应用,复杂和高难度的编程还要依靠人类开发人员。但我们依然需要这样的 AI 辅助技术帮助开发人员扛下那些基础性的“粗活累活”,让他们有更多的时间和精力完成复杂的开发。

摘自 极客时间 AI 辅助开发比人工编写代码快180多倍

写作和写代码,的确有着很多相似之处,两者都需要技巧,同时又需要创意。技巧比如写作时的素材搜集、语法检查,写代码时的代码规范、单元测试,这些不需要你有思想,但必须足够细致耐心,检查语法的过程甚至非常枯燥,编写测试用例也同样如此,这些重复而又琐碎的活儿对计算机来说,再合适不过了,有章可循、重复枯燥,对于人类来说,却是某种意义上的灾难,一个心思活络的人类,长年累月陷入这种毫无挑战的琐碎之中,斗志全无,开始怀疑自己是不是也是某种 AI。

今天刚巧又看到了关于餐饮界机器人的报道,对于大型连锁餐厅的老板来说,上菜这件事,是请一个服务员呢,还是买一台送餐机器人呢,这个问题搁在几年前,也许会果断的选择服务员,机器人可贵了,但放到现在,机器人的生产成本降低,而用人成本上升,这个问题的答案就没那么绝对了。

去年这类文章特别多,「XX 种职业将被人工智能取代」,着实也引起了人类的恐慌,但恐慌这种东西,就像是微博热搜,只要不发生自己身上,很快便被遗忘了。就像昨天,我看到 AI 辅助写代码这篇文章的时候,尽管冷静分析之后,确定自己暂时还不在被替代的那一批里😂,但看到标题的时候,还是很自然的心头一紧,就和评论里想得差不多,哎呀,高级的程序员设计了 AI 出来准备干掉初级程序员了。这事儿还是挺有意思的,就像很多科学家其实对 AI 都比较悲观一样,因为他们知道终极 BOSS 的威力,所以时刻抱着敬畏之心,在「便利」和「可控」之间纠结。

那么,问题来了,基础性的工作都将被 AI 取代,我们如何在此之前让自己跳出「基础性」的圈圈呢?

或者,换个说法,我们无可避免地会需要处理一些琐碎/基础性的工作,而这些工作即便每个看起来都很小,但累积效应却很惊人,可能会占据我们70%-80%的时间,毫不留情的说,我们当中很多人把自己的大部分时间花在了会被机器替代的工作上,是不是很可怕?就如文中所说:

与人工编写测试每个平均耗时30分钟相比,AI 工具能以超过180倍的速度编写测试。总的来说,银行利用这项技术节省了一年多的开发时间。

摘自 极客时间 AI 辅助开发比人工编写代码快180多倍

我在 造轮子还是用轮子 一文中曾提到过,如果有轮子,尽量用轮子,但你必须具备随时更换轮子或者自己写轮子的能力,这样才不至于会被轮子“绑架”。同样的道理,如果现阶段基础性的工作不可避免,那么我们只有通过工具去提升自己处理琐碎事务的能力,尽可能地压缩这类工作占据我们的时间,这样我们才有机会去扩充真正体现我们价值的 20%-30%的时间,工具不仅仅是指提升效率的工具软件,还包括外包等花钱可以解决的手段,花钱用别人的时间换自己的时间。

从非必要的基础性工作中脱身之后,我们还需要花精力去培养自己「精加工」的能力,这是人类和计算机最大的区别,计算机总是有章可循,而人类却可以天马行空。所以有种说法是,在你学习编程语言之前,你应该掌握的是编程的思想,编程语言说到底也只是一个工具,有了思想,只是找一个趁手的工具来实现,而不是拿了一把锤子,到处去找钉子来敲。再看看如今逐渐降温的少儿编程,风头过后,孩子们究竟学到了些什么?是教育机构和家长都需要思考的问题。

所以,无论是工作还是生活中,我们要多问为什么,想一想背后的逻辑,而不是简单地去执行一个指令,这是计算机应该做的事,作为人类,我们要想得更多一点,想得更深一点。男神马斯克也提出了一点建议,可以去从事艺术类或者计算机目前还做不好的工作,以延缓 AI 的可替代性。

最后,我还是满心期待 AI 辅助写代码的,那我就可以专心的写业务逻辑啦,其实急需的是一个可以和颜悦色地去谈需求的 AI 啊😄

旧文参考:

造轮子还是用轮子

自动驾驶这件事儿

  1. 乌云装扮者:刷屏的 MET Gala 是很美啦!但红毯上最高能的段子是马斯克带来的 ↩︎



撒欢吧
谈理想
聊人生
讲故事
相对论
花火田丁
微信号:huahuoding
花火田丁
不折腾不人生