vibe coding 的坑还是不少
帖子标题 vibe coding 的坑还是不少
帖子ID
484916
============================================================================== [旧摘要 - 已被纳入的内容] ============================================================================== AI 辅助编码在处理通用场景时效率极高,但处理边缘情况(corner case)仍需人工介入,引发关于程序员未来角色和 AI 局限性的讨论。新回复进一步强调了“context engineering”的重要性,以及在实际开发中,即使是 AI 生成的代码,也需要人类进行 debug 来发现和修复 corner case。同时,对于 AI 记忆系统复杂性的讨论也浮现。
1. 关键信息
- (之前已归纳)用户 IRS_pro 分享,近期 95% 的代码由 AI 生成,虽然提交时感觉爽,但常出现 corner case 处理不清导致 bug。
- (之前已归纳)AI 生成的代码 debug 困难,因功能复杂、代码量大,用户不得不手动 refactor 理解和 debug。
- (之前已归纳)用户 deepbluenight 认为,项目需求不明确、用户偏好不确定等情况,AI 难以解决。
- (之前已归纳)用户 IRS_pro 认为,AI 时代沟通能力(communication skill)将变得更重要。
- (之前已归纳)用户 deepbluenight 调侃,未来可转行做 PM,负责沟通和项目描述,然后交给 AI 编码。
- (之前已归纳)用户 DeusX 认为,AI 是效率提升工具,但目前还不是好的替代品。
- (之前已归纳)用户 IRS_pro 进一步指出,AI 在处理 general case 非常强,但在 corner case 方面仍需要人工进行“dirty work”。
- (之前已归纳)用户 0xEthan 提问,为何 AI 目前无法处理 corner case,是技术限制还是意愿问题。
- (之前已归纳)用户 bill 提问,为何不直接将发现的 corner case 告知 AI,而非自行 debug。
- (之前已归纳)用户争取多活两年 表示,实际编程中 corner case 确实耗费大量时间,且有经验的程序员通常知道 bug 大致位置,会将其交给他人处理。
- (之前已归纳)用户 IRS_pro 回应 bill,强调 debug 是发现 corner case 的必要过程。
- (之前已归纳)用户 msg7086 提出,如果人类写代码也会有类似问题,并建议让 AI 自己找它生成的代码中的 corner case,因为 AI 应该更熟悉自己的代码。
- (之前已归纳)用户 IRS_pro 回应 msg7086,指出自己写的代码能快速找到问题,但 AI 生成的代码则难以快速定位。
- (之前已归纳)用户 ctest 引用 msg7086 的观点,认为 corner case 应尽量由 test suite 覆盖,但指出项目规模越大,test suite 覆盖越难,尤其当逻辑复杂、数据穿越多层影响模块时,可能需要海量数据(TB 甚至 PB 级别)才能测试完。
- (之前已归纳)ctest 提到,当前 AI 的上下文窗口太小是限制因素,未来拥有更大上下文窗口(如 1P)的 AI 可能会有所改善。
- (之前已归纳)ctest 认为,对于复杂逻辑,AI 可能需要比人类构建的测试数据量大 100 倍以上才能完全覆盖。
- (之前已归纳)用户 px39n 提出 "context engineering" 也是一门技术,暗示在与 AI 协作时,如何有效地引导和“工程化” AI 的上下文输入,是提升其处理复杂场景和 corner case 能力的关键。
- (之前已归纳)回复 IlllIIlIIIllIIl 引用 msg7086 的观点,指出学生提交 PR 后通常不会亲自 debug,而是完善测试框架,通过测试驱动修复代码。
- (之前已归纳)IlllIIlIIIllIIl 进一步强调,如果能预知 corner case 如何测试,就不会出现生产问题,而问题往往出在意想不到且未被测试覆盖的地方。
- (之前已归纳)回复 marche 提出,“context engineering”的差距在不同公司、团队和个人之间已经拉开很大,这导致即使谈论相同的“vibe coding”或“agentic coding”,也可能存在沟通上的隔阂。
- (之前已归纳)用户 px39n 建议直接与 Cursor/Any Agent 互动,询问关于 context engineering 的前沿思路,并认为直接使用 Agent 学习比看教程更快。
- (之前已归纳)px39n 预测,AI 的回答最终会收敛到 Skill + .Agent/Agent–>Spec–>Plan + memory 的架构。
- (之前已归纳)用户 nnnnennnn 补充,可以使用 "deep research" 等功能深入挖掘,并让 AI 自我测试(self-benchmark)。
- (之前已归纳)用户 收束观测者 认为,AI 的 memory 系统是当前最复杂的部分,甚至比其他部分加起来都复杂,并表示与 Gemini 讨论多次仍未找到满意的整体方案,目前采用 local memory mcp 结合 skill 半自动的方式。
- (之前已归纳)收束观测者 反思自己可能思路不够 agile,倾向于瀑布式,并认为应该先用 skill + md 存档,再不断迭代。
- (之前已归纳)用户 争取多活两年 引用 Claude Code 作者的观点,认为当前的 agentic engineering 都是“半衰期一个月的奇技淫巧”。
- 新增:用户 收束观测者 认为,prompt engineering 应该先被淘汰,然后才能谈论其他 AI 吹嘘的功能。
2. 羊毛/优惠信息
- 无
3. 最新动态
- 无
4. 争议或不同意见
- (之前已归纳)无明显争议,主要围绕 AI 辅助编码的优缺点及对未来工作的影响展开讨论。
- (之前已归纳)关于 AI 目前处理 corner case 的能力,存在技术限制还是意愿问题的疑问(0xEthan 的提问)。
- (之前已归纳)关于发现 corner case 后是否应直接告知 AI 的讨论(bill 的提问与 IRS_pro 的回应)。
- (之前已归纳)关于 AI 是否能比人类程序员更有效地 debug 自己生成的代码,以及人类程序员 debug AI 代码的难度。
- (之前已归纳)关于 test suite 覆盖 corner case 的可行性与挑战,以及 AI 上下文窗口大小对 corner case 处理能力的影响。
- (之前已归纳)关于 AI 生成代码的 debug 方式,以及是否应由 AI 自行发现 corner case 的观点存在不同(IlllIIlIIIllIIl 的观点与 msg7086 的观点对比)。
- (之前已归纳)关于如何学习和掌握 "context engineering" 的方法存在不同观点,px39n 提倡直接与 Agent 互动,而旧摘要中的讨论则更侧重于理解其概念和重要性。
- (之前已归纳)关于 AI 记忆系统的复杂性和实现方案存在不同看法和挑战,收束观测者认为其比其他系统更复杂,并仍在探索中。
- (之前已归纳)关于 agentic engineering 的时效性存在不同看法,争取多活两年引用 Claude Code 作者的观点,认为其是“半衰期一个月的奇技淫巧”,暗示其可能很快过时。
- 新增:用户 收束观测者 认为 prompt engineering 是一个被夸大的概念,应该被淘汰。
5. 行动建议
- (之前已归纳)关注 AI 在处理 corner case 方面的能力提升。
- (之前已归纳)提升沟通和需求梳理能力,以适应 AI 辅助开发的新模式。
- (之前已归纳)认识到 AI 目前是效率工具,而非完全替代品。
- (之前已归纳)在 AI 辅助开发中,需要明确 AI 的能力边界,并为处理其尚不能胜任的边缘情况预留人力。
- (之前已归纳)在 AI 辅助开发过程中,需要通过 debug 来主动发现和定位 corner case,并据此优化 AI 的输入或进行手动干预。
- (之前已归纳)程序员在面对 AI 生成代码的 corner case 时,需要认识到 debug 的必要性,即使是 AI 生成的代码也可能需要人工介入来理解和修复。
- (之前已归纳)在项目规模较大、逻辑复杂的情况下,应认识到 test suite 覆盖 corner case 的巨大挑战,并关注 AI 技术(如更大的上下文窗口)在解决此类问题上的进展。
- (之前已归纳)认识到“context engineering”作为一门技术的重要性,并探索如何通过优化输入来提升 AI 处理复杂场景和 corner case 的能力。
- (之前已归纳)建议直接通过与 AI Agent(如 Cursor/Any Agent)互动来学习和实践 context engineering,认为这种方式比传统教程更高效。
- (之前已归纳)建议利用 AI Agent 的 "deep research" 和自我测试(self-benchmark)功能来深入理解和验证 AI 的能力。
- (之前已归纳)了解 AI Agent 的潜在架构,如 Skill + .Agent/Agent–>Spec–>Plan + memory。
- (之前已归纳)对于 AI 记忆系统的复杂性,建议采取更 agile 的迭代方式,先用 skill + md 存档,再不断优化。
- (之前已归纳)对 agentic engineering 的快速迭代和潜在过时性保持警惕,认识到其“奇技淫巧”的属性。
- 新增:对 prompt engineering 的过度宣传持怀疑态度,认为其应被视为一个可被淘汰的技术。
最近 95% 的代码都是 vibe coding 生成的,提交的时候感觉很爽,但是发现时不时会有 corner case 处理不清楚的情况,于是有各种 bug。
然后由于代码不是自己写的,debug 起来非常头疼,随便一个功能花里胡哨的可以写上几百行,看着头大,于是不得不自己 refactor 慢慢理解代码然后 debug。
你猜为什么程序员现在还有工作
可能等 AI 能处理 corner case 之后就真的失业了
一个项目,
需要实现啥功能, 项目经理自己都说不清楚,
也不确定哪一种方式用户更满意,
AI 搞定这个有难度.
所以ai时代communication skill 更重要了
那, 都转行做PM !
上班时间就大家一直沟通, 使劲沟通,
写好详细的项目描述, 扔给AI.
Good efficiency boost, not so good a replacement now.
程序员的终极形态是pm,这个是不能替代的
【引用自 老瓢虫】:
pm
PM们会不会害怕这么多抢饭碗的 ?
PM以后都是CEO了,程序员是PM。
【引用自 争取多活两年】:
CEO
CEO们会不会害怕这么多抢饭碗的 ?
现在流行的说法是 agentic coding,写好 spec skills 让 agent 来实现 …
vibe coding 比较偏贬义词,以前没写过代码的人一堆 promot 做出一个能跑的应用
你猜AI能不能处理corner case
corner case 人和AI都不会一开始就处理清楚,都是得等遇见了才知道怎么处理
现在 ai coding 和自动驾驶很像,大家都觉得趋势上AI肯定比p90的人类出错要少,但是AI出错范围只是和人类有overlap,并不是严格少于人类的,肯定会有AI出错但是人类不出错的情况
只不过这些情况发生了该怎么办大家还没有想清楚
lol Gemini现在可以帮我做产品商业规划,UX设计,已经是100x PM了
以后大家都是CEO咯。
PM比码农好取代多了。毕竟大部分PM说的都是废话,也不需要负责。
【引用自 IRS_pro】:
可能等 AI 能处理 corner case 之后就真的失业了
还要很久,比如说我司,几千万行规模,AI要是埋进去一点bug,估计你整几百人一起上都不一定能短期内找出来
现在有些还不行,我感觉 AI 处理 general case 非常强,但是 corner case 还是需要人做 dirty work
那为什么现在不能呢,是不想吗
LZ这个标题,一大波AI利益相关者和码农hater正在赶来的路上
你发现了 corner case 告诉 ai 不就好了,为啥要自己的 debug 呢?
其实现在编程也是这样的啊。corner case花了90%的时间。
一般有点儿水平的码农都知道debug就是发现corner case的过程。本老一般大概知道bug在哪儿就交给别人干了。
我不debug 怎么知道corner case 在哪呢
这下大众创业万众创新了
corner case尽量让test suite去覆盖呗。
如果你是个team leader,手下招进来几个新卒大学生帮你打代码,他们是不是也会有corner case处理不清楚的情况。你作为TL你该怎么办,跑去读大学生交的PR然后亲自debug吗。
正常不是应该让他们完善测试框架,然后通过测试驱动修复代码么。
写完让客户在production debug,然后再让AI修,怒赚维护钱
【引用自 msg7086】:
corner case尽量让test suite去覆盖呗。
有些 test case 不上 production 是不知道存在的,在 production/shadow 发现 bug 后回头才能添加上这些 test case
那换人类来写也不会差很多嘛。
我觉得区别在于,我自己写的很快能找到坑在哪,AI 写的我就没法很快找出来了
也可以让AI自己找啊,他写的代码他肯定熟啊
说实话,我现在要改的代码也大多是别人写的,还不如AI写的好呢。
【引用自 msg7086】:
corner case尽量让test suite去覆盖呗
看项目规模吧,我们的test suite一个测试集是10TB以上,依然还有漏掉的case,
主要问题在于逻辑太复杂,有些数据要穿越几十层后影响某个模块,还只有很小的概率会产生时序错误
对于人工构建的来说,差不多需要超过1000 TB数据量才能测试完,如果改用AI,可能还要翻100倍以上才能全部覆盖。
现在的AI上下文窗口还是太小,也许以后有了1P上下文的会好点
context engineering也是门技术
【引用自 msg7086】:
学生交的PR然后亲自debug吗。
正常不是应该让他们完善测试框架,然后通过测试驱动修复代
你能知道corner case怎么测就不会prod出问题了。出问题的都是你没想到,也没测试cover的
公司和公司,组和组,人和人 context engineering的差距已经拉开很多了
所以即便同样在说vibe coding,agentic coding,其实都在鸡同鸭讲
高强度使用一个多月感觉基础的prompt engineering上手了
刚开始研究context engineering
有什么好的memory系统推荐么
我建议直接上手, 问Cursor/Any Agent, 请问你能查询好的context engineering的思路是什么,只查询互联网,然后总结给我最前沿的技术知识,
最终回答会收敛到, Skill + .Agent/Agent–>Spec–>Plan + memory的架构下。 现在教程什么的哪有直接用Agent学得快
是的。而且:
还可以用deep research之类的功能深挖
顺便让它自己给自己找benchmark来自己测自己
神奇词汇:SOTA
前几个我都上来就搞了
但是现在memory系统比较头疼
感觉单一个memory系统比前面的加起来都复杂
已经跟gemini讨论了几次了也没找到一个明确满意的整体方案
现在就local memory mcp结合skill半自动的用着
仔细想想可能我思路还是不够agile碰到复杂系统本能想搞瀑布式
还是应该先用skill+md存档搞起来再不断迭代
根据claude code的作者的说法,现在各种angetic engineering都是半衰期一个月的奇技淫巧。
他们先去把prompt engineering淘汰了再吹牛逼