AI时代的软件工程如何“让九个老婆在一个月内生下孩子”
//首先声明,我这边没有任何不尊重女性的意思,我本质上想要引用人类社会最最最普遍的常识“十月怀胎”来讽刺某些自媒体营销号的炸裂言论。
正如炸裂的标题所言,软工最关心的事情是落地的人月。为了防止杠精,我们所有的讨论都集中在“真实项目落地上”,那些习惯于讨论“demo”的人,反正杠就是你对。
不顾一切需求加急
很多人从业者经常遇到“需求加急”,某某甲方希望在一个月内落地一个特别大的项目,什么合同时间都不顾了,反正就要。
召集资源压缩时间
公司里面PM召集大家开会,协调资源,跟HR要人,但是不管怎么样安排,反正是完不成的,加班全部安排好了,最后只能去跟甲方协商工作内容,尽可能削减落地的范围。
不管怎么必须干完
老板得知这件事就说了:现在不是有AI吗,现在网上都说AI可以十倍十倍提效,怎么到了你这边就不行了。反正限期必须干,必须完成。最后事情“干下来了”,人都离职了。
为什么“干下来”,要打引号呢?真正把逻辑的坑排完和把“交互界面和大条数据接完”做完是泥云之别。但是给人的体感上这俩的差距可能就是60分和90分的区别,但是中间的30分很有可能会导致成倍提高成本,并且会导致客户“渐进式”发现新坑,此后半年甚至一年内都一直会修改,一直加班。
而做这个的人最清楚自己要面临什么处境,溜了是他最好的决策。
为什么写代码绘制界面的生产力突飞猛进,软工本身的产能发展并不明显?
工程控制学的基本概念: 本质复杂性与偶然复杂性
偶然复杂性指的是:由团队内人本身的不精密性导致的复杂性。
包括 写代码写出bug,配置文件写错了,文件抄送错了,投标文件少了东西,接口少写一个字段,交互按钮逻辑忘写了等等;由人的疏忽大意导致的各类复杂性。
本质复杂性指的是:跟外部交互,需求验收,投标汇报,资料数据接口对接,工种差异等“不得不做”的“硬性环节。
本质复杂性是由于“基本逻辑步骤”、“人类社会运行公序良俗”、“不同人的责任权利义务站位”、“必要信息声明”、“时空唯一性”、“人的单线程注意力”、“不同人的能力基本面,与构建体系的速度”、“人类语言和需求的随意性”,“各类器械和软件的操作规程”,“上一个环节的成果是下一个环节的开始”等多方面构成。
真正的工程是“关关难过,关关过”,“过不了的绕过”,写代码在高阶程序员地方本来就占据很少的时间。
AI只是解决了“偶然复杂性问题”,划清了“本质复杂性和偶然复杂性”的中间地带
而大部分不重要的程序员解决的都不是“本质复杂性,因而替代性很强”
理解了“本质复杂性”之后你就会了解,上面你觉得这团“本质上很烦”的内容是制约生产的真正瓶颈,也是真实世界的地心引力。
也是大多数技术人员不想碰的内容,觉得这些都是产品经理管的事情。产品觉得这里只要看起来有点“技术的味道”,那这件事就是“技术管的事情”。
人最后都是被人为难的,管理的核心解决的是人的认知问题。
而AI只是解决了四十年来一直堆积的偶然复杂性,并且迫使人们把一件事中的偶然复杂性和本质复杂性拆开,并且针对性解决。
举个例子
比如说解决医院的一个排队算法问题,并且全落地一个很好的排序叫号系统。
现在的AI你让它给你写无论什么排序算法,Btree加速,图论排程,各种优化,贪心还是动态规划,AI都能帮你写出来。
但是
这些算法制约的基础: 人情的规则、领导的主张、不同时间段内的政策、发生拥堵的处理方法、科室的边界、特殊人群的优待这些AI无能为力。只能靠人的智慧。
当“本质发挥作用的时候”,AI就是非常无力的一种东西,如果你把“本质交给AI”,就像在跟“魔鬼”做交易。
解决问题的真正步骤
看到这边的小伙伴,恭喜你,又得到了福利和彩蛋,所有解决问题的法门全部在后面哦
0.明确环节的真正含义
1. 环节不在于大小,环节是责权分工、心智主体、拿到什么资料、解决什么问题、输出什么成果。
2. 环节是嵌套的是环环相扣的,互相之间有依赖关系的。
3.环节不分大小,无法线性约束问题,整个是离散的。
离散就是最大的魔法,最大的魔力,科技推动离散问题的解决是很漫长的,远不如资本市场那么敏感。
小到寄快递,发送消息给大模型返回接口
大到大桥合龙,都属于环节
1.列步骤,定出入
大家经常听到SOP(标准化流程),但是大多数sop规定的出入都不够细致。
SOP核心容纳的必须是具体的业务,而不是空洞的环节,比如说做菜就是买菜回来,处理食材,制作食材。这就是空话套话,一点意义都没有。
软件工程里面经常,UI,前端,后端,算法,美术,引擎,模型这样子去分工,实际上犯了两个错误
1. 没有把测试、产品、PM、QA分进去怎么能算SOP呢?
2. 这些分工里面没有事情,并且没有业务,你就定不了交什么,然后颗粒度太粗,随便一个项目一个环节的时间都没办法预期,可能是五天可能是十天,根本管不了。
2.分偶然与本质,本质交给人,偶然交给软件或者AI
整个商业的发展,就是把“本质复杂性和偶然复杂性打包的过程”。然后把本质复杂性圈起来,内部消化,产品就是“本质复杂度”打包的产物。
3.分责权,定交期,控预期和需求
内部在明确SOP的情况下,分权责利,定标准化接口,然后控制预期和需求,将事情做下来。
4.有些人说了:谁做事情之前,就能预判所有的细节和流程,谁不是一路做一路撞?
第一次做肯定是磕磕绊绊,但是最基本的流程必须掌握,否则拿不到,拿不住。
但是第二次做还是搞不清楚流程,那就是活该不挣钱。
AI对软工的影响?
毫无疑问短期的影响是恶劣的
1. 如果之前拿项目靠PPT,和往期案例视频,我估计现在拿项目demo会是标配,各种以假乱真的demo
2.甲方和业主的议价权将会大大提升,挑花眼,公司实力将很难成为壁垒,小公司大量搅局,造成软件工程整体价格下跌;不在方案里面加AI功能都出不了门见不了人。
3.业主验收将会横挑鼻子竖挑眼,各种增项
4.很多豆包投标的售前,满纸荒唐言,什么都敢写,销售啥都敢接
5.国家放水,项目烂尾率大大提升
最后九个老婆能不能在一个月内生下一个孩子?
这种问题问第二遍就是对整体人类的大不敬
夜雨聆风