之前虽然已经在微信号里灌水多篇关于 Vibe Coding 的文章,但那都算不上我个人的看法(可算个人的眼光,😄),最多算是以编辑身份审核了手下 AI 小弟生成的文摘或土制报告。
但发多了小弟们的文章,难免心痒,也想谈谈自己的看法。
- Vibe Coding 乃大势所趋
对于 Vibe Coding,有的开发者欢呼雀跃,有的则心存疑虑。但无论如何,Vibe Coding 已经成为了当今软件开发的一个重要趋势。并且,根据历史经验,在未来的开发中 Vibe Coding 必将成为主流。
即便现在仍有缺陷,但这些并非不可克服的障碍。
因此,与其出于自尊心考虑而内心抵制,不如勇敢拥抱,趁早武装自己,让自身优势更上一层楼。
记住:你的对手迟早会采用 Vibe Coding,你不如先下手为强,抢占先机。
- 现在还要不要学编程
不少投资大佬和业界大神都在为一个观点摇旗呐喊:不要学编程了,AI 迟早会把程序员群体给取代了。
我的观点略有不同。其他领域,我不敢妄言,单就开发领域而言,我认为值得商榷。
有人喜欢拿汽车替代马车来类比当下 AI 替代程序员这件事,认为很快普通人就能指挥 AI 写出代码,未来 APP 的数量呈几何级数下降。因为,在人人都能用 AI 写出自己专属 APP 的情况下,现在很多的 APP 就会被淘汰。
但我认为,这种类比是机械的。
驾驶汽车和指挥 AI 写代码完全是两个层面的事情。前者,无需太多口头交流,只需几个简单动作就可以发动汽车在路面上飞驰。后者,则需要大量的沟通和交流方能让 AI 完成任务,复杂度完全不在一个级别。
如果还不明白,那设想一下:不懂技术的老板能否很好驾驭没有技术负责人的技术团队?
现阶段的 AI Coding,无非是自动化层面的提升,它尚未建立一种 AI Only 的编程范式,依旧使用面向人类设计的编程语言写代码。那么,为了取得良好的沟通效果,个人观点是:你仍然需要掌握编程语言。
但是,AI 本身也在不断进化和学习,因此,我们需要调整编程学习的重点和方向,完全可以向陶渊明学习:好读书不求甚解,大多数情况下纵观要旨即可。
学习编程的目的不再是语法和设计模式,更多应聚焦于编程思维训练,学会如何以程式化的方式去思考完成某个任务。据此,你就能更好地与 AI 沟通,甚至能更好地驾驭 AI。
- Prompt 不简单
由于采用自然语言与 AI 交流完成任务是 Vibe Coding 的核心,因此,很多人认为 Vibe Coding 很简单,这也是 AI 取代程序员的观念起源。
可是凡事只有自己试过了才能知道其深浅。
Vibe Coding 效果的好坏跟 Prompt 关系巨大。但由于它本身不像编程语言那样严谨,同时 AI 自身的解释性也成问题,因此,写 Prompt 并非向说话那么简单,由此也就有了所谓的 “Prompt Engineering”。不同场景有不同的套话,必要时还需给出示例供 AI 参考。
有兴趣的可以看看本公众号的:论文快读:《Prompt Engineering》。
- Vibe Coding 是不是降低了创业或副业门槛?
严格来讲,它并没有降低创业或副业门槛,它只是降低了生产门槛(产品是:APP)。但由于之前这一道门槛就已经将很多人拦在外面,所以它的降低,让很多人认为创业或副业门槛降低了。
可是,生产和盈利是两码事。Vibe Coding 并不能解决这个问题。
相反,由于 AI 现在可以方便复刻(至少在表面上)既有 APP,它反而可能使竞争加剧,使得原本可能盈利的产品变得不再盈利。至少那些单一功能的工具类 APP 会收到强烈冲击。
假如你的期望也不高,就是打算练练手、赚点眼球,尝试一下未尝不可。边干边学嘛,😄!
- Vibe Coding 的技巧
现在 Vibe Coding 已经是热门话题,网上的文章也不少,加上现在 Deep Research 几乎是各大 AI Provider 的标配,大家大可直接使用它来生成一份 Vibe Coding Skills 的报告。
这里仅列出我个人使用过程中的一些感受:
- 如果没有语言和框架方面的特殊要求,选择生态成熟的语言和框架。此时生成的代码质量会更高,因为训练样本的多样性足够, AI 可以习得更多的知识。
- 不要一味指挥 AI,可适时与它讨论以获取不同的思路和灵感,这样效果更好。
- 必要时,将所用工具或框架的文档和源代码直接喂给 AI。
- 如果可以用库或框架实现需求,则指挥 AI 直接使用,不要让它自己去实现。类似给小弟提供工具,而不是让它从头造轮子。
- 记住,你是在 pairing ,而不是放手让 AI 自由发挥。必要时,亲自上场写代码。
- 避免长对话,少纠错。若实现不合意,更新 Prompt 然后重新对话。长对话会干扰 AI,反而适得其反。
- 将既有代码作为上下文,这方面越多越好(不超过限制时),因为它是有效内容。注意区别于长对话。
有用的链接:
- 前端和后端,受冲击各不相同。
目前,Vibe Coding 对于前端影响会更大一些,基本上可以做到页面复刻,但后端相对要小一些。
究其原因,前端的运行环境单一,要么浏览器,要么手机端。而后端环境则复杂得多,不同阶段实现也不一样。同样的界面,对接的后端可能是单机,也可能是简单的 client-server 模式,甚至是分布式的微服务架构。
同时,后端还涉及到不同组件的选型和集成,因此可以说,即便 AI 要替代程序员,后端开发者可能是最后一批被替代的,😄。
Do you vibe coding today? Good luck!
本文包含付费内容,需要会员权限才能查看完整内容。