最低成本使用最强模型编程方案
模型是:Codex+Gemini+GLM5+Kimik2.5+MiniMax2.5
先说明一下:这篇只分享我自己长期在用的公开方案,不是广告,也不是“理论推荐”。
核心标准就三个:能稳定用、能真落地、成本尽量低。
另外我现在的原则是:尽量走官方渠道,不再折腾反代。账号和接口都建议按平台规则来。
先说结论:我现在的主力分工
Codex:后端和大部分功能实现主力Gemini + Antigravity:前端和浏览器侧任务主力- 国产免费模型:查资料、国内信息检索、API 调试补位
- 其他工具(如 Cloud Code Opus 4.6):额度见底时兜底
1)第一名:Codex(免费账号可用,但额度偏低)
这个“第一名”我给得很直接:写代码时最稳,尤其后端和复杂功能。
免费账号能用它的模型,但额度确实不高。我的观察是,不同账号之间免费额度会有差异:
- 早期注册的账号,额度通常更高一点
- Google 邮箱注册的账号,额度通常也会稍高
- 其他邮箱注册的部分账号,额度会明显低一些
所以我会准备多个免费账号轮换,但整体还是优先把主链路放在 Codex 上。
2)第二名:Gemini + Antigravity(我现在的前端主力)
Google 这套我最近重新用了起来。之前被封的一批账号后来都解封了,我自己之前的 5 个号也都恢复了。
但现在我不准备再用反代,直接走官方工具 Antigravity。我看中它的点主要是:
- 对 Chrome 控制比较顺手
- 内部集成了
Playwright MCP - Gemini 在前端页面和交互生成上表现不错
所以我现在是:Gemini 负责前端,Codex 负责后端和大多数功能实现。
3)Cloud Code Opus 4.6:有,但不是常用位
Antigravity 里还有 Cloud Code Opus 4.6,我基本只在别的模型额度打满时才会切过去。
原因很简单:给到它的免费用量比较少,放在主流程里不太稳,适合作为兜底。
4)国内白嫖方案:白山智算 + zo computer
这两个是我现在固定会留着的国内补位方案。
白山智算(API 平台)
这个活动期挺给力:实名 + 首次调用后,能拿到 450 左右额度,日常够用。
里面我主要关注的是 GLM-5 和 MiniMax-2.5。
它本身走的是 OpenAI 兼容路由,所以能比较方便接进各种编程工具里,改个接口配置就能跑。
我之前推荐过了,注册链接:白山智算

zo computer(在线使用)
这个相对小众一点,但很省心:注册账号就能用内置免费模型,包含 GLM-5、Kimi-2.5、MiniMax-2.5。
限制也很明确:更适合在线对话和临时任务,不太适合直接塞进 IDE 作为长期开发链路。

官网:zo.computer/
OpenCode:我现在已经没咋用了
以前有 Kimi 相关模型时我还会用一下。现在免费模型能力和覆盖变化后,我基本不再用它做主力。
再加上我有更顺手的 Codex + Gemini 组合,就没有必要在后面的方案上投入太多时间了。
我自己的使用策略(很实用)
- 主开发链路固定:
Codex + Gemini - 国内模型主要用于:资料检索、中文语境信息、API 测试
- 所有“免费”方案都按兜底思路准备,不把单一渠道当唯一依赖
- 不追求模型数量,追求“每天都能稳定出活”
最后
以上 4 个就是我现在公开在用的白嫖 AI 方案。
如果你有更稳、更省钱、还能长期跑的组合,欢迎留言交流。
来源:juejin.cn/post/7611732636969615375
谁是OpenClaw?这个一夜爆火的“AI打工人”,正在悄悄接管你的电脑!
仅仅几个月狂揽 22 万 Star,经历三次改名(Clawdbot -> Moltbot -> OpenClaw)依然热度不减。它不是简单的聊天机器人,而是真正运行在你本地、接管你所有通讯软件(WhatsApp, Telegram, 飞书...)的超级私人管家。本文手把手教你部署这只“全能龙虾”!
Github:github.com/openclaw/op…

最近,GitHub 上有一个项目杀疯了。
如果你关注 AI 圈,一定被一只红色的龙虾(Lobster) 刷屏过。没错,就是 OpenClaw。
截至目前(2026 年 2 月),OpenClaw 在 GitHub 上的 Star 数已经突破了 228k!这是什么概念?即使是当年的爆款项目,也没有如此夸张的增长速度。
它到底是什么?为什么连退隐多年的技术圈大佬 Peter Steinberger(PSPDFKit 创始人)和 Mario Zechner(libGDX 之父)都要复出亲自操刀?
今天,我们就来扒一扒这个“当红炸子鸡”,并手把手教你把它装进电脑里。
什么是 OpenClaw?
简单来说,OpenClaw 是一个运行在你本地设备上的“个人 AI 代理(Agent)中枢” 。
别把它和 ChatGPT 网页版搞混了。OpenClaw 的核心逻辑是: “流水的模型,铁的管家” 。
- 它没有 App(或者说不需要 App): 它直接寄生在你最常用的聊天软件里——WhatsApp、飞书、Slack、Discord、Signal,甚至是 iMessage。
- 它极度聪明: 它不仅能陪聊,还能执行任务。它内置了强大的工具链,可以浏览网页、操作日历、根据你的指令写代码、甚至通过 ElevenLabs 实现语音对话。
- 它绝对隐私: 所有的记忆、配置、对话历史都存储在你本地。你可以自由切换底层模型(Claude Opus, GPT-4, Llama 等),但“管家”本身是你的。
大家之所以疯狂追捧它,是因为它终于实现了我们对“贾维斯”的幻想:一个永远在线、了解你一切背景、并且听命于你的私人助理。
核心特点:为什么它能“爆”?
- 全渠道打通(Omnichannel):
你不需要打开特定的 AI App。在 飞书 给它发消息:“帮我查下明天的天气并把会议发邮件给老板”,它就去做了。它就像是你通讯录里的一个全能好友。
- 本地优先与“记忆”机制:
OpenClaw 拥有基于 Markdown 和 SQLite 的本地记忆系统。它记得你上周说想买的耳机,也记得你老板的忌讳。这些数据不会被上传到云端大厂的服务器。
- 强大的 Agent 能力:
它不只是生成文本,它是来干活的。
- Browsing: 给它一个 URL,它能读完并总结。
- Coding: 它能在本地环境写代码并执行(Sandboxing 机制保障安全)。
- Vision: 它可以“看”屏幕,或者通过摄像头看到你展示的东西。
- 大佬背书与“更名梗”:
OpenClaw 的前身叫 Clawdbot,后来因为名字太像 Claude 被 Anthropic 警告,改名 Moltbot,最后定名 OpenClaw。每一次改名都伴随着一波热度,加上两位“退休”大佬为了它重出江湖,代码质量极高,被誉为“工程学的艺术品”。
如何安装与使用
好消息是,经过几个版本的迭代,现在安装 OpenClaw 已经非常简单了(推荐使用 MacOS 或 Linux/WSL2)。
1. 环境准备
你需要安装 Node.js(版本 ≥ 22)。
2. 一键安装
打开终端(Terminal),输入以下命令:
npm install -g openclaw@latest
# pnpm add -g openclaw@latest
3. 启动向导(Onboarding)
OpenClaw 最人性化的地方就在于它的交互式配置向导。在终端输入:
openclaw onboard --install-daemon
接下来,你只需要像填问卷一样:
- 选择模型服务商: 输入你的 Anthropic Key 或 授权 Qwen 服务。
- 设置连接渠道: 选择你想在哪里使用它(比如 飞书)。向导会提示你下载
openclaw/feishu,下载后按照提示的信息进行配置(比如 登入 open.feishu.cn 平台创建 APP)。 - 安装技能: 选择是否开启浏览器控制、文件系统访问等权限。
- 按照提示配置 Gateway 自启动,打开 web 地址 127.0.0.1:18789,能够正常打开网页说明 OpenClaw 本地安装完成了,对于飞书端的其他配置可以参考文档、参考视频 。

4. 开始使用
现在,拿起你的手机,打开你配置的渠道(例如:飞书),给你刚刚绑定的 Bot 发送一句:
你会发现,一个新的世界大门打开了。

来源:juejin.cn/post/7610580125619093530
北京回长沙了,简单谈谈感受!
大家好呀,我是飞鱼
我今年已经从北京回长沙了,这里谈谈感受。
❝
首先我回长沙不是逃离,而是换一种更舒服、更可持续的生活方式。
北京给了我视野和能力,长沙给了我生活和归属。
最直观的变化
- 节奏慢了:不用挤早高峰了,走路不用小跑,回家路更短。
- 心态稳了:不再天天赶进度、追KPI,人也没那么紧绷了。
生活成本:压力明显小了
❝
房租、通勤、日常开销都降了不少,以前在北京工资高,但大头都被生活成本吃掉了。
现在收入可能少些,但心里踏实很多。
个人生活:更松弛也更有边界
❝
回来后作息更规律了,能早点睡、早点起,周内也会留出时间运动或散步。
以前下班只想躺着刷手机,现在会给自己留一点空白时间,用来读书、整理思路或者陪家人聊天。
生活变简单,但心里更笃定,能把注意力放在真正重要的人和事上。
城市气息:更有生活感
❝
长沙烟火气足,我现在每周都会去爬一次岳麓山(离得近)。
周末也能随时约上朋友一起吃饭聊天,不用再掐着时间赶路。
个人成长:从外部驱动到自我驱动
❝
以前在北京,节奏和环境会推着我走,事情一件接一件,来不及想太多。
回长沙后,外部推力小了,但我开始主动搭自己的节奏:给自己设目标、做复盘、安排学习计划。
慢下来之后,反而更能看清自己擅长什么、缺什么,也更容易把工作和生活都经营得更稳。
给同样选择的人一点建议
- 先想清楚你想要什么:是离家近、生活压力小,还是职业成长更快?别只因为累了就决定,要有明确的取舍。
- 提前做资源准备:无论去哪,职业发展都得靠自己,技能储备、作品、圈子都要主动经营。
- 规划现金流:收入变化要提前算清楚,别让生活压力反过来影响判断。
- 给自己一个过渡期:回去不是立刻完美适应,给自己几个月调整节奏,别太焦虑。
最后想说
适合自己的地方,不一定是机会最多的地方,而是能让你活得更从容、有力量的地方。
❝
最后想看技术文章的,可以去我的个人网站:hardyfish.top/
来源:juejin.cn/post/7603781883973763091
📢 程序员注意!这些代码可能会让你"吃牢饭"!
关注我的公众号:【编程朝花夕拾】,可获取首发内容。

01 引言
不知道你有没有听过面向监狱编程,可能你好好的码着代码,就就被帽子叔叔带走了。
"我只是个写代码的,关我什么事?" 这是深圳某P2P平台架构师在法庭上崩溃大喊,但代码提交记录中的"反爬优化注释"成了铁证——他因非法吸收公众存款罪获刑5年。这不是电影,而是2023年真实判决!
程序员早已不是免责职业,你的键盘可能正在敲响监狱的大门!
02 血泪案例
⚠️ 这些代码真的会"坐牢"!
2.1 爬虫爬进铁窗
爬虫其实是最容易爬进铁窗的代码。当时可能只是为了解决一个业务痛点,一旦被非法使用,就可能触犯法律的红线。开发者无意,使用者有心,莫名其名的就背了锅。
案例:
浙江某程序员用分布式爬虫狂扫10亿条个人信息,庭审时辩解:"技术无罪!"。
法官怒怼:"每秒突破5次反爬验证,这叫'技术中立'?" —— 6人团队全员获刑!
所以,我们在日常工作中开发爬虫就应该得到启示:
- ✅数据是否涉个人隐私?
- ✅是否突破网站防护?
- ✅对方是否知情同意?
实在拿不准,公司一般都会有法务,可以咨询。
2.2 权限变"凶器"
我们在开发过程中为处理决异常数据的问题,可能会在代码里面留后门。正常的业务功能本身没有问题,但是涉及支付、数据安全等行为,就要注意了。被他人恶意使用,不仅会造成财产损失,可能会还会勉励牢狱之灾。
案例:
杭州前程序员偷偷植入"定时转账代码",21万公款秒变私人财产。检察机关以马某涉嫌盗窃罪、妨害公务罪向法院提起公诉,经法院审理作出一审判决,马某被判处有期徒刑四年二个月,并处罚金。
该起事件也为程序员们敲响了警钟。玩归玩,闹归闹,法律红线不可碰。
🛑 高位操作清单:
- ❌ 私留系统后门
- ❌ 超权限访问数据
- ❌ 删除/篡改数据或日志
2.3 "技术黑产"陷阱
程序员除了工作之外,很多人可能还会通过接私活,如猪八戒网等。以此增加自己的收入。没有公司的严格审核,很多程序员就会掉如技术黑产 的陷阱。
案例:
湖北大学生接私活开发"诈骗APP",庭审播放需求录音:"要能后台改赌局结果"。可能当时你只想着:"我只负责技术实现" 最后却成诈骗案从犯!
尤其一些关于支付的似乎要尤为谨慎,特别是支付成功后,限制体现的时间,很有可能就会用于非法洗钱的黑坑里。
🔥 接私活避坑指南
- 👉 要求签署书面合同
- 👉 录音确认需求合法性
- 👉 转账账户必须对公
03 为什么程序员总成背锅侠
其实大多数程序员都是很单纯的,尤其那些喜欢挑战的程序员。他可能只为表现自己的实力,仅仅只是按照需求开发了功能,但是被恶意利用,最终成为背锅侠
| 程序员以为 | 法官认定 |
|---|---|
| 突破反爬是技术挑战 | 非法侵入计算机系统 |
| 按需求开发无过错 | 明知违法仍提供帮助 |
| 删除代码就没事 | 电子证据完整链锁定" |
血泪真相:你的Git提交记录、代码注释、甚至TODO列表都可能成为呈堂证供!
04 IT人保命三件套
4.1 代码防坐牢套餐
敏感功能增加法律注释。开发的功能以及项目的沟通都要留档尤其需求的变更。因为接到需求的时候可能没有问题,改着改着就出问题了。
拒绝口头需求,落实文档记录,需求、会议、项目事件以邮件的方式存档。
4.2 权限管理生死线
权限管理是保护数据安全的重要措施,但是可能为了调试方便,预留逃逸后门。被人利用轻则数据信息泄露、重则踩缝纫机。
三方对接中,加强公钥、私钥的管理,防止恶意推送或者拉取数据。敏感信息是否脱敏,都是开发中需要考虑的要点。
如果有必要,增加埋点记录,日志记录。收集用户的操作行为。
4.3 法律意识
每个IT公司都会面临网络安全的检查,可以多了解一些相关的法律发条。至少了解那些数据可能会属于需要保护的数据,引起重视。
如果公司允许,可以多参加一些《数据安全法》《网络安全》等的培训。
05 技术向善
代码改变世界,这个不是一句虚话。运用好技术,代码也可以是光。
阿里巴巴的支付宝硬是借助技术,将全国带入数字支付的时代;疫情期间的随申码、一码通等,为战胜疫情作出了巨大贡献;大模型的火爆推送了智能时代的到来等等。
真正的大神不仅代码能跑通,人生更不能"跑偏"!
你在工作中遇到过哪些"法律边缘"的需求?评论区说出你的故事。
来源:juejin.cn/post/7506417928788836362
别吹了,AI写Java代码到底能省多少时间?一个后端仔的真实记录
场景一:CRUD 生成 | 提效 70-80% | ⭐⭐⭐⭐⭐
这是 AI 最能打的场景,没有之一。
传统写法:手写 Entity → Mapper XML → Service → ServiceImpl → Controller,一套标准的增删改查,从建表到联调,至少 40 分钟。如果加上参数校验、分页查询、统一返回体,一个小时也不夸张。
用 AI 之后:给 Cursor 一段需求描述加上数据库表结构,5-10 分钟出完整代码。而且生成的代码结构很规范——注解没漏、字段映射没错、甚至连 Swagger 文档注解都给你加上了。
但别高兴太早。
我踩过的坑:AI 生成的 CRUD 代码表面上能跑,细节经常有问题。举几个典型的:
- 字段校验粗糙——
@NotNull加了,但@Size、@Pattern这种业务校验不会主动加 - 分页查询用的是内存分页而不是数据库分页(这个坑特别隐蔽)
- 异常处理一律
catch Exception,没有细分业务异常
所以我的做法是:让 AI 先生成骨架,然后自己过一遍核心逻辑。这样比从零手写快得多,又不会因为盲信 AI 埋雷。
CRUD 是 AI 的主场,这事没争议。但你还是得 review 每一行——AI 写的 bug 比你手写的更隐蔽。
场景二:Bug 排查 | 提效 40-60% | ⭐⭐⭐⭐
先说好用的部分。
一个 NullPointerException,传统排查流程:看堆栈 → 找到报错行 → 往上追调用链 → 打断点 → 复现 → 定位 → 修复。顺利的话 15 分钟,不顺利半小时起步。
现在我直接把报错日志和相关代码丢给 Claude,通常 2-3 分钟就能给出准确定位。不仅告诉你哪里报错,还能分析为什么会走到这个分支。效率差距是数量级的。
SQL 慢查询也类似。把 EXPLAIN 结果丢给 AI,它能分析出索引缺失、全表扫描、JOIN 顺序不合理等问题,给出的优化建议大部分是靠谱的。
但是。
复杂业务逻辑的 bug——比如跨服务的数据不一致、分布式事务异常、线程安全问题——AI 基本帮不上忙。原因很简单:它不了解你的业务上下文,不知道你的系统架构长什么样,不清楚各个服务之间的调用关系。
你可以把全部代码都喂给它,但在上下文窗口有限的情况下,效果也很一般。
AI debug 像个经验丰富的实习生——标准问题秒解,但真正棘手的问题还得靠你自己。
场景三:代码重构 | 提效 30-50% | ⭐⭐⭐
这个场景我体验比较复杂,分层来说。
方法级重构——好用。 提取公共方法、消除重复代码、简化多层嵌套的 if-else,这些 AI 干得又快又好。你说一句「把这段 if-else 用策略模式重构」,它真能给你一套结构清晰的策略类出来。
模块级重构——凑合。 比如给一个老旧的 Service 类做职责拆分,AI 能给出拆分方案,但命名经常不太合适,边界划分也需要自己调整。它不太懂你的团队命名规范,也不清楚哪些逻辑在你的系统里属于同一个领域。
架构级重构——别想了。 单体拆微服务、数据库分库分表这种事,涉及太多业务决策和技术权衡,AI 给的方案顶多算个参考。你要是照着它的方案直接改,后果自负。
重构的本质是对业务的理解。AI 只能帮你搬砖,不能帮你画图纸。
场景四:写单元测试 | 提效 50-70% | ⭐⭐⭐⭐
Java 程序员最不爱写但又不能不写的东西——单元测试。
传统写法:一个 Service 方法的单测,先 mock 一堆依赖,再写正常返回用例、空值用例、异常用例,30-40 分钟很正常。而且坦白说,很多人(包括我)写单测就是为了应付覆盖率检查,质量堪忧。
现在我把 Service 代码丢给 AI,说一句「用 JUnit 5 + Mockito 生成单元测试,覆盖正常和异常场景」,3-5 分钟出一整套。
举个真实例子。比如有这么一个订单查询方法:
public OrderDetailVO getOrderDetail(Long orderId) {
Order order = orderMapper.selectById(orderId);
if (order == null) {
throw new BizException(ErrorCode.ORDER_NOT_FOUND);
}
// 查关联的商品信息
List<OrderItem> items = orderItemMapper.selectByOrderId(orderId);
OrderDetailVO vo = OrderConverter.toDetailVO(order);
vo.setItems(OrderConverter.toItemVOList(items));
vo.setTotalAmount(calcTotalAmount(items));
return vo;
}
AI 生成的测试长这样(节选关键部分):
@ExtendWith(MockitoExtension.class)
class OrderServiceTest {
@Mock
private OrderMapper orderMapper;
@Mock
private OrderItemMapper orderItemMapper;
@InjectMocks
private OrderServiceImpl orderService;
@Test
@DisplayName("查询存在的订单-返回完整详情")
void getOrderDetail_success() {
Order mockOrder = buildMockOrder(1001L);
List<OrderItem> mockItems = buildMockItems(1001L, 2);
when(orderMapper.selectById(1001L)).thenReturn(mockOrder);
when(orderItemMapper.selectByOrderId(1001L)).thenReturn(mockItems);
OrderDetailVO result = orderService.getOrderDetail(1001L);
assertNotNull(result);
assertEquals(1001L, result.getOrderId());
assertEquals(2, result.getItems().size());
verify(orderMapper).selectById(1001L);
}
@Test
@DisplayName("查询不存在的订单-抛出业务异常")
void getOrderDetail_notFound() {
when(orderMapper.selectById(9999L)).thenReturn(null);
BizException ex = assertThrows(BizException.class,
() -> orderService.getOrderDetail(9999L));
assertEquals(ErrorCode.ORDER_NOT_FOUND, ex.getErrorCode());
}
}
说实话,这个质量是能直接用的。Mock 层级对、断言清晰、方法命名规范。如果手写,这两个测试方法至少要 15 分钟,AI 生成只要 2 分钟。
但我手动补了什么呢?
@Test
@DisplayName("订单存在但商品列表为空-金额应为0")
void getOrderDetail_emptyItems() {
when(orderMapper.selectById(1001L)).thenReturn(buildMockOrder(1001L));
when(orderItemMapper.selectByOrderId(1001L)).thenReturn(Collections.emptyList());
OrderDetailVO result = orderService.getOrderDetail(1001L);
assertEquals(BigDecimal.ZERO, result.getTotalAmount());
assertTrue(result.getItems().isEmpty());
}
这种业务边界用例——商品列表为空时金额计算是否正确——AI 不会主动想到,因为它不知道 calcTotalAmount 对空列表的处理逻辑是不是你期望的。
AI 生成测试的优点:
- Mockito 用得很熟练,
@Mock、@InjectMocks、when().thenReturn()一气呵成 - 正常路径和基本异常覆盖得不错
- 断言写得清晰,方法命名规范
缺点也明显:
- 边界条件经常遗漏——并发场景、数据库连接异常、超时这种不会主动想到
- 有时 mock 的层级不对——该 mock Repository 的地方 mock 了 Service
- 对业务语义理解有限——不知道空列表、金额为 0 这种场景需不需要专门测
我现在的套路是:让 AI 先生成 80% 的测试用例,自己再补上那 20% 的关键边界。这比从零手写效率高太多了。
80/20 法则在 AI 写单测这件事上体现得淋漓尽致。
场景五:写技术文档 | 提效 80-90% | ⭐⭐⭐⭐⭐
这是我觉得最被低估的 AI 提效场景。
Java 程序员写代码还行,写文档真的要命。一份接口文档写半天,一份方案设计磨一整天,部署文档更是能拖就拖。
举个例子。前阵子我写了一个用户收货地址的 Controller,大概长这样:
@PostMapping("/address/add")
public Result<Long> addAddress(@RequestBody @Valid AddressAddReq req) { ... }
@GetMapping("/address/list")
public Result<List<AddressVO>> listAddress() { ... }
@PutMapping("/address/update")
public Result<Void> updateAddress(@RequestBody @Valid AddressUpdateReq req) { ... }
@DeleteMapping("/address/{id}")
public Result<Void> deleteAddress(@PathVariable Long id) { ... }
把这段代码丢给 AI,说「生成接口文档,Markdown 格式,包含请求参数、返回值、错误码」,2 分钟后它给我的文档(节选):
POST /address/add — 新增收货地址
| 参数 | 类型 | 必填 | 说明 |
|---|---|---|---|
| receiverName | String | 是 | 收货人姓名,2-20个字符 |
| phone | String | 是 | 手机号,11位 |
| province | String | 是 | 省份 |
| city | String | 是 | 城市 |
| district | String | 是 | 区/县 |
| detailAddress | String | 是 | 详细地址,最长200字符 |
| isDefault | Integer | 否 | 是否默认地址,0-否 1-是,默认0 |
返回值: Result<Long> — 新地址ID
错误码:
ADDRESS_LIMIT_EXCEEDED— 收货地址数量超过上限(20个)PARAM_INVALID— 参数校验失败
它连字段的校验规则都从 @Valid 注解里推断出来了。手写这份文档至少要 30 分钟,现在 2 分钟生成,再花 5 分钟检查补充,总共不到 10 分钟。
方案设计文档也一样。给出需求描述和技术方案要点,AI 能在 10 分钟内生成一份结构完整的设计文档——背景、目标、方案对比、技术选型、风险评估,该有的都有。当然具体技术细节需要自己补,但框架已经省了你 80% 的时间。
README 就更不用说了,几乎不用改,直接能用。
如果你还在手写文档,那你是真的在浪费生命。这话可能有点绝对,但我是认真的。
我的真实结论
一张表总结
| 场景 | 提效幅度 | 推荐度 | 一句话 |
|---|---|---|---|
| CRUD 生成 | 70-80% | ⭐⭐⭐⭐⭐ | AI 的主场,没争议 |
| Bug 排查 | 40-60% | ⭐⭐⭐⭐ | 标准问题秒杀,复杂问题不行 |
| 代码重构 | 30-50% | ⭐⭐⭐ | 能搬砖不能画图纸 |
| 单元测试 | 50-70% | ⭐⭐⭐⭐ | AI 出 80% + 人工补 20% |
| 技术文档 | 80-90% | ⭐⭐⭐⭐⭐ | 最被低估的提效场景 |
关于「效率反降 19%」
最近那个「AI 写代码效率反降 19%」的研究火了,很多人拿来当 AI 没用的证据。但你仔细看就会发现:研究用的是大型开源项目(平均 110 万行代码),上下文极其复杂。
日常业务开发完全不是这个量级。我们的代码库上下文更可控,需求也更明确。在这种条件下,AI 发挥的空间大得多。
说白了,关键不是 AI 行不行,而是你选对了场景没有。用 AI 写 CRUD 能省 70% 时间,你非要让它帮你做架构设计——那确实会「提效为负」。
我的使用原则
- AI 擅长的事全交给它:CRUD、文档、测试框架、标准 bug 排查
- AI 不擅长的事别勉强:复杂业务逻辑、架构设计、跨服务问题
- 永远 review:AI 写的代码比你手写的更需要审查——因为它写的 bug 更隐蔽
- 积累自己的 Prompt:好的 Prompt 比好的工具更重要
写在最后
我是栈外,写了几年 Java,现在用 AI 多赚一份钱。
不会告诉你用 AI 就能月入十万。但它确实能让你每天省出 1-2 小时——前提是你用对场景。
下一篇聊聊这省出来的时间,我拿来干了什么。省下来的时间如果不变成钱,那提效就是个伪命题。
如果觉得有用,点个赞收个藏,后面还有更硬的干货。
这是「栈外」的第 1 篇文章。不画饼,只算账。
来源:juejin.cn/post/7610580125618929690
我的app被工信部下架了,现在想重新上架
前言
这是一期没有用的干货。
不知道有多少朋友的App经历过被工信部点名并下架的……显然我经历过.
几年前我的App因为违规收集个人信息被广东省通信管理局强制下架了,虽然App本身真的没有去收集个人信息,但用了架不住某些SDK喜欢做些小动作,不管怎么样,由于当时没处置,就被以侵犯用户隐私的名义给下架了。随着最近鸿蒙挺火的,我突然想试试上架一下鸿蒙。但很遗憾,全网被下架,即使新开发的鸿蒙app也不可以,所以不得不踏上申请重新上架之路。
先说一下总的感受:确实比较繁琐一些,但广东省通信管理局确实很给力,给我不少帮助。以下经验也仅适用于因为个人隐私相关问题被下架需要重新上架。
流程
首先我是在华为应用市场中问到我应该如何重新上架,然后加到粤通管网安监测的微信,然后询问如何申请重新上架。
首先,也是废话当然是要修复既存的问题。然后,将APP的整改报告及整改后的APK发送到指定邮箱,然后等待复测即可。
需要注意的是也需要将备案信息填写到整改报告中
另外,根据我查到的资料,APP侵害用户权益的检测工作是全国APP技术检测平台(APP公共服务系统)做的,并且提供了一套APP侵害用户权益专项整治行动恢复上架流程,我贴个图如下:

实际上的流程大概和这个差不多,但都是在和通信管理局打交道。这个实际体验可能因各通信管理局不同而异。
其他
还有一些小事项,比如整改报告模板,最开始的时候通信管理局也没有和我说有模板,我也在网上照猫画虎搞的。当复测通过后,填写重新上架申请书后,需要再次上传整改报告的时候,对方给我发了一个整改模板,好在经过询问,并不需要重新写一份整改模板,直接复用之前的整改报告即可。
关于整改报告里都需要有什么可以参考一下原文:
您好,APP恢复上架/小程序解除禁搜需要您单位写一份申请。说明APP被下架/小程序被禁搜的原因、具体的问题、已整改的情况、以及企业内培训宣贯情况、未来避免出现个人信息合规问题的措施、完成备案情况、承诺未来将合规经营APP/小程序及相关业务、承诺因违背承诺导致发生违规行为自愿承担法律责任及依规处罚(下架APP/禁搜小程序、关停服务器、封锁ip等)。编写好后请盖单位公章,扫描后将电子文件发送至管局邮箱 gdca_wac_app@gd.gov.cn。这边收到申请邮件后才会继续走下一步流程,请及早提交。
最后
最后磕磕绊绊还是重新上架成功,总体虽然繁琐但还是算比较顺利。不过,尽量还是别等到下线的那一刻吧。。。如果想要广东省的整改模板可以私信我。
总结一下吧:
- APP如果被通报了,要在限定时间内完成整改并上架应用商店。要不然复测的时候在应用商店没有下载到最新版本的包,问题依旧存在肯定会被下架的;
- 不幸被下架的APP企业,也不要着急。重点要做的就是先知道自己的APP具体存在哪些问题,然后有针对性的整改;
- 不知道APP问题怎么整改或者不确定APP问题是否整改到位的话,建议找个专业的第三方APP检测机构开展隐私合规检测;
- APP全部整改到位后,根据官方发布的APP恢复上架流程图逐步操作,最后等待重新上架即可。
建议:
各企业的APP一定要根据监管的要求严格落实APP个人信息保护工作,确保APP的安全和隐私合规,不要抱有侥幸心理。
最后请大家猜猜,哪个应用市场最先解禁的?哪个到现在还没解禁。
来源:juejin.cn/post/7569377216896090163
做好自己的份内工作,等着被裁
先声明,本文不是贩卖焦虑,只是自己的一点拙见,没有割韭菜的卖课、副业、保险广告,请放心食用。
2022 年初,前司开始了轰轰烈烈的「降本增笑」运动,各部门严格考核机器成本和预算。当然,最重要的还是「开猿节流」。

幸好,我所在部门是盈利的,当时几乎没有人受到波及。
据说,现在连餐巾纸都从三层的「维达」换成两层的「心心相印」了,号称年节约成本 100 多万。我好奇的是,擦屁股时多少会沾点 💩 吧?这下,真是名正言顺的 💩 山代码了。
2022 年 7 月底,因为某些原因,结束 10 年北漂回老家,换了个公司继续搬砖。
2023 年,春节后不久,现司搞「偷袭」,玩起了狼人杀,很多小伙伴被刀:
清晨接到电话通知,上午集体开会,IT 收回权限,中午滚蛋
好在是头一回,补偿非常可观,远超法律规定的「N+1」。
2024 年,平安夜,无事发生。
2025 年 1 月,公司年会,趣味运动会,有个项目是「财源滚滚」,下图这样的:

有个参赛的老哥调侃道,这项目名字不吉利啊,不应该参加的。无巧不成书,年后他被刀了。。。
这次的规模远小于 2023 年,但 2025 年也不太平,「脉脉」上陆续有人说被刀或者不续签,真假未知。
实话说,我之前从未担心过被裁,毕竟:
名校硕士,经历多个大厂,有管理经验
热爱编程,工作认真负责,常年高绩效
但是,随着 AI 的快速迭代,我现在感觉自己随时可能被刀了。AI 能胜任 log 分析、新功能开发、bug 修复等绝大部分日常工作,而且都完成的很好。再配合 AI 自己写的MCP,效率肉眼可见的提高。
亲身体验,数百人开发的千万行代码级别的项目,混合了Java/Kotlin/OC/C++/Python等各种语言。跟Cursor聊了几句,它就找到原因并帮忙修复了。如果是自己看代码、问人、加 log、编译,至少得半个小时。
那还要码农干啥呢?即使是留下来背锅,也要不了这么多啊。
距离上次「狼人杀 」,三年之期已到。今年会有「狼人杀 2.0」吗?我还能平稳落地吗?
无所谓了,我早已准备好后路:

头盔和衣服真是我买的,还有手套未入镜,我感觉设计很漂亮,等天气暖和后,当骑行服穿。
汽车,小踏板,大踏板,足以覆盖滴滴、外卖、闪送三大朝阳行业。家里还有个小电驴,凑合能放到后备箱,承接代驾业务问题不大。
以上,虽然是开玩笑,但我对「是否被刀、何时被刀」,真的是无所谓。因为:
一个人的命运啊,当然要靠自我奋斗,但也要考虑历史的进程
公司为了长远的发展,刀人以降低成本,再用 AI 来提高效率,求得股价长红。对此,我十分理解,换我当老板,也会这么干。
作为牛马,想太多没用,我们左右不了这些事。不夸张的说,99.9999% 的码农是不可能干到退休的,和死亡一样,被刀只是早晚的事。更扎心的是:
人不是老了才会死,而是随时会死
当下的工作也一样,并不是摸鱼或者捅娄子才会被刀,而是随时会被刀,与个人的努力、绩效关系不大。常年健身的肌肉男,也可能猝死,只是概率低点,并不是免死金牌。
生命,从受精的那一刻起,就在走向终点。工作,从入职的那一刻起,就在走向(主动/被动)离职。
所以,虽然我现在感觉自己随时可能被 AI 替代,但我的心态一直都没变,就是标题所言:
做好自己的份内工作,等着被裁
不是消极怠工,我始终认真完成每一项任务,该加班加班。并非为了绩效,是因为自己的责任心,要对的起工资。至于公司哪天让我滚蛋,我决定不了,更改变不了。就像对待死亡一样,坦然接受之,给够补偿就好。

对于 AI,还想再啰嗦两句:
- 虽然 AI 很牛逼,但最终还是需要人来判断代码的对错。此时,工程师的价值就体验出来了,所以 AI 是帮我干活的小弟,而不是竞争对手。
- AI 扩大了我们的能力边界,人人都可以是前端、后端、客户端、UI 设计全通的「全栈工程师」,至少可以是「全沾工程师」,「雨露均沾」的沾。
滚蛋之后呢?我不知道,现在有多少公司愿意招 40 岁高龄码农?据说前司招聘 35 岁普通员工都要 VP 审批了,真是小刀剌屁股,开了眼了。
好在,我家人的物质欲望极低,对衣服、手机、汽车没有任何追求,老婆不用化妆品和护肤品,也没买过一个包。即使不上班,积蓄也能撑一段时间。
所以,强烈建议当前北上广深拿高薪的老哥老妹们,除非万不得已,千万不要像我一样断崖式降薪回老家。趁年轻,搞钱比啥都重要。

对了,我目前有两个利用自身优势的基于 AI 的创业方向。网友们帮忙把把关,如果哪天真失业了,看能否拉到几个亿的风投,谢谢!
- 偏胖圆脸,AI 加点络腮胡,再买几双白袜子
- 身高 180,AI 换个美女脸,黑丝高跟大长腿

来源:juejin.cn/post/7593771861323726874
离职转AI独立开发半年,我感受到了真正的生活
离职转AI独立开发半年,我感受到了真正的生活
我的新产品:code.lucids.top/
开场白:一个不被理解的决定

2022年12月的最后一天,我收拾了自己的小盒子,里面装着我在这家互联网公司工作的所有痕迹:一个定制水杯,几本技术书籍,和一摞写满代码思路的便利贴。HR部门的小姐姐看着我签完最后一份文件,表情有些复杂:"小张,你才来半年就走,真的想好了吗?这个时候辞职,外面行情不好..."
我点点头,没多解释。如何向别人解释我这个2000年出生的"孩子",毕业仅仅半年就对光鲜的互联网工作心生倦意?如何解释我不想再每天凌晨两点被产品经理的消息惊醒,然后爬起来改几行代码?如何解释我想追求的不只是一份体面的工资和一个看起来不错的头衔?
当我走出公司大楼,北京的冬风刮得我脸生疼。我的储蓄只够支撑我半年,而我计划做的事情——成为一名AI独立开发者——在大多数人眼中无异于天方夜谭。"你疯了吧?现在的独立开发者,有几个能养活自己的?"这是我最好朋友听到我计划时的反应。
事实证明,他错了。我也曾经错了。而现在,当我坐在自己选择的咖啡馆,以自己喜欢的节奏工作,看着用户数突破10,000的后台数据,我知道这半年的挣扎、焦虑和不安都是值得的。
职场困境:我在互联网大厂的日子
回想起入职的第一天,一切都充满希望。校招拿到知名互联网公司的offer,年薪30万,比许多同学高出不少。父母骄傲地向亲戚们宣布他们的儿子"找到了好工作"。
然而现实很快给了我当头一棒。
我被分到一个负责内部工具开发的小组。领导在入职第一天就明确告诉我:"小张,我们这个组不是核心业务,资源有限,但任务不少,你得做好加班的准备。"
第一个月,适应期,我每天工作10小时,感觉还能接受。到了第二个月,一个重要项目启动,我开始习惯每天凌晨回家,第二天早上9点又准时出现在公司。最夸张的一次,我连续工作了38个小时,只为了赶一个莫名其妙被提前的deadline。
# 当时的我就像这段无限循环的代码
while True:
wake_up()
go_to_work()
coding_till_midnight()
get_emergency_task()
sleep(2) # 只睡2小时
工作内容也让我倍感挫折。作为一名热爱技术的程序员,我希望能够参与有挑战性的项目,学习前沿技术。但现实是,我大部分时间都在做重复性的维护工作,修复一些简单但繁琐的bug,或者应对产品经理们不断变化的需求。
我感到自己正在成为一个"代码工具人",一个可以被随时替换的齿轮。我的创造力,我对技术的热情,我想为这个世界带来一些改变的梦想,都在日复一日的996中渐渐磨灭。
转折点:AI浪潮中看到的希望
2022年底,ChatGPT横空出世。作为一个技术爱好者,我第一时间注册了账号,体验了这个令人震惊的产品。我记得那天晚上,我熬夜到凌晨三点,不断地与ChatGPT对话,测试它的能力边界。
"这太不可思议了,"我对自己说,"这将改变一切。"
随后几周,我利用所有空闲时间(其实并不多)研究OpenAI的API文档,尝试构建一些简单的应用。我发现,大语言模型(LLM)并不像我想象的那样遥不可及,即使是一个普通开发者,只要理解其工作原理,也能基于它创造出有价值的产品。
同时,我开始关注独立开发者社区。我惊讶地发现,有不少人依靠自己开发的小产品,实现了不错的收入。虽然他们中的大多数人都经历了长期的积累,但AI技术的爆发似乎提供了一个弯道超车的机会。
这个想法越来越强烈,直到有一天晚上,当我又一次被加到一个紧急项目里,领导发来消息:"小张,这个需求很紧急,今晚能上线吗?"
我望着窗外的夜色,突然感到一阵前所未有的清晰。
我回复道:"可以,这是我在公司的最后一个项目了。"
第二天,我提交了辞职申请。
技术探索:从零开始的AI学习之路
辞职后的第一个月,我给自己制定了严格的学习计划。每天早上6点起床,先锻炼一小时,然后开始我的"AI课程"。
首先,我需要理解大语言模型的基本原理。虽然我有编程基础,但NLP和深度学习对我来说仍是比较陌生的领域。我从《Attention is All You Need》这篇奠定Transformer架构的论文开始,通过各种在线资源,逐步理解了当代大语言模型的工作机制。
# 简化的Transformer注意力机制示例
def scaled_dot_product_attention(query, key, value, mask=):
# 计算注意力权重
matmul_qk = tf.matmul(query, key, transpose_b=True)
# 缩放
depth = tf.cast(tf.shape(key)[-1], tf.float32)
logits = matmul_qk / tf.math.sqrt(depth)
# 添加掩码(可选)
if mask is not :
logits += (mask * -1e9)
# softmax归一化
attention_weights = tf.nn.softmax(logits, axis=-1)
# 应用注意力权重
output = tf.matmul(attention_weights, value)
return output, attention_weights
然后,我需要掌握如何有效地利用OpenAI、Anthropic等公司提供的API。这包括了解Prompt Engineering的技巧,学会如何构建有效的提示词,以及如何处理模型输出的后处理工作。
我还深入研究了向量数据库、检索增强生成(RAG)等技术,这些对于构建基于知识的AI应用至关重要。
这个余弦相似度公式成为了我日常工作的一部分,用于计算文本嵌入向量之间的相似性。
同时,我不断实践、不断失败、不断调整。我记得有一周,我几乎每天睡眠不足5小时,只为解决一个模型幻觉问题。但与公司工作不同的是,这种忙碌源于我的热情和对问题的好奇,而非外部压力。
产品孵化:从创意到实现
学习的同时,我开始思考自己的产品定位。在观察市场和分析自身技能后,我决定开发一款面向内容创作者的AI助手,我将其命名为"创作魔法师"。
这个产品的核心功能是帮助博主、自媒体人和营销人员高效创作内容。与市面上的通用AI不同,它专注于内容创作流程:从选题分析、结构规划、初稿生成到细节优化和SEO改进,提供全流程支持。
产品开发过程中,我遇到了许多挑战:
- 技术架构选择:作为独立开发者,资金有限,我需要在功能与成本间找平衡。最终我选择了Next.js + TailwindCSS搭建前端,Node.js构建后端,MongoDB存储数据,Pinecone作为向量数据库存储文档嵌入向量。
- 模型优化:为了降低API调用成本,我设计了一套智能路由系统,根据任务复杂度自动选择不同的模型,简单任务用更经济的模型,复杂任务才调用高端模型。
- 用户体验设计:没有设计团队,我自学了基础UI/UX知识,参考优秀产品,反复调整界面直到满意。
- 运营与推广:这对我这个技术人来说是最大挑战。我学会了编写有吸引力的产品描述,设计落地页,甚至尝试了简单的SEO优化。
最艰难的时刻是产品上线后的第一个月。用户增长缓慢,每天只有个位数的新注册。我开始怀疑自己的决定,甚至一度考虑放弃,重新找工作。
转机:从10个用户到10,000用户
转机出现在上线后的第二个月。一位拥有20万粉丝的自媒体创作者使用了我的产品,对效果非常满意,在他的平台上分享了使用体验。这篇分享在创作者圈内引起了不小的反响。
24小时内,我的注册用户从原来的不到200人猛增至1500多人。服务器一度崩溃,我熬夜进行紧急扩容和优化。这次意外的曝光让我意识到,产品定位是正确的,市场需求确实存在。
接下来,我调整了运营策略:
- 主动联系内容创作者,提供免费试用,换取真实反馈和可能的推荐。
- 根据用户反馈快速迭代产品功能,每周至少发布一次更新。
- 建立用户社区,鼓励用户分享使用技巧,相互帮助。
- 编写详细的使用教程和最佳实践指南,降低用户上手难度。
// 用户增长追踪系统的一部分
function trackUserGrowth() {
const date = new Date().toISOString().split('T')[0];
db.collection('metrics').updateOne(
{ date: date },
{
$inc: {
newUsers: 1,
totalImpressions: userSource.impressions || 0
},
$set: {
lastUpdated: new Date()
}
},
{ upsert: true }
);
}
三个月后,用户数突破5,000;半年后,达到10,000。更令人欣慰的是,付费转化率远超我的预期,达到了8%左右,而行业平均水平通常在2-3%。
我分析了成功原因:
- 产品聚焦特定痛点:不追求通用性,而是深入解决内容创作者的具体问题。
- 及时响应用户需求:独立开发的优势是决策链短,能快速调整方向。
- 社区效应:用户之间的口碑传播形成了良性循环。
- 个性化服务:我经常亲自回复用户问题,提供定制化建议,这在大公司很难做到。
财务自由:从赤字到收支平衡
谈到收入模式,我采用了"免费+订阅"的策略:
- 基础功能完全免费,足以满足普通用户的需求
- 高级功能(如批量处理、高级模板、深度分析等)需要订阅
- 提供月度计划(49元)和年度计划(398元,约33元/月)
最初几个月,收入微乎其微。我记得第一个月的收入仅有287元,而我在公司的月薪是25,000元。差距之大,让我一度怀疑自己的决定。
但随着用户增长,情况逐渐改善。第三个月收入突破5,000元,第四个月达到12,000元,第六个月——也就是我离职半年后,月收入达到了23,500元,基本与我原来的工资持平。
考虑到我现在的生活成本降低了(不需要租住在北京市中心的高价公寓,不需要每天通勤),实际上我的生活质量反而提高了。
更重要的是,这些收入是真正属于我的,不依赖于任何公司的评价和KPI。我建立了自己的"被动收入引擎",它可以在我睡觉时继续为我工作。
生活平衡:找回被工作吞噬的自我
收入只是故事的一部分。对我来说,最大的变化是生活方式的改变。
在互联网公司工作时,我的生活可以用一句话概括:工作即生活。我几乎没有个人时间,健康状况逐渐恶化,社交圈萎缩到只剩同事,爱好被束之高阁。
成为独立开发者后,我重新掌控了自己的时间:
- 合理作息:我不再熬夜加班,保持每天7-8小时高质量睡眠。
- 定期锻炼:每天至少运动一小时,半年下来体重减轻10kg,体脂率降低5%。
- 地点自由:我可以在家工作,也可以去咖啡馆,甚至尝试了几次"工作旅行",边旅游边维护产品。
- 深度学习:不再为了应付工作而学习,而是追随个人兴趣深入研究技术。
- 重拾爱好:我重新开始弹吉他,参加了当地的音乐小组,结识了一群志同道合的朋友。
这种生活方式让我找回了工作的意义——工作是为了更好的生活,而不是生活为了工作。我的创造力和工作热情反而因此提升,产品迭代速度和质量都超出了预期。
技术反思:AI时代的个人定位
在这半年的独立开发经历中,我对AI技术和个人发展有了更深的思考。
首先,大模型时代确实改变了软件开发的范式。传统开发模式是"写代码解决问题",而现在更多的是"设计提示词引导AI解决问题"。这不意味着编程技能不重要,而是编程与AI引导能力的结合变得越来越重要。
# 传统开发方式
def analyze_sentiment(text):
# 复杂的NLP算法实现
words = tokenize(text)
scores = calculate_sentiment_scores(words)
return determine_overall_sentiment(scores)
# AI时代的开发方式
def analyze_sentiment_with_llm(text):
prompt = f"""
分析以下文本的情感倾向,返回'正面'、'负面'或'中性'。
只返回分类结果,不要解释。
文本: {text}
"""
result = llm_client.generate(prompt, max_tokens=10)
return result.strip()
其次,我认识到技术民主化的力量。曾经需要一个团队才能完成的项目,现在一个人借助AI工具也能完成。这为独立开发者创造了前所未有的机会,但也意味着差异化和创新变得更加重要。
最后,我发现真正的核心竞争力不在于熟悉某项技术,而在于解决问题的思维方式和对用户需求的理解。技术工具会不断更新迭代,但洞察问题和设计解决方案的能力将长期有效。
写给迷茫的年轻人
回顾这半年的经历,我想对那些和当初的我一样迷茫的年轻人说几句话:
- 公司经历有价值,但不是唯一路径:在大公司工作能积累经验和人脉,但不要把它视为唯一选择。如果环境压抑了你的创造力和热情,寻找改变是勇敢而非逃避。
- 技术浪潮创造机会窗口:AI等新技术正在重构行业,为个人提供了"弯道超车"的机会。保持开放心态,持续学习,你会发现比想象中更多的可能性。
- 找到可持续的节奏:成功不在于短期的爆发,而在于长期的坚持。设计一种既能推动目标实现又不会消耗自己的工作方式,才能走得更远。
- 用户价值胜过技术炫耀:最成功的产品往往不是技术最先进的,而是最能解决用户痛点的。专注于创造真正的价值,而不仅仅是展示技术能力。
- 享受过程,而非仅追求结果:如果你只关注最终目标而忽视日常体验,即使达到目标也可能感到空虚。真正的成功包含了对过程的享受和个人成长。
未来展望:持续进化的旅程
现在,我站在新的起点上。"创作魔法师"只是我旅程的第一步,我已经开始规划下一个产品,瞄准了另一个我认为有潜力的细分市场。
与此同时,我也在考虑如何扩大团队规模。虽然独立开发有其魅力,但有些想法需要更多元的技能组合才能实现。我计划在未来半年内招募1-2名志同道合的伙伴,组建一个小而精的团队。
技术上,我将继续深入研究大模型的微调和部署技术。随着开源模型的进步,在特定领域微调自己的模型变得越来越可行,这将是我产品的下一个竞争优势。
生活方面,我正计划一次为期两个月的"数字游牧"之旅,边旅行边工作,探索更多可能的生活方式。
路上会有挑战,也会有挫折,但我不再惧怕。因为我知道,真正的自由不在于没有困难,而在于面对困难时仍能按自己的意愿选择前进的方向。
当我在咖啡馆工作到黄昏,看着窗外的夕阳,我常常感到一种难以言喻的满足感。这种感觉告诉我,我正在正确的道路上——一条通往真正生活的道路。
如果你也在考虑类似的选择,希望我的故事能给你一些启发。记住,每个人的路都不同,重要的是找到属于自己的节奏和方向。
在这个AI加速发展的时代,机会前所未有,但终究,技术只是工具,生活才是目的。
来源:juejin.cn/post/7486788421932400652
把白领吓破防的2028预言,究竟讲了什么?
最近,一篇关于“2028年全球智能危机”的预测在硅谷和打工人的朋友圈里疯传。
很多朋友和同事都在狂转这篇充满洞见的报告,看完这篇报告,很多白领的第一反应恐怕是:
你妹的,赶紧把电脑咋了回家种地吧!白领不存在了。
- 广告传媒不存在了
- IT互联网不存在了
- 传统软件行业不存在了
……
震撼程度堪比物理学家被智子扰乱道心。
让我们看看这篇文章的原文长啥样:

核心观点:短期经济会增长,但其实是假象。因为大部分人没有受益,因此消费会受到暴击,而且会陷入恶性循环。

补充观点:那些靠解决不方便小摩擦的生意会完全被AI取代。

以及他对就业形式的估计也是非常悲观的:

并且,他认为这些冲击之下,信贷危机会如约而至,大规模的个体违约将会发生。
如果再结合一下作者所在的国家——阿美,似乎可以预见到斩杀线的大量降临。
一些行业预测
这篇预测的核心恐吓点可以总结为“白领护城河的三大崩塌”:
- 软件服务商(SaaS)的末日: AI智能体(Agent)普及后,人人都能直接用自然语言写出专属软件,不再需要花大价钱购买企业服务。
- 互联网广告模式的黄昏: 当AI助手能瞬间帮你货比三家、找到全网最低价时,谁还会去点击那些充满套路的商业广告?靠流量收租的公司将面临绝境。
- 智力劳动贬值: 这是最让人破防的一点。曾经高高在上的办公室脑力工作,其门槛被AI彻底踏破,脑力劳动变得廉价。
失业的白领怎么办呢?
铁人三项,吉祥三宝,选择总之不多。
这也难怪,白领们看到这篇文章会如此惊吓,难怪有人会陷入虚无,怀疑AI究竟是造福全人类,还是仅仅变成了资本家敛财、让普通人失业的机器 。
以史为镜
但如果我们跳出眼前的困境,把目光延申像更远的时光,看到远古时期。
- 奴隶时代的农业大发展之后:牛马和铁器大规模替代纯人力时,种地的人并没有消失。生产关系的变革让他们从任人宰割的农奴变成了农民。
你看,生产力的极大发展反而给了底层人民尊严。

- 第一次工业革命后:蒸汽机确实砸碎了传统纺织工人的饭碗,但它催生了现代服装工业。今天,围绕着服装不仅有工厂,更衍生出了电商投流、短视频打爆款等庞大的产业链 。

- 通信时代的“电报员下岗”: 电报员消失了,但随后诞生了庞大的电信运营商网络;纸媒衰落了,却迎来了自媒体和博主百花齐放的时代。

核心定律在于:工具的每一次史诗级升级,可能确实伴随着某些职业和岗位的消失,但都有更多的岗位应运而生。
AI 时代的新职业会是什么?
如果一位程序员跑去100年前的1926年,让当时民国年轻人畅想这位程序员的职位。
他可能猜错1000次,也想象不到神州大地上会有这么大一批人在面对着键盘写代码。
别急着给人类的岗位下死刑。
可能只是局限于人类当前的认知和时代局限,暂时无法想象出那些我们还未见识过的职业。

更宏观地看,我们现在定义的“打卡上班”,也许只是人类漫长历史中的一个过渡状态 。当生产力真的极大丰富时,未知虽然代表着恐惧,但也同样蕴含着无限重塑的可能。
来源:juejin.cn/post/7610636435847888911
项目经理被裁那天,没人替他说话
简单写个自我介绍。
我在团队里算不上的管理层,没有人事权,也不决定谁走谁留,但我参与的项目一旦出问题,最后都会落到我这里。进度卡住、需求反复、线上事故,会议上可以绕一圈再绕一圈,最终还是要有人把代码改完、把锅兜住。我清楚自己的位置,用武之地比较多的一个“多功能开发者”而已。还依稀记得,当初总部另外一个项目的入侵测,找的还是我,而不是再招一个人。
所以我很少参与评价人,只谈事,谈事实,谈项目是怎么一步步偏离轨道的。
先直接告诉大家结果吧,他被辞退了。
当初公司决定要不要这个人的时候,无意中跟我提到过。我只讲述了几个项目事故,以及其他同事和他合作时的态度。至于留不留他,我不想决定,也决定不了。
那个项目经理,其实并不“坏”。他不吼人,也不甩脸色,会议纪要写得很勤,群里回复永远是“收到”“我跟一下”。问题出在另一层面:需求变更没有留痕,风险评估永远是“可控”,节点延期总能找到外部理由。
上面看到的是一条被不断抚平的曲线,下面看到的是每天被推翻重来的开发计划。我们不是没提醒过,只是提醒被整理成了更好看的版本,再往上递的时候,已经失去了原本的锋利。当然,这些最后都会被归结为一句话——开发同学多努努力,多扩展下思维,补补这个缺点就好了。
但我认为,有些问题其实在内部一直被反复提起,只是从来没有被真正放到台面上说过。
团队里的其他项目经理,大多都有过开发背景。哪怕代码早就不写了,对功能复杂度、实现成本、技术边界心里都是有尺度的。评估的时候会留余量,也知道什么时候该踩刹车。
只有他完全没有开发经验,对一个需求的理解停留在“看起来不难”的层面。既怕自己显得不专业,又怕在会上被认为拖进度,于是每次评估都偏向最激进的版本,功能报得满,时间压到极限。
开发这边明知道不现实,那又怎么办呢?你能说得过他吗?况且领导也是只看结果,活干得快,公司赚得多,干得慢赚得少。所以开发也只能硬着头皮往前推。
一次延期还能解释成意外,两次三次之后,延期就成了默认选项。项目表面上在跑,实际上每一步都在透支客户的耐心。
他甚至能把一个月的功能,压成 7 个工作日。
结果显而易见。项目连夜上线,第二天直接崩溃:APP、小程序白屏,数据无法保存,ToC 的用户一个都打不开。我们凌晨 4 点发完版本,早上 6 点半问题出现,7 点钟起床开始处理。
我起床的时候就已经料到了。项目有他管控着,您就放一万个心吧,麻烦肯定少不了。
当时写功能的时候,有个同事请了丧假。他来了句逆天发言:“到时候你能把电脑带上吗?有事可以找你。”
我当时真想告诉他,兄弟,全公司不是只有他一个前端,这个项目也不是只有他一个前端。人家就请假 3 天,已经很紧张了,还让人把电脑带着,真特么丧良心。
真正的转折点,是那次 A 项目上线。
我没有提任何人的名字,也没有用情绪化的词,只是把时间线拉直:哪一天确认需求,哪一天推翻,哪一天出 PRD,哪一天出 UI,最终导致了什么结果。那份文档写得很长,不好读,也不“体面”,但它有一个特点——每一个问题,都自然地指向了同一个岗位职责。
我提交的时候,甚至没多想,只觉得这次总算把事情说清楚了。
事后我想过,如果我当初不写那份复盘,不跟领导说这些事,会不会结果不同。答案大概是否定的。项目不会因为沉默变好,问题也不会因为不点名而消失。
那天没人替他说话,并不是因为他人缘差,而是因为在那个位置上,他已经很久没有为任何人、任何结果,真正说过一句“这是我的责任”。
系统从来不需要情绪,它只是在某个时刻,停止了包容。
我后来也明白了一件事:在很多公司里,项目经理这个角色,本质上是一个缓冲层。缓冲需求、缓冲压力、缓冲管理层的焦虑。
但一旦缓冲只剩下过滤,没有承担,系统就会重新校准。
那天被裁的不是一个人,而是一种失效的角色设计。而这件事,迟早会发生在任何一个不再为结果站出来的位置上。
来源:juejin.cn/post/7598174154665623587
腾讯元宝遭微信处罚,狠起来连自己人都打?
一、事件回顾
近期,所有群小伙伴都在分享元宝,铺天盖地的现金红包,如下:

终于在今天,2月4日,微信安全中心发布公告,对腾讯元宝的春节红包活动进行处置——限制其在微信内直接打开。

理由?诱导分享。
根据公告,元宝红包活动通过"做任务""领红包"等方式,诱导用户高频分享链接到微信群等场景,干扰平台生态秩序、影响用户体验。
这还不是最离谱的。
最离谱的是什么?
元宝是腾讯的产品,微信也是腾讯的产品。
相当于腾讯用左手扇了右手一巴掌,然后说:"你违规了。"
二、魔幻现实
我们来还原一下这个离谱的场景:
微信(对元宝说):"根据《微信外部链接内容管理规范》第2.1.2条,你通过利益诱惑诱导用户分享外链,属于诱导分享违规。"
元宝(委屈):"可我是亲生的啊……"
微信(铁面无私):"亲生的怎么了?规则面前人人平等。"
好家伙,这波操作我愿称之为:
"大义灭亲" ✅
"六亲不认" ✅
"铁面无私" ✅
三、双标现场
更有意思的是,腾讯内部信中还试图挣扎:
"元宝春节红包活动在设计上,其基础逻辑是'无门槛领取'。用户无需完成诸如助力、集卡等任务,即可直接领取基础红包。与平台一贯反对的'诱导分享'模式有区别。"

翻译一下就是:
"我们这个不一样,用户不分享也能领红包。"
但问题是——
用户不分享,只能领基础红包;用户分享了,能领更多。
这叫什么?
这叫"不叫诱导分享,叫诱导你主动选择分享"。
跟"我不偷钱,我只是帮你保管"有什么区别?
四、讽刺拉满
整个事件最讽刺的是什么?
微信打击诱导分享,理由是"干扰平台生态秩序、影响用户体验、对用户造成骚扰"。
结果呢?
元宝红包活动在多个社交平台上刷屏,被网友质疑"诱导分享"。
然后微信不得不处罚自己的产品。
这叫什么?
搬起石头砸自己的脚。
不对。
这叫用石头砸自己的脚,然后说"看,我执行规则很严格"。
五、谁更受伤?
这个事件里,没有赢家。
元宝 → 活动被封,声誉受损?
微信 → 被网友群嘲"双标""自己打自己"
腾讯 → 内部互殴,家丑外扬
用户 → 本来能领红包,现在只能领个寂寞
四输。
六、写在最后
其实吧,这事儿要是换个角度看,也算是一件好事。
至少说明微信是认真执行规则的?。至于内部怎么协调,那是他们的事。
哪怕是亲儿子,该罚还是罚。过几天我就可以名正言顺的屏蔽其他不相关链接了,
但有一说一,下次做活动之前,能不能先内部对齐一下?
别闹到最后,自己把自己给处罚了。
怪尴尬的。各位当个乐看吧!

七、还有后续?
正当我以为这件事已经足够魔幻的时候,2月6日,更魔幻的事情发生了。
阿里千问正式上线"春节30亿免单",发放奶茶免单卡。
结果呢?
千问的红包分享链接,也被微信屏蔽了。

页面显示:"网页存在诱导或误导下载/跳转的内容,需要跳转第三方浏览器访问。"
好家伙,原来这不是"针对腾讯自家产品"的骚操作。
这是 "一视同仁"——不管你是腾讯的,还是阿里百度的,统统屏蔽。
发生了什么?
让我们来捋一捋时间线:
- 2月4日:微信处罚腾讯元宝,理由是"诱导分享"
- 2月6日:阿里千问上线春节免单活动,分享链接被微信屏蔽
- 同时,百度文心助手也因为该原因被封杀过
现在情况变成了:
微信(对千问说):"诱导分享,违规。"
千问(一脸懵):"可你们前几天刚把自己儿子也封了啊……"
微信(面无表情):"规则面前,人人平等。"
这波操作我愿称之为:
"铁面无私包青天" ✅
"大义灭亲还不够,六亲不认才叫绝" ✅
"我封起来,连自己都不放过" ✅
用户有多难?
最惨的是谁?
是用户啊!
- 想领腾讯元宝的红包 → 微信里打不开
- 想领阿里千问的免单券 → 微信里也打不开
- 想领百度文心的福利 → 同样打不开
用户现在的心态:
"我只是想领个红包,怎么感觉在闯关?"
"这是微信还是迷宫?"
"下个APP要跳三次,转三次浏览器,我太难了……"
更离谱的是什么?
部分用户在千问APP点击分享活动至微信好友时,已自动改为复制口令形式。
什么意思?
千问学乖了。
知道直接分享会被屏蔽,索性改成复制口令,让用户自己打开APP粘贴。
这一波,叫 "上有政策,下有对策"。
但问题是 —— 用户复制口令之后,可能大概率还是打不开。
因为微信对口令链接的态度,你们懂的。
所以这说明什么?
说明微信是认真的。
不是"双标",是"统一标准"。
不是"自己打自己",是"打遍天下无敌手"。
甭管你是腾讯亲儿子,还是阿里外甥女,只要在我的地盘发红包,就得按我的规矩来。
这个角度怎么说呢……
竟然有点佩服?
至少人家是真的在执行规则,没有因为是自家产品就网开一面。
(虽然出发点可能只是为了维护生态)
但有一说一,这对普通用户来说,确实挺烦的。
本来高高兴兴领个红包,结果要在三个APP之间反复横跳。
用户体验?不存在的。
红包?不存在的。
只有满满的心累。
八、最后再说几句
所以这篇文章应该改成:
《微信:不是针对谁,在座的各位发红包的,都是垃圾》——包括我自己的产品。
这叫什么?
"宁可错杀三千,不可放过一个" ✅
"宁可自损八百,也要杀敌一千" ✅
"我狠起来,连自己都打" ✅
不过话说回来,这对普通用户来说,意味着什么呢?
意味着想在微信群里领红包,以后会越来越难。
平台之间的互相封杀,只会让用户的操作成本越来越高。
今天封腾讯,明天封阿里,后天封百度……
以后每个APP都得学会"复制口令"这门手艺。
这大概就是所谓的"互联网寒冬"吧——
不是没有红包,而是红包在各APP之间筑起了高墙。
你在这头,红包在那头,中间隔着一个"请跳转浏览器"的提示。
世道艰难,且领且珍惜吧。
你觉得呢?欢迎评论区聊聊。你参与元宝抢红包了吗?抢到了多少钱?千问的免单券你领到了吗?
💡 免责声明(娱乐向)
本文仅供娱乐,请勿当真,不代表任何人立场。
红包虽好,可不要贪杯哦~理性消费,开心过年!🎉
来源:juejin.cn/post/7602555027304267816
【2025年终总结】对象有了,工作没了
现在是2026年1月,谨以此文记录我的2025。
2025年初,从老家永州回来的第一天,开启了减肥计划,不断地跑跑跑(25年总共跑了260km),吃吃吃(每天保持热量缺口),三个月时间减了30斤,整个人精神面貌好了一大圈。休产假回来的同事Q问同事F说:“这是之前那个人吗?”同事F:“是啊,就是之前和我一起吃饭的那个人。”“哦,感觉整个人清爽了很多。”体脂秤评分也从59分变成了100分,整个人也自信轻松了起来。效果就像这样:

老爸说:“你现在的穿搭太土了,不适合你现在的年龄。”然后就去B站关注穿搭up主,跟up主们学习穿搭,收到了来自身边朋友同事们的夸赞,甚至走在大街上都有男生直接过来问我做什么工作的,说穿搭真的很棒,并且追着我不放♂,我说谢谢不要这样。但是小h(后面会介绍)觉得我穿得怪怪的,所以我还是感觉还有进步的空间,需要不断学习进步。

4月份的时候,同事F突然问我端午节有没有想去新疆玩的想法,同行的人员是同事F的男朋友Q哥和另外一个男生L,我答应了下来。一周之后,F姐就叫我可以先请假,请到四天假之后再买来回的机票,因为男生L没请到假从而导致机票白买了。我说:“啊?那不是只有我们三个人了?” F姐说可以让我再找个搭子,但是我找了一圈都没有人愿意去。于是我请了四天假加上端午假加一周的周六日一共9天假,并且买好了来回的机票准备和Q哥、F姐去新疆。
但是意外出现了,要准备去新疆的前夕,我的外公去世了。于是我连夜买了高铁票回家吊丧,并且和Q哥、F姐道歉有可能不能陪他们去新疆了。他们安慰我说没事,机票可以留着下次用。但是外公的追悼会搞了5天就全部完毕,于是我马不停蹄地回到深圳准备和他们一起出发。
历经18个小时的路程,终于第二天12点到达新疆。租好车之后直达赛里木湖!

之后去了很多很多的地方,感受一望无际的大草原,在上面我们如一批脱缰的野马一样疯狂地奔跑;去了雪山,在雪山下面放着歌,随着旋律跳着肆意的舞;骑着白马在丛林里面疯狂地驰骋;在公路上开着越野车,车里放着欢快的音乐;感受着赛里木湖的风情万种,体验着晚上10点钟的日落,品尝着新疆的各种美食,包括但不限于手臂粗的羊肉串,油香四溢的手抓饭,正宗的新疆炒粉等等,享受着食物美味的同时又感慨于新疆的物价(100元三人吃烧烤吃到饱)。得到了一组Q哥和F姐拍得活人感十足的照片(感谢Q哥和F姐):




但是,欢乐的时光总是这么短暂,在玩了9天之后,我们恋恋不舍地回来了。又经过18个小时的行程,我们回深圳了,因为愉快的假期结束了,第二天要上班(艹)。至于工作没了这件事最后再说。
2025年写作的次数少了,相比于去年的49篇,今年只写了31篇。写了这么多年(6年),第一次有想休息一段时间的欲望了,AI对博客创作者的打击还是太大,连Stack Overflow论坛都快要坚持不住了。现在几乎没什么人愿意遇见问题在论坛搜索对应的答案,所以在CSDN等各大平台写的文章也基本没什么阅读量了。今年写博客赚的1000多块钱的回报对比其所付出的时间与精力,目前来看也几乎是纯纯地为爱发电了,所以我同事H建议我往视频方面转,把文章做成视频去哔哩哔哩投稿,这也是我2026年思考的目标之一。

今年也看了很多的电影,最让我印象深刻的是指环王系列(《指环王》《霍比特人》),拍得真的很好。

看了好几本实体书,例如《爱的五种能力》《亲密陷阱》《人性的弱点》,还有看了5个月的《三国演义》原著。看书本原著对应于看电视剧,觉得看书是思考的过程,看电视剧是视觉的享受。《三国演义》不愧是四大名著之一,罗贯中写得太好了!但是里面有不少的文言文,需要边看边翻译,因此花费了很多的时间。

也把之前唯一没看过的四大名著对应的电视剧系列的《红楼梦》给看完了,贾府前面多光辉,后面多惨淡;从新疆回来之后看了同事F推荐的《我的阿勒泰》,非常好看!很平静的叙事风格。还追了快100集的《外来媳妇本地郎》(之前还想进港企来着)。

游戏玩了《巫师三》《艾尔登法环》,《巫师三》虽然是十年前的作品,但是依旧顶流!《艾尔登法环》如果玩过《黑神话·悟空》的话,会感觉比较简单,容易上手,但是从来没玩过这种类型的游戏很容易弃坑(纯折磨),虽然我现在都没玩完,很少时间投入到《艾尔登法环》里面去了。手游就是《三国志·战略版》,是同事H推荐的,还不错的一个SLG游戏,同时也是让我去看《三国演义》原著的最主要原因。

接下来介绍一下我的宠物:王富贵,我收养的英短蓝白猫,因为我的博客名字叫《掉头发的王富贵》所以给他取名叫《王富贵》。去年都没有好好介绍一下,一句话就带过了。他是他一岁的时候别人要回老家不要了,然后我收养的,现在已经快3岁半了,从原来的瘦骨嶙峋只有6斤养到了8.6斤(虽然还是很瘦)。刚接过来的时候是一个很不健康的小猫,疫苗疫苗没打,也有耳螨、肠胃炎等等,浑身也脏兮兮的,最主要的是超级不喜欢喝水,导致了尿闭,已经去了好几次宠物医院了。也感谢他一直陪着我,虽然有时候真的很烦:

B站也只发了6个吉他弹唱的视频,练吉他的时间也慢慢少了,且小h对我弹吉他好像不是很感兴趣,所以练的时间就更少了。但是自己在家的时候感情氛围到了还是会拿起吉他弹几首,这个是为数不多坚持了7年的爱好了,感谢陪伴了我这么多年的老朋友:

紧接着就是我认识了我的女朋友小h。你要问我怎么认识的?我说是国家发的你信吗……背景:我们都是团员且老家是一个地方,自然而然团支部就是一样的。然后大学毕业之后团员档案要从学校转出来到老家的团支部,所以我们就有一个微信群用来统一管理从大学毕业转出来的共青团员们。
突然有一天小h的公司成立了自己的团支部,需要把团员档案转到她的公司去,但她不知道具体流程,于是在共青团小程序里面看到我是团支书,就在群里面加我的微信问我转团的流程,于是就这么认识了。后面一起聊天,一起打游戏,一起刷抖音,然后一起谈恋爱了。所以……感谢国家,感谢共青团。

25年也做了一件自认为很牛逼的事情:因为大学的时候去捐过一次血并且同意加入中华骨髓库,23年收到了一个电话,说我的骨髓和一位患者匹配上了,匹配上的概率为几十万分之一,问我愿不愿意捐骨髓(造血干细胞)救他。我思考了一下,如果我不救他,他活下去的机会几乎为0,然后我就同意了。但是过了很久都没音讯。直到24年,他们又联系我,问我意愿有没有改变,我斩钉截铁说没有;25年又隔几个月就打电话问我意愿有没有改变,我还说没有。然后就开始抽血二次匹配确认,做体检,打动员剂(使造血干细胞的浓度增高)。因为患者生病体重涨到了190斤,所以我打动员剂要比其他人量要多,次数要多,一共打了5天动员剂,浑身疼了5天。最后12月8日完成了骨髓捐献,别人要抽4个小时的血我抽了7个半小时。

之后收到了一个证书,本来公司也有一块荣誉证书的,但是中华骨髓库听说公司没同意红头文件上面的带薪休假请假函所以就没给公司做了,上面写着为表彰公司的人文关怀什么什么的……但是这证书不是最重要的,最主要的是让一个人的生命得以重生,所以我觉得这是我2025年做过最牛逼的事情。

接着时间来到了12月24日,我们研发中心老大叫我去一下会议室。我开始以为是问我献骨髓的事情。果然不出我所料,问我恢复得怎么样了什么什么之类让我注意保养,聊了一会之后话锋一转,说公司现在项目越来越难做,公司战略层面优先考虑把来公司不久员工裁掉,这样赔偿的成本也会少一点,问我有什么想法。我就说既然是公司战略层面的决策,那我也不好说什么了,就拿着赔偿走人呗。

就这样,我被裁掉了,跟我同一批进来的小伙伴们全部被干掉,除了一些没有谈拢的同事还继续留了下来。然而,这样的剧本我经历了两次了……23年经历了一次,现在又要经历一次:公司要被收购->准备裁员->收购失败->裁员。不过好在赔偿到位,这次公司和我的谈判算是和平分手,好聚好散。
我的最后工作时间是2026年1月30号,所以当大家看到这篇文章的时候,我在这家公司待的时间不多了。回想起来这公司625天时间里,主要做的就是一个叫做AI智课的一个产品,是一个在线网页视频编辑器,结合AI去赋能课件编辑,大概就长这样:


可以说我来的625天的时间里,大部分时间都在开发这款产品,从最开始的技术选型,到前期的demo,中期的优化,后期的发布以及后面很多个版本的迭代,从0到1,全程都是我在参与,付出了大量的心血。至于其他的时间都去做其他的产品去了。加班也加得挺多的,看看2025年的记录,出勤218天,但是额外的加班就有62天(62×8=496个小时),加班占比28%(而且我们工作日加班是没有加班费的)。期间也因为这个产品拿过2次A绩效(多几百块钱工资)。

2025年,作为湖南永州人来说还发生了一件大事,那就是湘超永州夺冠了!

很遗憾,没能去现场感受夺冠的氛围。记得夺冠的那一刻,老爸说:家里和过年一样,城市里面都放起了烟花。我看直播结束的时候也热泪盈眶了,从一个不被看好的叫花子队到最后的夺冠队,经历这一路走过来非常非常不容易。虽然现在还没有回去,但是看着永州官媒发的很多文章,我甚至在屏幕的这一边都能感觉到湘超给永州带来的热度与影响已经超乎想象了。欢迎大家来永州玩!
这就是我的2025,过完年又要找新工作了,重新出发,砥砺前行,爱情事业双丰收。谢谢你看到这里,希望新的一年里面,屏幕前的你,身体健康,八方来财。你在评论区里说:谢谢,你也是。

感谢大家的观看,我是掉头发的王富贵,一个热爱分享的普通程序员,期待在未来的日子里与大家一起成长!

附上之前的总结
| 标题 | 链接 |
|---|---|
| 【2021年终总结】一位工作一年的程序员的2021年度总结 | masiyi.blog.csdn.net/article/det… |
| 【2022年终总结】我,做了两年程序员,存了巨款5000,你们拿什么跟我比? | juejin.cn/post/718430… |
| 【2023年中总结】是的,我从一家世界前百强企业毕业了,进入了一家只有20人的小企业。。。 | juejin.cn/post/725124… |
| 【2024年终总结】深圳工作生活评测 | juejin.cn/post/746286… |
来源:juejin.cn/post/7595484390428688419
中国四大软件外包公司
在程序员的职业字典里,每次提到“外包”这两个字,似乎往往带着一种复杂的况味,不知道大家对于这个问题是怎么看的?
包括我们在逛职场社区时,也会经常刷到一些有关外包公司讨论或选择的求职帖子。
的确,在如今的 IT 职场大环境里,对于许多刚入行的年轻人,或者很多寻求机会的开发者来说,外包公司或许也是求职过程中的一个绕不开的备选项。
今天这篇文章,我们先来聊一聊 IT 江湖里经常被大家所提起的“四大软件外包公司”,每次打开招聘软件,相信不少同学都刷到过他们的招聘信息。
他们在业内也一度曾被大家戏称为“外包四大金刚”,可能不少同学也能猜到个大概。
1、中软国际
中软可以说是国内软件外包行业的“老大哥”之一,拥有约 8 万名员工,年收入规模高达 170 亿。
而且中软的业务版图确实很大,在国内外 70 个城市重点布局,在北京、西安、深圳、南京等地均拥有自有产权的研发基地。
提起中软,很多同学的第一反应是它和华为的“深度绑定”。
的确,华为算是中软比较大的合作伙伴之一,同样,这种紧密的合作关系,让中软在通信、政企数字化等领域获得了不少份额。
在中软的体系里,经常能看到一种非常典型的“正规化”打法。它的流程比较规范,制度也非常完善。这对于刚毕业的大学生或者想要转行进入 IT 的人来说,算是一个不错的“练兵场”。
不过近年来,中软也在拼命转型,试图摆脱单纯的外包标签,在 AIGC 和鸿蒙生态上投入了不少精力。
2、软通动力
如果说上面的中软是“稳扎稳打”的代表,那么软通给人的感觉就是“迅猛扩张”。
软通虽然成立时间比中软晚了几年,但发展势头却非常迅猛。
根据第三方机构的数据显示,软通动力在 IT 服务市场的份额已经名列前茅,甚至在某些年份拔得头筹。
软通这家公司一直给人的印象是“大而全”。它的总部在北京,员工规模甚至达到了 90000 人。
而软通动力的上市,一度给行业打了一剂强心针。它的业务线覆盖了从咨询到 IT 服务的全生命周期,包含了金融、能源、智能制造、ICT 软硬件、智能化产品等诸多方面。
3、东软集团
如果说前两家是后来居上的代表,那么东软就是老牌子软件公司的代表。
成立于 1991 年的东软,是中国上市较早的软件公司之一,早在 1996 年就上市了。
东软最初创立于东北大学,后来通过国际合作进入汽车电子领域,并逐渐踏上产业化发展之路,其创始人刘积仁博士也算是软件行业的先驱大佬了。
东软的业务重心很早就放在了医疗健康、智慧城市和汽车电子等这几个领域。
说不定现在很多城市的医院里,跑着的 HIS 系统有可能就是东软做的。
虽然近年来东软也面临着转型阵痛,但它在医疗和智慧城市等领域的积淀,依然是其他外包公司难以撼动的。
4、文思海辉(中电金信)
这家公司的发展历程比较特殊,它经历过文思创新和海辉软件的合并,后来又加入了中国电子(CEC)的阵营,成为中国电子旗下的一员,并且后来又进一步整合为了中电金信。
所以它现在更多地以“中电金信”的身份出现。
文思海辉的强项在于金融和数智化领域,尤其银行业 IT 项目这一块做了非常多,市场份额也很大。
那除了上面这几个“外包巨头”之外,其实很多领域还有很多小型外包公司,有的是人力资源外包,有的则是项目外包。
每次提到「外包」这个词,可能不少同学都会嗤之以鼻,那这里我也来聊聊我自己对于外包的一些个人看法和感受。
说实话,我没有进过外包公司干过活,但是呢,我和不少外包公司的工作人员共事过,一起参与过项目。
记得老早之前我在通信公司工作时,我们团队作为所谓的“甲方”,就和外包员工共事过有大半年的样子,一起负责公司的核心网子项目。
有一说一,我们团队整体对外包同事都是非常友好的。
我看网上有那种什么外包抢了红包要退钱、什么提醒外包注意素质不要偷吃的零食的事情,有点太离谱、太夸张了,这在我们团队那会是从来没有发生过的。
大家平时在一起上班的氛围也挺融洽,大家一起该聊天聊天,该开玩笑开玩笑,该一起吃饭一起吃饭,在相处方面并没有什么区别。
但是,不同地方的确也有。
比方说,他们上班时所带的工牌带子颜色就和我们不太一样,这一眼就能看出来,另外平时做的事情也有点不太一样。
我记得当时项目的一些抓包任务、测试任务、包括一些标注任务等等都是丢给外包同事那边来完成,我们需要的是结果、是报告。
另外对于项目文档库和代码库的权限也的确有所不同,核心项目代码和文档确实是不对外包同事那边开放的。
除此之外,我倒并没有觉得有什么太多的不同。
那作为程序员,我们到底该如何看待这些外包公司呢?
这就好比是一个围城,城外的人有的想进去,城里的人有的想出来。
每次一提到外包,很多人的建议都是不要进,打亖别去。但是,这里有个前提是,首先得在你有的选的情况下,再谈要不要选的问题。
不可否认的是,外包公司确实有它的短板。最被人诟病的两点,一个“职业天花板”问题、一个“归属感缺失”问题。
但是在当下的就业环境里,我们不得不承认的是,外包公司也承担了 IT 行业“蓄水池”的角色。
毕竟并不是每个人一毕业就能拿到互联网大厂的 offer,也并不是每个人都有勇气去创业公司搏一把。
对于有些学历一般、技术基础一般或者刚转行的程序员来说,外包也提供了另外一个选择。
而如果你现在正在外包或者正在考虑加入外包,那这里我也想说几句肺腑之言:
第一,不要把外包作为职业生涯的终点,而应该把它看作一个跳板或过渡。
如果你刚毕业进不去大厂,或者在一二线城市没有更好的选择,那外包可以为你提供一个接触正规项目流程的机会(当然前提是要进那种正规的外包),我们也可以把它看昨一个特殊的职场驿站。
在那里的每一天,你都要问问自己:我学到了什么?我的技术有没有长进?我的视野有没有开阔?
第二,一定要警惕“舒适区”。
很多同学在外包待久了,可能会陷入一种拿工资办事的机械式工作中,看起来很舒适,实际上很危险。
注意,一定要利用能接触到的资源,去学习项目的技术架构和业务流程,去想办法提升自己的核心竞争力,而不是仅仅为了完成工时。
最后我想说的是,无论你是在大厂做正式员工,还是在小团队里打拼,亦或是在外包公司里默默耕耘,最终决定职业高度的,并不是工牌上公司的名字,而是会多少技术,懂多少业务,能解决多少问题,大家觉得呢?
好了,今天就先聊这么多吧,希望能对大家有所启发,我们下篇见。
注:本文在GitHub开源仓库「编程之路」 github.com/rd2coding/R… 中已经收录,里面有我整理的6大编程方向(岗位)的自学路线+知识点大梳理、面试考点、我的简历、几本硬核pdf笔记,以及程序员生活和感悟,欢迎star。
来源:juejin.cn/post/7585839411122454574
前特斯拉 AI 总监:AI 编程最大的谎言,是 “提效”
大家好,我是程序员鱼皮。
前两天,前特斯拉 AI 总监 Andrej Karpathy 在 X 上发了一条长帖子,内容是他最近几周大量使用 Claude 编程的感悟。
结果这条帖子直接爆了,阅读量超过 600 万。

先简单介绍一下『卡帕西』这位大佬:斯坦福 AI 博士,师从李飞飞;OpenAI 创始成员之一;后来去特斯拉当了 AI 总监,负责自动驾驶的视觉系统。2024 年离开特斯拉后,他创办了 Eureka Labs,专注用 AI 做教育。
不夸张地说,他可能是全球最懂 AI、又最能写代码的人之一。
在 2023 年 1 月的时候,他就提出过:未来最热门的新编程语言是自然语言。

你现在回过头来看这句话,就知道这哥们有多牛皮了。
所以我每次看他分享的内容时,都会先沐浴更衣,让自己能够进入深度思考状态。

进入正题,这条帖子里有很多干货,但让我印象最深的是这句话:
我不太清楚如何衡量 AI 带来的加速。我感觉做事确实快了,但主要的效果是我做的比原计划多得多。
卡帕西说,现在他可以随手写一些以前 “不值得写” 的小工具,也敢去碰以前因为技术栈不熟而不敢碰的代码了。

所以 AI 编程带来的核心变化不是加速,而是扩展。
我觉得这个观察太准了!
之前很多人问我:AI 编程能提效多少倍?
其实这个问题本身就问错了。AI 带来的真正变化不是 “同一件事做得更快”,而是 “你开始做以前根本不会做的事”。
这就像你以前骑自行车,现在换了辆车。你不会说自己骑车快了 10 倍,而是会说自己能去更远的地方了。
人比不过 AI 的一点
帖子里还有几个点挺有意思的,跟大家分享一下。
卡帕西说,看 AI 在一个 Bug 上死磕 30 分钟,不放弃、不气馁,最后真的搞定了 —— 这是他感受 AGI 的时刻。
我看到这段就想起自己大学刚学编程时改 Bug 的经历。已经是凌晨一两点,试了好几种方法都没用,我的心态已经崩了,甚至有点儿心绞痛,于是想着明天再说吧,狗命要紧……
但 AI 不会这样,只要你的 Tokens 足够,它会一直跟 Bug 死磕。
耐力这件事,正在从人类的瓶颈变成 AI 的优势。
当然,代价就是烧 Token。所以程序员的基本功还是很重要的,至少你得能判断这个 Bug 值不值得让 AI 花半小时去磕,怎么通过指引 AI 让它更快更省地解决问题。
编程变得更有趣了?
卡帕西说:用 AI 编程之后,那些填空式的苦差事没了,剩下的都是创造性的部分。所以反而觉得更好玩了。
但他也提到,有些程序员会觉得失去了乐趣。因为对他们来说,写代码本身就是快感来源。
这可能是一个分水岭:主要享受 “写代码” 的人,和主要享受 “造东西” 的人,体验会很不一样。
我看到一位 AI 圈的大 V 把这点称为 “程序员正在分裂成两个物种”。不过我倒觉得,这两类人其实一直都存在。有的人享受代码本身的优雅,追求技术的深度和细节,写出漂亮的代码会有成就感;有的人更在乎东西能不能跑起来、能不能解决问题,代码只是实现想法的工具。AI 只是把这个差异放大了而已 —— 前者可能会有点失落,后者则迎来了黄金时代。
我正在失去写代码的能力,但是…
卡帕西说:自己手动写代码的能力正在慢慢退化。
但是从他的话中能感受到,他对此的态度是 “已经不太在乎了”。
他给了一个有意思的视角,写代码(生成)和读代码(判别)是大脑里不同的能力。就像你可能写不出一首好诗,但能看出一首诗写得好不好。
编程也是一样。其实想想看,以前没有 AI 的时候,那些语法细节、API 用法,我们不也是靠查文档、利用编辑器的提示吗?真正需要记在脑子里的从来就不多。现在 AI 把这部分接管了,但代码的设计思路对不对、架构合不合理,还是得靠你自己判断。
所以未来程序员的角色,可能更像是 “技术导演” 而不是 “码农”。你负责把控方向、做出决策,AI 负责执行细节、填补空白。
2026 年垃圾内容会爆发,但是…
卡帕西还提到了一个词:Slopacolypse
我搜了一下,发现这其实是最近 AI 圈流行起来的一个 “slop 系列” 造词。Slop 指的是那些用 AI 批量生成的低质量内容,Slopacolypse 就是 Slop + Apocalypse,我理解是 “垃圾内容末日” 的意思。
他预测 2026 年,GitHub、各种社交媒体都会被 AI 生成的低质量内容淹没。当生产内容的门槛大幅降低,注意力反而会变得更稀缺。
但他也说,真正的改进也在同步发生。AI 的智能部分已经跑在前面了,现在反而是工具、流程、组织这些东西还没跟上。2026 年,整个行业会花大量精力去消化这波新能力。
说到这里,我想起自己身边的情况。AI 领域几乎每天都有新工具、新模型、新玩法冒出来,但真正意识到这些变化、真正去用这些新东西的人,又有多少呢?
我经常听到有人说 “再等几个月,等出了更好的再学”、“现在的还不够成熟”。但问题是,在你等待的这几个月里,已经有人用 AI 做出了以前做不到的东西,拉开了差距。
所以对于我们程序员来说,一方面必须要利用 AI 提升开发效率和优化工作流程。
另外一方面,不妨打开思路,多想一想:有了 AI,你能做到哪些以前做不到的事?
以前不敢碰的技术栈,现在敢试了;以前觉得不值得做的小工具,现在随手就能搞定;以前卡住就放弃的 bug,现在有个不知疲倦的助手帮你死磕。
这才是 AI 编程真正的红利 —— 不是让你更快,是让你更大。
如果你还没开始用 AI 编程,或者想系统学习怎么用的更好,可以看看我最新免费开源的 《AI 编程零基础入门教程》,从 0 开始带你用 AI 编程做出项目,包含各种工具用法、实战技巧、编程资源、甚至是产品变现经验全都有。希望能帮你更快地拥抱这个新时代,一起变得更大、更强!


更多
💻 编程学习交流:编程导航
📃 简历快速制作:老鱼简历
✏️ 面试刷题神器:面试鸭
📖 AI 学习指南:鱼皮 AI 导航
来源:juejin.cn/post/7602154088476672038
用 OpenClaw 做视频:播放量从几十涨到 9000,成本一毛钱
大家好,我是孟健。
我做视频号不用剪映,不用 PR ,甚至不碰任何剪辑软件。 一条 60 秒的短视频,成本一毛钱,从选题到成片 15 分钟搞定。
怎么做到的?OpenClaw(开源 AI 助理框架)+ Remotion(React 视频框架)+ 语音克隆,三件套组合拳。
先看成品👇
(掘金不支持视频,可以搜孟健AI编程)
今天把整套流水线拆给你看。
01 先说数据:用 AI 做视频比我自己拍还好
前几天我开始用 OpenClaw 全自动做视频号内容。结果出乎意料——AI 做的视频,数据比我自己拍的好得多。
之前我自己录制、剪辑,一条视频播放量几十到两三百,偶尔破千算运气好。
换成 OpenClaw 全自动流水线之后:
- 单条播放量:1595(之前平均不到 200)
- 3天 总播放:9,018


从 02-11 开始用 OpenClaw 做视频的那天起,播放量曲线直接起飞。之前一周加起来可能还不到 1000 播放。
为什么 AI 做的反而更好?我想了想,原因有三个:
- 更新频率上去了。以前一周发 1-2 条,现在可以日更。视频号算法喜欢活跃的账号。
- 风格统一了。每条视频都是同一个"赛博线框"模板,辨识度高,观众看到就知道是我。
- 质量反而稳定了。人工拍摄状态有起伏,AI 生产线的输出质量是恒定的。
02 整套流水线长什么样
传统做一条 60 秒视频号内容:
- 写脚本:30 分钟
- 录音/配音:20 分钟
- 剪辑+字幕+动效:1-2 小时
- 导出上传:10 分钟
总耗时:2-3 小时,还得会剪映或 PR 。
我现在的流程:
- Agent 自动推送选题,我选一个:1 分钟
- Agent 写旁白 → 克隆我的声音生成 TTS → 提取时间戳 → Remotion 渲染成片:约 10 分钟
- 我看一遍,确认发布:2 分钟
总耗时:约 15 分钟。成本不到两毛钱。不需要会任何剪辑软件。
03 技术栈:四个关键零件
零件一:OpenClaw — 多 Agent 调度中心
OpenClaw 是一个开源的 AI 助理框架,核心能力是让多个 AI Agent 协作。我的团队里有 6 个 Agent,各管一摊:
- 墨媒(运营):负责选题推送和发布
- 墨笔(创作):写脚本、调 TTS、编排场景、渲染视频
- 墨影(设计):封面图和配图
视频制作主要是墨笔在干活。它收到选题后,一路跑完脚本→配音→渲染,全程无人值守。

Agent 之间怎么协作? OpenClaw 有个sessions_send机制,Agent 之间直接传消息。墨媒推选题给墨笔,墨笔做完发成片链接给墨媒,墨媒通知我确认。像一条流水线,每个工位各干各的。
零件二:Remotion — 用 React 写视频
这是整套方案最"反直觉"的部分。
Remotion 是一个 React 视频框架。你写 React 组件,它帮你渲染成 MP4。 没有时间轴,没有图层面板,视频就是代码。
为什么用代码做视频?因为可复用、可模板化、可自动化。
传统剪辑:每条视频从零开始拖素材。
Remotion:定义好模板,换数据就出新片。
我的视频模板叫"赛博线框批注体"——深色背景、大字排版、小墨(我的 AI 猫助手)线条画穿插批注。风格统一,辨识度高。
核心代码结构长这样:
// scenes-data.ts — 这是唯一需要改的文件
export const scenes: SceneData[] = [
{
start: 0.0, // 开始时间(秒)
end: 3.46, // 结束时间(秒)
type: 'title', // 场景类型:决定动效
title: '三家巨头\n同一天',
xiaomo: 'peek', // 小墨姿态
},
{
start: 3.46,
end: 5.90,
type: 'pain',
title: '微软说',
subtitle: 'Copilot 已经能写掉\n90% 的代码',
number: '90%',
highlight: 'Copilot',
},
// ... 更多场景
];
每条新视频只需要改这一个文件。 场景类型决定动效——title用 glitch 闪现,emphasis用 slam 砸入,circle用猫爪画圈。动效和排版都是预设好的,换内容自动适配。
渲染一行命令:
npx remotion render WireframeVideo out/成片.mp4 --codec=h264
零件三:MiniMax 语音克隆 — 用我的声音说话
视频号的配音是我自己的声音,但不是我录的。
MiniMax 的 voice-clone 服务,用一段 30 秒的录音样本,克隆出一个可以说任何话的语音模型。生成速度快,一段 60 秒的旁白 3-5 秒出结果。

通过 fal.ai 的 API 调用,1.15 倍速,对话感很强。一条视频的 TTS 成本大概一毛钱。
零件四:Whisper — 时间戳精确对齐
TTS 生成的音频,需要知道每句话在第几秒说完,才能让 Remotion 的字幕精确对齐。
OpenAI 的 Whisper 模型(本地部署,免费)转录音频,输出逐句时间戳:
[ {"start": 0.0, "end": 3.46, "text": "三家巨头同一天说了一件事"}, {"start": 3.46, "end": 5.90, "text": "微软说Copilot已经能写掉90%的代码"}, ...]
这些时间戳直接灌进scenes-data.ts,每个场景的出场时间和旁白完美对齐。
04 完整流程:一条视频是怎么从 0 到 1 的
墨媒推选题(cron 每日 9:30)
↓ Telegram 推送5个选题
孟健选一个
↓ 选题确认
墨笔写旁白脚本(60秒,200字左右)
↓
MiniMax TTS 生成克隆语音
↓ 约¥0.1,3秒出结果
Whisper 提取逐句时间戳
↓ 本地运行,免费
墨笔编排 scenes-data.ts
↓ 按时间戳填场景类型+文案
Remotion 渲染 MP4
↓ h264编码,约2分钟
墨笔发成片给孟健
↓ Telegram 通知
孟健确认 → 墨媒发布
关键点:从"孟健选一个"到"成片发出来",中间全自动。 墨笔这个 Agent 收到选题后,自己写脚本、调 TTS、提时间戳、编场景、渲染视频、发通知。我只需要在 Telegram 里点一下确认。

整个过程大约 10 分钟。我的参与时间?选题 1 分钟,看成片 2 分钟。
05 赛博线框体:为什么选这个风格
视频号做内容有个核心矛盾:你得快,但你不能糙。
实拍太重(一个人搞不过来)。AI 生成画面太假(观众已经审美疲劳)。PPT 录屏太无聊。
我选了一条中间路线:纯文字动画 + 线条 IP 角色。
- 深色背景(#0A0A0F),不刺眼,高级感
- 大字排版,关键词高亮(cyan/gold/red 三种色系)
- 小墨(线条猫)在角落做批注动作(探头、趴着、指向、画圈)
- 动效精确对齐音频:glitch 嗞声配标题出场,slam 低频咚配数字砸入,draw 笔触声配猫爪画圈
- BGM 18%音量打底,不抢旁白
这个风格的好处:全部是代码生成的。 没有一帧需要手画。小墨的 6 种姿态是 SVG 路径,动效是 CSS 动画函数,排版是 React 组件。换内容不换风格,视觉统一,品牌感强。
而且成本极低——Remotion 渲染不花钱,只有 TTS 那一毛钱。
06 踩过的坑 坑 1: TTS 速度和自然度的平衡
1.0 倍速太慢,像念稿。1.3 倍速太快,听不清。1.15 倍速是甜点。 这个参数调了好几轮才定下来。
坑 2:时间戳精度
Whisper 的时间戳偶尔会飘几百毫秒。解决方案是渲染后快速过一遍——15 分钟的流程里,2 分钟用来看成片,不算浪费。
坑 3:Remotion 的字体加载
服务器渲染时字体可能缺失。解决方案:把字体文件放到public/目录,用@font-face显式加载,别依赖系统字体。
坑 4:音效对齐
动效和音效必须精确到帧。Remotion 的Sequence组件按帧计算(30fps),但时间戳是秒。需要做Math.round(seconds * fps)的换算,差一帧观感就不对。
坑 5:不要让内容 Agent 降模型
试过把墨笔从 Claude Opus 换成 Sonnet 省钱。6 分钟就换回来了——脚本质量断崖式下跌,金句变废话,节奏感全无。内容创作是最不该省的环节。
07 成本算账
| 项目 | 单价 | 说明 |
|---|---|---|
| TTS( MiniMax via fal.ai) | ~¥0.1/条 | 60 秒旁白,语音克隆 |
| Whisper | ¥0 | 本地部署,免费 |
| Remotion 渲染 | ¥0 | 开源,服务器本地跑 |
| BGM/音效 | ¥0 | 预置素材库 |
| 合计 | ~¥0.1/条 |
对比请人做:一条 60 秒视频号内容,外包报价 300-800 元。
2 小时变 15 分钟,800 块变一毛钱,播放量反而翻了 10 倍。 这就是把视频从"项目"变成"工序"的意义。
08 你能复制这套流程吗?
技术门槛说实话不低。你需要:
- 一台服务器(跑 OpenClaw + Remotion 渲染)
- 基本的 React 能力(定制 Remotion 模板)
- OpenClaw 部署经验(配 Agent + cron)
- MiniMax/ElevenLabs 账号(TTS)
但思路是通用的:把视频生产拆成可编程的环节,用 Agent 串起来。
你不一定要用我的技术栈。Remotion 可以换成 FFmpeg 纯命令行(更简单但动效少),TTS 可以用免费的 edge-tts(质量差一些但零成本),Agent 框架也不一定是 OpenClaw。
核心不是工具,是思路:视频 = 数据 + 模板 + 自动化。
写在最后。
我做这套系统不是为了炫技。是因为一个人创业,内容是最大的杠杆,但时间是最稀缺的资源。
传统做内容是"创作"——每次从零开始。AI 时代做内容是"生产"——定义好流水线,然后持续出货。
15 分钟一条视频,成本一毛钱,播放量比自己拍还好。工具就摆在那里。用不用,是你的事。
如果这篇对你有帮助,欢迎点赞、收藏、关注,你的支持是我持续输出的动力 ✨
我的其他平台账号和开源项目在个人主页中,欢迎交流 🤝
来源:juejin.cn/post/7606173847994023990
被马斯克疯狂点赞的国产 AI,很可能是 AI 时代的抖音!
这是苍何的第 490 篇原创!
大家好,我是苍何。
刷 X 看到马斯克点赞并评论了一个 AI 叫 Loopit,目前有 59 万阅读了,🐂🍺啊。

看了下视频内容,还挺有意思的,互动性和可玩性挺高。
扒了下 Loopit,好家伙,来自中国的开发团队,创始人是陈炜鹏,前百川智能的联创。
然后我也按照教程去应用市场下了 Loopit,申请了内测体验,不到一会就通过了。
那后就开始陷入进去了,和刷抖音一样,根本停不下来,太魔性了。我甚至都有一种感觉,他们是想做 AI 时代下的抖音吧。

Loopit 我觉得让年轻人为之疯狂的是其**「互动性」**。首页具备非常多的上手就可以互动体验的内容。
如果说传统短视频是「看内容」,那 Loopit 或许想做的就是让年轻人「玩内容」 。
这是我做的一个能根据气流大小实时改变生成画面的互动内容,可以看到,吹气越猛,画面中的魔法风暴就越壮观。

我还做了一个互动性更强一些的,能根据用户唱歌水平的高低来生成画面的完整性,唱的好就能出好看的画,唱的差就会出现鬼畜画面。为了保护大家,我就用电脑放了一首歌,你可以感受一下。

还做了个用手机来颠球的互动游戏,手机上抬,乒乓球也会被抬起,力度会控制颠球的高低。

Loopit 并没有走纯 AI Coding(好玩但不真实)或纯多模态生成(美观但交互弱)的老路,而是把两者深度融合。
它与手机硬件深度融合——包括麦克风、陀螺仪、前后摄像头、触控屏、振动马达等。
让可玩性更足了。
现在手机应用市场就可以直接下载 Loopit 体验了,首页的话有非常多直接就可体验互动的内容可以玩,比如被马斯克点赞的这个应用也可以直接玩,哈哈哈。

也可以创作自己想要的互动内容,我一上来就整了十几个互动应用。,根本停不下来。

不过现在要自己创作的话需要填入邀请码,可以直接填写下理由申请下。我填写了苍何,然后我给我老婆手机也填了下申请,填了苍何的粉丝也很快就通过了,大家申请的时候可以试试🐶

另外我也托关系联系朋友要到了几个邀请码,我放评论区了,需要自取。
我创作了十几个有意思的互动应用,下面分享下创作的思路,帮助你少踩坑,因为我发现,目前 Loopit 可能是刚上线的原因或者用的人有点多了,有时候会比较慢,然后有时候也会抽风,需要调教下。
目前在 Loopit 上创作一共 2 种方式,一种是原创,就是你通过提示词的方式手搓一个应用出来,另外一种就是二次创作,你可以基于你刷到的好玩的应用进行魔改。

比如风之谷这个应用,我给的提示词是这样的:
《风之谷》:吹气生成微观世界调用接口: 麦克风(气流侦测)+ AI 实时生成(Stable Video Diffusion/LCM)
玩法描述: 用户对着麦克风吹气,屏幕中原本静止的荒漠或森林会随着吹气的力度和频率,实时长出奇幻的花草、飘起花瓣或化作星尘。
AI 点: 根据气流大小实时改变生成画面的风力等级(Prompt 权重动态调整)。
互动反馈: 吹气越猛,画面中的“魔法风暴”越壮观。

大家都提示词建议按照这个结构要求稳定性会更高一些,创建一个xx的互动内容,主题是xxx。玩法描述,AI 点以及互动反馈。
会请求手机麦克风权限,然后就开始 vibe coding,出错了,你就直接口喷让他改就好了。

通常需要等待个几分钟,就能直接生成好应用,然后就点预览,开始玩了。

觉得应用 ok,或者想给朋友玩,可以点击发布,就会发布到应用广场了。
Loopit 它构建了一个专门为 AI 生成设计的**「互动 Runtime」** 。简单来说,它能把你的点击、摇晃、甚至是声音,转化为结构化的指令,并让 AI 在代码定义的边界内实时更新「世界状态」 。

这种融合带来了几个直观的感受:
- 多维度输入:它能直接调用手机的陀螺仪、麦克风、甚至是前置摄像头。
- 逻辑稳定:不管你怎么「折腾」内容,世界状态都不会轻易崩坏,反馈非常即时。
- 创作极简:不需要写代码,平均 3 轮对话就能搓出一个作品。
也难怪海外那么多年轻人喜欢,甚至马斯克都亲自点赞。
我认为它代表了一种新的趋势,在 Loopit 里,创作不再需要刻意寻找主题。一个热梗、一个奇怪的念头,甚至是你忍不住反复做的小动作,都能成为「好玩」的起点。
从对比数据来看,这种「AI Coding × 多模态生成」的路线,在内容形态上最接近「互动式抖音」,且市场空间巨大。

它降低了技术门槛,实现了某种程度上的「技术平权」,让每个人都能把抽象的念头变成具体的互动内容 。
目前 Loopit 还不算是一个大规模开放的游戏平台,它更像是一个正在萌芽的、属于年轻人的互动内容社区。
它现在处于跟创作者**「深度共创」**的阶段。如果你也是那种「脑洞大、爱折腾」的人,我非常建议你去体验一下这种「玩内容」的新文化。
来源:juejin.cn/post/7605912122628948006
年薪 50W 的前端,到底比年薪 15W 的强在哪里?

昨天我看新年第一波简历 看破防了
最近团队缺人,我连着看了一周的简历。
说实话,看得我挺难受的。😖
我发现一个特别普遍的现象:很多工作了四五年的兄弟,期望薪资填个 25k 甚至 30k,但你仔细翻他的项目经历,全是后台管理系统,全是 H5 拼图页面,全是表单增删改查。
你问他:这几年你遇到的最大技术难点是啥?🤔
他回你:表单字段太多了,校验逻辑太复杂。或者说,产品经理改需求太频繁。😖
听到这种回答,我心里大概就有了底:这兄弟的薪资上限,大概率锁死在 20W 以内了。
这就是咱们常说的 CRUD 困局。
别沉迷 CRUD,高薪的关键是工程化视野与底层兜底能力。想在快节奏中兼顾标准与效率?试试 RollCode 低代码平台,利用 私有化部署 和 自定义组件 沉淀资产,轻松搞定 静态页面发布(SSG + SEO)。
你会 Vue,你会 React,你会用 Antd 画页面,你会调接口。兄弟,这些在 2018 年也许能让你拿高薪,但现在是 2026 年了,这些东西是基建,是培训班出来的应届生两个月就能上手的。🤣
那么问题来了,那个坐在你隔壁工位、平时话不多、但年薪能拿 50W 的大佬,他到底比你强在哪?
是他敲键盘比你快?还是他发量比你少?
都不是。
我觉得最核心的差距,就只有三点。听我细说。
你在做填空,他在设计整张试卷

这事儿特别明显。就拿新开一个项目来说。
15W 的兄弟是怎么干的?
找个脚手架,create-react-app 一把梭。然后开始堆页面,写组件。遇到要用的工具函数?去百度搜一个粘贴进来。遇到样式冲突?加个 !important 搞定。代码格式乱了?不管了,先跑通再说。
他的脑子里只有一个字:做。
50W 的兄弟是怎么干的?
他在写第一行业务代码之前,会先在脑子里过一遍这几件事:
大家代码风格不一样怎么办?先把 ESLint + Prettier + Husky 这一套流水线配好,谁提交的代码格式不对,连 git push 都推不上去。
这个项目以后会不会变大?要不要直接上 Monorepo 管理?
公共组件怎么抽离?是不是该搭个私有 npm 库?
打包速度怎么优化?Vite 的配置能不能再调调?
这就是差距。🤔
老板愿意给他 50W,不是因为他页面画得快,而是因为他制定了标准。他一个人,能让团队剩下 10 个人的产出质量变高。这叫工程化视野,这才是值钱的玩意儿。
出了事,你只会甩锅,他能兜底

场景再具体点:用户投诉页面卡顿,加载慢。
15W 的兄弟通常反应是这样的:
打开控制台 Network 看一眼。
哎呀,接口这就 800ms 了,这后端不行啊,锅在服务端。
嗨🙂↔️,这图片 UI 给得太大了,切图没切好。
这数据量几万条,浏览器渲染本来就慢,我也没办法!
总之,只要不是 JS 报错,这事儿就跟我没关系。
50W 的兄弟会干嘛?
他不会废话,他直接打开 Chrome 的 Performance 面板,像做外科手术一样分析。
这一段掉帧,是不是触发了强制重排?
内存这一路飙升,是不是哪个闭包没释放,或者 DOM 节点没销毁?
主线程卡死,是不是长任务阻塞了渲染?能不能开个 Web Worker 把计算挪出去?
网络慢,是不是 HTTP/2 的多路复用没吃满?关键资源的加载优先级设对了吗?
这就叫底层能力。🤔
平时写业务看不出来,一旦遇到高并发、大数据量、若网环境这种极端场景,只会调 API 的人两手一摊,而懂底层原理的人能从浏览器内核里抠出性能。
这种 兜底能力,就是你的溢价。
他是业务合伙人!

这点最扎心。
产品经理提了个不靠谱的需求,比如要在手机端展示一个几百列的超级大表格。
15W 的兄弟:
心里骂娘:这傻X产品,脑子有坑。😡🤬
嘴上老实:行吧,我尽量试试。
结果做出来卡得要死,体验极差,上线被用户骂,回来接着改,陷入无尽加班。
这种思维模式下,你就是个执行资源,也就是个 打工人。
50W 的兄弟:
他听完需求直接就怼回去了:
哥们,在手机上看几百列表格,用户眼睛不要了?你这个需求的业务目标是啥?是为了让用户核对数据?
如果是核对数据,那我们要不要换个方案,只展示关键指标,点击再下钻看详情?这样开发成本低了 80%,用户体验还好。
这就叫技术变现。
高端的前端,不仅仅是写代码的,他是懂技术的业务专家。他能用技术方案去纠正产品逻辑,帮公司省钱,帮业务赚钱。
在老板眼里,你是成本,他是投资。🤷♂️
哪怕现在是 15W,咱也能翻盘
如果你看上面这些话觉得膝盖中了一箭,别慌。谁还不是从切图仔过来的?
想打破这个 CRUD 的怪圈,从明天上班开始,试着变一下:
别再只盯着那几个 API 了
Vue 文档背得再熟也就是个熟练工。去看看源码,看看人家是怎么设计响应式的,看看 React 为什么要搞 Fiber。懂了原理,你就不怕框架变。
别做重复工作
下次想复制粘贴工具函数的时候,停一下。试着自己封装一个通用的,甚至试着把你们项目里重复的逻辑抽成一个库。工程化就是这么一点点做起来的。
钻进去一个细分领域
别啥都学,啥都学不精。
可视化、低代码、Node.js 中间件、音视频,随便挑一个,把它钻透。在任何一个细分领域做到前 5%,你都有议价权。
还是那句话!前端并没有死,死的是那些 只会切图和调接口 的工具人。
50W 的年薪,买的不是你的时间,而是你 解决复杂问题 的能力,和你 避免团队踩坑 的经验。
别再满足于重复做一个 CRUD 了。下次打开编辑器的时候,多问自己一句:
除了把这个功能做出来,我还能为这段代码多做点什么?
共勉🙌

来源:juejin.cn/post/7591744411740372992
AI 编程的临界点:当三家巨头同时宣布我们不写代码了
大家好,我是孟健。
昨天 24 小时内,三家公司同时说了同一句话:我们的代码,基本不是人写的了。

不是媒体炒作。不是 PR 包装。是 Nvidia、OpenAI、Cognition、Anthropic——四家站在 AI 最前沿的公司,几乎同一时间亮出了底牌。
这件事值得每个写代码的人停下来想一想。
发生了什么
先摆事实。
Nvidia:黄仁勋几个月前在内部喊出"stop coding",让 3 万名工程师全面换用 AI 编程工具。最新数据——代码产出量翻了 3 倍。不是 10%、20%的提升,是 3 倍。

OpenAI:内部团队交付了一个完整产品,每一行代码都是 AI Agent 生成的。工程师全程没写一行代码,只负责 Review 和监督。开发效率提升了 10 倍。

Cognition(做 Devin 的那家):联合创始人 Scott Wu 发了条推,说公司超过 90%的代码是 AI 写的。他的原话是:"你现在实际需要亲手敲的代码有多少?对我们来说,大概不到 10%。"

Anthropic:首席产品官 Mike Krieger 说得更直接——"Claude 在写 Claude。Claude 的产品和 Claude Code,完全由 Claude 自己写。"

四家公司,同一个结论:程序员的核心工作,正在从"写代码"变成"不写代码"。
这不是第一次有人喊"狼来了"
我知道你在想什么。
"AI 替代程序员"这话喊了三年了。2023 年 GitHub Copilot 发布的时候喊过一次。2024 年 Devin 出来的时候又喊了一次。2025 年 Claude Code 和 Codex 上线的时候再喊一次。
每次喊完,程序员还是该上班上班,该加班加班。
但这次不一样。
之前是模型公司说"我们能做到"——那是销售话术。
这次是用 AI 写代码的公司自己说"我们已经做到了"——这是生产实践。
Nvidia 不是 AI 编程工具公司,它是芯片公司。它给 3 万工程师换工具,不是为了 PR,是因为代码产出真的翻了 3 倍。当你的竞争对手用同样的人力做出 3 倍的产出,你不跟进就是在等死。
这个信号的含金量,跟"某 AI 公司发了个 Demo"完全不是一个量级。
为什么是现在
你可能好奇:AI 编程工具 2024 年就有了,为什么突然到了这个临界点?
答案是速度。
就在昨天,OpenAI 发布了 GPT-5.3-Codex-Spark——一个跑在 Cerebras 晶圆级芯片上的编码模型。这是 OpenAI 第一次用非 Nvidia 的芯片部署生产级模型。

关键数字:每秒 1000+ token 的代码生成速度,比之前快 15 倍。
Cerebras 的芯片有多大?一整块硅晶圆,餐盘那么大,就是一个处理器。不是把几百个 GPU 堆在一起,是把一整个芯片做到极致。
15 倍速度意味着什么?
以前用 AI 写代码,你提交一个任务,泡杯咖啡等几分钟。现在是你话音刚落,代码就出来了。从"异步等结果"变成了"实时对话"。
这个体感差异是质变。
我自己每天用 Claude Code 做产品。之前等 AI 生成的时候我会切到别的窗口干别的事。现在?根本没时间切——它比我打字还快。
当 AI 写代码的速度快到人类来不及思考的时候,"人写代码"这件事本身就变成了瓶颈。
这就是为什么四家公司同时跨过了这个临界点。不是巧合,是速度到了。
我自己的体感
说说我的真实经历。
我在腾讯带过几十人的团队,在字节也做过前端技术 Leader。那时候团队产出的计算方式是:人头 × 工时 × 人效。想提高产出?加人、加班、优化流程。
2025 年 10 月辞职创业后,我开始全面用 AI 编程。
一个人,一个月,做了近 30 个出海小产品。
不是简单的静态页面。是有前端、有后端、有支付、有 SEO、有数据统计的完整产品。放在以前,这是一个 5-8 人的小团队干一个季度的量。
我不觉得 AI 替代了我。更准确地说,是 AI 把我从"写代码的人"变成了"做决策的人"。
以前 80%的时间在写代码,20%在想产品。
现在反过来了——80%的时间在想产品方向、用户需求、商业模式,20%在 Review AI 写的代码。
这个转变,跟 Nvidia 那 3 万工程师的转变是一模一样的。
程序员要失业了吗?
这是每次 AI 编程话题下必然出现的问题。
我的判断是:不会失业,但工作内容会彻底改变。
上海交大最近发了一篇论文(ProjDevBench),测试 AI 从零构建完整软件项目的能力。结果通过率只有 27%——基础功能还行,但系统设计、性能优化、资源管理全崩。
这说明什么?
AI 已经能干 80%的活了。但剩下那 20%——架构决策、边界处理、性能调优、产品判断——恰恰是最值钱的 20%。
Scott Wu 说得好:"瓶颈不再是写代码本身,而是两件事——1)让人类更容易理解、规划和提问;2)让 AI 更容易获取任务的真实上下文。"
翻译成人话就是:未来的程序员不是代码机器,是 AI 的 项目经理 。
你的价值不再是一天能写多少行代码,而是你能不能把一个模糊的需求拆解成 AI 能理解的指令,能不能在 AI 写完之后判断"这个架构扛不扛得住",能不能在 AI 犯错的时候快速定位问题。
这些能力,恰恰是在大厂带过团队、做过大项目的人最擅长的。
如果你只做一件事
说了这么多,落到行动上,我建议你今天就做一件事:
把你最常做的一类开发任务,完整地交给 AI 做一次。
不是让它补两行代码。是给它一份需求描述,让它从零开始搞。前端、后端、数据库、部署,全交出去。
你会发现两件事:
- AI 能搞定的部分,比你预期的多得多。
- 搞不定的部分,恰恰暴露了你真正不可替代的价值。
Nvidia 的 3 万工程师已经这么干了。OpenAI 的团队已经这么干了。你还在等什么?
如果这篇对你有帮助,欢迎点赞、收藏、关注,你的支持是我持续输出的动力 ✨
我的其他平台账号和开源项目在个人主页中,欢迎交流 🤝
来源:juejin.cn/post/7605816833192067072
如何零成本搭建个人站点
同步至个人站点:如何零成本搭建个人站点

站点地址:stack.mcell.top,包含完整的:写作、评论、部署、MCP支持...
我经常写作,最开始是在一些平台上,比如稀土掘金。后面慢慢写多了,就想有个自己的博客平台。
最初搭建的博客很简单:一个纯静态的 HTML 文件,内容也不复杂,写点自我介绍,当作个人站点。直接托管到 GitHub Pages,域名用的也是它默认那串。
但很快就发现:功能太少了。
比如发布文章?评论?甚至想加点扩展能力都很难——纯 HTML 又没框架,后面越改越痛苦。
接着就走上了“大家都走过的弯路”:
买了轻量服务器,又买了域名……然后写服务端、接数据库、写前端,把整套都搭起来。
直到后面参与了一个开源项目才意识到:
这种内容站点/文档站点,压根没必要搞这么重。成熟框架太多了,比如 VitePress 这种(比如Vue官网就是VitePress),基本开箱即用。
然后我就重构了一次:直接上 VitePress。部署?还是 GitHub Pages。那时候至少配上了自定义域名,看起来舒服多了:stack.mcell.top

又过了一段时间,我开始觉得个人站点还是有点单调。VitePress 能改,但做深度定制的时候会有点别扭(有些地方甚至会翻车)。
索性就 vibe coding 一把:把原先 VitePress 那套,重构到了 Next.js。
路线也很清晰:
- Next.js
- SSG / 静态导出(要部署到 GitHub Pages,关键是要把站点导出成纯静态)
- GitHub Actions 自动构建
- 部署到 GitHub Pages
- 配上自定义域名
后面我又陆续补了评论和文档搜索功能。用到服务器了吗?没有。
- 评论用的是 giscus:本质是把评论托管在 GitHub Discussions 里,前端加载组件就行,也不用数据库。

- 搜索用的是 pagefind:还是静态站那套玩法,构建阶段生成索引,运行时纯前端查询。

再后面,我还给博客加了 MCP 功能。同样,还是没有服务器:
SSG 阶段生成一份 JSON docs,只要把路径映射到 MCP server 就行;然后我做了个本地的 MCP server,用户安装大概这样:
memo mcp add stack-mcepp npx -y @mcell/stack-mcell

memo code 是我最近自己写的一个轻量级编程Agent,类似Claude code那种,感兴趣可以参与进来。
本质上就是:agent 请求本地 MCP server,MCP server 再去拉取我提前生成好的 JSON 内容。
文档站上 MCP 的整体方案的记录我放在这里:从一个想法到可发布:我把博客接进 MCP 的完整实践
这一套折腾下来,依然是 0 成本。分享给大家,或许是个不错的“0 成本建站思路”。
提示词
如果你对这套方案比较感兴趣,想要多了解了解,你可以clone我的博客仓库:mcell satck,或者是直接把这段提示词发给AI,他会给你方案:
我想搭建一个个人博客,大致如下:
- 框架:nextjs ssg
- 部署:Github Action 自动化部署 + Github Page(自定义域名)
- 图片存储:对象存储(七牛云或者火山引擎)
- 搜索服务:pagefind
- 文章评论服务:giscus
- 开发方式:Vibe coding
- mcp 集成:参考 https://stack.mcell.top/blog/2026/mcp-from-idea-to-delivery-for-content-site
请你给我一个具体可落地的方案(分阶段)
(完)
来源:juejin.cn/post/7605807405306740799
写给年轻程序员的几点小建议
本人快 40 岁了。第一份工作是做网站编辑,那时候开始接触 jQuery,后来转做前端,一直做到现在。说实话,我对写程序谈不上特别热爱,所以技术水平一般。
年轻的时候如果做得不开心,就会直接 裸辞。不过每次裸辞的那段时间,我都会拼命学习,这对我的成长帮助其实很大。
下面给年轻人几点个人建议:
- 不要被网上“35 岁就失业”的说法吓到。很多人是在贩卖焦虑。我都快 40 了还能拿到 offer,只是这些 offer 薪资不到 30K。
- 基础真的很重要。我靠着基础吃香了十几年,在公司里也解决过不少疑难问题,深得领导器重。就算现在有 AI,你也要有能力判断它写得对不对,还要知道如何向 AI 提问。
- 适不适合做程序员,其实几年之后就能看出来:你能不能当上 Leader,或者至少能不能独当一面。如果你觉得自己确实不太适合,可以趁早考虑转行,或者下班后发展一些副业。大千世界,行行出状元,能赚钱的行业很多,不必只盯着程序员这一条路。
- 如果你觉得自己资质一般,但又真的喜欢写程序,那也没关系。《刻意练习》这本书里提到,一个人能不能成为行业顶尖,关键在于后天练习的方式,而不是天赋本身。
- 程序员做到后面,最大的挑战其实是身体机能,而不是技术。一定要多锻炼身体。在还没有小孩之前,尽量把自己的技术水平拉到一个相对高的位置。结婚有家庭之后,学习时间会明显减少,而且年龄增长、抗压能力下降,而程序员本身又是高度用脑的职业。如果你的技术储备够高,就能在一定程度上缓冲项目压力,让自己工作更从容。
- React、Vue、Angular 等框架都可以尝试做做项目。不同框架背后的设计思路,对思维成长很有帮助。前端很多理念本身就借鉴了后端的逻辑,多接触不同体系,会让你看问题更立体。
- 可以在 GitHub 上做一些开源小项目。素材从哪里来?其实就来自你在公司做过的项目。把其中一块通用能力抽出来,沉淀成一个独立组件或工具库,再整理发布到 GitHub。与此同时,多写一些技术文章进行总结和输出。等到找工作时,简历里可以写上类似 "全网阅读量几万+" 这样的成果展示,这些都会成为你的加分项,让你在竞争中更有优势。
- 35 岁以上,竞争力通常体现在两个方向:要么技术水平足够强,能够解决复杂问题;要么具备一定的管理能力,能够带团队。有人说那我以前就带过一两个徒弟,怎么办,那你得学会包装,你懂得,哈哈。
- 35 岁以上,面试对技术广度要求更高,所以不要太深入挖掘某一项技术了。我以前认识一个领导,虽然写代码能力一般,在公司已经不写代码了,但是他的技术广度比较好,业务能力还行,虽然 40岁了 还能跳槽到比较好的广告公司,而不是靠人脉,不得不佩服。
- 打工人比较麻烦的事就是 简历太"花"。频繁跳槽,在一个公司没干几个月就走,或者长期待业太久。如果岗位需要背调,简历造假会很麻烦,虽然有些小公司或外包公司不做背调。所以这方面简历自己要想想办法,你懂得。
- 另外要认清一个现实:单纯打工,很难发财。 这件事越早想明白越好。多读一些关于认知、资产配置的书,弄清楚什么是资产,什么是消费。哪怕这些认知在你有生之年未必能带来巨大财富,也可以传递给下一代,让他们少走弯路。
以上只是个人经历和感受,不一定适用于所有人,但希望能给年轻的你一些参考。
来源:juejin.cn/post/7606155928197070900
用 Go 语言还原 2026 春晚《惊喜定格》魔术!

今天是大年初一,江湖十年给读者朋友们拜年了,祝大家新年快乐!
又是新的一年,想必大家都没看春晚吧 😄,今天继续一年一度的用 Go 语言实现春晚魔术。
废话不多说,咱们直接看原理。
魔术原理揭秘
这个魔术的数学原理其实很简单,基于一个简单的恒等式:
设目标时间为 T
设观众说的两个数为 A 和 B
魔术师计算的第三个数为 C = T - (A + B)
那么:A + B + C = A + B + [T - (A + B)] = T
这里的 T 就是最终结果:2162227
- 观众 A 说:
1106 - 观众 B 说:
88396 - 观众“乱按”的计算器显示:
2072725 - 相加结果:
1106+88396+2072725=2162227
这个数字代表:2 月 16 日 22 时 27 分
理解了吗?
这里其实有个障眼法,就是魔术师现场找了三个观众“乱按”了几下,但其实谁也不确定他们按的什么,对不对,其实他们按的数字根本就没用上,而是计算器里已经预先计算出了目标时间 T 与 A + B 总和的差值。
没错,魔术这种东西就是这么朴实无华。
Go 语言实现魔术
那么接下来,就用 Go 语言来实现一个简单的计算器程序,来还原这个魔术。
首先定义一个魔术计算器:
// MagicCalculator 魔术计算器
type MagicCalculator struct {
targetTime int // 目标时间转换的数字
timestamp string // 实际时间字符串
}
接下来实现一个魔术计算器的构造方法:
// NewMagicCalculator 创建一个魔术计算器实例
func NewMagicCalculator() *MagicCalculator {
// 获取当前时间
now := time.Now()
// 生成类似 "2162227" 的时间数字
// 格式: 月(1-2 位) + 日(2 位) + 小时(2 位) + 分钟(2 位)
month := int(now.Month())
day := now.Day()
hour := now.Hour()
minute := now.Minute()
// 构建时间字符串和数字
timestamp := fmt.Sprintf("%dddd", month, day, hour, minute)
// 转换为整数
target, _ := strconv.ParseInt(timestamp, 10, 64)
return &MagicCalculator{
targetTime: int(target),
timestamp: timestamp,
}
}
当前时间 now 就是用来计算目标时间的,可以根据需要设定,这里直接使用当前时间。
target 是格式为 2162227 的时间数字,也就是咱们原理解析中的目标时间 T。
定义一个 计算魔术数字 T -(A + B)的方法:
// GetMagicNumber 计算魔术数字
func (mc *MagicCalculator) GetMagicNumber(num1, num2 int) int {
// 魔术公式: target - (num1 + num2)
return mc.targetTime - (num1 + num2)
}
最后就是定义一个交互式函数,它实现了:
- 计算目标时间 T
- 接收用户输入的 A、B
- 计算观众“乱按”的第三个数字
源码如下:
func InteractiveMagic() {
fmt.Println("=== 交互式魔术体验 ===")
fmt.Println("请按照提示输入数字,我会展示魔术的原理")
mc := NewMagicCalculator()
var num1, num2 int
fmt.Print("请输入第一个数: ")
fmt.Scan(&num1)
fmt.Print("请输入第二个数: ")
fmt.Scan(&num2)
fmt.Printf("\n你输入的是: %d 和 %d\n", num1, num2)
magicNum := mc.GetMagicNumber(num1, num2)
fmt.Printf("魔术数字(第三个数)是: %d\n", magicNum)
fmt.Printf("\n验证: %d + %d + %d = %d\n", num1, num2, magicNum, mc.targetTime)
fmt.Printf("这个数字代表的时间是: %s\n", mc.timestamp)
}
程序 main 入口:
func main() {
InteractiveMagic()
}
验证魔术:
# 运行程序
$ go run main.go
=== 交互式魔术体验 ===
请按照提示输入数字,我会展示魔术的原理
请输入第一个数: 1106
请输入第二个数: 88396
你输入的是: 1106 和 88396
魔术数字(第三个数)是: 2081398
验证: 1106 + 88396 + 2081398 = 2170900
这个数字代表的时间是: 2170900
通过 go run main.go 运行程序,接下来根据提示分别输入两个数字,这里以春晚观众说的两个数字(1106、88396)为例,然后计算观众“乱按”的第三个数字(2081398),最终得到的目标时间是 2170900。
没错,我在 2 月 17 日 09 时 00 分运行的程序。
总结
今天依旧使用 Go 语言简单实现了魔术小程序,看个乐子,开心最重要。
如果你有兴趣,完全可以通过聊天的方式让大模型生成一个带有前端界面的魔术计算器程序,体验 vibe coding 的乐趣。
本文完整代码示例我放在了 GitHub 上,欢迎点击查看。
25 年我的文章里吐槽了春晚魔术“降本增效”,在此给刘谦老师道个歉,是我冒犯了🤣之前对魔术一无所知。
25 年看了老罗采访刘谦的视频,对刘谦大佬肃然起敬 respect 🫡。
延伸阅读
- 用 Go 语言还原 2025 刘谦春晚魔术!:jianghushinian.cn/2025/01/30/…
- 用 Go 语言实现刘谦 2024 春晚魔术,还原尼格买提汗流浃背的尴尬瞬间!:jianghushinian.cn/2024/02/10/…
- 本文 GitHub 示例代码:github.com/jianghushin…
联系我
- 公众号:Go编程世界
- 微信:jianghushinian
- 邮箱:jianghushinian007@outlook.com
- 博客:jianghushinian.cn
- GitHub:github.com/jianghushin…
来源:juejin.cn/post/7606646387053936667
我的网站被黑了:一天灌入 227 万条垃圾数据,AI 写的代码差点让我社死
大家好,我是孟健。
上周六下午,我收到一封邮件。
标题很直白:"你的东西泄露了,兄弟"。
邮件里附了一个暗网论坛链接,声称我的网站 kirkify.net 的数据库已经被公开下载。

▲ 就是这封邮件。发件人 punker,链接指向暗网论坛的数据库下载帖
我打开后台一看——
case_studies 表:227 万条记录。
而前一天,这张表只有 259 条。
从下午 3 点 25 分开始,持续了整整 6 个半小时,有人往我的数据库里灌了 227 万条垃圾数据。
数据分布极其均匀:763K approved、763K pending、764K rejected。攻击者用 FloodUser_XXXXX 的命名模式批量写入,每条 caption 填充 1KB 的 base64 随机数据——这不是随机攻击,是有计划的数据库膨胀攻击。

▲ 我的 AI Agent 墨码发现数据异常后的应急分析,第一时间定位到了漏洞
漏洞在哪?一个没有门锁的 API

▲ kirkify.net——我用 AI 编程工具做的出海小产品,用 Cursor + Claude 几天搭好就上线了
问题出在一个叫 submitCaseStudy 的 Next.js Server Action 上。
这段代码有 五个致命问题叠在一起:
① Server Action 暴露为 HTTP POST 端点
Next.js 的 Server Action 虽然在服务端执行,但本质上就是一个 HTTP POST 接口。任何人都可以直接构造请求调用,完全不需要前端页面。
② 无认证(No Authentication)
函数体内没有任何 session / auth 验证。谁都能调,无门槛。
③ 无 Rate Limit
没有任何频率限制。攻击者写个循环脚本,每秒能提交几百条。
④ 自动审核通过(Auto-Approve)
代码里 status: 'approved' 硬编码,提交即上线。垃圾内容直接出现在 Gallery 页面,不需要任何审核。
⑤ 用 Service Role Key 绕过数据库安全
代码用 Supabase 的 service_role key 操作数据库,完全绕过了行级安全策略(RLS)。虽然数据库开了 RLS,但 service_role 拥有 God Mode 权限,安全策略形同虚设。
五个漏洞叠加的效果:你家大门敞开,没有保安,没有门禁,来者自动发 VIP 卡。
而这段代码,恰恰是 AI 帮我写的。
当初我对 Cursor 说:"帮我写一个提交案例的功能"。AI 很快给出了代码——功能完整、类型正确、能跑。但完全没有考虑安全性。
而我看到代码能跑,就直接部署了。
这不是个例

▲ Veracode 2025 报告:测试 100+ 个 AI 模型,45% 的代码引入了安全漏洞
数据印证了这一点:
- Veracode 报告:分析 100+ 个 LLM 生成的代码样本,45% 存在安全漏洞,引入了 OWASP Top 10 安全问题
- Apiiro 研究:截至 2025 年 6 月,AI 生成代码每月引入 超过 10,000 个新安全问题,六个月增长 10 倍
- 常见漏洞类型:缺乏认证、硬编码密钥、SQL 注入、缺少输入校验、未配置 Rate Limit
AI 很擅长写"能跑的代码",但它默认不会帮你加认证、加限速、配安全策略。
除非你明确要求它这么做。
修复过程:一天迁移整个数据库
发现问题后,我和 AI Agent 墨码立刻开始修复。
第一步:堵住入口
- 关闭
submitCaseStudy的公开访问 - 给所有写入 API 加上 JWT 认证 + Rate Limit
第二步:全面安全审计
- 审查所有 Server Action 的认证状态
- 检查 Supabase RLS 配置——发现 case_studies 表虽然开了 RLS,但只有一条 SELECT 策略,没有 INSERT 策略。而代码用 service_role key 绕过了全部 RLS
- 检查 billing_customers、credit_balances 等敏感表——确认未被攻击者访问,攻击者只能通过 Server Action 写入 case_studies 表
第三步:数据库迁移(关键决策)
- 没有选择在原数据库上修补,而是直接把整个数据库从 Supabase 迁移到 Cloudflare D1
- 迁移 12 张表,只导入 261 条干净数据(260 条 approved + 1 条 pending),227 万条垃圾数据直接抛弃
- D1 版本完全重写了数据访问层,用 JWT 认证,不再有裸露的 Server Action
- 同步完成 CF Workers 部署,DNS 切换上线
第四步:服务器加固
- fail2ban 收紧(3 次失败封 24 小时)
- VNC 绑定内网 IP
- 环境变量文件权限改为 600
- 泄露的 API Key 全部轮换
从发现到完成数据库迁移和上线切换,总共花了约一天。
给用 AI 编程的你:写完代码多问一句
这次教训让我养成了一个习惯:
每次 AI 帮我写完一个功能,我都会追加一句:
"这段代码有什么安全隐患?帮我加上认证、Rate Limit 和输入校验。"
就这一句话,能避免 80% 的安全问题。
再具体一点,每次上线前检查这 5 件事:
1. API 端点有没有裸奔? 不需要认证就能访问的写入 API = 等着被刷。特别注意 Next.js Server Action——它本质是 HTTP POST,不是"服务端函数"。
2. API Key 有没有硬编码在代码里? 检查 .env 文件权限,确保 Key 不在 Git 仓库里,更不要出现在聊天记录里。
3. 数据库有没有正确配置权限? 用 Supabase 就开 RLS + 写好策略。用 service_role key 要极其谨慎——它能绕过一切安全策略。
4. 有没有 Rate Limit? 没有限速的 API,就是一个等着被刷的 API。
5. 有没有监控异常? 数据量突增、请求量突增——这些信号需要有人盯着。
用 OpenClaw 的朋友,多留个心眼
最近 OpenClaw 火了(GitHub 21 万星),越来越多人在自己的服务器上跑 AI Agent。
OpenClaw 本身的安全性很好——沙箱隔离、权限分级、Token 加密存储,这些基础设施层面做得扎实。但你用 OpenClaw 搭建的应用和服务,安全性取决于你自己。
这次被攻击之后,我把自己服务器上的安全配置全过了一遍,总结了几条实用建议:
1. .env 文件权限改 600
你的 OpenClaw 配置文件和环境变量里存着所有 API Key。运行 chmod 600 ~/.openclaw/*.json 和 chmod 600 .env,只允许当前用户读写。
2. 不要在聊天里发明文 Key
我这次就踩了这个坑——在 Telegram 里给 Agent 发了 Replicate API Key,结果被记录到了几十个文件里。正确做法是直接写进 .env 或用 openclaw config 设置。
3. 远程访问绑内网
如果你在服务器上跑 VNC、远程桌面或调试端口,一定绑到内网 IP 或 Tailscale 网络,不要暴露在公网。我之前 VNC 绑了 0.0.0.0,相当于全世界都能连。
4. 开 fail2ban
SSH 暴力破解是最常见的攻击手段。apt install fail2ban 一行命令,建议配置 3 次失败封 24 小时。
5. Agent 不要用 root 跑
给 OpenClaw 创建专用用户,限制文件系统访问范围。万一 Agent 被诱导执行恶意命令,损害范围可控。
6. 定期检查开放端口
运行 ss -tlnp 看看你的服务器对外暴露了哪些端口。数据库端口(5432、3306)、调试端口(9229、18800)绝对不应该对公网开放。
OpenClaw 给了你 10 倍的生产力,也意味着 10 倍的攻击面。Agent 能帮你写代码、调接口、操作数据库——如果权限没控好,攻击者也能通过 Agent 做这些事。
AI 编程让我们 10 倍速出活,但也让安全债务 10 倍速累积。
代码能跑,不代表代码安全。
希望你不用像我一样,等到收到黑客邮件那天才明白这个道理。
你用 AI 写代码时踩过安全的坑吗?评论区聊聊,我来回。
来源:juejin.cn/post/7608953699230384168
写给年轻程序员的几点小建议
本人快 40 岁了。第一份工作是做网站编辑,那时候开始接触 jQuery,后来转做前端,一直做到现在。说实话,我对写程序谈不上特别热爱,所以技术水平一般。
年轻的时候如果做得不开心,就会直接 裸辞。不过每次裸辞的那段时间,我都会拼命学习,这对我的成长帮助其实很大。
下面给年轻人几点个人建议:
- 不要被网上“35 岁就失业”的说法吓到。很多人是在贩卖焦虑。我都快 40 了还能拿到 offer,只是这些 offer 薪资不到 30K。
- 基础真的很重要。我靠着基础吃香了十几年,在公司里也解决过不少疑难问题,深得领导器重。就算现在有 AI,你也要有能力判断它写得对不对,还要知道如何向 AI 提问。
- 适不适合做程序员,其实几年之后就能看出来:你能不能当上 Leader,或者至少能不能独当一面。如果你觉得自己确实不太适合,可以趁早考虑转行,或者下班后发展一些副业。大千世界,行行出状元,能赚钱的行业很多,不必只盯着程序员这一条路。
- 如果你觉得自己资质一般,但又真的喜欢写程序,那也没关系。《刻意练习》这本书里提到,一个人能不能成为行业顶尖,关键在于后天练习的方式,而不是天赋本身。
- 程序员做到后面,最大的挑战其实是身体机能,而不是技术。一定要多锻炼身体。在还没有小孩之前,尽量把自己的技术水平拉到一个相对高的位置。结婚有家庭之后,学习时间会明显减少,而且年龄增长、抗压能力下降,而程序员本身又是高度用脑的职业。如果你的技术储备够高,就能在一定程度上缓冲项目压力,让自己工作更从容。
- React、Vue、Angular 等框架都可以尝试做做项目。不同框架背后的设计思路,对思维成长很有帮助。前端很多理念本身就借鉴了后端的逻辑,多接触不同体系,会让你看问题更立体。
- 可以在 GitHub 上做一些开源小项目。素材从哪里来?其实就来自你在公司做过的项目。把其中一块通用能力抽出来,沉淀成一个独立组件或工具库,再整理发布到 GitHub。与此同时,多写一些技术文章进行总结和输出。等到找工作时,简历里可以写上类似 "全网阅读量几万+" 这样的成果展示,这些都会成为你的加分项,让你在竞争中更有优势。
- 35 岁以上,竞争力通常体现在两个方向:要么技术水平足够强,能够解决复杂问题;要么具备一定的管理能力,能够带团队。有人说那我以前就带过一两个徒弟,怎么办,那你得学会包装,你懂得,哈哈。
- 35 岁以上,面试对技术广度要求更高,所以不要太深入挖掘某一项技术了。我以前认识一个领导,虽然写代码能力一般,在公司已经不写代码了,但是他的技术广度比较好,业务能力还行,虽然 40岁了 还能跳槽到比较好的广告公司,而不是靠人脉,不得不佩服。
- 打工人比较麻烦的事就是 简历太"花"。频繁跳槽,在一个公司没干几个月就走,或者长期待业太久。如果岗位需要背调,简历造假会很麻烦,虽然有些小公司或外包公司不做背调。所以这方面简历自己要想想办法,你懂得。
- 另外要认清一个现实:单纯打工,很难发财。 这件事越早想明白越好。多读一些关于认知、资产配置的书,弄清楚什么是资产,什么是消费。哪怕这些认知在你有生之年未必能带来巨大财富,也可以传递给下一代,让他们少走弯路。
以上只是个人经历和感受,不一定适用于所有人,但希望能给年轻的你一些参考。
来源:juejin.cn/post/7606155928197070900
我创建了一个全 AI 员工的一人公司
大家好,我是 Sunday。
现在,用 AI 写代码,已经不算什么新鲜事了。写个组件、补个函数、改个 Bug,几句话交给模型就能搞定。
但是,大家有没有想过一个问题:如果我不只是用一个 AI,而是用一群 AI,会发生什么?
我们现在用 AI,本质上只是把它当成“高级工具”,即:我遇到问题 → 我问 AI → 它给我答案。
那么如果我们把脑洞放大一点呢?
既然我可以调用一个 AI,那是不是也可以 同时调用多个 AI ?既然 AI 可以写代码,那它是不是也可以完成:产品经理、设计师、测试、运维,甚至是 财务、人事 的工作?
换句话说: 我能不能,用一群 AI,组建一家“只有我一个人类员工”的公司?
多个 AI,各自承担不同角色:

- 产品负责拆需求:告诉产品我的需求,然后产品帮我把需求拆解成可以具体执行的步骤
- 开发负责编码:把具体的步骤告诉开发,开发负责把整个功能落地
- 测试负责验收:开发的代码,交给测试进行验收。验收失败则重新打回开发,开发负责修改 BUG
- 运维负责部署:最终完成的项目,运维负责部署上线,构建整个自动化部署的流程
- 财务负责算账:每天的 token 支出 和 营收,并给出更省钱的财务方案
- 人事负责管理:哪个 AI 员工“不合格”,人事负责把它“开掉”,并根据我的需求重新“招聘(生成)”新的 AI 员工
并且,我还希望它们之间可以独立思考,互相沟通,而我只负责:下目标、做决策。
如果这件事真的可行,那意味着什么?意味着一个人,或许可能真的可以撬动一整家公司级别的生产力。
说干就干。
AI 选择
市面上的 AI 模型已经非常多了:Claude、GPT Coder、Gemini、GLM、DeepSeek。。。有的贵,有的便宜,有的擅长推理,有的擅长编码。
最理想的状态其实很明确:
- 贵的 AI,承担复杂任务:产品设计、系统架构、核心编码
- 便宜的 AI,承担简单任务:统计、对账、流程、输出财务报表
只要这些 AI 之间可以互相沟通,以上这些都不是问题。
但是,Sunday 在经过一系列的测试之后,发现了一个很残酷的事,就是 不同模型的 AI 之间完全无法沟通。特别是不同厂商的 AI,每一个都被作为了独立的个体。虽然可以通过“协调者”方式强行拼接,但是实现复杂,并且效果也不理想。
额。。。好像这个一人公司的梦想就直接破灭了...
不行,不能那么容易放弃。
所以,在第一阶段,我只能选择一个更“粗暴但稳定”的方案:全部使用 Claude。
因为 Claude 提供了一个非常关键的工具:Claude Code:一个运行在纯终端里的 AI 编码智能体。我们只需要打开终端就可以直接通过语言对话的方式调用 AI 模型。

而接下来,我要做的事情是:用 Claude Code,一步步搭出一家“AI 员工公司”的雏形。
启动多个 AI 终端
一个终端窗口作为一个员工,如果我们想要多个员工那么就只需要启动多个终端就可以。然后我们要给他们赋予角色。一开始,我们可以先从最小可行方案开始:

我们先制定两个角色,他们分别是:
- 张三:产品经理
- 李四:程序员
然后,就出现了 大型翻车现场....

在我尝试给 Claude 提示词,让他变成 张三 的时候。Claude 给我的回复是:我是 Claude,我不是张三....
不是,咱说好的玩角色扮演呢...你就这么不配合的吗?
因为在我的设想里,这一步应该是最简单、最“理所当然”的:起个名字、设个背景、分配个角色。然后 AI 就会自动进入对应的工作模式。
结果现实就是这么现实:“我能帮你完成工作,但是我就不承认我是张三,我就是 Claude”
这不是能力问题,这赤裸裸的就是个 态度问题 啊! 看来 AI 也不想当牛马啊。。。
没办法,我只能尝试修改下提示词:

好的,产品经理已就位。然后我们可以从一个小的 todolist 的需求开始:

现在我们已经有了一个 todolist 的需求文档了。接下来最好的方案就是 产品经理的 AI 可以直接通知 程序员 AI,完成代码实现。
但是,可惜 不同窗口之间 AI 无法直接通讯。所以,我就必须要承担起这个通讯员的角色。

最终实现的效果如下:

整个功能完善、可用。并且还提供了 主题变化 的功能。。。
反思
可是如果我们仔细去分析上面整个流程,我们可以发现:这个流程远没有我们想象的那么顺畅。甚至有点 多此一举。
因为以上这些需求完全可以在一个 Claude code 中完成,没有必要进行这样的划分。甚至可以说:在任务简单时,多 AI 协作不仅没有提升效率,反而增加了沟通成本。
而这样的一种调度+协作的方式,如果任务变得复杂了,恐怕 AI 没有乱呢,我们自己就已经先手忙脚乱了。
这让我开始怀疑:最初设想的这种全 AI 员工的方式,会不会从一开始,就是错的?
但是,当我仔细思考过之后,我发现问题不在于“多角色”这个想法本身,而在于:当前这种“多终端 + 人工调度”的协作方式,本质上是一个非常低效的协作模型。
如果我们换一个角度,从“协作工具”入手,情况可能会完全不同。
这时,我注意到了一个开源项目:vibekanban。

它提供了一种非常典型的多人协作看板模式,和我们熟悉的 Teambition、Jira、Trello 几乎一致,包含了:任务可视化、状态流转清晰、每个角色只关注自己的列


通过 vibekanban 这种工具,我们至少可以做到:多任务并行更清晰、角色边界更稳定、协作过程可追踪、可回溯。
但即便如此,我很快又意识到一个更现实的问题:这,依然离“全 AI 员工的一人公司”,依旧差得很远。
全 AI 员工的难点在哪里?
根据 Sunday 的实验,其实我们可以发现,全 AI 员工的最大难点就是 如何高效的完成 AI 之间的自动协作。
更具体一点说,核心难点只有一个:如何让多个 AI,在几乎没有人工干预的情况下,自动完成“上下文传递 + 状态对齐 + 任务接力”?
那么这个功能可以实现吗?
答案是 绝对可以
学习过咱们的 商业级 AI 课程 的同学都知道,在 AI 的持续对话中,我们可以通过记录上下文的方式完成跨角色的连续对话。
那么同样的道理,如果我们可以记录不同 AI 沟通上下文的 关键内容,然后通过上述的同样逻辑呼叫下一个 AI(让代码通过指令自动传输关键上下文,并调起 AI 服务),那么全 AI 员工的功能就可以实现。只不过在这样的完美的流转过程中,我们还需要做很多的努力才可以。
总结
这一通折腾下来,收获还是很明显的。三个关键:
- 单模型,已经足够强
- 多模型,真正难的是系统设计
- “全 AI 员工”,本质是一个 调度系统 + 状态系统 + 协作协议 的问题
而这,也意味着:下一阶段的探索重点,已经不再是“哪个模型更强”,而是:如何设计一套真正可自动运行的“AI 组织系统”。
来源:juejin.cn/post/7597355509747974170
全栈开发者的谎言:什么都会 = 什么都不精?

上周面了一个自称5年全栈的兄弟🤔。
简历漂亮得像报菜名:精通 Vue/React,熟悉 Node.js/Go,玩过 K8s,能画原型图,甚至还写过两个 Flutter App。
我只问了一个问题:如果不使用任何框架,Node.js 的 HTTP 模块是如何处理高并发下的内存积压的?
他愣了三秒,支支吾吾说:厄...一般我们都用 NestJS,框架处理好了吧?😖
那一刻,我看到了无数前端人的缩影:我们拼命想成为无所不能的全栈大神,最后却活成了什么都懂一点、什么都搞不定的API 缝合怪。
全栈不等于样样稀松,真正的价值在于深耕核心难题。与其在重复造轮子中消耗精力,不如用 RollCode 低代码平台 提效。它支持 私有化部署 和 自定义组件,搞定 静态页面发布(SSG + SEO),让开发回归技术本质。
全栈的本质
你要知道,全栈工程师(Full Stack Engineer)这个词,最开始是谁捧红的?
是硅谷的创业公司。
为什么?因为没钱。
他们招不起一个前端专家 + 一个后端专家 + 一个运维专家。他们需要一个性价比极高的耗材,一个人把这三个坑都填了。
于是,招聘 JD 画风突变:
25K,招全栈。要求精通 React、Node.js、MySQL、Docker、AWS...
你看似拿了比纯前端高 20% 的工资,干的却是 3 个人的活。你的大脑需要在 CSS 的 z-index 和 MySQL 的 Transaction Isolation Level 之间疯狂切换。
结果是什么?
你的认知被彻底击穿。
你以为你的认知,什么场景都能用。
但在真正的技术攻坚战里,什么都不是。🥱
所谓的全栈,大多是全沾
我见过太多这种虚假全栈的代码了,简直是灾难现场。
他们写后端,思维还是前端那一套:
- 数据库设计:没有范式概念,一张表 50 个字段,全是 JSON 字符串。
- 错误处理:
try-catch包住整个 API,报错全返200 OK,msg 里写 bug。 - 并发安全:在
for循环里await查库,完全不懂什么是连接池耗尽。
让我们看一段典型的前端思维写后端的死代码:
// 典型的假全栈代码
// 以为用了 async/await 就是后端大神了
router.post('/buy', async (req, res) => {
// 1. 先查库存(没有锁,并发一来直接超卖)
const stock = await db.query(`SELECT count FROM products WHERE id=${req.body.id}`);
if (stock > 0) {
// 2. 扣库存(中间如果服务挂了,数据不一致)
await db.query(`UPDATE products SET count = count - 1 WHERE id=${req.body.id}`);
// 3. 创建订单
await db.query(`INSERT INTO orders ...`);
return res.json({ success: true });
}
});
这种代码,稍微有点后端经验的人看了都会心肌梗塞。但在全栈眼里:跑通了啊,没报错啊!
什么都会 = 什么都不精。
你以为你拓宽了广度,其实你牺牲了深度。在裁员潮来临时,公司是会留一个能解决复杂内存泄漏的 Node 专家,还是留一个既能写页面又能写增删改查,但稍微上点量就崩服务的万金油?
在我们国内,答案是极其残酷的。
T 型人才的骗局
很多人反驳:我要做 T 型人才,一专多能!
理想很丰满,现实是绝大多数人做成了 一型人才 —— 横向铺得无限开,纵向深度为零。
- 学了 Docker,只会
docker run,不懂 Cgroup 原理。 - 学了 React,只会
useEffect,不懂 Fiber 调度。 - 学了 Rust,只会写 Hello World,借用检查器都过不去。
- 学了 SQLite, 只会增删改查,不懂什么叫锁,什么叫性能优化
这种简历驱动型学习产生的知识,极其脆弱。
一旦遇到深水区的 Bug,你的全栈光环瞬间破碎,只能去 AI Chat 复制粘贴,然后祈祷奇迹发生。
真正的全栈
是你能从前端的一个点击事件(Click),一路追踪到内核的系统调用(Syscall),这中间的每一层你都可控。
如果你做不到,那你充其量只是一个全栈水货。😥
请你先成为单栈战神
人的精力是有限的。在 35 岁危机到来之前,请功利一点,聚焦一点。
如果你是前端:
别急着去学 Go,别急着去搞 K8s。
先把浏览器渲染原理吃透,把 V8 垃圾回收搞懂,把图形学(WebGL/Canvas)啃下来。
当你在一个领域钻得足够深,深到能解决 99% 人解决不了的问题时,你才有资格去谈横向扩展。
这时候的扩展,不是为了凑简历,而是为了解决问题。
- 学 Node.js,是因为前端构建工具跑得太慢,你需要深入 OS 层优化 I/O。
- 学 Rust,是因为 JS 在计算密集型任务上拉胯,你需要 WASM 来救场。
这才是全栈的正确打开方式:降维打击。
别再用全栈来标榜自己了。
在这个分工日益精细化的时代,专家永远比杂家值钱。
专注你的赛道,把它做到极致。
那才是你不可被替代的根本。
大家怎么看🤔

来源:juejin.cn/post/7601811815828406323
为什么程序员不自己开发一个小程序赚钱
大家好,我是凌览。
- 个人网站:blog.code24.top
- 去水印下载鸭:nologo.code24.top
如果本文能给你提供启发或帮助,欢迎动动小手指,一键三连(点赞、评论、转发),给我一些支持和鼓励谢谢。
刷到一个挺扎心的话题:程序员为什么不自己做产品赚钱。
身边还真有不少人问过类似的话:"你天天写代码这么厉害,怎么不自己搞个App、做个小程序?随便弄弄不就发财了?"
每次听到这种问题,我都不知道该从哪儿开始解释。

最近在 X 乎上看到同行的回答,看完只能说:太真实了。
理想很丰满、现实很骨感
首先,假装我们是程序员,某天深夜加班回家,瘫在沙发上刷手机,突然一个念头炸开——"我去,这个功能市面上根本没有!我要是做一个,肯定爆火!”。
脑子里的画面瞬间清晰:产品上线、用户疯涨、投资人排队、财务自由...,满脑子都是"老子不干了,要创业"。
说干就干,流程走起来:
第一步:注册账号结果发现邮箱早就被自己多年前注册过,还冻结了。解冻、换邮箱,折腾一圈。
第二步:想名字绞尽脑汁想了个好名字,一搜,已被占用。再想想想,终于通过。
第三步:开发前端后端一把抓,不会前端?没事,Ai结伴编程一把梭。uniapp启动,一套代码多端运行,微信、QQ、抖音、快手平台全都要上。
第四步:买服务器,阿里云一核两G,一年600块,付款的时候手还没抖。
第五步:搞域名,随便挑一个,一年30块,便宜。
第六步:备案到这里,噩梦开始了。拍照、填表、等审核,来来回回折腾。好不容易过了,提交小程序审核——"该项目类型个人不支持,需要企业认证。"
卒。亏损-630元。
但程序员嘛,头铁。不信邪,继续:
第七步:注册公司个体户要经营场所,干脆直接注册公司。准备材料、开对公账户、刻公章,又是一顿操作。
第八步:重新认证企业认证要的材料堆成山,干脆重新注册个小程序。又是想名字(原来的还要等两天才能释放)、填资料、承诺书、盖章...
终于,小程序上线了。
上线只是开始,赚钱才是难题。
每天努力宣传、引流,结果广告收益长这样:昨日收入0.65元。
对,你没看错,六毛五。折线图上的曲线在0.3元到1.8元之间反复横跳,月收入6.72元。服务器钱还没赚回来,先赔进去几百块。
什么会这样?
- 个人开发者不能收费,只能通过挂广告,而广告收入低到离谱。激励广告单价居然只有4.29元/千次展示,Banner广告更惨,几块钱千次展示。算笔账:日访问量要达到2万,才能日入500。2万UV什么概念?很多小公司的官网一天都没这么多人。
- 推广难,小程序是个封闭生态,你不能诱导分享,否则直接封号。只能从其他平台往微信导流,但用户路径一长,流失率奇高。要开通流量主还得先引流500人,这第一道门槛就卡死不少人。
- 审核机制让人头大,页面上文字一多,就说你涉及"内容资讯",不给过。个人开发者经营类目受限,动不动就踩红线。
不是技术问题,是商业问题
程序员不做小程序赚钱,不是因为不会写代码,而是因为写代码只是万里长征第一步。
做一个能赚钱的小程序,需要:
- 产品能力:做什么?解决谁的什么问题?凭什么用你的?
- 运营能力:流量从哪来?怎么留存?怎么变现?
- 商业资质:公司、对公账户、各种许可证,合规成本不低;
- 时间和精力:白天上班,晚上搞副业,服务器半夜挂了还得爬起来修。
而大多数程序员,只是喜欢写代码而已。让他们去搞流量、谈商务、处理工商税务,比写一万行代码还痛苦。
更扎心的是,就算你愿意干这些,小程序的红利期也早过了。2017年刚出来那会儿,确实有人靠简单工具类小程序赚到第一桶金。现在?各大平台库存量几百万个,用户注意力被某音、被红书切得稀碎,新入局者基本就是炮灰。
成功案例
网上经常能看到"做小程序月入过万"的帖子,但仔细看会发现,要么是卖课的,要么是有特殊资源的(比如手里有公众号矩阵导流),要么是早期入局者吃到了红利。
对于普通程序员来说,接个外包项目,按时薪算可能比折腾三个月小程序赚得还多,还省心。
技术只是工具,商业才是战场。会拿锤子的不一定会盖房子,会写代码的不一定能做出赚钱的产品。这不是技术问题,这是两个完全不同的赛道。
最后
所以,开发一个小程序到底能不能赚钱?
能,但跟你关系不大。
要么你有现成的流量池,比如几十万粉丝的公众号、抖音号,小程序只是变现工具;要么你有特殊资源,比如独家数据、行业资质;再要么你踩中了某个极小概率的风口,比如当年疫情期间的健康码周边工具。否则,个人开发者大概率是炮灰。
写代码是确定性的事,输入逻辑输出结果;做生意是概率性的事,投入不一定有回报。 大多数人适合前者,却误以为自己能驾驭后者。
你呢?有没有过"做个产品改变世界"的冲动?最后成了吗?
来源:juejin.cn/post/7600489282839625738
为什么没人走后门当程序员?
最近刷 X 乎时看到这样一个耐人寻味的的讨论话题,浏览量超 170w,参与讨论的同学也好多。
问题描述是这样的:
“为什么没人走后门当程序员?”

我认真浏览了一圈,心里五味杂陈。
在许多人眼中,程序员是一个高薪的职业。然而,即便程序员们拿着如此令人羡慕的高薪,尽管互联网行业如此火热,但却几乎很少听说有人说走后门想进去。
其实这事情一点也不难理解,这得先从程序员工作的本质说起。
因为程序员这个职业,从根子上来说压根就不靠后门吃饭。
而且程序员这行,恰恰是最混不了日子的,它要求你持续学习,跟上技术迭代,解决一个个具体而棘手的问题。
编程是一个实实在在的技术活,当你的代码运行不起来,它就是运行不起来,你写的系统有漏洞,它就会在某个深夜悄然崩溃,这种刚性特质就决定了程序员这个岗位无法容忍滥竽充数者。
而程序员的门槛,是技术,是能力,走后门也写不出一行能跑通的代码。
退一步说,哪怕就算你真靠后门挤进了公司,项目一上来,分分钟就会露馅。
那些想走后门的人,大概率是想找一个稳当、轻松、有人脉资源的工作。但反思程序员这行,是这样吗?好……好像哪个也不沾边吧……
所以没人走后门干程序员,不是因为这行没前途,而是因为它太实在、太透明、太难伪装。
这是一份必须用真本事去交换的职业,关系在这里,价值被迅速稀释到近乎为零。
另外大家往往有种误解或者说错觉,总觉得程序员赚得多就是香,而实际却忽略了这个高薪背后所付出的代价,这一切都是来源于高强度脑力劳动和长时间脑力付出所带来的回报。
再者,互联网行业的本质是工程化与扁平化。在这个体系里,你是谁、认识谁、从哪来,其实并不太重要,没人会关注你这个,英雄不问出处。
重要的是,你能不能解决问题,能不能为项目创造价值。
所以,当我们回过头来再看,为什么没人走后门干程序员这个问题,其实本身就蕴含着一种误解。它预设了程序员是一个好差事,一个可以让人躺着赚钱的美差。
但事实上,程序员是一份需要真才实学、持续奋斗、直面挑战的工作。你付出多少努力,掌握多少技能,最终都会在你的代码和收入上得到真实的反馈。
当然,这里还有一点需要反思的是:
该说不说,程序员行业的这种去关系化特质,其实某一角度来说也带来了一些副产品。
比方说,技术至上的工作文化有时会导致个体沟通能力的忽视,对硬技能的过度强调可能让软技能的发展有所滞后,另外代码世界的非黑即白有时候也会让人忽略了现实世界的复杂灰度。
这些其实都是程序员文化中值得反思和平衡的地方。
有一说一,其实很多代码之外的东西对现如今的生存也很重要,因为思维如果不开阔出来的话,路可能就会越走越窄了。
其实很多程序员在年龄大了之后越来越焦虑的一个重要原因就是因为生存技能太过单一了,所以千万不要给自己设限,不要把目光仅仅聚集在自己的一亩三分地上,还是要多培养一些其他方面的一些软实力,会很有帮助。
不知道大家有没有看过《软技能》那两本书,讲的就是代码之外的一些软技能和经验,里面提到了很多有关职场的分析,自我提高的一些路径,个人的持续学习和成长,甚至包括像理财、健身、时间管理、心态调整等等。
有意识地去关注这方面东西的原因在于可以帮助自己把思维给开阔出来,毕竟很多时候有必要跳出来看问题,这时候这些软技能往往就能发挥作用了。
另外,程序员作为一个有个性的创造性群体要专注精进技术这本身没错,但是职场毕竟也是一个充满人情世故的江湖,所以掌握一些通用的职场规则、沟通技巧,甚至是向上管理的艺术,这对于程序员来说也是十分有必要的。
仰望星空,脚踏实地,埋头赶路的同时也不要忘记时常抬头看看周围的环境和机会。
那关于这个问题,你的看法是什么呢,如果有不同的见解,也欢迎一起来分享交流~
注:本文在GitHub开源仓库「编程之路」 github.com/rd2coding/R… 中已经收录,里面有我整理的6大编程方向(岗位)的自学路线+知识点大梳理、面试考点、我的简历、几本硬核pdf笔记,以及程序员生活和感悟,欢迎star。
来源:juejin.cn/post/7599581204859715610
裁员为什么先裁技术人员?网友一针见血
最近逛职场社区的时候,刷到一个职场话题,老生常谈了,但是每次参与讨论的同学都好多。
这个问题问得比较扎心:
“为什么有些企业的裁员首先从技术人员开始?”

关于这个问题,网上有一个被讨论很多的比喻:
“房子都盖起来了,还需要工人么?”
有一说一,这个比喻虽然刺耳,但却非常形象地揭示了某些企业的用人逻辑,尤其在某些非技术驱动型的公司里。
在某些非技术驱动的公司(比如传统企业转型、或者业务模式成型的公司),其实技术部门很多时候是会被视为「成本中心」,而非「利润中心」的,我相信在这类企业待过的技术同学肯定是深有体会。
就像盖大楼一样,公司需要做一个 App,或者搞一个系统,于是高薪招来一帮程序员“垒代码”。
当这个产品上线,业务跑通了,进入了平稳运营期,公司某些大聪明老板总会觉得“房子”已经盖好了。
这时候,一些开发人员在老板眼里就变成了“冗余”的成本。
大家知道,销售部门、业务部门能直接带来现金流,市场部能带来用户,而技术部门的代码是最看不见摸不着的。
一旦没有新的大项目启动,老板会觉得技术人员坐在那里就是在“烧钱”。
那抛开这个“盖楼”的比喻,在这种非技术驱动的公司里,从纯粹的财务角度来看,裁技术岗往往是因为“性价比”太低。
所以这里我们不得不面对的一个现实是:技术人员通常是公司里薪资最高的一群人。
高薪是一把双刃剑呐。
一个初级程序员的月薪可能抵得上两个行政,一个资深架构师的年薪可能抵得上一个小团队的运营费用。当公司面临现金流危机,需要快速削减成本时,裁掉一个高级技术人员省下来的钱,相当于裁掉好几个非技术岗位人员。
除此之外还有一个比较尴尬的事情那就是,在技术团队中,往往存在着一种“金字塔”结构。
随着工龄增长,薪资涨幅很快,但产出效率(在老板眼里)未必能线性增长。
脑补一下这个场景就知道了:
- 一个 35 岁的高级工程师,月薪 4 万,可能要养家糊口,精力不如 20 多岁的小年轻,加班意愿低。
- 一个 23 岁的小年轻,月薪 1 万 5,充满激情,能扛能造。
这时候某些大聪明老板的算盘就又打起来了:
裁掉一个 4 万的老员工,招两个 1 万 5 的小年轻,代码量翻倍,团队氛围更活跃,成本还降了,这种“优化”在管理层眼里,简直是“降本增效”的典范。
所以综合上面这种种情形分析,这时候,文章开头的那个问题往往也就会逐渐形成了。
所以事就是这么个事,说再多也没用。
既然环境不能左右,那作为个体,我们又该如何自处呢?
这里我不想灌鸡汤,只想务实地聊一聊我所理解的一些对策,希望能对大家有所启发。
同时这也是我给很多后台私信我类似问题小伙伴们的一些共同建议。
1、跳出技术思维,建立业务思维
千万不要只盯着你的 IDE 和那一亩三分地代码,抽空多了解了解业务和流程吧,比如:
- 项目是靠什么赚钱的?
- 你的代码在哪个环节为公司省钱或挣钱?
- 如果你是老板,你会怎么优化现在的系统?
当你能用技术手段去解决业务痛点(比如提升转化率、降低服务器成本)时,你就不再是成本,而是资产。
2、别温水煮青蛙,要保持技能更新
这一点之前咱们这里多次提及,在技术行业,吃“老本”是最危险的。
当今的技术世界变化太快,而作为程序员的我们则恰好处于这一洪流之中,这既是挑战,也是机会。
还是那句话,一定要定期评估一下自己的市场价值:如果明天就离开现在的公司,你的技能和经验是否足以让你在市场上获得同等或更好的位置?
无论在公司工作多久,都要不断更新自己的技能和知识,确保自己始终具有市场竞争力。
3、别让自己的工作经验烂掉,有意识地积累职业资产
这一点我们之前其实也聊过。
除了特定的技术、代码、框架可以作为自己可积累的能力资产之外,其实程序员的职业生涯里也是可以有很多可固化和可积累的有形资产的。
比如你的技术经历、思维、经验、感悟是不是可以写成技术博客文字?你写的代码、工具、框架是不是可以形成开源项目?你的工作笔记和踩坑记录是不是可以整理成技术手册?
千万不要让自己的工作经验烂掉,而是要有意识地将自己的技术资产化,将自己的过往经验、知识、能力转化成在行业里有影响力的硬通货。
4、尽早构建 Plan B,提升抗风险能力
当然这一点虽然说的简单,其实对人的要求是比较高的。前面几点做好了,这一点有时候往往就会水到渠成。
我觉得总体的方向应该是:尽量利用你的技术特长来构建一个可持续的 Plan B。
比方说:开发一个小工具、写写技术专栏、或者运营一个 GitHub 项目、在技术博客或社区中建立个人品牌...等等,这些不仅仅能增加收入,往往还能拓展你的人脉圈。
其实很多程序员在年龄大了之后越来越焦虑的一个重要原因就是因为生存技能太过单一了,所以千万不要给自己设限,埋头赶路的同时也不要忘记时常抬头看看周围的环境和机会。
好了,今天就先聊这么多吧,希望能对大家有所启发,我们下篇见。
注:本文在GitHub开源仓库「编程之路」 github.com/rd2coding/R… 中已经收录,里面有我整理的6大编程方向(岗位)的自学路线+知识点大梳理、面试考点、我的简历、几本硬核pdf笔记,以及程序员生活和感悟,欢迎star。
来源:juejin.cn/post/7579499567869116466
我的2025:做项目、跑副业、见人、奔波、搬家、维权、再回上海
2025 年,如果让我用一句话定性,我会说:我在变强,也在重新选择自己的人生结构。
这一年我做了很多事,多到我一度不敢回头看。表面上看,我一直在“往前”:写内容、做项目、跑副业、见人、奔波、搬家、维权、再回上海。可只有我自己知道,真正折磨人的不是忙,是那种反复出现的瞬间——我突然意识到:我不是在冲,我是在被生活推着跑。
我确实拿到了一些结果。内容有过爆的时刻,小红书涨了粉,视频剪辑从手忙脚乱到慢慢顺手,有人开始来问我、信我、甚至愿意付费。那段时间我有一种很罕见的笃定:只要我肯学、肯磨,很多事我都能做成。那种“我好像什么都能做”的自信,在这一年里反复把我从低谷里托起来。
但同样是这一年,我也交了一笔不轻的学费。不是钱那么简单,更是对人、对机会、对“看起来很美”的承诺的那种天真。我曾因为信任做了一个很重的决定;也曾在北京的夜里把事情一条条摊开算清楚,最后发现不是值不值的问题,而是我再拖下去,就会把自己耗到没样子。
我不想把这篇复盘写成流水账,也不想写成鸡汤。我只想把这一年最真实的部分摆出来:我怎么一点点变强,怎么被现实教育,怎么止损、怎么维权、怎么把自己从废墟里捡回来。
1. 我开始把表达当成一件正事
三月开始,我把很多注意力放在“说清楚”这件事上。
以前我也输出,但更多像随手记录。2025 年不一样,我开始认真经营表达:每天钻研、每天尝试、每天复盘。公众号有了更明确的正反馈,有几篇文章突然被推起来,评论区开始出现陌生人的共鸣,后台也开始有人来问我问题。那种感觉很奇妙——我写的东西不再只属于我自己,它开始进入别人的生活。
今年使用最多的AI IDE 就是Trae,也参加了第一期的Trae 征文活动,获得了第二名,Trae给我来了很多成长。
今年在Trae 方面的实践:

Trae 刚出来Claude模型时,连夜测评它的能力,当时花了5个小时搞出一个App,项目并且还开源了 

我也开始碰视频。说实话,一开始很狼狈:剪一个一分钟的视频,要花我两三个小时。卡点、配乐、字幕、节奏,哪一样都不像看起来那么简单。我一度怀疑是不是我不适合,但又不甘心。我知道这是一块我之前没尝试过的能力,一旦练出来,就是新的路。

这一段给我的礼物,是一种更稳定的自信:很多事看起来复杂,只要拆开、一步步做,就会变得可控。
2. 我把想法做成了作品通过Vibe Coding
五月到八月,我进入了一种“手里有活”的状态。

从懵懂到落地:记录我们第一次成功将大模型“塞”进业务的曲折历程

年初做了自己第一款AI应用


那段时间我做了很多作品,也开源了不少东西。说白了,就是把想法从脑子里拎出来,做成一个能跑、能看、能用、能被别人理解的东西。
与此同时,我也给团队做了多次分享,讲我最近在做什么、怎么做、踩了什么坑、怎么绕开。

中间有两次机会我印象很深:一次是来自一家很大的咨询公司,一次是出海方向的远程邀请。它们都挺诱人,但我当时都拒绝了。原因很简单:我知道我还没准备好。能力没到那个厚度、心态没到那个稳定度,我不想靠运气上去,然后靠硬扛撑住。
也有一些小小的惊喜:有人买了我做的东西,虽然数量不算多,但足够让我确认——我做的东西不是自嗨,是真的有人需要。更重要的是,越来越多的网友通过我的内容认识我,联系我,问我问题。
那几个月我最大的收获不是“做了多少”,而是一个更朴素的结论:想法不值钱,做出来才值钱。
3. 有人愿意为我的能力买单
九月到十一月,我的副业开始像一门“正经事”。
咨询变多了。有的是临时问答,有的是更系统的陪跑。我接了三份陪跑,也因此认识了几位很投缘的朋友,都是山西的。我们聊项目、聊选择、聊怎么把事情做成,也聊怎么在现实里不把自己弄丢。
这份关系很珍贵。它不是那种互相吹捧的热闹,而是我能明显感到:对方因为我的建议少走了弯路,事情推进得更顺,而我也因为对方的反馈变得更坚定。那种“我真的帮到了人”的成就感,比数字更实在。
我也在这一段第一次更清晰地看到我的位置:我不是只能埋头做项目的人,我还可以把经验讲清楚,把复杂拆简单,把别人卡住的点指出来。这是一种能力,也是一种责任感。
这一段让我相信:靠自己攒出来的口碑,慢,但稳。
4. 我重新确认了“钱该花在哪”
国庆我和家人自驾出去玩了一趟。

风很大,天很高,羊肉很香。我们在草原上待了一天,我给父母安排了越野卡丁车,让他们在草地上跑一圈;我和姐姐骑了马,笑得像回到小时候。那几天我很放松,甚至有点恍惚——原来我努力这么久,最想换来的并不是某个头衔,而是这种“我能让他们开心”的底气。
我以前对花钱很谨慎,总觉得要攒着、要算计回报。可当我把钱花在家人身上,那种舒坦很直接:不需要证明,不需要解释,花出去就是一种“我扛得住了”的确认。
5. 去北京一趟,我把胆子捡了回来

十月我去北京参加了一个活动,也算第一次为了这类事出远门。2026年,多输出AI,多参加活动。
现场人很多,节奏很快,信息密得让人喘不过气。那天我最大的感受,不是见了什么产品,而是突然明白:机会真的会从我身边走过去,走过去就没了。很多时候不是我不够好,是我不敢站出来,或者我下意识觉得“我还不够格”。

去天津路上,熟悉的感觉
我也去了天津,见了老朋友老李。我们聊了一整天,我帮他搬运整理食品,他带我吃了天津菜,甚至让我体验了一把保时捷 911。最后他把我送到机场。

那一天让我很感慨:这个世界其实很大,也很活,我不能总把自己困在“怕麻烦、怕尴尬、怕出丑”的情绪里。

今年我也买了不少书,也读了不少书。《亲密关系》《认知驱动》《纳瓦尔宝典》……它们没有给我标准答案,但给了我更清醒的视角:我要对自己的情绪负责,对自己的选择负责,对自己的长期负责。
6. 我相信过他,也因此完成了一次祛魅
十一月底,我做了一个很重的决定:离职,去北京试一次。

这件事我并不是冲动。相反,我想了将近一个月。朋友“他”邀请过我三次,前两次我都拒绝了。第三次创始人亲自找我,话说得很漂亮,未来画得很大,而我也确实在那个阶段渴望一次更大的空间。再加上对“他”的信任,我最终点了头。

离开前,我做了一件我很想做的事:把爸爸接到上海。那是他第一次来上海,也是他第一次坐飞机。我去接他的时候,他脸上的喜悦藏不住。我带他逛了很多地方,拍了很多照片。送他去机场那天,我心里很踏实——那种成就感,不来自任何评价,只来自“我能带他看世界”的瞬间。
今年我也给妈妈买了新手机,她之前那部太卡了。再小的事情,落在父母身上都是实在的改变。
然后我去了北京。
现实很快给了我一记闷棍。之前说的和实际差太多太多。我会在很短时间内发现:有些话只是话,有些承诺只是情绪,有些“格局”只是包装。我不想在这里写具体细节,但我可以写结论——这次经历让我完成了一次祛魅:对人、对所谓“机会”、对“看起来很美”的未来。
我也更清楚了一件事:我并不是不能吃苦,我是不愿意把我的尊严和时间押在不靠谱的人和不靠谱的事上。
7. 我救了三只狗,也被这座城市的善意接住
这一年我救了三只狗。

第一只是中华田园犬,在公园遇到的。它很瘦,眼神怯,但又不躲人。
第二只是边牧,在公司附近,它更像是走丢的孩子,聪明又无助。

第三只是阿拉斯加,在豫园附近,体型很大,却一点安全感都没有。
我喜欢狗。遇见它们的时候,我很难装作没看见。我做的事其实也不复杂:拍照、发帖、联系、筛选领养人、把信息对齐清楚,然后送它们去新家。
这件事最打动我的,不是我多善良,而是我发现:大城市真的有很多愿意伸手的人。我发出求助,真的会有人回应。我以为我在救它们,其实在某些时刻,是这些善意在把我从疲惫里接住。
8. 一笔沉没成本:止损、维权、和不再委屈自己
十二月初,北京给了我最硬的一课。

我在北京待了十来天,一直住酒店。对方之前说会报销,但后来什么都没有。入职前一天我找了房子,租房费用、中介费用、再加上各种奔波成本,堆起来是一笔不小的支出。更糟的是:入职第一天我就通过另一位同样处境的人了解到了真实情况;再加上“他”下班后说的一些话,我很快确定——这里不是我该待的地方。

那一刻最难的其实不是离开,而是面对沉没成本。我已经付出那么多,我会本能地想“再忍忍,再等等”。但我很庆幸,那天我没骗自己。我选择止损。
随之而来的就是维权。房子我没入住,合同日期也没开始,但管家很无赖,甚至带着恐吓。那种“我讲理他就耍赖”的感觉很恶心。我一开始也很烦,后来干脆不和她废话,直接走流程,通过 12315 协调,拿回了一部分。理论上可以拿回更多,但要继续耗时间精力,我当时选择到此为止。
这一段时间,让家里也没少操心,哎....
我最想写给自己的不是“钱亏了”,而是一个更重要的结论:以后遇到不公,我不再用委屈换和平。该维权就维权,该翻脸就翻脸。
9. 回到上海:我把自己一点点拉回正轨

十二月中旬我回到了上海。

收拾好家里的工位
那段时间我能量很低。不是累,是一种被现实撞过之后的钝。我会怀疑自己、怀疑判断、怀疑信任,甚至怀疑“是不是我太敏感了”。但生活不会等我缓过来,它只会继续往前。

我做的第一件事是把我自己拉回正常:吃饭、睡觉、见朋友。后来我和老耿去了杭州散心。城市很安静,走在路上我突然发现:风还是一样吹,灯还是一样亮,我不会因为受挫就失去明天。
我慢慢控住场了。把生活拉回正轨了。也把那句最重要的话重新捡回来——我在变强,也在重新选择自己的人生结构。
最后
回头看 2025 年,我最大的变化不是“我做了多少”,而是我对人生结构的要求变高了。
以前我会把努力当成答案。现在我更在意:这份努力能不能沉淀,能不能让我拥有更多选择权。以前我遇到烂事会先忍,想着“算了”。但北京那一段之后我更确定:委屈不会换来尊重,只会换来下一次更大的代价。该止损就止损,该维权就维权——哪怕沉没成本已经砸下去,我也要把自己从泥里拎出来。
这一年我也完成了一次祛魅:
对“机会”的祛魅,对“关系”的祛魅,对“画出来的未来”的祛魅。
我开始相信一句话:真正值得的机会,不会只靠嘴说;真正可靠的人,也不会只靠情绪绑架。
如果说 2025 年教会了我什么,我觉得是三件事:
第一,能力不是拿来逞强的,是拿来兜底的。
我在最狼狈的时候,靠自己把局面稳住了。那种“我能扛住”的底气,是真的。
第二,钱花在家人身上,会变成一种很踏实的成就感。
我以前以为成就感来自外界认可,今年我更确定:来自父母的笑、来自家人的安心、来自“我可以照顾他们”。
第三,善意是会流动的。
我帮过人,也被人帮过;我救过狗,也被陌生人的热心治愈过。世界不全是烂人,但我得学会识别,学会筛选,学会保护自己。
2026 年我不想再喊口号了。我只想做三件更具体的事:
- 把一条能长期跑的主线做出来:让输出、作品和服务真正形成稳定的节奏,而不是靠运气起伏。
- 给信任立规矩:合作要有边界,承诺要能落地,任何决定都要留后手。
- 把家放进计划里:不是“有空再说”,而是本来就该排在前面。
2025 年没有把我推到高处,但它把我从幻觉里拽出来了。
我依然会往前走,只是以后我更在乎的不是速度,而是方向;不是热闹,而是结构。
我在变强,也在重新选择自己的人生结构。
就复盘到这吧,用时6个小时,该休息了....
希望2026年一切顺利!
来源:juejin.cn/post/7595147871939493934
项目经理被裁那天,没人替他说话
简单写个自我介绍。
我在团队里算不上的管理层,没有人事权,也不决定谁走谁留,但我参与的项目一旦出问题,最后都会落到我这里。进度卡住、需求反复、线上事故,会议上可以绕一圈再绕一圈,最终还是要有人把代码改完、把锅兜住。我清楚自己的位置,用武之地比较多的一个“多功能开发者”而已。还依稀记得,当初总部另外一个项目的入侵测,找的还是我,而不是再招一个人。
所以我很少参与评价人,只谈事,谈事实,谈项目是怎么一步步偏离轨道的。
先直接告诉大家结果吧,他被辞退了。
当初公司决定要不要这个人的时候,无意中跟我提到过。我只讲述了几个项目事故,以及其他同事和他合作时的态度。至于留不留他,我不想决定,也决定不了。
那个项目经理,其实并不“坏”。他不吼人,也不甩脸色,会议纪要写得很勤,群里回复永远是“收到”“我跟一下”。问题出在另一层面:需求变更没有留痕,风险评估永远是“可控”,节点延期总能找到外部理由。
上面看到的是一条被不断抚平的曲线,下面看到的是每天被推翻重来的开发计划。我们不是没提醒过,只是提醒被整理成了更好看的版本,再往上递的时候,已经失去了原本的锋利。当然,这些最后都会被归结为一句话——开发同学多努努力,多扩展下思维,补补这个缺点就好了。
但我认为,有些问题其实在内部一直被反复提起,只是从来没有被真正放到台面上说过。
团队里的其他项目经理,大多都有过开发背景。哪怕代码早就不写了,对功能复杂度、实现成本、技术边界心里都是有尺度的。评估的时候会留余量,也知道什么时候该踩刹车。
只有他完全没有开发经验,对一个需求的理解停留在“看起来不难”的层面。既怕自己显得不专业,又怕在会上被认为拖进度,于是每次评估都偏向最激进的版本,功能报得满,时间压到极限。
开发这边明知道不现实,那又怎么办呢?你能说得过他吗?况且领导也是只看结果,活干得快,公司赚得多,干得慢赚得少。所以开发也只能硬着头皮往前推。
一次延期还能解释成意外,两次三次之后,延期就成了默认选项。项目表面上在跑,实际上每一步都在透支客户的耐心。
他甚至能把一个月的功能,压成 7 个工作日。
结果显而易见。项目连夜上线,第二天直接崩溃:APP、小程序白屏,数据无法保存,ToC 的用户一个都打不开。我们凌晨 4 点发完版本,早上 6 点半问题出现,7 点钟起床开始处理。
我起床的时候就已经料到了。项目有他管控着,您就放一万个心吧,麻烦肯定少不了。
当时写功能的时候,有个同事请了丧假。他来了句逆天发言:“到时候你能把电脑带上吗?有事可以找你。”
我当时真想告诉他,兄弟,全公司不是只有他一个前端,这个项目也不是只有他一个前端。人家就请假 3 天,已经很紧张了,还让人把电脑带着,真特么丧良心。
真正的转折点,是那次 A 项目上线。
我没有提任何人的名字,也没有用情绪化的词,只是把时间线拉直:哪一天确认需求,哪一天推翻,哪一天出 PRD,哪一天出 UI,最终导致了什么结果。那份文档写得很长,不好读,也不“体面”,但它有一个特点——每一个问题,都自然地指向了同一个岗位职责。
我提交的时候,甚至没多想,只觉得这次总算把事情说清楚了。
事后我想过,如果我当初不写那份复盘,不跟领导说这些事,会不会结果不同。答案大概是否定的。项目不会因为沉默变好,问题也不会因为不点名而消失。
那天没人替他说话,并不是因为他人缘差,而是因为在那个位置上,他已经很久没有为任何人、任何结果,真正说过一句“这是我的责任”。
系统从来不需要情绪,它只是在某个时刻,停止了包容。
我后来也明白了一件事:在很多公司里,项目经理这个角色,本质上是一个缓冲层。缓冲需求、缓冲压力、缓冲管理层的焦虑。
但一旦缓冲只剩下过滤,没有承担,系统就会重新校准。
那天被裁的不是一个人,而是一种失效的角色设计。而这件事,迟早会发生在任何一个不再为结果站出来的位置上。
来源:juejin.cn/post/7598174154665623587
“全栈模式”必然导致“质量雪崩”!和个人水平关系不大
在经济下行的大背景下,越来越多的中小型企业开始放弃“前后端分离”的人员配置,开始采用“全栈式开发”的模式来进行研发费用的节省。
这方法真那么好吗?
作为一名从“全栈开发”自我阉割成“前端开发”的逆行研发,我有很多话想说。
先从一个活生生的真实案例开始吧。
我认识一个非常优秀的全栈开发,因为名字最后一个字是阳,所以被大家称为“阳神”。
1. “阳神”的“神狗二相性”
阳神当然是牛逼的。
他不仅精通后端开发,更是对前端了解的非常深。这样来说吧:
当他作为后端开发时,他可以是那群后端同事里库表设计最清晰,代码最规范,效率最高的后端。
当他作为前端开发时,他除了比几位高级别前端稍逊一点外,效率和UI还原性都非常高,还会主动封装组件减少耦合。
但是非常奇怪的事情总是会发生,因为一旦阳神不是全职的“后端”或者“前端”时,一旦让他同时操刀“后端+前端”开发任务,作为一名“全栈”来进行业务推进时,他的表现会让人感到惊讶:
他会写出设计糟糕,不规范,职责混乱的代码。
这个现象我把他戏称为“阳神”的“神狗二相性”,作为单一职责时他是“阳神”,同时兼任多职时,他就有非常大的可能降格为“阳狗”。

为什么呢?这是阳神主观上让自己写更糟糕的代码吗?
不是的兄弟,不是的。
这是系统性的崩塌,几乎不以人的意志为转移。换我去也是一样,换你去也是一样。
2. 分工粗化必然导致技术细节的差异
从前,在软件开发的古老行会里,一个学徒需要花很多年才能出师,专门做一把椅子,或者专门雕一朵花。现在,你被要求从伐木到抛光,从结构力学到表面美学,全部一手包办。
生产力在发展,对人的技能要求也在发展。
因此“分工细化”成为了工业革命之后完全不可逆的趋势。
在 IT 产业上也是如此。
“软件开发”经过多年被细化出了前端开发、后端开发、客户端开发、大数据开发 等等多种不同的细分职业。
但是现在有人想通过 粗化 职业分功来达到 “提效” 的目的,在我眼中这就是和客观规律对着干。
人的精力是守恒的。当你需要同时关心useEffect的依赖数组会不会导致无限渲染,和kubectl的配置能不能正确拉起Pod时,你的注意力就被稀释了。你不再有那种“针对一个领域,往深里钻,钻到冒油”的奢侈。
当你脑袋里冒出了一个关于前端工程化优化的问题时,身为全栈的你会本能地冒出另一个念头:
在整个全栈体系内,前端工程化优化是多么边角料且无关痛痒的问题啊,我去深入研究和解决它的性价比实在太低了,算了不想了。
如此一来,无论是后端的性能问题还是前端的性能问题都会变得无关紧要。

结果是,只有业务问题是全栈开发要关心的问题。
2. “岗位对立”与“自我妥协”
在日常开发中,前端开发和后端开发之间互相吐槽争论是再正常不过的话题,而且争论的核心非常简单易懂:
前端:这事儿不能在后端做吗?
后端:这事儿前端不能做吗?
可以的,兄弟,最后你会发现都是可以的,代码里大部分的事情无论是在浏览器端完成还是在服务器里完成都是可行的。
但是,总有一个“哪方更适合做”吧?
- 一个大屏页面的几万几十万条的数据统计,是应该后端做还是前端做?
- 业务数据到Echarts展示数据的格式转换应该后端做还是前端做?
- 用户数据权限的过滤应该后端做还是前端做?
- 一个列表到底要做真分页还是假分页?
- 列表已经返回了全量实体信息,为什么还要再增加一个详情接口?
这都是日常开发时前端和后端都会去争论思考的问题,身处不同的职位,就会引入不同的立场和思考。
- 前端需要去思考页面刷新后状态的留存,js单线程下大量数据处理的卡顿,页面dom树爆表的困境。
- 后端也需要思考并发下服务器资源和内存的分配,可能的死锁问题,以及用户的无状态token如何处理等。
前后端的“争吵”和观点输出是不可避免的。
真理总是越辩越清晰的,后续讨论出的结果多半是最有利于当前现状的。
但如果“前后端”都是同一个人呢?
全栈模式,完美地消灭了这种“有益的摩擦”。当你自己和自己联调时,你不会给自己提挑战灵魂的问题。你不会问:“这个API设计是否RESTful?”因为你赶时间。你也不会纠结:“这个组件的可访问性够好吗?”因为你还得去部署服务器。
这两种思想在你的大脑里打架,最终往往不是最优解胜出,而是最省事的那个方案活了下来。
于是,你的代码里充满了“差不多就行”的妥协。这种妥协,一两个无所谓,当成百上千个“差不多”堆积起来时,质量的基础就酥了。
内部摩擦的消失,使得代码在诞生之初就缺少了一道质量校验的工序。它顺滑地流向生产环境,然后,在某个深夜,轰然引爆。
3. 工程的“不可能三角”
软件开发领域有一个著名的“不可能三角”:
快、好、省,你只能选两样。

全栈模式,在管理者眼中,完美地实现了“省”(一个人干两个人的活)和“快”(省去沟通成本)。那么,被牺牲掉的是谁?
雪崩时,没有一片雪花是无辜的。但更重要的是,当结构性雪崩发生时,问责任何一片雪花,都意义不大。
至于“快、好、省”这三兄弟怎么选?
那主要看老板的认知和他的钱包了。
来源:juejin.cn/post/7555387521451606068
Linux再添一员猛将,操作完全不输Windows!
提到 Zorin OS 这个操作系统,可能不少喜欢折腾 Linux 系统的小伙伴之前有尝试过。
作为一款以 UI 交互和颜值著称的 Linux 发行版系统,Zorin OS 也曾一度被广大爱好者们称为 Windows 系统的开源替代方案。

Zorin OS 旨在简单易用,用户无需学习任何新知识即可上手,同时 Zorin OS 作为一款 Linux 发行版系统,专为从 Windows 迁移的用户设计,提供类似 Windows 的图形界面与操作逻辑,并且支持一键切换为 Windows 系统风格。

前段时间,Zorin OS 团队在其官博正式宣布,最新的 Zorin OS 18 已经正式突破了 100 万次下载。
并且据官博数据显示,这些下载中有超过 78% 是来自于 Windows 系统的用户,这也再次印证了其可以满足从 Windows 桌面系统迁移到 Linux 发行版的用户需求。

作为一个长期关注 Linux 桌面系统的博主,其实这次 Zorin OS 18 大版本更新刚出来那会我就关注了,不过一直没有抽出时间来写文章、来梳理,所以今天这篇文章正好把这件事情给安排了!
总体来讲,这次的 Zorin OS 18 是以 Ubuntu 24.04 LTS 为基础并由 Linux 6.14 内核提供支持。
并且这次的 Zorin OS 18 是继之前 17 版本以来的一次大版本迭代,带来了诸多新特性和改进。
所以接下来我们也来梳理一下这次 Zorin OS 18 所带来的一些重点更新和变化。
视觉与交互进化
众所周知,Zorin OS 一直以来都以其独特的个性和简约的美学设计风格而著称。
那这次更新后的新外观给人最直观的感受就是圆润和通透。

任务栏这一次采用了全新的悬浮圆角面板设计,不再是死板地贴在屏幕边缘,而是像 macOS 的控制中心一样有一种轻盈的漂浮感。

另外这一次大版本还推出了新主题颜色,新增了黄色和棕色两种主题色,视觉层次更加丰富。
选中元素的色调更加淡雅,背景和侧边栏颜色更深,长时间盯着屏幕写代码或处理文档,眼睛会舒服很多。

另外 Pro 版里还提供了更多可切换的桌面布局。



除此之外,很多经常使用的日常应用也进行了诸多设计调整和改进。
比如文件管理器的侧边栏重新设计了,操作控件更直观,搜索功能支持了全文搜索,找文件效率大增。
日历应用增加了侧边栏,月份和事件视图也一目了然。
相机应用也做了更新,新相机应用界面简洁,支持多摄像头切换,这对于现在动不动就开视频会议的环境非常友好。
Web 应用深度集成
对于用户来说,最大的痛点往往不是系统本身,而是数据迁移和应用生态,那 Zorin OS 18 在这方面下了不少功夫。
首先就是与 Web 应用程序无缝集成。
众所周知,现在很多应用都构建在云端,这些渐进式 Web 应用与原生应用之间的用户体验正逐渐融合。
这次 Zorin OS 18 全新内置的「Web Apps」工具非常强大,它可以将 Web 应用转换为桌面应用,用户的 Web 应用将可以显示在开始菜单中,使用起来与原生应用无异。

「Web Apps」工具可以作为后端与各种热门 Web 浏览器集成,同时也允许用户自定义对应 Web 应用内的体验。
多任务处理:原生窗口平铺
这次 Zorin OS 18 的多任务处理变得好用多了。
Zorin OS 18 引入了一款功能强大的窗口平铺管理器,它能帮助用户更高效地工作,同时上手起来也十分简单。

用户只需要把窗口拖到屏幕顶部,系统就会自动弹出布局选择器。
预设布局支持左右分屏、三栏布局、角落停靠等,同时在智能建议这块,系统也可以根据用户当前所打开的窗口,智能推荐最佳的排列组合。
除此之外它还支持高度自定义,创建用户自己的平铺布局。
这个新特性无论对新手还是资深玩家都非常直观易用,从而定制和提升每个用户的生产力。
迁移神器:Windows 应用支持
用户可以从内置的软件商店发现适用于 Zorin OS 系统的各类应用,这是在 Zorin OS 中安装应用的推荐方式。
其软件商店可让用户开箱即用地从 Zorin OS 与 Ubuntu APT 仓库、Flathub 以及 Snap Store 安装应用。

而如果用户是刚从 Windows 转过来,看到满硬盘的 .exe 安装包肯定会头疼。
Zorin OS 18 的处理方式非常聪明。
系统内置了一个庞大的软件数据库(覆盖超过 170 款软件),当用户双击一个 Windows 安装包(如 setup.exe)时,系统不会直接报错,而是弹出一个友好的对话框。
如果有 Linux 原生版本,它就会引导你安装原生版本应用;如果没有原生版的话,它就会推荐你使用 Web 版,或者利用兼容层运行。

在兼容层优化这一块,Zorin OS 18 深度集成了 Wine,对于一些必须在 Windows 下运行的行业软件或游戏,它提供了一个“Windows 应用支持”层。虽然不能保证 100% 兼容,但对于很多老旧的 .exe 工具,它能让你在不装虚拟机的情况下应急使用。

性能与硬件支持
Zorin OS 18 基于 Ubuntu LTS 版本打造,同时它将获得直到 2029 年的稳定安全更新。

同时官方宣称它甚至可以在十几年前的古董机上流畅运行。最低配置仅需 1GHz 双核 CPU、2GB 内存。

同时从用户安装的实际表现来看,在现代硬件上,它的动画流畅度非常高,即便在老机器上,它运行起来也比 Windows 系统更加轻快。
写在最后
那以上就是关于此次 Zorin OS 18 大版本更新的一些梳理和总结,感兴趣的小伙伴也可以去体验一波。
总的来看,这次的 Zorin OS 18 不仅仅是一个 Linux 发行版,也像极了一个操作系统迁移解决方案。
另外这次 Zorin OS 18 的发布,也使得 Linux 桌面系统的易用性又向前迈进了一步。
文章的最后也期待 Linux 桌面系统在未来能百花齐放,发展得越来越好。
好了,那以上就是今天的内容分享了,希望能对大家有所帮助,我们下篇见。
注:本文在GitHub开源仓库「编程之路」 github.com/rd2coding/R… 中已经收录,里面有我整理的6大编程方向(岗位)的自学路线+知识点大梳理、面试考点、我的简历、几本硬核pdf笔记,以及程序员生活和感悟,欢迎star。
来源:juejin.cn/post/7592040819818004521
我创建了一个全 AI 员工的一人公司
大家好,我是 Sunday。
现在,用 AI 写代码,已经不算什么新鲜事了。写个组件、补个函数、改个 Bug,几句话交给模型就能搞定。
但是,大家有没有想过一个问题:如果我不只是用一个 AI,而是用一群 AI,会发生什么?
我们现在用 AI,本质上只是把它当成“高级工具”,即:我遇到问题 → 我问 AI → 它给我答案。
那么如果我们把脑洞放大一点呢?
既然我可以调用一个 AI,那是不是也可以 同时调用多个 AI ?既然 AI 可以写代码,那它是不是也可以完成:产品经理、设计师、测试、运维,甚至是 财务、人事 的工作?
换句话说: 我能不能,用一群 AI,组建一家“只有我一个人类员工”的公司?
多个 AI,各自承担不同角色:

- 产品负责拆需求:告诉产品我的需求,然后产品帮我把需求拆解成可以具体执行的步骤
- 开发负责编码:把具体的步骤告诉开发,开发负责把整个功能落地
- 测试负责验收:开发的代码,交给测试进行验收。验收失败则重新打回开发,开发负责修改 BUG
- 运维负责部署:最终完成的项目,运维负责部署上线,构建整个自动化部署的流程
- 财务负责算账:每天的 token 支出 和 营收,并给出更省钱的财务方案
- 人事负责管理:哪个 AI 员工“不合格”,人事负责把它“开掉”,并根据我的需求重新“招聘(生成)”新的 AI 员工
并且,我还希望它们之间可以独立思考,互相沟通,而我只负责:下目标、做决策。
如果这件事真的可行,那意味着什么?意味着一个人,或许可能真的可以撬动一整家公司级别的生产力。
说干就干。
AI 选择
市面上的 AI 模型已经非常多了:Claude、GPT Coder、Gemini、GLM、DeepSeek。。。有的贵,有的便宜,有的擅长推理,有的擅长编码。
最理想的状态其实很明确:
- 贵的 AI,承担复杂任务:产品设计、系统架构、核心编码
- 便宜的 AI,承担简单任务:统计、对账、流程、输出财务报表
只要这些 AI 之间可以互相沟通,以上这些都不是问题。
但是,Sunday 在经过一系列的测试之后,发现了一个很残酷的事,就是 不同模型的 AI 之间完全无法沟通。特别是不同厂商的 AI,每一个都被作为了独立的个体。虽然可以通过“协调者”方式强行拼接,但是实现复杂,并且效果也不理想。
额。。。好像这个一人公司的梦想就直接破灭了...
不行,不能那么容易放弃。
所以,在第一阶段,我只能选择一个更“粗暴但稳定”的方案:全部使用 Claude。
因为 Claude 提供了一个非常关键的工具:Claude Code:一个运行在纯终端里的 AI 编码智能体。我们只需要打开终端就可以直接通过语言对话的方式调用 AI 模型。

而接下来,我要做的事情是:用 Claude Code,一步步搭出一家“AI 员工公司”的雏形。
启动多个 AI 终端
一个终端窗口作为一个员工,如果我们想要多个员工那么就只需要启动多个终端就可以。然后我们要给他们赋予角色。一开始,我们可以先从最小可行方案开始:

我们先制定两个角色,他们分别是:
- 张三:产品经理
- 李四:程序员
然后,就出现了 大型翻车现场....

在我尝试给 Claude 提示词,让他变成 张三 的时候。Claude 给我的回复是:我是 Claude,我不是张三....
不是,咱说好的玩角色扮演呢...你就这么不配合的吗?
因为在我的设想里,这一步应该是最简单、最“理所当然”的:起个名字、设个背景、分配个角色。然后 AI 就会自动进入对应的工作模式。
结果现实就是这么现实:“我能帮你完成工作,但是我就不承认我是张三,我就是 Claude”
这不是能力问题,这赤裸裸的就是个 态度问题 啊! 看来 AI 也不想当牛马啊。。。
没办法,我只能尝试修改下提示词:

好的,产品经理已就位。然后我们可以从一个小的 todolist 的需求开始:

现在我们已经有了一个 todolist 的需求文档了。接下来最好的方案就是 产品经理的 AI 可以直接通知 程序员 AI,完成代码实现。
但是,可惜 不同窗口之间 AI 无法直接通讯。所以,我就必须要承担起这个通讯员的角色。

最终实现的效果如下:

整个功能完善、可用。并且还提供了 主题变化 的功能。。。
反思
可是如果我们仔细去分析上面整个流程,我们可以发现:这个流程远没有我们想象的那么顺畅。甚至有点 多此一举。
因为以上这些需求完全可以在一个 Claude code 中完成,没有必要进行这样的划分。甚至可以说:在任务简单时,多 AI 协作不仅没有提升效率,反而增加了沟通成本。
而这样的一种调度+协作的方式,如果任务变得复杂了,恐怕 AI 没有乱呢,我们自己就已经先手忙脚乱了。
这让我开始怀疑:最初设想的这种全 AI 员工的方式,会不会从一开始,就是错的?
但是,当我仔细思考过之后,我发现问题不在于“多角色”这个想法本身,而在于:当前这种“多终端 + 人工调度”的协作方式,本质上是一个非常低效的协作模型。
如果我们换一个角度,从“协作工具”入手,情况可能会完全不同。
这时,我注意到了一个开源项目:vibekanban。

它提供了一种非常典型的多人协作看板模式,和我们熟悉的 Teambition、Jira、Trello 几乎一致,包含了:任务可视化、状态流转清晰、每个角色只关注自己的列


通过 vibekanban 这种工具,我们至少可以做到:多任务并行更清晰、角色边界更稳定、协作过程可追踪、可回溯。
但即便如此,我很快又意识到一个更现实的问题:这,依然离“全 AI 员工的一人公司”,依旧差得很远。
全 AI 员工的难点在哪里?
根据 Sunday 的实验,其实我们可以发现,全 AI 员工的最大难点就是 如何高效的完成 AI 之间的自动协作。
更具体一点说,核心难点只有一个:如何让多个 AI,在几乎没有人工干预的情况下,自动完成“上下文传递 + 状态对齐 + 任务接力”?
那么这个功能可以实现吗?
答案是 绝对可以
学习过咱们的 商业级 AI 课程 的同学都知道,在 AI 的持续对话中,我们可以通过记录上下文的方式完成跨角色的连续对话。
那么同样的道理,如果我们可以记录不同 AI 沟通上下文的 关键内容,然后通过上述的同样逻辑呼叫下一个 AI(让代码通过指令自动传输关键上下文,并调起 AI 服务),那么全 AI 员工的功能就可以实现。只不过在这样的完美的流转过程中,我们还需要做很多的努力才可以。
总结
这一通折腾下来,收获还是很明显的。三个关键:
- 单模型,已经足够强
- 多模型,真正难的是系统设计
- “全 AI 员工”,本质是一个 调度系统 + 状态系统 + 协作协议 的问题
而这,也意味着:下一阶段的探索重点,已经不再是“哪个模型更强”,而是:如何设计一套真正可自动运行的“AI 组织系统”。
来源:juejin.cn/post/7597355509747974170
32岁程序员猝死背后,我的一些真实感受

上午刷到32岁程序员周末猝死这条消息,其实我并不陌生。
这几年,程序员猝死、倒下、出事的新闻隔一段时间就会出现一次,圈子里的人早就麻木了。刷到的时候,最多叹口气,继续干活,很少真的往心里去。
看到他长期加班的细节时,我突然愣住了,因为太像了。
我也经常这样。
下午刷到他的妻子和对他的聊天记录,真的感觉很无奈,可惜,他再也回不来了......

我到不是加班,我是下班后干自己的事情,我比较卷。只有下班后的时间是真正属于自己的时间才刚开始。没有人打扰,安静下来,我会干自己的事情、学习、写代码,一不留神就到了凌晨两点。
那一刻,我才真正能进入自己的状态。
学习也好,干活也好,哪怕只是安静地敲键盘,都让我觉得踏实。
于是,凌晨两点成了常态
通过他这件事,我看到我也在里面,看见了自己。
我上一次写代码写到很晚是前几周,老大让我开发一个知识库RAG系统。
给我了我一周的时间,其实对于我是有难度的,因为接触这块不久,一周时间的话肯定弄不好。
后来那天,我连夜和AI 一些协作搞了6个小时左右,搞到了凌晨3点多,初版搞的差不多,那会心率也有点高了, 有点难受,就赶快休息了...

我们这一代程序员,真的太累了。
这种累,不只是加班,而是一种长期被推着往前,却不敢停下来的状态。
房贷在那儿。
家庭在那儿。
未来的不确定性在那儿。
我们很清楚,一旦慢下来,就意味着风险。
于是我们学会了忍。
忍困、忍累、忍身体发出的各种提醒。
程序员这个职业有个很危险的地方。
身体开始出问题的时候,能力往往还在线。
我们还能写代码,还能解决问题,还能在群里回一句:“好的,我看看”
所以你会误以为自己没事。
可身体不是系统,没有明显的报错提示。
等它真正崩的时候,往往没有给你回滚的机会。
今天刷到这个新闻消息对我来说,更像是一次提醒。我现在体检去,估计都是全红状态,我经常熬夜,现在锻炼的也少了....
我们这一代人,很努力。
努力工作,努力赚钱,努力让生活往前走。
可如果连身体都开始透支,那这条路,真的值得重新想一想。
不是他倒下了。
是我们这一代,真的太累了。
来源:juejin.cn/post/7597701762905309230
我天,Java 已沦为老四。。
略想了一下才发现,自己好像有大半年都没有关注过 TIOBE 社区了。
TIOBE 编程社区相信大家都听过,这是一个查看各种编程语言流行程度和趋势的社区,每个月都有榜单更新,每年也会有年度榜单和总结出炉。
昨晚在家整理浏览器收藏夹时,才想起了 TIOBE 社区,于是打开看了一眼最近的 TIOBE 编程语言社区指数。

没想到,Java 居然已经跌出前三了,并且和第一名 Python 的差距也进一步拉开到了近 18%。

回想起几年前,Java 曾是何等地风光。
各种基于 Java 技术栈所打造的 Web 后端、互联网服务成为了移动互联网时代的中坚力量,同时以 Java 开发为主的后端岗位也是无数求职者们竞相选择的目标。
然而这才过去几年,如今的 Java 似乎也没有了当年那种无与争锋的强劲势头,由此可见 AI 领域的持续进化和繁荣对它的冲击到底有多大。
用数据说话最有说服力。
拉了一下最近这二十多年来 Java 的 TIOBE 社区指数变化趋势看了看,情况似乎不容客观。
可以明显看到的是一个:呈震荡式下降的趋势。

现如今,Java 日常跌出前三已经成为了常态,并且和常居榜首的 Python 的差距也是越拉越大了。
在目前最新发布的 TIOBE Index 榜单中排名前十的编程语言分别是:
- Python
- C++
- C
- Java
- C#
- JavaScript
- Visual Basic
- Go
- Perl
- Delphi/Object Pascal

其中 Python 可谓是一骑绝尘,与排名第二的 C++ 甚至拉开了近 17% 的差距,呈现了断崖式领先的格局。
不愧是 AI 领域当仁不让的“宠儿”,这势头其他编程语言简直是望尘莫及!
另外还值得一提的就是 C 语言。
最近这几个月 C 语言的 TIOBE Index Ratings 比率一直在回升,这说明其生命力还是非常繁荣的,这对于一个已经诞生 50 多年的编程语言来说,着实不易。
C 语言于上个世纪 70 年代初诞生于贝尔实验室,由丹尼斯·里奇(Dennis MacAlistair Ritchie)以肯·汤普森(Kenneth Lane Thompson)所设计的 B 语言为基础改进发展而来的。

就像之前 TIOBE 社区上所描述的,这可能主要和当下物联网(IoT)技术的发展繁荣,以及和当今发布的大量小型智能设备有关。毕竟 C 语言运行于这些对性能有着苛刻要求的小型设备时,性能依然是最出色的。
说到底,编程语言本身并没有所谓的优劣之分,只有合适的应用场景与项目需求。
按照官方的说法,TIOBE 榜单编程语言指数的计算和主流搜索引擎上不同编程语言的搜索命中数是有关的,所以某一程度上来说,可以反映出某个编程语言的热门程度(流行程度、受关注程度)。
而通过观察一个时间跨度范围内的 TIOBE 指数变化,则可以一定程度上看出某个编程语言的发展趋势,这对于学习者来说,可以作为一个参考。
Java:我啥场面没见过

曾经的 Java 可谓是互联网时代不可或缺的存在。早几年的 Java 曲线一直处于高位游走,彼时的 Java 正是构成当下互联网生态繁荣的重要编程语言,无数的 Web 后端、互联网服务,甚至是移动端开发等等都是 Java 的擅长领域。
而如今随着 AI 领域的发展和繁荣,曾经的扛把子如今似乎也感受到了前所未有的压力。
C语言:我厉兵秣马

流水的语言,铁打的 C。
C 语言总是一个经久不衰的经典编程语言,同时也是为数不多总能闯进榜单前三的经典编程语言。
自诞生之日起,C 语言就凭借其灵活性、细粒度和高性能等特性获得了无可替代的位置,就像上文说的,随着如今的万物互联的物联网(IoT)领域的兴起,C 语言地位依然很稳。
C++:我稳中求进

C++ 的确是一门强大的语言,但语言本身的包袱也的确是不小,而且最近这几年的指数趋势稳中求进,加油吧老大哥。
Python:我逆流而上

当别的编程语言都在震荡甚至下跌之时,Python 这几年却强势上扬,这主要和当下的数据科学、机器学习、人工智能等科学领域的繁荣有着很大的关系。
PHP:我现在有点慌

PHP:我不管,我才是世界上最好的编程语言,不接受反驳(手动doge)。
好了,那以上就是今天的内容分享了,感谢大家的阅读,我们下篇见。
注:本文在GitHub开源仓库「编程之路」 github.com/rd2coding/R… 中已经收录,里面有我整理的6大编程方向(岗位)的自学路线+知识点大梳理、面试考点、我的简历、几本硬核pdf笔记,以及程序员生活和感悟,欢迎star。
来源:juejin.cn/post/7540497727161417766
2026年的IT圈,看看谁在“裸泳”,谁在“吃肉”
Hello,兄弟们,我是V哥!
最近不少粉丝私信问我:“V哥,现在这行情卷得跟麻花似的,35岁危机就在眼前,你说咱们搞IT的,到了2026年还有出路吗?这技术迭代快得像坐火箭,我到底该往哪边押注?”
V哥我就一句话:焦虑个屁!机会全是给有准备的人留着的。
你们现在看是“寒冬”,V哥我看是“洗牌”。等到2026年,IT行业的格局早就翻天覆地了。那些只会写重复代码的“代码搬运工”确实该慌,但懂趋势、会借力的兄弟,那会儿绝对是香饽饽。
今天,V哥我就掏心窝子地聊聊,2026年咱们这行的几大“风口”。特别是最后两块大肉,听进去了,你下半年的年终奖就稳了。
一、 AI智能体开发:2026年的“新物种”
兄弟们,先把“ChatGPT”这种对话机器人放一边。V哥告诉你,2026年是AI智能体爆发的一年。
啥叫智能体?现在的AI像个博学的书呆子,你问它答。而智能体,那是带着“脑子”和“手脚”的打工人。它不仅能理解你的意图,还能自己拆解任务、自己去调用工具、自己反思纠错,最后把活儿干完了给你交差。
- 现在是: 你写代码,AI帮你补全一行。
- 2026年是: 你说“帮我做个电商后台”,智能体自己写代码、自己测、自己部署、甚至自己写文档。
V哥的研判:
到了2026年,不会开发智能体的程序员,就像2010年不会用智能手机的人一样落伍。你不需要自己去造一个大模型(那是大厂的事儿),你需要做的是做中间的“Controller”(控制器)。怎么用LangChain(或者那时候更牛的框架)把大模型串起来?怎么给智能体挂载API接口?怎么设计它的“记忆”和“规划”能力?
这块儿目前还是蓝海,谁能率先把“数字员工”搞定,谁就是那个省下百万人力成本的老板眼里的红人。

二、 鸿蒙开发:国产操作系统的“成年礼”
这块儿,V哥必须得敲黑板!这可能是未来几年里,中国普通程序员最大的红利期。
别总盯着Android和iOS卷了,那是存量市场,杀得头破血流。你看华为现在的动作,HarmonyOS NEXT(纯血鸿蒙) 已经切断了对安卓代码的依赖。这意味什么?意味着这不仅仅是换个皮肤,这是一套全新的、独立的生态!
V哥的预言:
到了2026年,鸿蒙不再是手机的配角,而是全场景(手机、车机、家电、工控)的霸主。
- 技术栈: 赶紧把ArkTS(Ark TypeScript)学熟了,ArkUI这套声明式开发范式非常顺手。
- 机会在哪? 现在市面上大量的APP都需要重构鸿蒙原生版。这中间有一个巨大的缺口!前两年进去的那批人,现在都成技术总监了。2026年,随着万物互联真正落地,鸿蒙开发者的薪资会比同级别的安卓开发高出至少30%。
V哥我一直说,技术要跟着国运走。鸿蒙这条路,不仅是写代码,更是在参与基础设施建设。这碗饭,香!

三、 后端开发:告别“CRUD”,拥抱“编排”
兄弟们,别再笑话写Java/Go的后端枯燥了。虽然简单的增删改查(CRUD)真的会被AI干掉,但后端的逻辑核心地位永远不会动摇。
2026年的后端,不再是单纯的写接口,而是做“AI时代的管家”。
以前你的服务是给前端APP用的,2026年,你的服务大部分是给上面的“AI智能体”用的。智能体需要调用你的数据库、调用你的业务逻辑。你的接口设计得更规范、更原子化、响应更快。
V哥建议:
Go语言和Rust会在后端越来越火(因为性能好、并发强)。而且,后端得懂点云原生,容器化、Service Mesh(服务网格)这些都是标配。你得学会怎么把一个庞大的系统拆得碎碎的,还能用AI把它们管得服服帖帖。

四、 前端开发:从“画页面”到“造体验”
前端死了吗?V哥告诉你,前端才刚刚开始“性感”起来。
写HTML/CSS这种活儿,2026年估计UI设计师直接说一句话,AI就生成了。那前端干嘛?前端负责“交互的灵魂”。
随着WebGPU的普及,浏览器里能跑3D大作、能跑复杂的物理引擎。鸿蒙的ArkUI也是跨端的前端技术。未来的前端,更多是图形学、人机交互和3D可视化。你打开一个网页,不再是看图文,而是进入一个虚拟空间,这背后全是前端工程师的功力。
V哥一句话: 放下jQuery,搞深Three.js,搞透React/Vue原理,往图形学和全栈方向发展。

五、 嵌入式开发:软硬件结合的“硬核浪漫”
以前搞嵌入式感觉是“修收音机的”,2026年搞嵌入式那是“造智能机器人”的。
因为上面说的鸿蒙和AI,最后都要落脚到硬件上。智能眼镜、智能家电、自动驾驶,哪个离得开嵌入式?
重点来了: 嵌入式未来会和AI深度融合,叫TinyML(微型机器学习)。在芯片上跑小型的AI模型,让摄像头能识别人脸,让传感器能听懂声音。如果你既懂C语言底层,又懂一点AI算法部署,你是各大硬件厂抢着要的“国宝”。

六、 大数据开发:从“存数据”到“喂AI”
大数据没凉,只是换了个活法。
前几年大家搞Hadoop、Spark,是为了存日志、做报表。2026年,搞大数据主要是为了给AI当“饲养员”。
AI需要高质量的数据清洗、向量化处理。这就涉及到向量数据库、数据湖、实时计算流。怎么把企业的几十亿条数据,变成AI能看懂的“知识”,这是大数据工程师的新活儿。不懂AI的数据工程师,未来路会越走越窄。

七、 AI运维与 AI测试:机器管机器
最后说说这两个容易被忽视的领域。
- AI运维: 以前服务器报警了,运维兄弟半夜爬起来看日志。2026年,AI运维系统会自动定位故障、自动修复、自动扩容。运维工程师不需要敲那么多命令了,而是负责训练这个“运维AI”,制定策略。这叫SRE(站点可靠性工程)的进化版。
- AI测试: 测试不仅是找Bug,更是“攻防演练”。用AI去生成几万条变态测试用例去轰炸你的系统,甚至用AI去对抗AI生成的代码。只有AI才能测出AI写的Bug。
V哥总结一下
兄弟们,2026年其实并不远。
V哥我看了一圈,未来的趋势就两个字:融合。
- 鸿蒙是万物互联的底座,必须要抓;
- AI智能体是提升效率的神器,必须要懂;
- 其他所有的后端、前端、嵌入式、数据,都要围绕着这两者去进化。
别再纠结Java还是Python,Go还是Rust了。语言只是工具,解决问题的思路才是王道。从今天起,试着用AI去帮你干活,试着去了解一下鸿蒙的ArkTS,试着把你的工作流程“智能化”。
等到了2026年,当别人还在为裁员瑟瑟发抖时,V哥希望看到你已经站在风口上,笑傲江湖!
我是V哥,带你不仅看懂技术,更看懂未来。
来源:juejin.cn/post/7593139476839874566
一个大龄程序员的地铁日记(第5期),几乎都关于读书
最近一个月地铁上,输出内容几乎都围绕着某个主题,于是本篇内容当中都有小标题。
1、读什么书可以让人变得平静、淡定?
以我的经验——过去5年,读了一些书,整个人变得内敛沉稳安静很多——来看,似乎变化与某一本书的关系不大,而仅仅只关于持续阅读这件事,只要持续阅读,过个三五年,整个人便会平静、淡定许多。
我这结论,大概是很主观的,我一时说不太清变化如何发生,但我将尽量将发生在我身上的变化说清楚。
首先,我以为仅仅读一本书,是不能做到改变的,不管是认知还是行为,都不行。
《学习之道》,是一位世界冠军两次夺得冠军的个人传记,作者在书中分享了他的学习之道——一切都基于重复练习,练习过程中需要辅以热爱。读完本书前后几个月,我是真有按照作者的分享去行事的,篮球从微小动作调整,台球也一点一滴进步,但这些微小调整只持续两三个月便被抛之脑后。
《人性的弱点》,是教导与人为善的一本书。阅读当时的我,天天脸带笑意,认真倾听,耐烦讨论。但这些善良的特点,在几个月后也慢慢消退。
即从书中收获的认知影响自己一段时间行为后,并不能持续。
然后,是“几乎所有的书都是有关联的”。这些慢慢退化的认知,在后来的读书当中,又被强化与巩固。
《天才假象》也在说重复练习与热爱,《乔布斯传》甚至将热爱化作极致,《废邮存底》说读书写作如是。总之,这“基于热爱的重复练习是成功/熟练的必要条件”认知,慢慢在我内心变得巩固。
类似的认知,如沉稳、如安静、如三思而后行、如换位思考……都在读书当中慢慢变得巩固。被巩固的认知,会不自觉体现在行为当中,于是,便自然而然的平静且淡定了。
这过程无关某一本书,只在于持续阅读。
2、看过的人物传记当中,你最推荐的是哪一本?
我目前看过的人物传记,有这样几本:《曾国藩传》《人生随时可以重来》《从文自传》《一个瑜伽行者的自传》《乔布斯传》《漫漫回家路》《为奴十二年》《多余的话》《人生由我》《我的前半生》以及《我曾走在崩溃的边缘》。
这些书当中,我最喜欢的,是沈从文先生的《从文自传》,喜欢的缘由很简单,一是沈先生的文字简单真实且真诚,二是从这传记当中所感受到的安静与顽强。
对的,沈先生生命中的那些变化,在他的文字当中显得安静自然;顽强,则来自于安静背后的变化,那些变化(比如真正成为一个靠文字养活自己的作家),是需要很强生命力很强执行力的。
这些书当中,我最想要推荐的,是溥仪先生的《我的前半生》。
诚然,末代皇帝做过许多于中国很不好的错事,但他终于在人生后半段意识到自己错误并反省并给予后人以反省。
我自己读《我的前半生》过程,恰似以第一人称视角看正发生的历史。皇帝到底每天在想什么?皇帝失势后会怎样?
原来皇帝也慌张荒唐,皇帝也会焦虑到睡不着觉。
我想自己,看到了一位很真实的皇帝。
到全书最末尾,溥仪先生有体验到一种人生真谛,即“吃得下饭,睡得着觉”是人生最完美状态。看完全书,我是有感受到自己多出一种“任其自然”态度的:“既然连皇帝都追求吃饱穿暖睡好,为何我自己不珍惜正拥有的人生状态呢?”
《我的前半生》已经看了许久,好些即时体验记不太住,但当下这一刻,它是我看过人物传记当中最被推荐的那本。
3、今年看了哪些书?
今年读完的书,大概(不确定的意思,是其中有两本书大概是前些年读完但没记录的)是25本,它们分作这样几个类别:
心理学有《行为主义》《无条件养育》《十分钟冥想》《幸福的勇气》《甘于平凡的勇气》《爱的艺术》和《亲密关系》。心理学书籍,依然帮助我更好的认识自己。
历史有《秦谜》《五代十国全史》《细说宋朝》。这些书,我依然对照着《国史大纲》来看,我以为现在的自己,虽然依然记不住五代十国有哪些人、宋朝如何变化,但心中对这两个朝代是多出许多印象的,五代十国最黑暗,而宋积贫积弱。
传记以及记录自己或他人生活事的书有《闭经记》《我曾走在崩溃的边缘》《瓦尔登湖》《初老的女人》《沈从文评传》《我的老师沈从文》。
我依然喜欢看人物传记,我以为读人物传记这选择真不错,它们总给予我一种借鉴:我经历过的,前人也经历过。
关于沈从文先生的书,我新加入书架的还有《执拗的拓荒者》以及《沈从文全传》。
小说有《额尔古纳河右岸》《活着》《多情剑客无情剑》《长安的荔枝》。这几本小说,都短短的;《额尔古纳河右岸》和《活着》,我都哭着读完。
其它类别暂时只有一本,只是《人体简史》,这是一本很值得推荐的关于人体的科普书。
我正在阅读,或许在不久将来会读完的书,有《我看见的世界》《苏东坡新传》《李自成》《安娜·卡列尼娜》《金钱心理学》以及《高效能人士的七个习惯》。
4、电子书有哪些优点?
对我来说,现在电子书已经完完全全代替了纸质书。我买纸质书,更多只为“收藏”,我想要的,只是在某个比较闲散时间,找一找翻书的感觉。
对我来说,电子书相较纸质书有以下优点:
首先,也是最重要的那一点,电子书很方便。现在我已经在《微信读书》上连续阅读三年多(之前在《京东读书》连续阅读一年多),我的碎片时间——地铁上、卫生间、等电梯——都能拿出手机看书,使用手机读书,那许多的碎片时间都慢慢攒成帮助我进步的阶梯。
其次,基于碎片化阅读,电子书更容易帮助养成读书习惯。不管纸质书或者Kindle,身上多带一个设备,看书的门槛总是高了许多。
然后,是电子书相较纸质书便宜许多。我在微读的第一年,买一年付费会员只花168元,这会员可以阅读所有在微读上架的出版书。后来,微读开通了50块钱挑战赛(花50块钱,每天阅读持续一年,累积时长达到300小时),我便只需要50块钱,便能读成千上万本我想读的书了。
然后,是笔记与重新翻阅的方便。微读上面读书,可以在给予自己感触内容下方划线或者写上自己的即时感悟,这些感悟被收集在一起,可以搜索,可以直接定位。当书中内容记不太清需要回顾时,直接搜索笔记,直接搜索全书即可。
总之,电子书于我,是方便许多的。
5、一篇日记
现在时间是晚上的9点05分,我已经在回家地铁上前进两站。三站过后我要转车,我打算再去拼一拼下一趟列车的及时——在它关门之前——上车,我于是站在距离转站路线最近那个口子,只待列车到站。
我的右手边,大概是两个小学生(或者是初中生)正坐地上,他们的对话内容,我有听到两三句:
“那个别人刚走了的座位还是热乎的,如果坐了就会长痔疮。”
“我下一站就到红旗河沟了。反正没作业……反正没作业。”
对于今天的准时上车,我是很有些骄傲的。我似乎已经好久好久,没有9点准时下班。
(我跑过换乘路线,下一趟列车还有一分钟,今天的换乘计划成功了。)
今天的工作,又是和提示词作斗争的一天。
今天的新闻,大概只有一条:我的同事说,他的一位朋友从外地回重庆,Offer年包已经过了60。啊哈?所以重庆还是开得起工资的?
嗐!又有人在地铁上开很大声的外放,他应该正在玩某一种打枪游戏。
说起地铁外放,我想重庆和北京(上周去了北京出差)是真有一些差距的,我在北京一周坐地铁次数不多(大概五六七次),从没听到过手机外放,而重庆?每一趟地铁,我都得和外放侠做一点小小斗争:那些不能专心的时间,我总告诉自己“没关系的,不听不听”。
最近两天的晚饭,都是地铁口的一碗洋芋,7块钱。吃洋芋很快,于是我可以在晚饭时间向家里打几个电话。身体健康,就该是最高优的事情。
还有其它的应该记录的内容么?好像没有的。
不对,还有一条。
最近的读书时间,全部给了小说,一本是《安娜·卡列尼娜》,一本是《李自成》。这两本小说,都好长好长。
6、读书会忘记应该怎么办呢?
基于我现在的读书认知(过去五年日均阅读一小时多一点,读书类型多种多样,累积读完大概120本书)来看,我以为记住书中内容这件事,仿佛是可以不需要刻意追求的。
那些我们想要记住的,总能够印象不熄。
以《学习之道》里面的“Zone概念”为例,投篮不管怎么投都有,台球不管怎么打都进,全没有技巧,只凭借着一种感觉,这种感觉是可以有方法做到频繁进入的。
如何进入,带着热爱,练习不止即可。
还有些内容,是读过便忘记的,但这忘记的内容,可以通过一种简单的方法被记住。这简单的方法是不停地读,读相关联的书,看相关联的内容。
这内容当中的一个示例,是算法“快慢指针”,最初我并不知道如何探测链表是否循环,第一次刷题后也很快忘记。直到在《剑指Offer》《我的第一本算法书》《程序员面试金典》中多次强化,它被刻在脑子里。
我想自己,读过书当中可能超过99%,是都被我忘记的。这些被忘记的内容,如何能够被更好的记住,我知道的方法来自于《津巴多普通心理学》名叫“精细复述”,即将自己学到的知识,用自己的话认真地重新组织一遍,这件事做完,便能将知识记得更久些。
这样记住的内容,有“将愤怒或者悲伤写成文字,能够缓解自己的情绪”“记忆能力可以不随年龄变化,只需要一些组装技巧”……
最后,现在的我真的以为“读书想要记住”这件事是可以不强求的,只要不停看,外加一些思考,就好的。
7、推荐几本能够快速读完的小书吧?
看到这个问题,我脑子里冒出来两三本小书,它们都是我读完认为不错不厚甚至很薄的三本小书:《宝贵的人生建议》《受戒》以及《活出生命的意义》。
《宝贵的人生建议》,是一位老者(作者名字以及生平我并不能记住,记住的只是作者是一位六十多岁的老人)写给他子女以及孙辈的人生建议。每一条建议,都不长。
我记住的建议有好些,比如老生常谈的“种一棵树的最好时机是十年前,其次是现在”,比如“写不出文章时,假装以讲故事形式说给朋友听,当写完后删去朋友名字,便是一篇不错草稿”。(此处只是自己的复述,并非书中原文。)
我以为《宝贵的人生建议》是一本好书的缘由在于作者在末尾所说“书中建议恰似帽子,可能并不适用每一个人,选择自己喜欢的那顶就好”,即作者并不强迫读者接受他的认知。
不强迫,便是长者风范。
《受戒》是汪曾祺先生的短篇小说,我大概看完过不下五遍,全书很短,或许不到一小时便能读完。每一遍阅读,我都感受到一种简单的美好:明子和英子的爱情,唯美、自然,充满活力。
《活出生命的意义》,是一本短短传记,我从书中收获的认知有两个:
- 拥有希望是一个人活下去的最基本条件;
- 不管怎样的绝望场景,我们都拥有最后的自由,选择以何种态度面对这绝望的自由。
以上三本书,如果快一点,或许一两天内可以全部读完。但回味无穷。
8、怎样做到坚持阅读?
大概靠一点惯性,一点贪念,以及对书中内容的许多期待。
惯性,来源于过去五年的作息,以及用手机的习惯。
过去五年以来,我有两年半上班通勤是坐地铁的。地铁上的时间,都被我用来看书,这时间的看书,毫无心理负担。
上班路上:“我正要去公司干活呢,现在通勤路上肯定不会有人找。”
下班路上:“今天的事情已经都有了交代,看点轻松的书打发下时间吧。”
于是看书,专注且有趣。
当看书次数变多,很自然便会打开手机上的《微信读书》,于是再看两分钟。
贪念,也可以说成是对认知的渴求。五年以前,我想着靠自己的生活日记换取流量,只写两周便发现没了东西可写,于是找书来看。
我的看书,是为写作言之有物,是为更新(我给自己定下目标,不管是怎样内容,每周必须完成一篇更新)有内容可写,是为内容能够被人阅读换成收入。
于是看书,与写作相辅相成,世俗又带目的。
期待,是对书中内容最纯粹的期待,我仅仅想知道,书中那人物、事物、理论的未来是怎样的。
《崇祯传》里的崇祯怎么就亡国了?《安娜·卡列尼娜》里的安娜和弗隆斯基有未来么?《我曾走在崩溃的边缘》中俞敏洪老师是怎样不崩溃的?《也许你该找个人聊聊》当中心理咨询师每天都做些什么?
总之,那些无尽的期盼与好奇牵着我,看书不停。
9、糖醋排骨怎么做呢?
最近刚刚试过再做一次糖醋排骨,不脆,但依然有点好吃。制作步骤如下,每一步骤后面括号中是我当下存在的疑惑:
选排骨。(这一步很重要,上一次做时排骨都骨头中间肉包周边,成品好看许多。这一次买的打六折的排骨,成品则很不规则。)
排骨洗净焯水再用热水洗一洗。(这个步骤我从网上学来的,其实没掌握原理,也不确定不焯水味道是否不一样?焯水出锅后用冷水洗是否真的会柴?甚至焯水之后有必要洗么?)
锅中放油,小火放糖,把糖炒出糖色。(这个步骤我想自己油放多了些而糖放少了点,于是糖色不黑,排骨不甜。当然,没有饭店里面的甜,却似乎更符合自己的口味。)
下排骨,不停地翻翻翻翻,直到排骨有些焦黄。
下入没过排骨再深一指的热水,加入调味的盐、醋、酱油,焖。(什么时候放盐依然是一个问题,我看到一条高赞视频说提前放盐排骨会柴,但真正制作时,会忘记这注意事项。又由于没有天天做,于是不能验证。)
水快干,再翻翻翻,收汁。尝一下,不够甜再加一点糖。出锅,撒一点葱粒、红椒粒,增香增色。
最终成品,不嫩,有一点柴,有嚼劲,颜色不深,但依然好吃的。
下次做时的优化:少一点油多一点糖。
10、最近正阅读的书有哪些?
我最近正阅读的书,是这几本:
《李自成》和《崇祯传》,《安娜·卡列尼娜》,《高效能人士的七个习惯》,以及《亲密关系》。
目前《李自成》刚刚看到四分之一,我对于书中作者对崇祯的评价——刚愎自用、犹疑猜忌——不太相信,于是先读《崇祯传》。
《崇祯传》也正读到四分之一处,崇祯灭了魏忠贤,已经杀掉袁崇焕,现在不信任大臣,正启用宦官到各处监督。
现在崇祯给予我的印象,是勤劳皇帝做了一个错误决定(杀袁崇焕),以及身边帮手很不够。
《安娜·卡列尼娜》正听到六分之五处,基迪和列文正在莫斯科等待他们的第一个小孩出生;安娜和弗隆斯基在乡下生活,弗隆斯基感受到安娜限制着他,安娜刚刚给丈夫卡列宁写信申请离婚。
到现在,我以为安娜和弗隆斯基之间,似乎也并非是真正的爱情,在最初的激情、温情过后,当真正回到生活当中,他们的关系也是并不稳定的。或许安娜并不是出轨状态,此种情况会好一些?
《高效能人士的七个习惯》已经看到最后一个习惯——不断更新——了。虽然我对作者在书中的那些佐证并不很信服,但随着阅读时长增加,我以为这七个习惯是真有效的,它们是智慧,来自于生活、历史中积攒的经验。
《亲密关系》,我之前已经听完一遍有声书,现在刚刚读到第二章。我想要的,是在未来将这本书中内容理解的更多些。
对的,《亲密关系》看两遍的原因是,它是我超级推荐的一本书,我想自己理解更多些后再给出有理有据的推荐理由。
对的,书读第二遍,速度慢许多许多。
来源:juejin.cn/post/7587245616754343987
一杯奶茶钱,PicGo + 阿里云 OSS 搭建永久稳定的个人图床
大家好,我是老刘
今天不聊Flutter开发,聊聊程序员常用的markdown工具。
最近这两天是用阿里云oss搞了个图床,发现还是有很多细节问题的,给大家分享一下。
这件事的起因是之前一直用的写文章的在线服务出了点问题,现在想直接在本地Trae或者Obsidian中写文章(markdown格式),但是为了复制到公众号方便,要自己搞一个图床,否则图片就不能直接复制到公众号和其它平台了。
研究了一圈后最终选择了PicGo 配合阿里云 OSS(对象存储)。
为啥选阿里云 OSS?
这目前最稳定、速度最快且性价比极高的图床方案之一。
而且是目前还有3个月的免费试用。
虽然它不是完全免费(需要极少的存储费和流量费,个人使用通常一年不到一杯奶茶钱),但带来的体验升级远超免费图床。
阿里云 OSS 是按量付费的,主要包含两部分:
- 存储费 : 存多少收多少,个人博客通常只有几百 MB,一个月0.12元。
- 流量费 : 有人访问你的图片才收费 。
- 00:00 - 08:00 (闲时): 0.25元/GB
- 08:00 - 24:00 (忙时): 0.50元/GB

- 注:不同地域价格微调,以上为参考。
为啥不选免费图床?
- GitHub 的问题: 由于国内网络原因,GitHub 的链接经常超时。这会导致发布平台抓取图片失败,最后不得不一张张手动重新上传图片,效率极低。
- Gitee 的问题:
- PicGo本身默认移除了 Gitee 官方支持(旧版可能有,新版需插件)。
- Gitee 为了防止滥用,限制了文件的外链访问,也就是访问量大有可能失败。(这个是听人说的,我自己在Obsidian笔记中用没有发现)
- 担心如果被系统判定为图床仓库,可能会导致仓库甚至账号被封禁。
接下来是 从零开始配置 PicGo + 阿里云 OSS 的详细保姆级教程。
配置方案
第一阶段:阿里云 OSS 配置 (只需做一次)
1. 开通 OSS 服务
- 登录 http://www.aliyun.com/
- 搜索 "对象存储 OSS",点击进入控制台。
- 点击 "开通服务"(如果已开通则跳过)。
2. 创建 Bucket (存储桶)
- 在 OSS 控制台左侧菜单,点击 Bucket 列表 -> 创建 Bucket。
- 填写配置:
- Bucket 名称: 起个名字(例如
oss_img)。 - 地域 (Region): 选择离你或者你的用户访问地点最近的(例如
华北2 (北京))。记住这个地域,后面要用。 - 存储类型: 标准存储。
- 读写权限 (ACL): 公共读 (Public Read)。这一点非常重要,否则图片链接发给别人无法访问。
- 其他选项默认即可。
- Bucket 名称: 起个名字(例如
- 点击确定创建。
3. 获取 AccessKey (密钥)
为了安全,不建议使用主账号的 Key,建议创建一个专门用于 OSS 的子账号。
回到 OSS 控制台的主界面,注意不是Bucket管理界面。
- 鼠标悬停在右上角头像,选择 AccessKey 管理 -> 使用RAM用户 AccessKey。
- 进入 RAM 访问控制台,点击 创建用户。
- 登录名称: 例如
picgo-user。 - 访问方式: 勾选 API 访问。
- 登录名称: 例如
- 点击确定,立即复制保存
AccessKey ID和AccessKey Secret(Secret 只显示这一次,丢了要重新建)。 - 给子用户授权:
- 在用户列表页面,找到刚才创建的
picgo-user,点击右侧 添加权限。 - 搜索
OSS,选择AliyunOSSFullAccess(或者更精细的权限,简单起见选 FullAccess)。 - 点击确定。
- 在用户列表页面,找到刚才创建的
第二阶段:PicGo 客户端/插件配置
我是用的是PicGo 桌面版,因为一方面我的场景是在Trae和Obsidian中都要用,另一方面,vs-picgo插件已经好几年没更新了。
所以如果你经常要在 Typora、Obsidian 等多个软件里用图床,建议配置桌面版。
而且日常使用我都是通过快捷键操作,桌面版和插件的操作复杂度是一样的,桌面版还有更全面的功能。
配置 PicGo 桌面版
- 下载并安装 PicGo 桌面版。
- 打开 PicGo -> 图床设置 -> 阿里云 OSS。

- 填写配置:
- 设定 KeyId:
AccessKey ID - 设定 KeySecret:
AccessKey Secret - 设定存储空间名: Bucket 名称 (例如
oss_img) - 确认存储区域: 也就是 Area,例如
oss-cn-beijing。 - 指定存储路径:
img/
- 设定 KeyId:
- 点击 确定 和 设为默认图床。
第三阶段:验证与使用
- 测试上传:
- 拖拽一张图片到 PicGo 主窗口。
- 或者随便截张图,然后按
Ctrl+Shift+P自动上传 看到上传成功的提示后生成的链接已经自动复制到剪贴板。
- 检查链接:
- 如果你看到生成的链接类似
https://oss_img.oss-cn-beijing.aliyuncs.com/img/xxx.png,且能在浏览器中正常打开图片,说明配置成功!
- 如果你看到生成的链接类似
其它事项
本地冗余还是同城冗余
对于 个人图床 (博客、笔记图片)这种场景,答案非常明确,请选择本地冗余 (LRS)
- 更便宜 (核心理由)
- 本地冗余 (LRS): 价格较低(标准存储约 0.12元/GB/月)。
- 同城冗余 (ZRS): 价格较高(标准存储约 0.15元/GB/月),比本地冗余贵约 25%。
- 对于个人用户,没必要多花这份钱,特别是存储量大的时候差距还是比较大的。
- 可靠性已经足够高
- 本地冗余的意思是:你的数据会存在阿里云同一个机房内的不同设备上。除非这整个机房发生灾难性毁灭(如大地震彻底摧毁机房),否则数据不会丢。数据可靠性高达 99.999999999% (11个9)。
- 同城冗余的意思是:你的数据会存在同一个城市的三个不同机房里。只有当这个城市的三个机房同时全挂了,数据才会丢。数据可靠性高达 12个9。
对于个人博客图片,本地冗余 (11个9) 的安全性已经远远溢出了。即使真的遇到极小概率的机房故障,阿里云通常也有修复手段。为了那几十块钱的图片去买“抗核弹级”的同城冗余,属于过度消费。
如果你实在不放心,就写个脚本定期把图片备份到其它平台即可。
防坑指南
特别注意:不要把 AccessKey 泄露给别人。
阿里云 OSS 是按量付费的,主要包含两部分:
- 存储费: 存多少收多少,个人博客通常只有几百 MB,这个很少。
- 流量费: 有人访问你的图片才收费。
如果你的图片是自己使用,比如Obsidian笔记,或者发布到公众号文章,那么问题不大。
比如老刘自己的Obsidian笔记只有几台电脑和手机同步使用,用量很小。
如果发布到公众号、csdn等平台也问题不大,因为各个平台都会抓取你的图片,发布的文章中使用的是平台的图片链接,而不是你自己的图片链接。
但是如果你是自建的个人博客,要注意一下访问量。
- 如果你的博客访问量非常巨大(每天几万),流量费会是一笔开支。对于普通个人博客,一年通常也就几十块钱。
- 可以在阿里云后台设置 “消费预警”,例如设置消费超过 10 元发短信通知,防止被恶意刷流量。
最后再说两句
折腾这么一圈,其实就为了一个目的:让写作回归写作本身。
我们花时间去配置图床、优化流程,不是为了成为工具大师,而是为了在灵感迸发的那一刻,不会因为图片上传失败这种破事而打断思路。
工具最好的状态,就是当你用它的时候,你根本感觉不到它的存在。
配置好 PicGo + 阿里云 OSS,把琐碎的技术细节丢给自动化工具,剩下的,就是尽情释放你的创造力了。
毕竟,内容,才是一切的王道。
如果看到这里的同学对客户端或者Flutter开发感兴趣,欢迎联系老刘,我们互相学习。
私信免费领老刘整理的《Flutter开发手册》,覆盖90%应用开发场景。
可以作为Flutter学习的知识地图。
—— laoliu_dev
来源:juejin.cn/post/7594000527510093865
五年自学前端到京东终面:我才明白自己不是范进,连范进都不如
1. 京东终面后,我在群里被恭喜了
2025年4月,京东HR在BOSS上找我,岗位写的是「iOS开发」,我心想这HR真他妈不专业,但还是回了句:「您好,我是前端,可以面试吗?」
没想到就这么稀里糊涂面了五轮,终面见部门老大,聊得还行。面完群里几个「未来同事」加我微信,有人说「稳了,等offer吧」,我也觉得这次该轮到我了吧?
然后,就没有然后了。
HR说「流程中」,一等就是一个月。这一个月我啥也没干,就刷邮箱等消息,像个傻逼一样。
这时候我才懂范进——你以为自己中了,其实屁都没有。
2. 我这五年,就是一部「选择比努力重要」的失败史
① 2020年:1万块我就觉得牛逼了
毕业那年进了个区块链小公司,老板说转正给1万,我他妈高兴坏了——「我同学花两三万培训还找不到工作呢!」
现在看真是蠢。那时候滴滴应届生「白菜价」都20k了,我还在为1万沾沾自喜。
问题不是钱,是起点——你第一份工作在小公司,后面想进大厂,难如登天。
② 2021-2023年:被裁了才知道害怕
后来跳槽涨了50%,进了个中型公司,终于知道什么叫「团队协作」了。结果没两年公司不行了,领了几万块钱「毕业大礼包」。
2023年再找工作,行情已经烂了。我怕失业,涨了40%多又去了个小公司,继续写垃圾代码。
这时候我才明白:小公司呆久了,你的简历就废了。
③ 2025年:面京东,我才知道自己多菜
今年我认真准备了半年,八股文、项目难点、架构设计,甚至刷了LeetCode。面京东时,人家问「你们日活多少?QPS多少?」
我他妈哪知道?我们公司就几十个人用,需要个屁的高并发!
大厂要的是「大厂经验」,你没有,就是没有。
3. 我认命了,但你们别学我
我现在进了一家还算稳定的公司,薪资也还行,但心里明白——我这辈子可能都进不去大厂了。
不是我不努力,是一开始选错了。如果毕业就进大厂,现在跳槽随便涨50%。但在小公司呆过?难。
但有一点让我没完全废掉:我写技术博客
真的,这几年每次面试,人家都会问我博客上的东西。那些在小公司用不上的「高端技术」,我全靠自己折腾,写在博客里。
所以如果你也在小公司:
- 别混日子,自己搞点有难度的项目
- 写博客,这玩意儿真能当简历用
- 早点跳,在小公司呆三年以上,简历就臭了
4. 最后说句实话
我知道你们想听「坚持就能进大厂」,但现实是——有些人就是没这个命。
我现在马上30岁了,五年经验,没大厂背景,以后更难。
前面卡技术经验,卡大厂背景,后面卡年龄限制,一开始没走好路,后面真的特别艰难
现在还背上了房贷,要结婚,要有小孩,后面压力更大,现在只想稳定一点 😭😭😭
但至少我还能写代码,还能靠技术吃饭。比起范进,我至少没疯。
最后贴几张图吧,就当看电子榨菜了
- 京东是真远,来回四个小时

- 不靠谱的面试



- 一直等不到的消息,我都感觉我问烦了

- 来自群友的关心,我当时已经是范进的心态了

- 别人的起点,或许就是你的终点


- 为什么拿京东说事
因为别的大厂也没约我面试,除了美团,小红书的外包 😭😭😭
- 新公司
来新公司上班快一个月了,已经轻车熟路,同事关系处的不错,已经开始穿拖鞋了(你们应该知道这句话的含金量)
结束语
后面会更新一些,新的学习的技术,如果对面经感兴趣的,也可以单独写一篇半年的面试经历以及总结~
来源:juejin.cn/post/7533801117521772582
2025快手直播至暗时刻:当黑产自动化洪流击穿P0防线,我们前端能做什么?🤷♂️
兄弟们,前天的瓜都吃了吗?🤣

说实话,作为一名还在写代码的打工仔,看到前天晚上快手那个热搜,我手里捧着的咖啡都不香了,后背一阵发凉。
12月22日晚上10点,正是流量最猛的时候,快手直播间突然失控。不是服务器崩了,而是内容崩了——大量视频像洪水一样灌进来。紧接着就是官方无奈的拔网线,全站直播强行关停。第二天开盘,股价直接跌了3个点。
这可不是普通的 Bug,这是P0 级中的 P0。
很多群里在传内鬼或者0day,但看了几位安全圈大佬(360、奇安信)的复盘,我发现这事儿比想象中更恐怖:这是一次教科书级别的黑产自动化降维打击。
今天不谈公关,咱们纯从技术角度复盘一下:假如这事儿发生在你负责的项目里,你的前端代码能抗住几秒?
当脚本比真人还多还快时?
这次事故最骚的地方在于,黑产根本不按套路出牌。
以前的攻击是 DDoS,打你的带宽,让你服务不可用。
这次是 Content DDoS(内容拒绝服务)。
1. 前端防线形同虚设
大家有没有想过,黑产是怎么把视频发出来的?
他们绝对不会坐在手机前,一个一个点开始直播。他们用的是群控、是脚本、是无头浏览器(Headless Browser)。
这意味着什么?
意味着你前端写的那些 if (user.isLogin)、那些漂亮的 UI 拦截、那些弹窗提示,在黑客眼里全是空气。他们直接逆向了你的 API,拿到了推流接口,然后几万个并发调用。
2. 审核系统被饱和式攻击
后端通常有人工+AI 审核。平时 QPS 是 1万,大家相安无事。
昨晚,黑产可能瞬间把 QPS 拉到了 100万。
云端 AI 审核队列直接爆了,人工审核员估计鼠标都点冒烟了也审不过来。一旦阈值被击穿,脏东西就流到了用户端。
那前端背锅了吗?
虽然核心漏洞肯定在后端鉴权和风控逻辑(大概率是接口签名泄露),但咱们前端作为 离黑客最近的一层皮,如果做得好,绝对能把攻击成本拉高 100 倍。
来,如果不幸遇到了这种自动化脚本攻击,咱们前端手里还有什么牌?🤔
别把 Sign 算法直接写在 JS 里!
很多兄弟写接口签名,直接在 request.js 里写个 md5(params + salt) 完事。
大哥,Chrome F12 一开,Sources 一搜,断点一打,你的盐(Salt)就裸奔了。
防范操作:直接上 WASM (WebAssembly)
把核心的加密、签名逻辑,用 C++ 或 Rust 写,编译成 .wasm 文件给前端调。
黑客想逆向 WASM?那成本可比读 JS 代码高太多了。这就是给他们设的第一道坎。
你的用户,可能根本不是人
黑产用的是脚本。脚本和真人的操作是有本质区别的。
不要只会在登录页搞个滑块,没用的,现在的图像识别早破了。
要在 关键操作(比如点击开始直播) 前,采集一波数据:
- 鼠标轨迹:真人的轨迹是曲线(贝塞尔曲线),脚本通常是直线。
- 点击间隔:脚本是毫秒级的固定间隔,人是有随机抖动的。
// 伪代码,简单的是不是人检测
function isHuman(events) {
// 如果鼠标轨迹过于平滑或呈绝对直线 -> 机器人
if (analyzeTrajectory(events) === 'perfect_linear') return false;
// 如果点击时间间隔完全一致 -> 机器人
if (checkTiming(events) === 'fixed_interval') return false;
return true;
}
把这些行为数据打分,随着请求发给后端。分低的,直接拒绝推流。
既然防不住内鬼,那就给他打标
这次很多人怀疑是内部泄露了接口文档或密钥。说实话,这种事防不胜防。
但是,前端可以搞 盲水印。
在你的 Admin 管理后台、文档平台,加上肉眼看不见的 Canvas 水印(把员工 ID 编码进背景图的 RGB 微小差值里,具体大家自己去探索😖)。
一旦截图流出,马上就能解码出是哪个员工泄露的。威慑力 > 技术本身。
或者试试这个技巧 👉 如何用隐形字符给公司内部文档加盲水印?(抓内鬼神器🤣)
安全复盘
这次快手事件,其实就死在了一个逻辑上: 后端太信任通过了前端流程的请求。
我们写代码时常犯的错误:
- 前端校验过手机号格式了,后端不用校验了吧?
- 必须点了按钮才能触发这个请求,所以这个接口很安全。
大错特错!
2025 年了,兄弟们。在 Web 的世界里,不相信前端 才是保命法则。
任何从客户端发来的数据,都要默认它是有毒的。
之前我都发过类似的文章:为什么永远不要相信前端输入?绕过前端验证,只需一个 cURL 命令!
希望对你们有帮助👆
这次是快手,下次可能就是咱们的公司。
尤其是年底了,黑灰产也要冲业绩(虽然这个业绩有点缺德😖)。
建议大家上班时看看这几件事:
- 查一下核心接口(支付、发帖、推流)有没有做签名校验。
- 看看有没有做频率限制(Rate Limiting),前端后端都要看。
- 搜一下你们的代码仓库,看看有没有把公司的 Key 或者源码传上去(这个真的很常见!)。
前端不只是画页面的,关键时刻,咱们也是安全防线的一部分。
别等到半夜被运维电话叫醒,那时候就真只能甚至想重写简历了🤣。

来源:juejin.cn/post/7586944874526539814
2025年终总结:再次选择、沪漂、第一次演讲、相亲无果
选择大于努力
友友们,我是卷福同学,上次写2024年终总结的时候还在武汉,谁能想到一年之后会在上海写2025的年终总结。今年下半年经历的事情比较多,总结来说就是,人生经历又丰富了

1.再次选择
去一线大城市闯荡人生还是留在武汉岁月静好呢?
1月
1月时候还在武汉国企里呢,彼时因为项目变少了,武汉人员要重新分配,没分到项目组的人要进资源池等候下一步安排。而我这个小组之前武汉是有2个人的,北京1个项目经理,给我分配了半个人的工时,另一个人直接让去资源池。关于这个项目经理,去年也写过吐槽的帖子。这个人在武汉的名声非常不好,就完全是对待牛马一样对待底下干活的人。
我想着以后的日子可能过得更难受,还不如直接进资源池算了。于是就和他说了,他倒也爽快,想着再从武汉随便捞个人进来呗,反正还有很多人没安排项目组的。没想到的是,他接连找了两个人,但是因为武汉的人都听说过他的名号,都表示不想去他的项目组。最后,他把项目给外包人员做了。武汉的人,宁愿待池子里,也不想跟着他干。。。
这让我想起以前上小学的时候,以前农村小学的老师,打学生都很厉害的。而打的原因不仅仅是因为调皮捣蛋,我那个班教数学的老师,就是其中打人最厉害的。上课的讲台两边会有两个座位嘛,每次她讲课的时候,都会从这两个座位的学生手里拿课后作业讲,要是讲的时候发现写错了,直接冲过去打头,提耳朵等等。有一次因为班上写错作业的人太多了,直接一节课没上,轮流上去扎马步。而我呢,又恰巧有一学期是坐在讲台旁边的座位,于是这学期每逢她的课必挨打,打到后面,居然在课上说,卷福坐在这,已经被我打肿了,你们再敢做错题试试。到第二学期开学的时候,大家选座位直接把前面两个位置空着了,有两个人宁愿在后面站着也不坐那位置。

我感觉是不是历史又一次重演了呢?
现在回头看,当时没继续跟着他的选择是对的。在武汉,也没有岁月静好啊。
再次选择
虽然5月份的时候拿了上海的offer,但是等真的要走的时候,还是会纠结的。就和刚毕业的时候去北京一样,一切都要重头开始了。走的那天,出租屋里只有个保洁阿姨在打扫卫生,就和我刚回武汉的时候一样。不同的是,上次阿姨说的是房子很快就打扫好了,这次说的是,祝老板以后去上海了发大财啊

2.沪漂
探索新事物
上海就是机会多啊,休息日都会出去逛逛,探索些新事物。想想来上海之后,去周边城市参加徒步、参加ChinaJoy漫展、看了开心麻花的话剧《疯狂理发店》、还有市区内的一些公园、大学、图书馆、动物园、演唱活动等等,生活非常丰富多彩。
- 徒步活动在小红书上找个团报就行,很多都是一天游,一半时间都在路上
- 漫展里的coser都美如画,非常适合集邮


3.第一次演讲
3月
今年参加的线下活动还比较多呢,3月份的时候受腾讯云社区的邀请去杭州参加线下的技术训练营活动,主要也是想趁机会多认识些大佬,说不定大佬招人,有内推机会。倒也认识了不少人,喵喵、小智,还有社区的泽敏姐。晚上一起吃饭交流的时候,泽敏姐说下次有机会让我上去演讲。当时只以为是说说而已,毕竟社区里大佬太多了

9月
9月份的时候收到社区的邀请,去深圳参加腾讯全球数字生态大会,作为讲师上去做分享。我是非常想去的,这样就能达成从学生到老师角色转变的目标,输入变输出。比较纠结的是分享什么内容比较好呢,想了一晚上,最后觉得分享自己用AI两年的经历、沉淀的一些使用心得体、还有变现方式会比较好。
现场的分享也是比较顺利,讲完下来的时候和小智老师沟通上台演讲体验,小智说我讲的非常干货,讲的很稳,刚才他自己讲的时候非常紧张,腿都在抖。我说,我也是啊,腿都在打颤,反而看你讲一点也不慌的样子。。。
第二天又和喵喵一起去腾讯数码大厦找泽敏姐,非常感谢泽敏姐的邀请,第一次到腾讯的大楼参观。期间见识到了超豪华的二次元工位,满墙的手办,非常震惊。

4.AI探索
选择适合自己的方向比较重要,2024年投入了很多时间在AI视频、绘画上,虽然也有涨粉嘛,但是变现不行,一年下来也就三位数的收益。今年主要在写作还有AI编程方向投入,因为换工作的原因,其实投入精力没去年那么多。反而收益还更多了,有四位数的收益。也产出了百万阅读的文章和10w+播放量的视频
出爆款的诀窍就是追热点,这是普通人出爆款最容易的方式了。比如年初的Deepseek,国庆期间的sora2,趁着刚出来热度最高的时候,随便写点东西或者做个视频,流量都非常好的。那像现在再去写Deepseek,流量肯定不如之前了。


11月
11月看到小智老师发的华为鸿蒙线下编程活动的信息,拉着在上海的一个前同事一起去参加玩玩,前同事是我在北京阿里工作时同组的,后来来了上海后,我居然在一个公交站碰到他了,也是十分震惊,居然在上海遇到曾在北京的前同事。鸿蒙的编程活动都是基础的操作,正好也买了Codebuddy的会员,用AI编程轻松解决了,拿到个小礼品

12月
年底了,AI破局俱乐部在深圳举办行动家大会,我看分享嘉宾和内容挺干货的,也报名跑去深圳参加了,到现场才发现,高手云集,天下英雄如过江之鲫。我把这次参会了解的东西整理了下:
- AIPPT.com :赵充老师以肯德基为例分享做产品不要做全家桶,用户只想要个甜筒(不要做大而全的产品,而是在垂直领域找到需求,在单点,堵上一切)
- AI编程出海:老外付费意愿更强,大公司不愿意做的垂直小市场,才是个人最大的机会。remove.bg网站仅有去除背景这一项功能,流量却非常高
- 搜索流量比推荐流量更值钱:用户主动搜的,说明有明确需求。而平台推的,用户只是随便看看。获取搜索流量的方法:研究用户搜索的关键词,围绕关键词输出内容,时间久了,用户搜索这个关键词,自然就找到你了
活动分享的内容挺多的啊,这里就不继续写了。
同样的听课,结果可能完全不同,会场的1000人,参加完会回去后,可能大部分人就是感慨一下,然后继续原来的生活



5.相亲
离开武汉前,和大学同学聚餐,聊了下发现同学要准备去女方家提亲了,问对象是从哪里找的,说了个相亲软件。不过也很难,同学相亲了十几个女生,才和现在这个走到谈结婚这一步。知道了相亲软件(青藤)后,我来上海也开始了相亲之旅,到目前为止,还没有一个相上的,简单说下相亲的几个女生吧:
- 91年,初中老师。其实是在武汉相亲的,家里给介绍的。感觉年龄差的太大了,差不多5岁了,不过因为是家里介绍的,还是得见上一面。3月的时候,武大樱花还开着,便想去武大里逛逛聊聊。让她把身-份-证号发我,用校友通道预约。然后犹犹豫豫半天没有发我,说是个人隐私等等之类的,要自己预约。结果没约上,想再用校友通道时已经约满了,无奈只好约着去学校旁边一家冷锅鱼店吃饭好了,计划约的12点见面,我预估12点半应该能吃上饭(不知道为什么,武汉相亲的女生都迟到),没想到她直到1点多才到,迟到1个多小时,期间也就各种尬聊,回去后两人都没再发消息了,凉凉
- 93年,上海公务员。家里的亲戚介绍的,是我相亲过的最优秀的女生了。以前的高考文科状元,武大校友,长得像袁咏仪,聊天说话情商也很高。接触了一个月吧,期间也一起吃过饭,看过话剧。最后一次见面聊天说起她前男友,海归,年入百万,金融行业。长相没说啊,应该也不差,妥妥高富帅。我一听这条件,心里顿时凉凉,差距太大了。问起为什么分了呢,说是男的虽然有钱,但是不给女的花,什么事都要AA。就是网上那种观念:钱是给女人看的,不是给女人花的。这次聊完之后就结束了,又凉凉。
- 95年,幼师。在上海相亲的,青藤上找的,见面后感觉非常漂亮啊。不过性格比较强势,刚开始聊的还是开心的话题,突然画风一转,她就开始吐槽模式,吐槽支教的山里小学的领导等等,后半段全是听她吐槽,没再聊相亲的话题了。回去后又聊了几周,但是幼师可能时间太紧,也可能她同时聊的人太多,后面想再约见面就没时间了,于是凉凉
- 97年,互联网数据分析师。来上海后相亲的第一个女生,也是非常漂亮,加上好友,看了我动态后,说非常崇拜技术大佬(多写博客还是有好处的嘛),想请我吃饭。于是爽快赴约,期间聊分布式、高并发等等,最后吃完饭结束的时候,说感觉身高不够
- 00年,主业机械设计,副业自媒体。遇到同行了,聊天话题特别多,情绪价值拉满。约线下去CJ漫展玩,让她把身-份-证号发我来买票,本来还想着怎么解释说明的,下一秒就把身-份-证号和手机号发来了,没有任何犹豫。约好了早上9点半去会展中心,没想到她早早到我这边来等我一起过去,连零食和水都买好了。遂开心前往,妹子是第一次逛漫展,逛的非常开心。只不过回去后还是说了性格不合,只好当朋友了。后续还是保持联系,偶尔见面
这里列出不同年龄段的相亲女生,其他还有一些都是软件上匹配了没说话,或者说两句话就不继续聊了的。给兄弟们做个负面教材的参考啊,今年的相亲就到此为止,明年再说吧。。。
6.2026目标
最后不都得展望下未来吗,2026年你们又给自己制定了哪些目标和规划呢,我给自己定下的目标,希望明年都能做到
- 神山转山
- 樱花巡礼
- 新手上路
- 恰老外米
最后,感兴趣的朋友可以关注我的公众号:卷福同学
来源:juejin.cn/post/7590309337861046313
叫你别乱封装,你看出事了吧
团队曾为一个订单状态显示问题加班至深夜:并非业务逻辑出错,而是前期封装的订单类过度隐藏核心字段,连获取支付时间都需多层调用,最终只能通过反射绕过封装临时解决,后续还需承担潜在风险。这一典型场景,正是 “乱封装” 埋下的隐患 —— 封装本是保障代码安全、提升可维护性的工具,但违背其核心原则的 “乱封装”,反而会让代码从 “易扩展” 走向 “高耦合”,成为开发流程中的阻碍。
一、乱封装的三类典型形态:偏离封装本质的错误实践
乱封装并非 “不封装”,而是未遵循 “最小接口暴露、合理细节隐藏” 原则,表现为三种具体形态,与前文所述的过度封装、虚假封装、混乱封装高度契合,且每一种都直接破坏代码可用性。
1. 过度封装:隐藏必要扩展点,制造使用障碍
为追求 “绝对安全”,将本应开放的核心参数或功能强行隐藏,仅保留僵化接口,导致后续业务需求无法通过正常途径满足。例如某文件上传工具类,将存储路径、上传超时时间等关键参数设为私有且未提供修改接口,仅支持默认配置。当业务需新增 “临时文件单独存储” 场景时,既无法调整路径参数,又不能复用原有工具类,最终只能重构代码,造成开发资源浪费。
反例代码:
// 文件上传工具类(过度封装)
public class FileUploader {
// 关键参数设为私有且无修改途径
private String storagePath = "/default/path";
private int timeout = 3000;
// 仅提供固定逻辑的上传方法,无法修改路径和超时时间
public boolean upload(File file) {
// 使用默认storagePath和timeout执行上传
return doUpload(file, storagePath, timeout);
}
// 私有方法,外部无法干预
private boolean doUpload(File file, String path, int time) {
// 上传逻辑
}
}
问题:当业务需要 "临时文件存 /tmp 目录" 或 "大文件需延长超时时间" 时,无法通过正常途径修改参数,只能放弃该工具类重新开发。
正确做法:暴露必要的配置接口,隐藏实现细节:
public class FileUploader {
private String storagePath = "/default/path";
private int timeout = 3000;
// 提供修改参数的接口
public void setStoragePath(String path) {
this.storagePath = path;
}
public void setTimeout(int timeout) {
this.timeout = timeout;
}
// 保留核心功能接口
public boolean upload(File file) {
return doUpload(file, storagePath, timeout);
}
2. 虚假封装:形式化隐藏细节,未实现数据保护
表面通过访问控制修饰符(如private)隐藏变量,也编写getter/setter方法,但未在接口中加入必要校验或逻辑约束,本质与 “直接暴露数据” 无差异,却增加冗余代码。以订单类为例,将orderStatus(订单状态)设为私有后,setOrderStatus()方法未校验状态流转逻辑,允许外部直接将 “已发货” 状态改为 “待支付”,违背业务规则,既未保护数据完整性,也失去了封装的核心价值。
反例代码:
// 订单类(虚假封装)
public class Order {
private String orderStatus; // 状态:待支付/已支付/已发货
// 无任何校验的set方法
public void setOrderStatus(String status) {
this.orderStatus = status;
}
public String getOrderStatus() {
return orderStatus;
}
}
// 外部调用可随意修改状态,违背业务规则
Order order = new Order();
order.setOrderStatus("已发货");
order.setOrderStatus("待支付"); // 非法状态流转,封装未阻止
问题:允许状态从 "已发货" 直接变回 "待支付",违反业务逻辑,封装未起到数据保护作用,和直接用 public 变量没有本质区别。
正确做法:在接口中加入校验逻辑:
public class Order {
private String orderStatus;
public void setOrderStatus(String status) {
// 校验状态流转合法性
if (!isValidTransition(this.orderStatus, status)) {
throw new IllegalArgumentException("非法状态变更");
}
this.orderStatus = status;
}
// 隐藏校验逻辑
private boolean isValidTransition(String oldStatus, String newStatus) {
// 定义合法的状态流转规则
return (oldStatus == null && "待支付".equals(newStatus)) ||
("待支付".equals(oldStatus) && "已支付".equals(newStatus)) ||
("已支付".equals(oldStatus) && "已发货".equals(newStatus));
}
}
3. 混乱封装:混淆职责边界,堆砌无关逻辑
将多个独立功能模块强行封装至同一类或组件中,未按职责拆分,导致代码耦合度极高。例如某项目的 “CommonUtil” 工具类,同时包含日期转换、字符串处理、支付签名校验三类无关功能,且内部逻辑相互依赖。后续修改支付签名算法时,误触日期转换模块的静态变量,导致多个依赖该工具类的功能异常,排查与修复耗时远超预期。
反例代码:
// 万能工具类(混乱封装)
public class CommonUtil {
// 日期处理
public static String formatDate(Date date) { ... }
// 字符串处理
public static String trim(String str) { ... }
// 支付签名(与工具类无关)
public static String signPayment(String orderNo, BigDecimal amount) {
// 使用了类内静态变量,与其他方法产生耦合
return MD5.encode(orderNo + amount + secretKey);
}
private static String secretKey = "default_key";
}
问题:当修改支付签名逻辑(如替换加密方式)时,可能误改 secretKey,导致日期格式化、字符串处理等无关功能异常,排查难度极大。
正确做法:按职责拆分封装:
// 日期工具类
public class DateUtil {
public static String formatDate(Date date) { ... }
}
// 字符串工具类
public class StringUtil {
public static String trim(String str) { ... }
}
// 支付工具类
public class PaymentUtil {
private static String secretKey = "default_key";
public static String signPayment(String orderNo, BigDecimal amount) { ... }
}
二、乱封装的核心危害:从开发效率到系统稳定性的双重冲击
乱封装的危害具有 “隐蔽性” 和 “累积性”,初期可能仅表现为局部开发不便,随业务迭代会逐渐放大,对系统造成多重影响。
1. 降低开发效率,增加需求落地成本
乱封装会导致接口设计与业务需求脱节,当需要调用核心功能或获取关键数据时,需额外编写适配代码,甚至重构原有封装。例如某报表功能需获取订单原始字段用于统计,但前期封装的订单查询接口仅返回加工后的简化数据,无法满足需求,开发团队只能协调原封装者新增接口,沟通与开发周期延长,直接影响项目进度。
2. 破坏系统可扩展性,引发连锁故障
未预留扩展点的乱封装,会让后续功能迭代陷入 “牵一发而动全身” 的困境。某项目的缓存工具类未设计 “缓存过期清除” 开关,当业务需临时禁用缓存时,只能修改工具类源码,却因未考虑其他依赖模块,导致多个功能因缓存逻辑变更而异常,引发线上故障。这种因封装缺陷导致的扩展问题,会随系统复杂度提升而愈发严重。
3. 提升调试难度,延长问题定位周期
内部细节的无序隐藏,会让问题排查失去清晰路径。例如某支付接口返回 “参数错误”,但封装时未在接口中返回具体错误字段,且内部日志缺失关键信息,开发人员需逐层断点调试,才能定位到 “订单号长度超限” 的问题,原本十分钟可解决的故障,耗时延长数倍。
三、避免乱封装的实践原则:回归封装本质,平衡安全与灵活
避免乱封装无需复杂的设计模式,核心是围绕 “职责清晰、接口合理” 展开,结合前文总结的经验,可落地为两大原则。
1. 按 “单一职责” 划分封装边界
一个类或组件仅负责一类核心功能,不堆砌无关逻辑。例如用户模块中,将 “用户注册登录”“信息修改”“地址管理” 拆分为三个独立封装单元,通过明确的接口交互(如用户 ID 关联),避免功能耦合。这种拆分方式既能降低修改风险,也让代码结构更清晰,便于后续维护。
2. 接口设计遵循 “最小必要 + 适度灵活”
- 最小必要:仅暴露外部必须的接口,隐藏内部实现细节(如工具类无需暴露临时变量、辅助函数);
- 适度灵活:针对潜在变化预留扩展点,避免接口僵化。例如短信发送工具类,核心接口sendSms(String phone, String content)满足基础需求,同时提供setTimeout(int timeout)方法允许调整超时时间,既隐藏签名验证、服务商调用等细节,又能应对不同场景的参数调整需求。
某商品管理项目的封装实践可作参考:商品查询功能同时提供两个接口 —— 面向前端的 “分页筛选简化接口” 和面向后端统计的 “完整字段接口”,既满足不同场景需求,又未暴露数据库查询逻辑,后续数据库表结构调整时,仅需维护内部实现,外部调用无需改动,充分体现了合理封装的价值。
结语
封装的本质是 “用合理的边界保障代码安全,用清晰的接口提升开发效率”,而非 “为封装而封装”。开发过程中,需避免过度追求形式化封装,也需警惕功能堆砌的混乱封装,多从后续维护、业务扩展的角度权衡接口设计。毕竟,好的封装是开发的 “助力”,而非 “阻力”—— 下次封装前,不妨先思考:“这样的设计,会不会给后续埋下隐患?”
来源:juejin.cn/post/7543911246166556715
这个老牌知名编程论坛,轰然倒下了!
提到 Stack Overflow 论坛,提到那个橙色的栈溢出图标,相信程序员和开发者们都再熟悉不过了。

还记得半年前,我曾经写过一篇文章,分享了一个有关 Stack Overflow 论坛的变化趋势图,从曲线走势来看,当时那会就已经非常不容乐观,每月新问题数量处于快速锐减之中。
但是现在时间来到 2026 年了,你猜怎么着?
结果是,趋势进一步走低,现在每个月新问题数据甚至还不如 18 年前 Stack Overflow 刚诞生那会的水平。
老规矩,我们还是直接看趋势图和具体数据吧。

这是最新的 Stack Overflow 论坛变化趋势图,表示的是从 2008 年社区刚上线开始,一直到 2026 年的今天,这 18 年时间里,Stack Overflow 社区每个月新问题个数的变化趋势。
怎么样?大家看完这张图有没有什么感触?
这张图清晰地展示出了 Stack Overflow 编程社区在这 18 年间所经历的增长、繁荣、高光以及跌落的趋势。
可以看到,从 2008 年到 2014 年这前 6 年的时间,Stack Overflow 一路高歌,渐入佳境,基本都在稳步增长。
而从 2014 年到 2022 年这中间的 8 年时间,虽说图中曲线呈震荡变化状态,但总体都是处于高位趋势,这也是 Stack Overflow 社区的繁荣时刻。
从数据上来看,Stack Overflow 最高光的顶峰时刻出现在 2020 年,尤其是 2020-05-01 这个时间节点,数据来到了 302381,这也是数值的最顶峰。

而从趋势图中也可以很明显地看出,自 2022 年底开始,Stack Overflow 社区日渐式微,开始出现回落之势。
那一年的年底科技圈发生了什么事情,相信大家都记忆犹新,没错,那就是 OpenAI 正式发布了 ChatGPT。
再后面几年的故事,相信大家也都非常清楚了,AI 大模型飞速迭代,AI 类产品和 AI 知识引擎更是百花齐放,层出不穷。
与此同时,传统的搜索引擎和知识社区也受到了不小的冲击。
其实到了 2025 年,Stack Overflow 的数据就已经跌回到 15 年前的水平了。

而如今时间来到了 2026 年,再看看最近这几个月 Stack Overflow 的数据,更是让人瞠目结舌:

没错,数据已经跌到甚至不如 18 年前社区刚上线那会的水平。

至此,Stack Overflow 社区基本上是彻底凉了。
这时候也不禁想起了那张网图。

聊起 Stack Overflow 社区的诞生,那还要追溯到 2008 年。
两位在软件开发领域很有影响力的博主,分别是 Jeff Atwood(知名博客 Coding Horror 的作者)和 Joel Spolsky(Fog Creek 创始人,《Joel on Software》作者),他们发现了一个行业痛点:即程序员在遇到技术难题时,很难从网络上找到准确、高质量的解决方案。
当时的搜索结果往往充斥着无效信息,知识分散且低效,或者某些技术网站虽然在搜索中排名很高,但真正有用的答案却被藏在注册墙或者付费墙后面,用户体验感极差。
基于对技术社区深刻的理解和对现有状况的不满,于是这两位技术布道者一拍即合,决定联手,打造一个专属于程序员的问答圣地。
他们的目标很明确:创建一个以内容质量为核心、通过社区协作来解决问题的平台。
于是在 2008 年,Stack Overflow 项目启动了。
同年 7 月,网站开始了小范围的内部测试,邀请了一批种子用户来打磨产品和机制。
两个月后,Stack Overflow 网站正式面向公众开放。
Stack Overflow 的上线如同一股清流,迅速在开发者群体中引起了轰动,同时 Stack Overflow 也成功地将全球的程序员凝聚在一起,让知识的分享与获取变得前所未有的高效。
就这样,一个旨在解决技术难题的网站,最终成为了无数开发者赖以生存的“第二搜索引擎”和技术问答社区。
由于其巨大的成功,Stack Overflow 后来还衍生出一系列产品,巅峰时期的它拥有 180+ 子站,而且涵盖了从编程到数学、物理等众多领域的问答社区。
然而,即便是这样一个全球顶级的技术社区,如今,也难逃被 AI 冲击和洗礼的命运。
于是我也开始回想,我自己这几年在互联网上检索信息的方式,似乎在不知不觉中发生了变化。
现在遇到问题,我好像已经不怎么喜欢使用传统搜索引擎和技术社区了,而是会习惯性地转向各种 AI 工具和智能助手,同时信息的处理和交互范式也完全变了。
我们还以编程写代码为例。
以前当我们在写代码调试运行出现错误但折腾半天也不知所以的时候,大家会怎么做?
相信不少同学和我一样,也是首先复制这段报错信息到搜索引擎中进行检索,然后根据搜索引擎吐出来的搜索结果,自己逐个点进去筛选有用的信息。
而当我们一旦在搜索结果里看到了 Stack Overflow 相关网页时,直觉一般会告诉我们,离问题解决应该不远了。
要是在搜索引擎里实在找不到解决问题的方法,那我们就只能去类似 Stack Overflow 这样的编程社区里进行发帖求助了,然后等待问题被查看和回答。
这是在 AI 大模型还没有爆发之前,大家所普遍采用的一个解决问题的办法,总结起来就是这样:
- 遇到问题 → 搜索引擎 → Stack Overflow 链接 → 改代码调试 → 解决问题。
或者这样:
- 遇到问题 → 实在搜索无果 → 发帖 → 等待回答
但现在,随着 AI 技术和工具的发展,事情就变了。
我们可以直接甩给 AI 工具一个问题或者一段信息,AI 工具便会自动理解你的意图,并开始深度思考、收集信息、整理逻辑、分析总结、加工输出,最后直接把生成的答案或解决问题的办法呈现在你的眼前。
而且现在 AI Coding 工具如此强大,从遇到问题到解决问题,甚至都不需要跳出 IDE,问题就可以被完美解决。
所以相比去 Stack Overflow 上发帖子、搜问题、筛答案,AI 引擎无论在时间效率,还是知识维度的扩展上都给了这些传统技术社区以降维打击。
传统搜索引擎往往依赖于关键词匹配和链接分析,因此对于用户问题的理解往往有所欠缺,而 AI 大模型则能够深度理解语言含义和上下文,理解问题的真正意图。
而且 AI 大模型的分析理解能力、整合能力以及推理能力,这些都是传统知识社区和搜索引擎往往所欠缺的东西。
同时 AI 大模型能阅读、理解并整合数据中不同维度的海量知识,并能在此基础上来进行进一步的推理、分析、总结、泛化,这在如今的信息爆炸的时代来说是一种巨大的价值。
所以从这个角度来看,AI 大模型引擎并不是搜索引擎的简单升级版,而是一种全新的信息处理和交互范式。
当然,把 Stack Overflow 衰落的全部原因都归结于 AI 其实也不太公平。
即便不谈 AI 的因素,从大家的反馈来看,近年来 Stack Overflow 社区氛围的下坡路也是其衰落的一个不可忽略的因素。
比如很多初学者的问题经常会由于问题太基础或者格式不对而被下架,另外不少同学反馈 Stack Overflow 上戾气也不小,包括还能看到对新人小白冷嘲热讽,以及老用户之间的斗气争吵等等,这些都会慢慢磨灭大家的热情以及社区的技术氛围。
所以各种内外因素加在一起,再来看如今 Stack Overflow 的这般发展趋势,也就不足为奇了。
那面对 AI 大模型这波浪潮的席卷和冲击,不少传统的搜索引擎和知识社区都开始了转型升级,并积极拥抱 AI。
包括像 Stack Overflow 他们自己也搞了一个 Overflow AI,其中包含了一套基于他们自己的历史内容和知识库所打造的 GenAI 工具。
从「检索工具」进化到「智能助手」,这是不少现技术社区和知识引擎正在经历的蜕变之路。
这两年 AI 大模型领域的发展速度相信大家都有目共睹了,技术迭代进化更是远超预期。
可以预见的是,未来的信息检索和交互方式一定还会进一步高效、精准和智能,而对此我们也可以拭目以待。
好了,那以上就是今天的内容分享了,感谢大家的阅读,我们下篇见。
注:本文在GitHub开源仓库「编程之路」 github.com/rd2coding/R… 中已经收录,里面有我整理的6大编程方向(岗位)的自学路线+知识点大梳理、面试考点、我的简历、几本硬核pdf笔记,以及程序员生活和感悟,欢迎star。
来源:juejin.cn/post/7594350054091259946
“全栈”正在淘汰“前端”吗?一个前端专家的焦虑与思考

最近在帮团队招人,看了一圈市场上的招聘要求(JD),心里有点五味杂陈。
随便打开几个“前端工程师”的JD,上面写着:精通React/Vue,这很正常;熟悉Next.js或Nuxt,这是加分项;有Serverless/Vercel/Netlify经验,了解Prisma或GraphQL,熟悉数据库操作者优先...
比如下面这个更离谱😮:

我恍惚间觉得,这招的到底是个前端,还是一个“全干工程师”?
一个问题在我脑海里盘旋了很久:在全栈的大潮下,我们这些纯粹的前端专家,未来的生存空间在哪里?我们会被淘汰吗?
全栈的兴起,不是偶然,是必然
在抱怨之前,我得承认,这个趋势的出现,是技术发展和商业需求的必然结果。
技术的演进,让全栈的门槛变低了
曾几何时,前端和后端是两个泾渭分明、需要完全不同技能集的领域。前端写HTML/CSS/JS,后端搞Java/PHP/Python,中间隔着一条API的银河。
但现在呢?
- Node.js的出现,让JavaScript统一了前后端语言。
- Next.js, Nuxt 这类元框架,把路由、数据获取、服务端渲染这些原本属于后端一部分的工作,无缝地集成到了前端的开发流程里。
- tRPC 这类工具,甚至能让前后端共享类型,连写API文档都省了。
- Vercel, Netlify 这类平台,把部署、CDN、Serverless函数这些复杂的运维工作,变成了一键式的傻瓜操作。
技术的发展,正在疯狂地模糊前端和后端的边界。一个熟悉JavaScript的前端,几乎可以无缝地去写服务端的逻辑。
商业的诉求,让全栈的价值变高了
从老板的角度想,问题很简单:“我为什么要雇两个人(一个前端,一个后端),如果一个人能把一个功能从头到尾都搞定的话?”
尤其是在创业公司和中小团队,它减少了沟通成本,缩短了开发周期,加快了产品验证的速度。
所以,别再抱怨了。 前端全栈化,是一个不可逆转的趋势。
那全栈到底在淘汰什么?
既然趋势不可逆,那我们的焦虑从何而来?
我认为,全栈并没有在淘汰前端这个岗位,但它正在淘汰我们对“前端专家”的传统定义,以及一部分人的工匠精神。
1. 它在淘汰对深度的追求
人的精力是有限的。当你需要把时间分配给数据库设计、服务端逻辑、部署运维时,你还剩下多少时间,去深究前端的那些“硬骨头”?
我说的“硬骨头”,指的是:
- 极致的性能优化:深入到浏览器渲染流水线,去优化每一帧的动画,去解决INP(Interaction to Next Paint)的交互延迟。
- 复杂的图形学与动画:深入Canvas, WebGL, apg, 实现那些让人惊叹的数据可视化和交互效果。
- 专业的无障碍(a11y) :确保你的应用,对于有障碍的用户来说,依然是可用和易用的。这本身就是一门极深的学问。
- 深入浏览器底层:比如内存管理、垃圾回收机制、事件循环的微观任务等等。
当一个人的知识体系变得越来越“宽”时,他的“深度”不可避免地会受到影响。
2. 它在淘汰入门级前端的生存空间
我刚入行的时候,只要把HTML/CSS/JS玩明白,就能找到一份不错的工作。
但现在,一个刚毕业的年轻人,除了这些基础,好像还需要懂点Node.js,会用Next.js,了解Serverless……入门的门槛,被无限地抬高了。
3. 它在淘汰工匠精神
全栈的压力,本质上是快的压力。老板希望你快速交付一个完整的功能,而不是花三天时间去打磨一个完美的CSS动画。
在快速搞定和优雅实现之间,天平往往会向前者倾斜。那种对像素的偏执、对交互细节的琢磨、对代码美学的追求,在全栈的背景下,有时会显得有些奢侈。
作为前端专家,我们的出路在哪里?
聊了这么多焦虑,那我们该怎么办?坐以待毙吗?当然不。
1. 拥抱T型人才,但要做主干
我们不能抗拒趋势。拓宽自己的知识广度(T的横向),去了解Node.js,了解部署,是必须的。这能让你和其他角色有更好的沟通,有更全局的视野。
但更重要的,是把你最核心的那一竖,挖得比任何人都深。
在一个团队里,当所有全栈工程师都能快速实现一个80分的功能时,那个能站出来,把一个核心功能的性能从80分优化到95分,或者解决一个极其诡异的浏览器兼容性Bug的专家,他的价值是无可替代的。
在一个人人都懂点后端的前端团队里,那个最懂浏览器的人,才是最稀缺的。
2. 成为用户体验的负责人
前端,是离用户最近的一环。
无论技术栈怎么变,我们作为前端工程师的终极使命——为用户创造流畅、可靠、易用的界面体验——是永远不会变的。
一个后端思维主导的全栈工程师,他可能会更关心数据库的范式、API的性能。而一个前端专家,他的核心竞争力,应该体现在对用户体验的全方位把控上:交互的细节、动画的流畅度、加载的性能、操作的便捷性、视觉的保真度、以及对所有人群都友好的无障碍设计。
把用户体验这块阵地守住,并做到极致,就是我们最坚固的护城河。
前端不会死,但只会写UI的前端会淘汰
所以,我现在不再为全栈的趋势而焦虑了。
我把它看作是一次行业洗牌。它淘汰的,不是前端这个岗位,而是那些知识面狭窄、满足于用UI框架拖拖拽拽的UI实现者。
关于这一点你们怎么看🙂
来源:juejin.cn/post/7532777221197840399
我为什么放弃了“大厂梦”,去了一家“小公司”?
我,前端八年。我的履历上,没有那些能让HR眼前一亮的名字,比如字节、阿里,国内那些头部的互联网公司。
“每个程序员都有一个大厂梦”,这句话我听了八年。说实话,我也有过,而且非常强烈。
刚毕业那几年,我把进大厂当作唯一的目标。我刷过算法题,背过“八股文”,也曾一次次地在面试中被刷下来。那种“求之不得”的滋味,相信很多人都体会过。
但今天,我想聊的是,我是如何从一开始的“执念”,到后来的“审视”,再到现在的“坦然”,并最终心甘情愿地在一家小公司里,找到了属于我自己的价值。
这是一个普通的、三十多岁的工程师,与自己和解的经历。
那段“求之不得”的日子
我还记得大概四五年前,是我冲击大厂最疯狂的时候。
市面上所有关于React底层原理、V8引擎、事件循环的面经,我都能倒背如流。我把LeetCode热题前100道刷了两遍,看到“数组”、“链表”这些词,脑子里就能自动冒出“双指针”、“哈希表”这些解法。
我信心满满地投简历,然后参加了一轮又一轮的面试。
结果呢?大部分都是在三轮、四轮之后,收到一句“感谢您的参与,我们后续会保持联系”。我一次次地复盘,是我哪里没答好?是项目经验不够亮眼?还是算法题的最优解没写出来?
那种感觉很糟糕。你会陷入一种深深的自我怀疑,觉得自己的能力是不是有问题,是不是自己“不配”进入那个“高手如云”的世界。
开始问自己:“大厂”真的是唯一的出路吗?
在经历了一段密集而失败的面试后,我累了,也开始冷静下来思考。
我观察身边那些成功进入大厂的朋友。他们确实有很高的薪水和很好的福利,但他们也常常在半夜的朋友圈里,吐槽着无休止的会议、复杂的流程、以及自己只是庞大系统里一颗“螺丝钉”的无力感。
我看到他们为了一个需求,要跟七八个不同部门的人“对齐”;看到他们写的代码,90%都是在维护内部庞大而陈旧的系统;看到他们即使想做一个小小的技术改进,也要经过层层审批。
我突然问自己:这真的是我想要的生活吗?我想要的是什么?
当我把这些想清楚之后,我发现,大厂的光环,对我来说,好像没那么耀眼了。
在“小公司”,找到了意想不到的“宝藏”
后来,我加入了一家规模不大的科技公司。在这里,我确实找到了我想要的东西。
成了一个“产品工程师”,而不仅仅是“前端工程师”
在小公司,边界是模糊的。
我不仅要写前端代码,有时候也得用Node.js写一点中间层。我需要自己去研究CI/CD,把自动化部署的流程跑起来。我甚至需要直接跟客户沟通,去理解他们最原始的需求。
这个过程很“野”,也很累,但我的成长是全方位的。我不再只关心页面好不好看,我开始关心整个产品的逻辑、服务器的成本、用户的留存。我的视野被强制性地拉高了。
“影响力”被无限放大
在这里,我就是前端的负责人。
用Vue还是React?用Tailwind CSS还是CSS Modules?这些技术决策,我能够和老板、和团队一起讨论,并最终拍板。我们建立的每一个前端规范,写的每一个公共组件,都会立刻成为整个团队的标准。
这种“规则制定者”的身份,和在大厂当一个“规则遵守者”,是完全不同的体验。你能清晰地看到自己的每一个决定,都对产品和团队产生了直接而深远的影响。
离“价值”更近了
最重要的一点是,我能非常直接地感受到自己工作的价值。
我花一周时间开发的新功能上线后,第二天就能从运营同事那里拿到用户的反馈数据。我知道用户喜不喜欢它,它有没有帮助公司赚到钱。这种即时的、正向的反馈,比任何KPI或者年终奖金,更能给我带来成就感。
还会羡慕那些在大厂的朋友吗?
当然会。我羡慕他们优厚的薪酬福利,羡慕他们能参与到改变数亿人的项目中去。
但我不再因此而焦虑,也不再因此而自我否定。
你可以多想一想你真正想要的是什么? 一个公司的名字,并不能定义你作为一名工程师的价值。你的价值,体现在你写的代码里,体现在你解决的问题里,也有可能体现在你创造的产品里。
找到一个能让你发光发热的地方,比挤进一个让你黯淡无光的地方,重要得多。
分享完毕。谢谢大家🙂
来源:juejin.cn/post/7525011608366579758
做好自己的份内工作,等着被裁
先声明,本文不是贩卖焦虑,只是自己的一点拙见,没有割韭菜的卖课、副业、保险广告,请放心食用。
2022 年初,前司开始了轰轰烈烈的「降本增笑」运动,各部门严格考核机器成本和预算。当然,最重要的还是「开猿节流」。

幸好,我所在部门是盈利的,当时几乎没有人受到波及。
据说,现在连餐巾纸都从三层的「维达」换成两层的「心心相印」了,号称年节约成本 100 多万。我好奇的是,擦屁股时多少会沾点 💩 吧?这下,真是名正言顺的 💩 山代码了。
2022 年 7 月底,因为某些原因,结束 10 年北漂回老家,换了个公司继续搬砖。
2023 年,春节后不久,现司搞「偷袭」,玩起了狼人杀,很多小伙伴被刀:
清晨接到电话通知,上午集体开会,IT 收回权限,中午滚蛋
好在是头一回,补偿非常可观,远超法律规定的「N+1」。
2024 年,平安夜,无事发生。
2025 年 1 月,公司年会,趣味运动会,有个项目是「财源滚滚」,下图这样的:

有个参赛的老哥调侃道,这项目名字不吉利啊,不应该参加的。无巧不成书,年后他被刀了。。。
这次的规模远小于 2023 年,但 2025 年也不太平,「脉脉」上陆续有人说被刀或者不续签,真假未知。
实话说,我之前从未担心过被裁,毕竟:
名校硕士,经历多个大厂,有管理经验
热爱编程,工作认真负责,常年高绩效
但是,随着 AI 的快速迭代,我现在感觉自己随时可能被刀了。AI 能胜任 log 分析、新功能开发、bug 修复等绝大部分日常工作,而且都完成的很好。再配合 AI 自己写的MCP,效率肉眼可见的提高。
亲身体验,数百人开发的千万行代码级别的项目,混合了Java/Kotlin/OC/C++/Python等各种语言。跟Cursor聊了几句,它就找到原因并帮忙修复了。如果是自己看代码、问人、加 log、编译,至少得半个小时。
那还要码农干啥呢?即使是留下来背锅,也要不了这么多啊。
距离上次「狼人杀 」,三年之期已到。今年会有「狼人杀 2.0」吗?我还能平稳落地吗?
无所谓了,我早已准备好后路:

头盔和衣服真是我买的,还有手套未入镜,我感觉设计很漂亮,等天气暖和后,当骑行服穿。
汽车,小踏板,大踏板,足以覆盖滴滴、外卖、闪送三大朝阳行业。家里还有个小电驴,凑合能放到后备箱,承接代驾业务问题不大。
以上,虽然是开玩笑,但我对「是否被刀、何时被刀」,真的是无所谓。因为:
一个人的命运啊,当然要靠自我奋斗,但也要考虑历史的进程
公司为了长远的发展,刀人以降低成本,再用 AI 来提高效率,求得股价长红。对此,我十分理解,换我当老板,也会这么干。
作为牛马,想太多没用,我们左右不了这些事。不夸张的说,99.9999% 的码农是不可能干到退休的,和死亡一样,被刀只是早晚的事。更扎心的是:
人不是老了才会死,而是随时会死
当下的工作也一样,并不是摸鱼或者捅娄子才会被刀,而是随时会被刀,与个人的努力、绩效关系不大。常年健身的肌肉男,也可能猝死,只是概率低点,并不是免死金牌。
生命,从受精的那一刻起,就在走向终点。工作,从入职的那一刻起,就在走向(主动/被动)离职。
所以,虽然我现在感觉自己随时可能被 AI 替代,但我的心态一直都没变,就是标题所言:
做好自己的份内工作,等着被裁
不是消极怠工,我始终认真完成每一项任务,该加班加班。并非为了绩效,是因为自己的责任心,要对的起工资。至于公司哪天让我滚蛋,我决定不了,更改变不了。就像对待死亡一样,坦然接受之,给够补偿就好。

对于 AI,还想再啰嗦两句:
- 虽然 AI 很牛逼,但最终还是需要人来判断代码的对错。此时,工程师的价值就体验出来了,所以 AI 是帮我干活的小弟,而不是竞争对手。
- AI 扩大了我们的能力边界,人人都可以是前端、后端、客户端、UI 设计全通的「全栈工程师」,至少可以是「全沾工程师」,「雨露均沾」的沾。
滚蛋之后呢?我不知道,现在有多少公司愿意招 40 岁高龄码农?据说前司招聘 35 岁普通员工都要 VP 审批了,真是小刀剌屁股,开了眼了。
好在,我家人的物质欲望极低,对衣服、手机、汽车没有任何追求,老婆不用化妆品和护肤品,也没买过一个包。即使不上班,积蓄也能撑一段时间。
所以,强烈建议当前北上广深拿高薪的老哥老妹们,除非万不得已,千万不要像我一样断崖式降薪回老家。趁年轻,搞钱比啥都重要。

对了,我目前有两个利用自身优势的基于 AI 的创业方向。网友们帮忙把把关,如果哪天真失业了,看能否拉到几个亿的风投,谢谢!
- 偏胖圆脸,AI 加点络腮胡,再买几双白袜子
- 身高 180,AI 换个美女脸,黑丝高跟大长腿

来源:juejin.cn/post/7593771861323726874
2025 年终回顾:25 岁,从“混吃等死”到别人眼中的“技术专家”
2025 年终总结:25 岁,从“混吃等死”到别人眼中的“技术专家”
两年前的春节假期,某天。在一所面积不大的小房里,住着三个人。
那时的我,还是个凭运气混进大公司、天天写 CRUD 混吃等死的前端“小卡拉米”。趁着春节假期,我戴着耳机,沉浸在游戏世界里。突然,客厅传来一声闷响。
我疑惑地摘下耳机:“什么声音?”
回头望去,我看到奶奶仰面躺在沙发上——她晕倒了。
那是我第一次见到我最亲爱的亲人病倒在面前。慌乱中,我给在外打牌的父亲拨去了电话。最后所幸并无大碍,但在那一刻,我知道:我不能再这样混下去了,我需要努力。
两年后的今天,再回头看:
- 我成为了团队中不可或缺的技术核心
- 我成为了稀土掘金 2025 年度优秀创作者
- 我开源的项目累计获得 1K+ GitHub Star
- 我开始频繁出现在 Three.js 官方推特的转发列表中
- 也第一次,被别人称为「技术专家」

前言:前端版“萧炎”?不,是鸽子王
我无意想去将过去两年到底是如何度过的写成文章,把这篇年终总结写成“前端版萧炎”的自传。老实说我也想不起来是怎么过的。上面那段沉重的开场白,就当是我为自己小小的骄傲一下吧。
好了!STOP!沉重的话题到此为止。让我们一起来看看,“鸽子王”老何今年到底干了些什么事吧!
1.所在之平台:数据与感谢
首先,让我们来看看今年在平台上的具体“战绩”。今年一共写了多少篇文章呢?

哇!居然有足足 9 篇之多! 这个数量真是闻者伤心、听者落泪,运营看了想打人(右边狐尼克真的是运营催更我时的表情 be like...)。不过好在数据还算过得去,收获了 1217 名粉丝。真的特别特别感谢你们!不多说了,就我这“随缘更新”的频率还能有粉丝,真的得给“义父们”磕一个。

在此期间,我也收获了非常不错的流量,感谢各大网友、群友和平台运营老师的大力扶持。

最终,我获得了 「稀土掘金 2025 年度优秀创作者」 的荣誉。当时运营老师通知我的时候,我的第一反应是:

泰裤辣!兄弟们也是好起来了!
说真的,能拿这个奖完完全全归功于万能的群友们和运营老师满满的 Push,是你们的监督让我得以将写文章的习惯(勉强)坚持下去!

2.所做之项目:从“夯”到“拉”的锐评
来到项目环节,让我以极其客观(自我检讨)的视角,锐评一下今年开源的项目吧!
🏝️ Island —— 2.5D 卡通风个人简历\
自我评价:人上人

island 对现在的我来说,确实存在不少问题:
- 画面风格:三渲二的效果还需优化,仔细看距离小时候在 PSP 上玩的游戏风格还有差距,后续计划加入自定义后处理通道来调节。
- UI 设计:当时用 DALL·E 3 生成的 UI 比较简陋,后续会用 Nano-banana-pro 全面改进 UI 风格。
- 兼容性:移动端适配?不存在的,手机和平板用户只能干瞪眼 = =。
- 交互性:可互动内容单调,靠近物体没有视觉反馈。
- 展示方式:玩家需要到场景上方点击告示牌展示新项目,方式太单一,和网页没啥区别!
但话又说回来,这确实是我第一个有点“出圈”的项目。也许每个人回看以前的代码都会觉得稚嫩,左看右看能挑出一堆毛病,但不可否认它在我心中的地位。综合下来,给个**“人上人”**的评价!后面的改动还能在掘金多水两篇文章,美滋滋。
🏙️ CubeCity —— 卡通城市放置系统
自我评价:项目顶尖,作者“拉完了”

CubeCity 是我 GitHub 上 Star 最多的项目,单个项目贡献了 877 Star。玩法参考了《卡牌城镇》,支持随意建造、拆除、升级、搬迁建筑。UI 贴合 Low Poly 风格,在国外社区也很讨喜。
但 Star 多不代表没问题:
- 性能:渲染帧率堪忧,比如 GTX 1660 Ti 这种显卡都跑不满 60 FPS。
- 生气:道路上没有汽车和小人跑动,城市显得空荡荡。
- 兼容性:移动设备又双叒没做兼容?!GitHub 上提的 Issue 也不回?可恶的鸽子王!
- 功能缺失:说好的成就系统呢?经济系统呢?社交排行榜呢?
何贤你在干嘛?总而言之,这个项目简直是鸽到没朋友,最鸽的一集!X 上评论不回,GitHub 上 Issue 装死。要不是项目底子还行,我真的要骂人了!
综合下来项目给到顶尖,但是开发者给到 拉完了 啊!
Third-Person-MC——第三人称我的世界
自我评价:夯

这个项目掘友们可能没怎么听过,但在群里应该多多少少见识过。这是目前对我来说最复杂的一个项目!
该项目具备多种生态地貌、无限地形生成与自适应相机等核心特性,不久的将来,即将正式登陆掘金平台与大家见面。至于是否会进一步扩展联机系统,目前尚无定论。相关内容,我会在后续发布的专题文章中为大家详细解读。
总体来说还不错!实机测试在 GTX 1660 Ti 的笔记本上也能稳定 30 帧!算是一个非常有意思的探索。综合评价:夯。
好了好了打住!今年说实话还是开源了不少项目!但是不能在这占用篇幅!在此我直接就是一个项目大合影

以及对于我来说所有项目从夯到拉的排名如下:

3.所遇之好友:良师益友
近年最幸运的事,就是遇到了一个很好的领导,以及一群志同道合、相互勉励的朋友。
关于“冷爷”
在工作上,我遇到了一位好领导,但我更愿称他为好朋友——冷爷。 平时群友或合作伙伴可能觉得我是个温和的人,可一旦切入工作模式,我就会变成大家口中的“压力怪”。因此曾有一段时间,我和办公环境有些格格不入。冷爷作为 Leader,真的起到了至关重要的润滑作用。 生活中,冷爷也经常带我出去玩。那段时间我真是“两耳不闻窗外事,一心只想学技术”,彻彻底底的宅男一枚。要不是冷爷拉着我游山玩水,我可能真就成了那种“代码敲得飞起、话却说不清楚”的刻板极客。 他是一个好领导,更是一个好朋友。在这里想对冷爷说一声:谢谢!
关于 Web3D 圈子
随着深入学习 Web3D,我微信里多了很多耕耘于此的朋友。虽然大家细分领域不同——有做可视化大屏的,有做 3D 看车/看房的,有研究 NVIDIA Isaac Sim 的,也有做数字工厂/机械臂的。甚至有些曾是我在视频网站上仰望的偶像,现在也成了列表好友。
大家聚在一起分享技术,扯皮打趣,大佬们时不时冒泡答疑。这个圈子很小,抬头不见低头见,但真的很少出现拉踩或诋毁。我是在群友们的“夸夸”中一步步走到这里的。 这种正反馈非常奇妙:动力来自群友的鼓励和大佬的认可,而这些又促使我创造出更好的项目!
4. 所想:运气表面积
最近我了解到一个非常有趣的观点,叫 Luck Surface Area(运气表面积),最早来自 Jason Roberts:
你生活中会有多少‘无心插柳柳成荫’的意外之喜?这取决于你的‘运气表面积’。 LSA(运气) = P(热爱/做事的深度) × C(传播/连接的广度)
这个乘法关系很神奇,意味着如果其中一项为零,总结果就为零:
- 只有热爱 (P),没有传播 (C) = 孤独的耕耘者 如果你对某事极度热爱,技艺精湛,但把自己关在地下室里,从不向外界展示,那么你的“运气表面积”几乎为零。外界的机会无法穿透墙壁找到你,“酒香也怕巷子深”。
- 只有传播 (C),没有热爱 (P) = 空洞的喧哗者 如果你擅长营销,但传播的内容缺乏内核,不是你真正热爱或擅长的东西,你可能短期获得关注,但无法建立深度的信任,真正的“好运”依然很难降临。

我觉得我是非常幸运的。优秀的 Web3D 作品天然具有视觉冲击力和社交属性,而稀土掘金平台很好地承担了“传播”的职责!
所以,并不是我选择了这个平台,而是我遇到的人、事以及平台给予的正反馈激励着我!非常感谢能看到这里的你!
5. 所规划之未来
2026 年会是什么样?我不知道。它会是我的“三年之约”,我希望自己能变成更好的人。
但我确定我一定会:
- 🛠️ 填坑:优化那些我没有完善好的项目(别骂了别骂了)。
- ✨ 创造:产出更多有趣的项目和技术文章。
- 🤝 连接:认识更多志同道合的朋友。
- 🌐 布道:将 Web3D 的魅力分享给更多的人。
6.三年之约,你会如约而至吗?
最后,如果你愿意,也在这篇文章的评论区留下属于你的「三年之约」吧!
无论是技术的精进、生活的改变,还是一个简单的愿望。让我们约定在未来的某一天回头看,一起见证彼此的蜕变!🚀
来源:juejin.cn/post/7592789801708896297
70% 困境:AI 辅助开发的残酷真相
原文链接:The 70% problem: Hard truths about AI-assisted coding
作者:Addy Osmani
作者信息:Google Chrome 团队成员,目前专注于浏览器性能领域,著作有:Learning JavaScript Design Patterns、Leading Effective Engineering Teams、Stoic Mind、Image Optimization 等
翻译链接:70% 困境:AI 辅助开发的残酷真相
过去几年,我一直深度参与 AI 辅助开发工作,期间发现了一个引人深思的现象:虽然工程师们普遍反映使用 AI 后生产力得到显著提升,但我们日常使用的软件质量似乎并没有明显改善。这是为什么呢?
我想我找到了答案。这个发现揭示了一些关于软件开发的基本事实,值得我们认真思考。接下来请让我分享一下我的心得。
开发者如何实际使用 AI
我观察到开发团队使用 AI 时有两种明显的模式。我们可以称之为"快速构建者"和"迭代优化者"。这两种方式都在帮助工程师(甚至非技术用户)缩短从想法到实现(或最小可行产品,MVP)的距离。
快速构建者:从零到 MVP
像 Bolt、v0 和 screenshot-to-code AI 等 AI 工具正在彻底改变项目启动的方式。这些团队通常会:
- 从设计或粗略概念开始
- 使用 AI 生成完整的初始代码库
- 在几小时或几天内(而不是几周)完成可用原型
- 专注于快速验证和迭代
这些成果往往令人印象深刻。我最近看到一位独立开发者使用 Bolt,几乎瞬间就将 Figma 设计转换成了一个可运行的 Web 应用。虽然还不能当作产品正式发布,但足以获取初步的用户反馈。
迭代优化者:日常开发
第二类开发者在日常开发工作流程中使用 Cursor、Cline、Copilot 和 WindSurf 等工具。这种方式虽然不那么引人注目,但可能引起更大的变革。这些开发者会:
- 使用 AI 进行代码补全和建议
- 利用 AI 处理复杂的重构任务
- 生成测试和文档
- 将 AI 作为问题解决的"结对编程"伙伴
但这里有个关键问题:尽管这两种方法都能显著加快开发速度,它们都存在一些不太明显的隐藏成本。
"AI 速度"的隐藏成本
当你看到一位高级工程师使用 Cursor 或 Copilot 等 AI 工具时,感觉就像在看魔术。他们可以在几分钟内搭建完整的功能,包括测试和文档。但仔细观察,你会发现一个关键点:他们并不是完全接受 AI 的建议。他们会不断地:
- 将生成的代码重构成更小、更集中的模块
- 添加 AI 忽略的边界情况处理
- 加强类型定义和接口
- 质疑架构决策
- 添加全面的错误处理
换句话说,他们在运用多年积累的工程智慧来塑造和约束 AI 的输出。AI 加速了他们的实现过程,但他们的专业知识才是保持代码可维护性的关键。
初级工程师往往会忽略这些关键步骤。他们更容易接受 AI 的输出,导致我称之为"纸牌屋代码"的现象——看起来完整,但在现实的压力下会崩溃。
知识悖论
我发现的最反直觉的事情是:AI 工具对有经验的开发者帮助更大,而不是初学者。这似乎是反常的——AI 不是应该让编程更加大众化吗?
现实是,AI 就像是你团队中一个非常热心的初级开发者。他们可以快速写代码,但需要不断的监督和修正。你知道得越多,就越能正确引导他们。
这就产生了我称之为"知识悖论"的现象:
- 高级开发者使用 AI 加速他们已经知道如何做的事情
- 初级开发者试图使用 AI 学习该做什么
- 结果差异显著
我看到高级工程师使用 AI 来:
- 快速实现他们已经理解的想法
- 生成基本功能,然后进行改进
- 探索已知问题的替代方法
- 自动化常规编码任务
而初级工程师往往:
- 接受不正确或过时的解决方案
- 忽略关键的安全和性能考虑
- 难以调试 AI 生成的代码
- 构建他们不完全理解的脆弱系统
70% 问题:AI 的学习曲线悖论
最近一条 推文 完美地概括了我在长期观察到的现象:非工程师使用 AI 编码时会遇到一个令人沮丧的瓶颈。他们可以非常快速地完成 70% 的工作,但最后的 30% 却变成了收益递减的劳动。
"70% 问题"揭示了当前 AI 辅助开发的一个关键点。最初的进展像魔法一样——你可以描述你想要的东西,AI 工具如 v0 或 Bolt 会生成一个看起来很令人印象深刻的工作原型。但随后你必须面对卡壳的现实。
两步回退模式
接下来通常会发生的事情一般是:
- 你试图修复一个小错误
- AI 提出一个看起来合理的更改
- 这个修复导致其他问题
- 你让 AI 修复新问题
- 这又引发了更多问题
- 如此反复
对于非工程师来说,这个循环尤其痛苦,因为他们缺乏理解实际问题的心智模型。当有经验的开发者遇到错误时,他们可以基于多年的模式识别来推理潜在原因和解决方案。没有这种背景,你基本上是在玩打地鼠游戏,处理你不完全理解的代码。
学习悖论的延续
这里有一个更深层次的问题:AI 编码工具对非工程师友好的特性(为你处理复杂性)实际上可能会阻碍学习。当代码"凭空出现"而你不理解背后原理时:
- 你不会精进你的 debug 技能
- 你错过了学习基本编程模式的机会
- 你无法独立做技术架构决策
- 你难以维护和改进代码
这就产生了一种依赖性,你需要不断回到 AI 去修复问题,而不是精进自己处理问题的专业知识。
知识差距
我见过最成功的非工程师使用 AI 编码工具时采取了一种混合方法:
- 使用 AI 快速原型
- 花时间理解生成的代码如何工作
- 在使用 AI 的同时学习基本编程概念
- 逐步建立知识基础
- 将 AI 作为学习工具,而不仅仅是代码生成器
但这需要耐心,需要倾注时间,这就与许多人希望通过使用 AI 工具实现的目标正好相反。
对未来的影响
"70% 问题"表明,当前的 AI 编码工具最好被视为:
- 有经验开发者的原型加速器
- 致力于理解开发的人的学习辅助工具
- 快速验证想法的 MVP 生成器
但它们还不是许多人所希望的编程大众化解决方案。最后的 30%,也就是使软件达到生产就绪、可维护和稳健的部分,仍然需要真正的工程知识。
那好消息是?随着工具的改进,这个差距可能会缩小。但目前,最务实的方法是使用 AI 加速学习,而不是完全取代它。
实际有效的做法:实用模式
在观察了几十个团队之后,我发现以下做法是有效的:
1. "AI 初稿"模式
- 让 AI 生成基本实现
- 手动审查并重构以实现模块化
- 添加全面的错误处理
- 编写详尽的测试
- 记录关键决策
2. "持续对话"模式
- 为每个不同任务启动新的 AI 对话
- 保持上下文集中和最小化
- 频繁审查和提交更改
- 保持紧密的反馈循环
3. "信任但验证"模式
- 使用 AI 进行初始代码生成
- 手动审查所有关键路径
- 自动化测试边界情况
- 定期进行安全审计
展望未来:AI 的真正承诺?
尽管存在这些挑战,我对 AI 在软件开发中的角色仍然持乐观态度。关键是要理解它真正擅长的是什么:
- 能力圈内加速
AI 擅长帮助我们实现我们已经理解的模式。它就像一个无限耐心的结对编程伙伴,打字速度非常快。 - 探索可能性
AI 非常适合快速实现原型和探索不同的方法。它就像一个沙盒,我们可以在其中快速测试概念。 - 自动化常规任务
AI 大大减少了在样板代码和常规编码任务上花费的时间,让我们可以专注于有趣的问题。
这对你意味着什么?
如果你刚开始使用 AI 辅助开发,以下是我的建议:
- 从小处开始
- 使用 AI 处理独立的、定义明确的任务
- 审查每一行生成的代码
- 逐步构建更大的功能
- 保持模块化
- 将所有内容分解成小而集中的文件
- 维护组件之间的清晰接口
- 记录你的模块边界
- 信任你的经验
- 使用 AI 加速,而不是取代你的判断
- 质疑感觉不对的生成代码
- 保持你的工程标准
代理性软件工程的崛起
随着我们进入 2025 年,AI 辅助开发的格局正在发生巨大变化。虽然当前的工具已经改变了我们原型和迭代的方式,但我相信我们正处于一个更重大变革的边缘:代理性(agentic)软件工程的崛起。
我所说的"代理性"是什么意思?这些系统不再只是响应提示,而是能够计划、执行和迭代解决方案,具有越来越高的自主性。
如果你对代理感兴趣,包括我对 Cursor/Cline/v0/Bolt 的看法,你可能会对我最近在 JSNation 的演讲 感兴趣。
我们已经看到了这种趋势的早期迹象:
从响应者到合作者
当前的工具大多在等待我们的命令。但看看像 Anthropic Claude 的计算机使用功能,或 Cline 自动启动浏览器和运行测试的能力。这些不仅仅是自动补全,它们实际上在理解任务并主动解决问题。
想象一下调试:这些代理不仅仅是提出修复建议,它们可以:
- 主动识别潜在问题
- 启动并运行测试套件
- 检查 UI 元素并捕获截图
- 提出并实施修复
- 验证解决方案是否有效(这可能是一个大问题)
多模态的未来
下一代工具可能不仅仅是处理代码——它们可以无缝集成:
- 视觉理解(UI 截图、原型、图表)
- 语言对话
- 环境交互(浏览器、终端、API)
这种多模态能力意味着它们可以像人类总揽全局地理解和处理软件,而不仅仅是在代码层面。
自主但受指导
我从与这些工具合作中获得的关键见解是,未来不是 AI 取代开发者,而是 AI 成为一个越来越有能力的合作者,能够在尊重人类指导和专业知识的同时采取主动行动。
2025 年最有效的团队可能是那些学会:
- 为他们的 AI 代理设定明确的边界和指南
- 建立强大的架构模式,使代理可以介入其中,一起工作
- 创建有效的人类和 AI 能力之间的反馈循环
- 在利用 AI 自主性的同时保持人类监督
英语优先的开发环境
正如 Andrej Karpathy 所指出的:
"英语正在成为最热门的新编程语言。"
这是我们与开发工具互动方式的根本转变。清晰思考和准确沟通的能力变得和传统编码技能一样重要。
这种向代理性开发的转变将要求我们升级我们的技能:
- 更强的系统设计和架构思维
- 更好的需求规范和沟通
- 更多关注质量保证和验证
- 增强的人类和 AI 能力之间的协作
软件作为技艺的回归?
虽然 AI 使得构建软件比以往任何时候都更容易,但我们有失去一些关键东西的风险——创造真正经过打磨的、高质量的艺术。
演示质量陷阱
这已经成为一种模式:团队使用 AI 快速构建令人印象深刻的演示。主干流程非常丝滑,投资者和社交网络都被惊艳到了。但当真正的用户开始点击时?那时问题就出现了。
我自己就遇到了这些情况:
- 对普通用户毫无意义的错误信息
- 导致应用崩溃的边界情况
- 从未清理的混乱 UI 状态
- 完全忽略的可访问性(Accessibility)
- 在较慢设备上的性能问题
正是这些看似低优先度的 bug 决定了用户是否喜欢这个软件。
失落的匠心
创建真正“自助”软件(用户永远不需要联系支持的那种)需要不同的思维模式:
- 认真处理所有错误信息
- 测试低速网络表现
- 优雅地处理每一个边界情况
- 使功能易于发现
- 与真正的(通常是不懂技术的)用户一起测试
这种关注细节的态度(也许)不能由 AI 生成。它来自同理心、经验和对技艺的深切关怀。
个人软件开发的复兴
我相信我们将看到个人软件开发的复兴。随着市场充斥着 AI 生成的 MVP,那些脱颖而出的产品将会是由这样的开发者构建的:
- 为他们的技艺感到自豪
- 关心细节
- 专注于完整的用户体验
- 为边界情况构建
- 创建真正的自助服务体验
但讽刺的是 AI 工具可能会促成这种复兴。通过由 AI 处理常规编码任务,让开发者能够专注于最重要的事情——创建真正服务和取悦用户的软件。
结论
AI 并没有使我们的软件质量显著提高,因为软件质量(也许)从来不是主要受编码速度限制的。软件开发的难点——理解需求、设计可维护的系统、处理边界情况、确保安全性和性能——仍然需要人类的判断。
AI 所做的是让我们更快地迭代和实验,可能通过更快速的探索导致更好的解决方案。但前提是我们保持我们的工程纪律,并将 AI 作为工具,而不是取代良好软件实践的替代品。记住:目标不是更快地编写更多代码,而是构建更好的软件。明智地使用 AI 可以帮助我们做到这一点。但最终,定义并做到"更好"的仍应是我们人类。
你在 AI 辅助开发方面的经验如何?我很想在评论中听到你的故事和见解。
续集

来源:juejin.cn/post/7478199362243985458
"氛围编程"程序员被解雇了

很多程序员沉迷于“氛围编程”,而忘了自己存在的价值:理解、判断、负责。
当 AI 生成了一段看起来没问题的代码时,你能看出来它在边界情况下会崩溃;当 AI 给了你一个"标准答案"时,你能想到更好的架构;当 AI 犯错时,你能迅速定位问题,而不是束手无策。
这听起来简单,但实际上需要付出极大的自律,才能不断地投入精力来认真审查和优化 AI 输出的代码,提出“为什么这样实现”或者“是否兼容所有情况、是否会有 XX 问题”等问题,并在 AI 回答后进行适当的测试确认。
AI 现在就像一种强效毒品:服用过量会毁了你,服用过少又会让你落后于服用量更大的人。
难点在于找到平衡点、找到最适合你的量,让你在 AI 的加持下能更轻松,又不至于变得更蠢。
有个资深开发者在 Reddit 上说:"对我们这种有经验的人来说,很快我们会变得像黄金一样值钱。那些只会用 AI 的所谓的“氛围程序员”们会创造出一大堆技术债务,到时候还得我们来收拾干净。"
如果你沉迷于"氛围编程",享受那种回车键一敲 AI 都搞定的快感,却从不停下来问问自己"我真的理解这些吗",你迟早会成为漫画里那个人。
《转型 AI 工程师》一阶段已完成:mp.weixin.qq.com/s/BcrTHliEQ…
来源:juejin.cn/post/7588730836864253967
Meta 收购 Manus:对个人开发者有什么启示
今早看到 Manus 被 Meta 收购的消息,我下意识瞄了一眼浏览器侧边栏。
那里停着 Monica 我去年买了它的 Unlimited Level。这一年,眼看着它从一个小插件长成巨头争抢的资产,这种感觉很奇妙。很多人在讨论收购金额,讨论中美科技博弈。但在我这个独立开发者眼里,这不仅是一桩商业收购,更是一次对 “产品价值观” 的暴力验证。

Manus 出售前的最后一次公开复盘,含金量很高。
🎙️ 访谈对象:Manus 首席科学家 Peak (季逸超)
📺 观看地址:
http://www.youtube.com
推荐理由: 完全不是印象中做个AI“套壳站”的浅层理解,逻辑密度极高。记录了从创业初期,时序上的得失与真实体感。对 AI 产品路径的判断非常犀利,值得所有 AI 创业者反复研读。强推看看,会有新启发。
01. 主角登场:从武汉光谷到硅谷焦点
为了还原这次收购的真实分量,我们需要先看清牌桌上的这三个名字。这并不是一个简单的“套壳工具”被收购的故事,而是一场惊心动魄的突围。
这两款产品背后的母公司叫 Monica.im(国内主体为武汉蝴蝶效应),创始人是肖弘。在被 Meta 收购之前,他们已经是全球 AI 应用层的顶流,典型的“墙内开花墙外香”。

- Monica(超级入口):
它是浏览器时代的“副驾驶”。在我的侧边栏里,它聚合了 GPT-5、Claude 4.5、Gemini 3 等所有核武器。它解决了 “输入” 的问题,帮我把全球最强的模型能力接入到我浏览的每一个网页中。 - Manus(执行代理):
这是真正的杀手锏。作为全球首款通用 AI 智能体,它不再是聊天,而是能独立写报告、分析数据、跨平台操作。它解决了 “执行” 的问题。 - 肖弘(CEO):
他不是典型的硅谷技术极客,而是一位深谙中国互联网玩法的连续创业者。早在 AI 爆发前,他就创办过“壹伴”、“微伴”等工具,是微信生态里最懂流量和社群裂变的人。
正是因为肖弘带着这种 “微信生态基因” 杀入硅谷,才有了后面让 Meta 既头疼又眼馋的增长奇迹。
02. 不是“钞能力”,是“中国式裂变”的降维打击
市面上盛传:“Manus 是因为在 Facebook 投了最多的广告,成了大金主,所以才被收购。”
大错特错。真相恰恰相反——Meta 买它,是因为它证明了自己可以“不花钱”就从 Meta 身上薅走 10 亿流量。

肖弘把我们在国内熟知的 “私域流量” 和 “裂变” 战术,完美移植到了全球市场:
- 饥饿营销: 严格的内测机制,让邀请码在二手市场炒到上千美元。
- 内容杠杆: 为了获得算力积分,用户必须生成演示视频发到社交媒体上。
- 算法回声室: 成千上万个真实用户的“惊叹帖”,骗过了 Meta 的算法,让 Meta 以为这是“有机内容”而疯狂推荐。
Meta 震惊了: 这个中国团队不需要 Meta 的销售团队,就能在 Meta 的地盘上制造病毒。扎克伯格给肖弘 VP 的位置,不是因为他懂技术,而是因为他掌握了 “如何在不烧光现金的情况下,让 10 亿用户用上 AI” 的黑魔法。
03. 不做“造物主”,做“万能接口”
作为 Monica 的重度用户。

过去这一年,技术圈总在争论“谁拥有最强的底层模型”。但这家公司证明了一件事:
不管底层模型是谁的,把能力做成普通人每天都愿意用、愿意付费的产品,才是最硬的护城河。
看看我的侧边栏:各大模型一字排开。我不需要去订阅五个不同的会员,不需要在五个网页间反复横跳。我只需要一个 Monica,就能随时调用这个星球上最强的大脑。
Meta 有 Llama,有最强的大脑,但他们缺一个能聚合所有能力、并且已经长在用户浏览器里的 “超级入口”。
如果 Meta 不买,Monica 继续做大,它就架空了底层模型厂商。收购 Monica,Meta 不仅买下了一个好用的工具,更买回了 “分发权”。
04. Llama 只有脑子,Manus 给了它“双手”
从技术维度看,Meta 的焦虑在于:Llama 只有脑子,没有手。
聊天机器人时代,用户问“怎么去东京?”,AI 给你攻略。
智能体时代,用户说“帮我订票”,AI 需要打开浏览器、登录官网、选座、支付。
Manus 的核心技术壁垒,是它为每个任务生成的云端虚拟环境。它能安全地沙盒化运行代码。
以前我需要花 2 小时去查 10 个竞品的定价并填进 Excel;现在我把任务丢给 Manus,去冲杯咖啡,回来时它已经把做好的表格发给我了。 这种 ‘从对话到交付’ 的跨越,才是 Meta 恐惧的根源。
如果未来的互联网入口是智能体,那么它在浏览网页时会自动过滤广告,只提取信息。这对靠广告生存的 Meta 是灭顶之灾。收购 Manus,本质上是一场“防御战”。 Meta 必须把这双“手”长在自己身上,重新定义“后广告时代”的商业规则。
05. 独立开发者的启示:成为“稀缺资产”,而非“外包苦力”

这对国内 AI 创业者,尤其是像我这样的独立开发者来说,其实挺提气的。
Manus 的故事告诉我们:中国团队完全可以在全球舞台上被当成 “战略资产” 买走,而不是作为廉价的“外包能力”被消耗。
我也是一人公司,我也在写代码。看着 Manus 的路径,我常在想:在独立创业黄金窗口逐渐收窄的今天,我们该怎么办?
Meta 这笔收购指明了一条新路:与其烧钱追赶巨头,不如成为他们争相购买的“稀缺资产”。
这是一种很高阶的路径设计。创业者无需与巨头在全面战争中对决,而应利用先发优势,在自己最锋利的点上——比如 Manus 的全自动执行能力——成为巨头在关键时刻唯一且急需的那块拼图。
这与个人在职场黄金期加入高速成长公司的逻辑如出一辙:
价值最大化,往往不在于你“最强”之时,而在于你“最被需要”之刻。
Manus 并没有做到 100% 的完美,初期甚至服务器不稳。但它在 Meta 最焦虑“如何让 AI 落地”的时候,它是那个 Ready 的选项。
巨头高价抢人,本质是购买 “确定性” 和 “战略时间”。
06. 结语:在“草台班子”的世界里递钥匙

很多技术人(包括我自己)常死在追求“完美”上。觉得代码不够优雅,功能不够全,不敢发布。
但现实世界往往是混乱且急迫的。
世界有时是“草台班子”——决定你市值的,不全是你的完工程度,而是你能否在巨头搭建舞台时,恰好递上他们最缺的那把钥匙。
这并非妥协,而是对时机与稀缺性的深刻理解。
与其在红海中追求绝对完美,不如在巨头战局未定的空白地带,率先做出“可用且稀缺”的产品。
“当巨头转身寻找时,你要确保自己在场,并且手里握着那把钥匙。就像肖弘在武汉光谷敲下第一行代码时,他可能也没想到,这把钥匙最终会开启硅谷的大门。但重要的是,他一直在磨那把钥匙。 ”
来源:juejin.cn/post/7589308109640515619






















