作者分享使用Claude辅助编程的体验与工作流变化
过去几周使用Claude coding的一些随机笔记。
编码工作流。随着LLM编码能力的最新提升,和许多人一样,我在11月还大概是80%手动+自动补全编码和20%智能体,到12月就变成了80%智能体编码和20%编辑+润色。也就是说,我现在大部分时间实际上是用英语编程,有点不好意思地用文字告诉LLM要写什么代码……这有点伤自尊,但以大型“代码操作”来操作软件的能力实在太有用了,尤其是当你适应它、配置它、学会使用它,并理解它能做什么和不能做什么之后。这是我近20年编程生涯中基本工作流的最大变化,而且它发生在短短几周内。我预计类似的情况正在发生在超过两位数百分比的工程师身上,而普通人群对此的认知度感觉还停留在个位数百分比。
IDE/智能体集群/容错性。目前,“不再需要IDE”的炒作和“智能体集群”的炒作在我看来都过头了。模型确实还会犯错,如果你真的在乎任何代码,我建议你在旁边用一个大的IDE像鹰一样盯着它们。错误类型已经发生了很大变化——不再是简单的语法错误,而是细微的概念性错误,就像一个粗心草率的新手开发人员可能会犯的。最常见的类别是模型替你做错误假设并直接执行而不检查。它们也不会管理自己的困惑,不会寻求澄清,不会揭示不一致,不会呈现权衡,在应该提出异议时不提出,而且还有点过于谄媚。在计划模式下情况会好一些,但需要一种轻量级的内联计划模式。它们还非常喜欢过度复杂化代码和API,膨胀抽象,不清理死代码等。它们会用1000行代码实现一个低效、臃肿、脆弱的构造,而你需要指出“嗯…难道你不能这样做吗?”它们会回答“当然!”然后立刻缩减到100行。它们有时还会更改/删除它们不喜欢或不够理解的注释和代码,即使这些与当前任务无关。尽管通过CLAUDE.md中的指令做了几次简单的尝试来修复,这些问题仍然存在。尽管有这些问题,整体上仍然是巨大的改进,很难想象回到手动编码。总之每个人都有自己发展的流程,我目前是在左侧ghostty窗口/标签中运行少量几个CC会话,在右侧用IDE查看代码和进行手动编辑。
毅力。观察一个智能体不懈地工作是如此有趣。它们从不疲倦,从不气馁,只是不断尝试,而人类早就放弃了改日再战。看着它长时间挣扎然后在30分钟后最终获胜,这是一种“感受AGI”的时刻。你会意识到耐力是工作的核心瓶颈,而有了LLM,这个瓶颈被显著提高了。
加速。如何衡量LLM辅助的“加速”并不明确。当然我感觉做我想做的事快多了,但主要效果是我做了更多事,因为1)我可以编写各种以前不值得编写的东西,2)我可以处理以前因为知识/技能问题无法处理的代码。所以当然是加速,但可能更多是一种扩展。
杠杆。LLM特别擅长循环直到达到特定目标,这正是大多数“感受AGI”魔力的所在。不要告诉它做什么,给它成功标准然后看着它去实现。让它先写测试然后通过测试。把它放在t
编码工作流。随着LLM编码能力的最新提升,和许多人一样,我在11月还大概是80%手动+自动补全编码和20%智能体,到12月就变成了80%智能体编码和20%编辑+润色。也就是说,我现在大部分时间实际上是用英语编程,有点不好意思地用文字告诉LLM要写什么代码……这有点伤自尊,但以大型“代码操作”来操作软件的能力实在太有用了,尤其是当你适应它、配置它、学会使用它,并理解它能做什么和不能做什么之后。这是我近20年编程生涯中基本工作流的最大变化,而且它发生在短短几周内。我预计类似的情况正在发生在超过两位数百分比的工程师身上,而普通人群对此的认知度感觉还停留在个位数百分比。
IDE/智能体集群/容错性。目前,“不再需要IDE”的炒作和“智能体集群”的炒作在我看来都过头了。模型确实还会犯错,如果你真的在乎任何代码,我建议你在旁边用一个大的IDE像鹰一样盯着它们。错误类型已经发生了很大变化——不再是简单的语法错误,而是细微的概念性错误,就像一个粗心草率的新手开发人员可能会犯的。最常见的类别是模型替你做错误假设并直接执行而不检查。它们也不会管理自己的困惑,不会寻求澄清,不会揭示不一致,不会呈现权衡,在应该提出异议时不提出,而且还有点过于谄媚。在计划模式下情况会好一些,但需要一种轻量级的内联计划模式。它们还非常喜欢过度复杂化代码和API,膨胀抽象,不清理死代码等。它们会用1000行代码实现一个低效、臃肿、脆弱的构造,而你需要指出“嗯…难道你不能这样做吗?”它们会回答“当然!”然后立刻缩减到100行。它们有时还会更改/删除它们不喜欢或不够理解的注释和代码,即使这些与当前任务无关。尽管通过CLAUDE.md中的指令做了几次简单的尝试来修复,这些问题仍然存在。尽管有这些问题,整体上仍然是巨大的改进,很难想象回到手动编码。总之每个人都有自己发展的流程,我目前是在左侧ghostty窗口/标签中运行少量几个CC会话,在右侧用IDE查看代码和进行手动编辑。
毅力。观察一个智能体不懈地工作是如此有趣。它们从不疲倦,从不气馁,只是不断尝试,而人类早就放弃了改日再战。看着它长时间挣扎然后在30分钟后最终获胜,这是一种“感受AGI”的时刻。你会意识到耐力是工作的核心瓶颈,而有了LLM,这个瓶颈被显著提高了。
加速。如何衡量LLM辅助的“加速”并不明确。当然我感觉做我想做的事快多了,但主要效果是我做了更多事,因为1)我可以编写各种以前不值得编写的东西,2)我可以处理以前因为知识/技能问题无法处理的代码。所以当然是加速,但可能更多是一种扩展。
杠杆。LLM特别擅长循环直到达到特定目标,这正是大多数“感受AGI”魔力的所在。不要告诉它做什么,给它成功标准然后看着它去实现。让它先写测试然后通过测试。把它放在t