@
Kinnikuman 那说明这部分的「进步」已经不再被需要了。
三十年前的程序员们研究 DOS 实模式,研究各种汇编指令,中断,结果到了 NT 时代,一切都是美好的 WINAPI 编程,再也不用和底层打交道了,写代码也只要写写高级语言,最低也不过就写个 C ,是不是也可以说现在的程序员们都没有咀嚼到营养没法进步了?
科技总是在进步的,古法总要被淘汰或者扫去角落的。有了 AI 那有基于 AI 工作的方法,死抱着旧世界才是更难进步的。
举个例子,我之前写某个开源软件的时候,大量的时间花在写计算逻辑,还有手动汇编优化上。那时候为了把汇编调通,动辄就要花上好几天的时间调试修改。最近有机会回头去看这个软件,我的工作流程就完全变了。首先第一步就是让 AI 帮我把测试环境部署上,用成熟的测试框架,把核心算法的正确性确立下来。一套 C 语言版本,一套 SSE 汇编,一套 AVX 汇编,先用随机输入数据喂进去然后检查输出是否完全相同(包括浮点数也需要计算结果完全精确)。有了测试框架以后,接下来要改代码就简单了,想做什么就让 AI 放手做,做出来如果效果不好,就 reset hard 然后走别的方向尝试。
做项目要遵循的过程是什么?
Make it work, make it right, make it fast.
以前古法编程的时候,得花大量的时间去完成最简单的 make it work 的部分,因为光是一个项目一个核心算法就要花掉几天甚至几十天时间。现在呢,一套需求可能只要几个小时甚至几十分钟就能做完了。你可以频繁地试错,用最短的时间去完成尽可能多的事情。最快地做完 make it work 的部分,然后马上就可以投入到 make it right 甚至 make it fast 当中去。当你有了一个新的点子以后,再也不用畏首畏尾担心把大量的精力投入到错误的点子里去,因为你畏首畏尾的这点时间里 AI 已经帮你平推完了。
以前软件互联网行业创业讲究一个快速开发,所以 Ruby on Rails 那时候在硅谷非常流行。你有一个点子,操起键盘,两个星期时间就能用 Rails 平推出一个 MVP 来,投放到市场上去试错。现在有了 AI ,你有一个点子,操起 AI ,一下午就能上线了。
你说,谁需要去这么关心背后的学习调研实践呢?归根结底工作是看结果的(人生其实也挺像),工作完成了,挣到钱了,才是真的。你努力学习目的就是为了学吗,不是吧,目的不是为了更好地完成工作吗。那现在已经能完成工作了,还需要学那些干什么呢。