有几个人问我如何使用AI编程工具。我觉得这个问题很难直接回答。对我来说,这并非一个流程或秘诀,而是一种精神。
原则:所有权
您拥有您的 AI 生成的代码。
用你自己的名字提交AI代码,这样一旦出错,大家都会怪你。这一点至关重要。你需要对你的AI代码有多了解?了解到足以承担它的错误就行。
精益生产有“现地现物” (Genchi genbutsu)的原则,即“亲自去看看”。在《高产出管理》一书中,安迪·格鲁夫推崇“走动式管理”。安迪将管理者的产出定义为其整个组织以及其影响范围内其他组织的产出。
将其称为“AI 编程”的问题在于,它会诱使你误以为它只是软件工程之类的独立角色,而实际上它与管理有很多共同之处。遗憾的是,我们招聘和指导这类人才时,却把它当成了软件工程师。
- 该算法实际上做什么?
- 它是否找到了所有需要重构的地方?
克制住说“哦,我刚刚写好了代码”的冲动。代码是你写的,如果它很糟糕,那是因为你不知道如何管理你的AI。承认吧。
原理:利用梯度
并非所有投入的时间都是平等的。有些事情,你只需付出一点点努力,就能获得巨大的回报。在商业领域,我们称之为“机会” 。
例子:
- 生物学:老虎会迁徙到食物更多的地方。用更少的努力就能获得更多的食物。
- 套利:低价买入,运往其他国家,再高价卖出。少花钱,多赚钱。
AI 编程的意义不仅仅在于编写代码,更在于创造和利用梯度。寻找那些可以让你投入 10 分钟 AI 时间并获得巨大回报的机会。
上面这个设计的例子只是为了验证概念。你可以直接尝试一下,看看它在实践中是否真的像看起来那样有效,如果无效,就赶紧放弃。
或者数据分析。传统上,数据分析需要大量人力,但你可以在几分钟内快速制作出一个优秀的仪表板。这或许能帮助你避免死胡同,或者推动你的组织朝着新的方向发展。
关键是要时刻留意机会。
这感觉更像是一个精明的商人,而不是一个软件工程师。确实如此!我们明目张胆地雇佣和提拔软件工程师担任这些职位是一个错误。这简直是一个新的怪兽。
如何成为一名人工智能程序员
我对软件工程的未来感到恐惧。
哦,我会继续工作很长一段时间。这倒不担心。我担心的是初级工程师升职不上,因为把请求交给人工智能比交给初级工程师传统上学习这门技术的任务更容易。
但实际上,这不是软件工程。
如果任何一个头脑清醒的人都能承担责任并利用梯度,那么初级工程师可能比那些过于固执己见而没有意识到自己被赋予了新工作角色的资深工程师更有优势。