作者poopoo888888 (阿川)
看板Soft_Job
标题[心得] 近期用 ai 辅助工作的小小心得
时间Sun Feb 23 11:55:03 2025
从事程式设计工作12年,最近半年,我开始大量使用AI写程式。
令我吃惊的是,我发现自己的开发能力好像退步了。
所以今天想跟大家分享,工程师在用AI辅助工作时的一些注意事项。
## 时间分配的变化与建议
首先是时间分配的建议。以前工程师上班时,我认为可以分成四种状态:学习、实验、产
出和摸鱼。
这四种状态的比例大约是3比3比3比1。
但现在有了像 chatgpt 和 github copilot 这样的工具後,这比例有时会变成1比1比1比
7,运气不好时可能是2比2比2比4。
也就是说,工程师上班可以摸鱼的时间大幅增加,因为事情很快就做完了。
我的建议是,可以随意调整实验、产出和摸鱼的时间,但学习的时间最好保持不变。
不然会感觉不踏实。久而久之,应该真的会变废物、会失业。
## 抽象第一定律
在程式设计中,有一条称为 抽象第一定律(First Law of Abstraction)的法则。
这条规则指出,在程式设计中,我们经常透过简化来让事物更容易使用。例如,当你建立
一个套件或框架时,使用者无需了解所有细节即可使用它。然而,抽象虽然能减少工作时
间,却无法减少学习时间。
想像一个初学者学习网页开发,他可能很开心地用 Vue 写出一些动态效果,却不太理解
其背後原理。但随着学习的深入,他终究会遇到无法解决的问题,而这时就需要理解 DOM
(文件物件模型)、虚拟 DOM 以及 状态管理 等基础概念。
後端开发也是如此。初学者可能会使用 ORM(物件关联对映) 来轻松与资料库互动。然
而,当遇到效能问题或需要执行复杂查询时,他们仍然需要学习 SQL。
再举一个例子,当刚开始接触後端部署时,有些人可能会使用现成的 Docker 映像档 快
速部署服务。但当需要调整设定时,他们仍然得学习 Nginx、Linux、网路架构,甚至资
料库管理。
在软体开发领域,AI 就像是一个巨大的抽象层。它能大幅减少工作时间,但却无法缩短
学习时间。
如果你完全依赖 AI 而跳过学习过程,短时间内或许能产出许多成果,但长期来看,你的
学习成长可能比过去依赖论坛和 Google 搜寻还要少。
## 询问研究员类型的问题
我的建议是,虽然我们要维持学习阶段的时间,但学习的方向不再是去学用法/语法,而
是去学更深的工程思维、设计哲学。我的建议是多提问研究员类型的问题。举三个例子:
第一,当你碰到一个API、一个套件或框架,有黑箱感觉时,问AI:这个东西底层如何运
作?是用什麽方式实作的?能否提供原始码连结?
第二,如果你觉得某个套件、API 的设计怪异,问AI:为何这样设计?
第三,看到某些设计让你不满意时,问AI:这样设计是否有缺点,并指出你认为不好的地
方,问AI有什麽想法?
这三种问题通常能获得AI很好的回覆,而这类型问题,以前在 Google 或论坛上很难找到
答案,查询也非常耗时。
在AI时代,这些问题可以快速解决。因此,我们的心态要转变成像研究员一样,研究底层
设计思维和哲学,而不是仅仅写出程式码。现在依靠AI可以快速完成程式码,我们应该更
深入地学习。
## 结论
我认为软体工程师/程式开发者的定义已经改变了。
以前的开发者更像是各种套件和工具的使用者,花大量时间在实验和理解这些工具的使用
方式,然後将成果交付。
然而,若现在仍只停留在这个阶段,几年内很快就会被淘汰,这是残酷的现实。
因此,我们应该自诩为研究员,各行各业皆如此。
AI的出现使我们需要思考哪些事情有意义,哪些事是AI不便处理而需人类完成的。
我们应该持续思考并问对问题。研究员类型的问题能帮助我们学习,也是现代工程师应多
发问之处。
我之前举了三种情况:遇到黑箱、怪异情况、不服气时,可以提出有价值的问题作为范例
供大家参考。
身为工程师,你认为还有哪些你常常询问 AI、你觉得很有价值的发问方式?
欢迎大家一起推文交流一下,谢谢。
---
网页好读版:
https://codelove.tw/@howtomakeaturn/post/an24Va
--
※ 发信站: 批踢踢实业坊(ptt.cc), 来自: 111.249.204.26 (台湾)
※ 文章网址: https://webptt.com/cn.aspx?n=bbs/Soft_Job/M.1740282905.A.E5C.html
1F:推 ILoveAMD: 就看你要年薪几百万罗 02/23 12:27
2F:推 lchcoding: 想请问-抽象第一定律出处在哪?我转职门外汉 02/23 12:38
3F:→ MoonCode: 蛤 02/23 14:10
4F:→ Obama19: 听君一席话如听一席话 02/23 14:27
5F:推 k7ji91ab5m: 对我来说从 可以这样做->为什麽这样做 不论是不是用 02/23 14:33
6F:→ k7ji91ab5m: AI 都会经历 但问AI有时候比较快 有时候他是错的 02/23 14:33
7F:推 prag222: 用过deepseek跟ChatGPT比较没? 02/23 14:56
8F:→ tzouandy2818: 你还是不要说自己资历十二年好了 02/23 15:03
9F:→ nayeonmywife: ….. 02/23 15:11
10F:推 Tix: 说得很棒,感谢分享! 02/23 15:17
11F:嘘 hegemon: 真的不用浪费时间写这篇文章 02/23 15:18
12F:嘘 KanzakiHAria: 听君一席话如听一席话 02/23 15:50
13F:推 hobnob: 总觉得没有十几年经验的那种气势,好人好事代表 02/23 16:47
14F:→ c8dog: ㄜ … 该不会最近才知道要用 AI 辅助吧? 02/23 17:10
15F:→ c8dog: 好的,我有看到开头的「最近半年」了 02/23 17:12
16F:推 StrangeJ: 我觉得这篇文章没甚麽大问题 帮补血 02/23 17:24
17F:嘘 ck960785: 我主管看到这种用ai味太重的文字会直接开骂 02/23 17:38
18F:嘘 kkes0001: 真的有点废话 02/23 18:52
19F:→ aegius1r: 这篇也是AI写的吗 02/23 18:54
20F:→ asdf1343: 查不到有什麽叫 first law of abstraction 02/23 19:26
21F:→ asdf1343: 根据原po说的应该是 the law of leaky abstractions 02/23 19:26
22F:→ asdf1343: 想提醒的是如果问ai难以查到的事 要小心它瞎掰内容给你 02/23 19:26
23F:→ asdf1343: 自己求证还是必要的 02/23 19:26
24F:推 hwChang: 除了缩短产出时间,我觉得最大的优点,是它可以有系统地 02/23 20:44
25F:→ hwChang: 整理出我想要的资讯,以及更深入地讨论问题,对我来说非 02/23 20:44
26F:→ hwChang: 常有帮助。 02/23 20:44
27F:→ hwChang: 我是用付费的 ChatGPT 02/23 20:45
28F:嘘 WTS2accuracy: 看描述真的像10y经验1y技术力的CRUD老人 XD 02/23 21:35
29F:嘘 pttano: 哈哈 02/23 21:50
30F:→ viper9709: 研究员吗...台湾大多不是吧XD 02/24 00:07
31F:推 bryandick: 用时间分配的角度切入非常棒 ,要不要喝个咖啡聊聊天 02/24 00:28
32F:→ jobintan: 说下最近听说过的故事,以前PM要实现某个东西时,得去对 02/24 07:57
33F:→ jobintan: SDE低声下气,现在有了AI,就再也不用看SDE的脸色了。 02/24 07:58
34F:→ MoonCode: 楼上这个笑死 立刻开 github 权限给 pk 02/24 10:42
35F:→ wade2432: 不用看脸色是把sde都开除了,全靠ai自己开发吗?不是的 02/24 11:22
36F:→ wade2432: 话你大概听到一个吹牛大王在说故事 02/24 11:22
37F:→ stepnight: 难道不是PM要实现某个东西比较奇怪吗 02/24 12:23
38F:推 ricky60324: 软工要做pm的事情更简单吧… 要不要做而已 02/24 14:39
39F:推 aria0520: 常常rd做到最後还是要自兼pm 毕竟骂也是骂rd 02/24 23:40
40F:推 pkpk10654: 我以为PM最难的部分是做人 02/25 10:56
41F:推 rexyeah: Google速度变短而已吧,之前花1小时Google, 复制贴上,现 02/25 22:18
42F:→ rexyeah: 在1分钟。 02/25 22:18
43F:推 aria0520: 可以这样说XD 还有泡在stackoverflow上的时间减少了 02/26 00:33
44F:→ yam276: 这篇也是AI写的吗 02/26 14:22
45F:推 MyNion: 这篇文没那麽糟吧,在座的工程师怎麽都那麽不友善 02/26 15:08
46F:推 hth9494: AI对我的帮助就是告诉我Unknown unknown的关键字 02/26 19:11
47F:嘘 edwardhsu: 没料 02/26 22:17