新年的帖子从 Vibe Coding 月报开启,;)
小伙伴的总结
先来看看若干小伙伴的总结:
- 相比于写
prompt优先查找有没有对应的skills,比如设计页面用frontend-design,测试用frontend-testing,playwright-skill,webapp-testing等。prompt做补充或细节优化。 - 重大改动使用 claude code 内建的
plan mode(shift + tab两次) 会比单纯使用 AI 自己生成的计划书效果更好。实测发现让 claude code 按照自己的 plan mode 执行计划产出的代码质量更高 - 如果要让ai帮你改bug,开发者要知道问题出在哪里,要给vibe coding提供足够的上下文信息;同时不要试图通过调整prompt来让ai写出完美的代码,因为ai生成的代码不可能完美无缺,开发者需要有能力识别和修正bug。
实话实说,我不咋用 plan mode,但遇到重大事项会跟 CC 有多轮讨论。
实践
代码之外
从本月开始,除了编码,开始让 CC 写文章和 Slides 了。主要原因无他,就是节约我的时间,并且在半年前第一篇关于 CC 的帖子里就提过可以将它用于其他用途:
这也意味着一大类套壳工具可以直接被 CC 替代,虽然是 cli 的方式。但对于开发来讲,有了这个基础,再这之上再去套个 UI 并不困难。这种方式虽然写代码简单粗暴,但用来验证想法没啥问题。
具体有两个案例:
- pgvector 101,具体做法:
- 我提供 slide 大纲和参考文献,同时提供 reveal.js slides 样例(这不难,因为我之前就手写了好几个 101 slides)供参考。
- CC 写完初稿
- 我审校并修改了大约 50%
- 我让 CC 帮我写了一份 Vibe Coding 年度总结,涵盖了了核心观点和收获。,具体做法:
- 告知 CC 查阅我今年所有关于 vibe coding 的稿子,让其生成年度总结。
- CC 写完初稿
- 我审校,基本没改。
从本质上讲,写作和写代码没有太大差别。真正其关键作用的就几点:
- 选题和大纲
- 参考文献
- 样例
- 甄别信息的能力
以上各项的质量决定了最终成品的质量。
工程化
在以狂野模式 vibe 半年后,这个月开始探索工程化 vibe 的路数,出发点主要基于两点:
- 提高产出效率和质量
- 提升产出的确定性
无外乎就是基于过往的工程实践形成一套规范化的模版和流程,最大限度地使得整个过程可控。虽然你也可以说这不就是 spec driven 解决的事情么?话虽说的没错,不过我认为这件事并非只是引入一个工具或流程所能解决的。若非从你自身实际体验出发进行剪裁和适配,最终也不过就是换汤不换药的寻找银弹。还记得下句吧,哈哈:
individuals and interactions over processes and tools
目前虽然已有些零碎的心得,但尚不成体系,在这里略过。不过可以说说核心原则:
- 言之有物
- 定期整理
最后一条在旧文忽视了这些,给你的 Claude Code 配再多工具也没用多少有提到,并且早在 CC 正式发布 skill 之前就说了给 llm 建立 skill 文档。所以说,应用层面,ai 时代最重要的并非技术,而是“脑洞”,;)。这也是我在第一次用完 CC 大半月之后的体会。
所以,请停止堆砌假大空的 prompt 和搜集大量华而不实的 skill,这种做法无异于新时代的“寻找银弹”。将你的宝贵精力聚焦于:
- 想办法激活 llm 体内沉睡的特定于当前问题的权重
- 改进你的工作流程以配合 llm
- 制作供 llm 使用的工具或脚本,以 skill 为例,个人认为供 llm 调用的脚本才是它最大的亮点(推荐看看 codeagent 的论文,以及 HF 的 smolagents,看看它们如何靠写代码完成用户的任务),其他的不过就是商业的宣传。这也是它跟我自己的土制 skill 最大的区别。