你知道程序员再过几年会没落?

《Computer World》杂志曾经写过一篇文章 , 说“编程到1960年就会消失” , 因为IBM开发了一种新语言FORTRAN,这种新语言可以让工程师写出他们所需的数学公式,然后提交给计算机运行,所以编程就会终结 。

你知道程序员再过几年会没落?

文章插图
图片
又过了几年 , 我们听到了一种新说法:任何业务人员都可以使用业务术语来描述自己的问题 , 告诉计算机要做什么,使用这种叫做COBOL的编程语言,公司不再需要程序员了 。
再后来,人们又说,IBM又开发了一种新语言RPG , 可以让任何员工填写表格并且生成报告,所以,企业的大多数编程需求都可以由它搞定 。
你知道程序员再过几年会没落?

文章插图
图片
到了八九十年代,我们又有了组件,有了图形化开发,业务人员拖拖拽拽就可以把程序开发出来了 。
进入二十一世纪 , 又出现了Low Code, No Code,既然都没有代码了 , 那就更不需要程序员了 。
实际情况如何呢? 
编程不但没有被终结,门槛反而被不断降低,程序员越来越多了 。
现在终极大Boss——大模型——来了,它和之前的新技术,新语言都不同,不用人去写代码,而是直接生成代码 。 
它能否终结编程,淘汰程序员呢?
首先我们得承认,业界顶尖的AIGC工具,如GPT-4,现在已经具备了非常强悍的代码生成能力,如果你还不这么认为的话,欢迎看看我之前写的几篇文章 。《AI可以生成95%的代码》
网上也有人用GPT-4,Midjourney,DALL·E 3 生成了一个类似愤怒的小鸟这样的游戏:"Angry Pumpkins”,效果让人惊叹!
不过,AIGC生成的代码无法保证面面俱到,无法保证正确性,还得程序员去检查,去调试,发现问题后引导它去做修改,这是一件很费劲的事情 。
驾驭好GPT-4这样的工具,可以让程序员成为超级个体 。
其次,很多人没有意识到的是,写代码只是软件开发的一个环节 , 在写代码之前,还有需求分析、设计(架构设计和详细设计)需要做 。
AIGC在详细设计上有了长足的进步,但是架构设计上还不行,具体案例可以看这篇文章:《AI开始威胁程序员的核心能力了!》
随着AIGC的快速迭代,在5~10年内,也许能出现有着强大设计能力和代码生成能力的AI , 但是AIGC很难翻越最后一座大山:需求分析 。
弄清楚客户需要什么是一件非常难的事情,你得了解他们的领域 , 他们的业务,他们的流程,然后在不断的交谈和确认中,才能大致搞明白他们到底需要什么 。
【你知道程序员再过几年会没落?】很多时候,客户只有看到软件成品才恍然大悟:奥,我要的功能不是这样的 。 
市面上出现的所有的编程相关的AI工具,如Github Copilot,Amazon CodeWhisperer,都无法直接从客户需求生成代码 , 都需要程序员用行话精确地告诉它要做什么事儿才行 。
简单来说,从客户需求直接到代码生成 , 这条路不通 。
从详细的软件规格说明书到代码,非常有希望走通 。
所以有人搞了一个新型的外包公司,专门用AI生成代码 , 希望能用更低廉的成本对其他公司进行降维打击 。
只有人和人之间才能沟通需求,如果不实现通用人工智能 , 需求分析这件事情AI是搞不定的 。
通用人工智能什么时候会出现呢?这很难说 。
库兹韦尔在《机器之心》展示过一张计算力增长的图:
你知道程序员再过几年会没落?

文章插图
图片
从20世纪到21世纪,计算力呈指数增长,按照这个趋势,在2025年左右,1000美元的个人计算机的计算能力就可以达到人类大脑的水平 。
到2060年 , 计算力能超过所有人类大脑的总和 。
不过,计算力的达到人类大脑的水平,并不意味着智能也能达到人类的水平 。
人脑中的神经元数量大约为1000亿 。每个神经元平均约有1000个连接 , 共计100万亿个连接 。
所有连接可以进行同步计算,这是一种相当强大的并行处理能力 。
现在人们试图使用神经网络来模拟人脑,但是当神经元足够多以后,它到底是如何工作的,为什么展示出了“智能”的行为,人类还是一头雾水,只能用个词--涌现--来模糊地描述它 。


推荐阅读