编程语言的边际效益

Share

之前跳槽的时候加了好多刷题群,在群里问过很多问题,也从其他大佬分享的经验里受益匪浅。 所以跳槽之后我也没有退群,希望能够分享一些经验给后来人。

在这类群里水的多了,就经常能看到很多人在“炫技式编程”。 比如列表推导这种入门级别的;进阶一点的就是TMP,脑子展开的时候经常容易溢出;更高端点的就是宏+TMP,基本上想上一天能想明白这代码干了啥。

我刚开始工作的时候也特别喜欢这么写代码,感觉每次不加点语法糖就浑身难受。那时候用C#,基本上是能上LinQ的就绝不用循环,能用异步的就绝不用同步。后来用了python,能列表推导就不写循环,能lambda就不写人话。再后来,有一次要给别人讲我的代码,点开文件后我自己都懵了——这是我写的?这在推导啥?这个lambda 在干啥?这都是个啥啥啥(王宝强脸)?

随着看的代码多,写的代码多,收到的评审多了,我慢慢的感觉到学习一门编程语言的边际效用:当你对一门语言的特性应用的越多,你的代码的可读性就越差。而且当你用到生僻的特性或者方法时(哪怕是标准库里的),很难保证未来修改你代码的人是否同样也熟稔这个特性,他可能也会像你不熟悉这个方法时一样大挠头皮,然后翻阅文档,最后找到这个方法,然后以掉落几根头发的代价掌握了这个方法并读懂了你的代码。

所以学语言学到这么一个平衡点的位置就好。再多钻研下去,除非你立志想精通这门语言,否则意义不大。不如更好的着眼于如何安排结构、架构,对未来的发展更有意义。

Read more

当代码不再稀缺 - 06

Prompt 不是新的 Source Code A prompt can generate an answer. It cannot, by itself, preserve why the answer should be true. 提示词可以生成一个回答,但它自己并不能证明这个回答为什么是对的 AI coding tools 刚开始流行时,有一个说法很有吸引力: Prompt 是新的 source code。 听起来很合理。 以前我们写 Python、Java、TypeScript;以后我们写自然语言,让模型完成 implementation。既然 prompt 决定 output,那就像管理代码一样把 prompt 保存、version、review,不就行了吗?

By andy
当代码不再稀缺 - 05

当代码不再稀缺 - 05

Code review 没有过时,但我们可能 review 错了对象 AI can produce a diff. Review decides whether the team is willing to own the change. AI会产出代码,但是团队应该决定是否拥有这个改变 上一篇:AI 时代还需要 Estimate 吗? 床位系统那个 bug 暴露以后,我反复想过一个问题: 我们明明做了 code review,为什么还是没有发现这个bug? 实现并不离谱。代码在判断查询时刻是否落在预约区间内,局部逻辑说得通,边界也长得像正常的时间处理。 只是业务真正问的是“这一天是否已经被占用”,代码回答的却是“当前这一秒是否落在区间”。 我们不是没看代码。我们看了一个错误问题的正确答案。 这件事让我意识到,AI 时代关于

By andy
当代码不再稀缺 - 04

当代码不再稀缺 - 04

AI 时代还需要 Estimate 吗? Don't estimate how long it takes to generate code. Estimate what it takes to trust the change. 不要只估算生成代码需要多久,要估算团队需要付出什么,才能相信这个 change。 上一篇:别再用更多 Ticket 衡量 AI Productivity 下一篇:Code review 没有过时,但我们可能 review 错了对象 如果现在有人问 engineer:“这个 ticket 要多久?”答案可能越来越像这样: “代码今天能出来。至于什么时候敢上线,我不知道。” 这不是

By andy
当代码不再稀缺 - 03

当代码不再稀缺 - 03

别再用更多 Ticket 衡量 AI Productivity Code is cheap. Verified outcomes are not. AI 可以廉价制造代码,但不能廉价制造可信结果。 上一篇:AI 没有消灭瓶颈:Slop 正在吞掉团队的注意力 下一篇:AI 时代还需要 Estimate 吗? 有一种项目周会,特别容易让 EM 心情愉快。 这个 sprint 完成的 ticket 比以前多了,PR 数量涨了,commit 也很活跃。自从团队开始用 AI,dashboard 上的每一条线都在往右上角走。管理层一看:不错,AI productivity 已经兑现了。 然后 reviewer 默默打开

By andy