打开网易新闻 查看精彩图片

349,000行代码,1,378个模块,33天完工。Doug Trier在DEV社区扔出这组数字时,评论区炸了锅——不是质疑速度,是问同一个问题:为什么车间干了33年的人,现在才出手?

答案藏在另一组数据里。Trier做过操作工、班组长、车间主任,亲历过同一幕重复上演:企业花大价钱买的ERP、MES系统,一线工人宁愿用纸笔也不碰。「软件是买给老板的,不是买给干活的人的。」这句话他听了33年。

现在他自己造了一个。

从"被迫用"到"抢着用":一个车间的33年观察

从"被迫用"到"抢着用":一个车间的33年观察

Trier OS的定位很怪——不是SaaS,不卖订阅,要的就是完全断网、自建服务器、自己人维护。工业软件圈这两年吹"云原生"吹得凶,他偏要反着来。

这种"开倒车"的设计,来自被坑太多次的经验。某次产线宕机,云端系统连不上,全厂干等4小时。另一次数据泄露审计,发现第三方服务商的员工能随便看生产数据。「企业级软件的企业级安全,是卖给采购部的童话。」Trier写道。

他的解决方案是EDR-Safe本地模式——基于better-sqlite3(一个高性能Node.js SQLite库),彻底断网运行。没有API调用延迟,没有供应商倒闭风险,没有"您的订阅已过期"的红色弹窗。

更狠的是内置的Monaco IDE(微软开源的代码编辑器内核)。授权操作工可以直接在生产环境里写代码、沙盒测试、热重载上线。Trier的原话是:「让最懂设备的人,直接改造工具。」

这行得通吗?他举了个例子:某条产线的温度传感器校准逻辑,原本要走两周的IT工单流程。现在懂PLC的操作工自己写了个补偿算法,两小时上线,年省废料成本17万美元。数字来自客户试点,他贴在了GitHub issue里。

AI是扳手,不是建筑师

AI是扳手,不是建筑师

33天写34万行代码,AI确实帮了大忙。但Trier反复澄清一点:AI不知道要造什么。

「它能生成代码片段,但不知道反应釜的联锁逻辑怎么设计。它能优化SQL查询,但不懂为什么质检工位必须在第三道工序之后。」这些domain knowledge(领域知识)来自33年的现场观察——设备怎么坏、人员怎么偷懒、紧急情况下什么信息最关键。

他用了个车间里的比喻:AI是气动扳手,能让你拧紧螺栓快十倍,但拧哪颗、拧多紧、什么顺序,得老师傅说了算。

Trier OS的核心引擎最能说明这种分工。确定性仿真引擎(Deterministic Simulation Engine)会回放历史产线事件日志,在代码部署前数学证明不会炸线。这个需求来自2019年的一次事故:某MES系统升级导致整厂停产11小时,损失340万美元。当时Trier是事故调查组成员,报告里写着"变更管理流程缺失"——但他知道,本质是软件开发和生产现场之间隔着一堵墙。

现在这堵墙被拆成了可计算的东西。摩擦成本引擎(Friction Cost Engine)能算出每个UI改动的具体财务影响:把按钮从左上角移到右下角,会让操作工每次多花0.3秒,年产线累计损失1,200美元。这个数字会出现在代码提交前的报告里,产品经理和车间主任都能看懂。

开源不是做慈善,是算过账的

开源不是做慈善,是算过账的

Trier把系统完全开源,MIT协议,GitHub仓库里连架构图都是可编辑的矢量文件。评论区有人问他图什么,他的回答很车间风格:「企业软件许可证费用每年从行业抽走几十亿美元,这些钱本来可以雇更多现场开发人员的。」

他算过一笔账。某中型化工厂,年度软件授权费87万美元,IT外包合同另外120万。如果改用Trier OS,第一年投入:招两个全栈工程师,年薪共18万,加一台服务器5千。第二年只剩人力成本。

「不是每个厂都愿意养开发团队,」他承认,「但那些愿意的,会发现工具终于听自己使唤了。」

这种逻辑在工业软件圈算异类。主流玩家(西门子、罗克韦尔、施耐德)的商业模式建立在"锁定"上:专有协议、封闭生态、按点数收费。Trier OS用的是JavaScript/Node全栈,Cesium做3D GIS(地理信息系统),Zebra设备用WebRTC直连——全是开源或开放标准。

移动端设计也透着现场经验。WebRTC扫码支持iOS、Android和Zebra工业PDA,因为Trier见过太多"移动化"项目死在设备兼容性上。操作工的手机、班组的平板、仓库的 rugged device(加固型设备),必须同一套代码跑得通。「现场没有'用户代理字符串'这个概念,只有'这破扫不上码'的骂声。」

一个还没回答的问题

一个还没回答的问题

Trier在文章结尾留了句话:「我在找愿意试用的厂。不是试点项目那种试用,是真把一条产线交出来的那种。」

目前GitHub仓库有1,400多star,issue区最活跃的讨论是关于热重载的安全边界——操作工写的代码,什么权限能碰PLC,什么只能读数据。Trier亲自回复了37条,最后一条是昨天凌晨:「我在考虑加个'恐慌按钮',一键回滚到上一版本,物理按键,红色,带保护盖。」

33年车间生涯教会他的最后一件事:软件再漂亮,也要给人的失误留退路。