地球日当天,一位开发者在技术社区扔出一组对比数据:用主流框架搭个简单店铺,依赖包245MB;手写原生代码,12KB。他没做任何新功能,只是把"少写代码"本身变成了环保项目。

为什么这件事值得科技圈认真看?

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

我们习惯了用技术解决技术问题——碳排放高?上区块链追踪。数据中心耗电?建AI优化调度。但这位开发者的做法完全相反:回到最原始的代码层,直接减少需要运算的东西。

这不是反技术,是对技术堆叠的冷思考。

从"能跑就行"到"能省则省"

作者在技术社区DEV的地球日挑战中提交了这份"非典型"作品。他明确声明:不为奖金,不为曝光,只要一个完成徽章。核心目标只有一个——建立一套"精益网页架构标准"(Lean Web Architecture Standard),用在自己未来的所有项目里。

他的出发点很直接:每篇教程都在推更重的框架、更多的接口调用、更臃肿的库。但数据中心烧的是电,电往往来自化石燃料。如果每个开发者都往项目里塞500MB的node_modules(Node.js的依赖包目录),累积效应就是实实在在的碳排放。

「我不需要为了地球日专门做个新应用让它在服务器上空转耗电,」他在提交中写道,「我的项目就是对网页臃肿的一次实战拆解。」

这种思路跳出了"用新产品解决旧问题"的惯性。当整个行业都在做加法,他做减法——而且减的是最底层的计算负载。

245MB vs 12KB:数字背后的能耗逻辑

作者给出了可直接复现的终端对比。左边是标准React脚手架,右边是原生PHP+JS手写方案:

React方案:npx create-react-app bloated-store,体积245MB。

原生方案:mkdir建目录,touch三个文件(index.php、style.css、app.js),体积12KB。

差距超过20000倍。

关键不在于存储空间,而在于运行时的CPU消耗。服务器处理12KB的静态或轻渲染文件,与编译、注水(hydrate,指服务端渲染后客户端再次激活JavaScript的过程)一个巨型JavaScript包,所需的计算周期完全不在一个量级。Less CPU = less power = lower emissions(更少CPU占用=更少电力=更低排放)。

作者算的是一笔很实在的账:全球数十亿网页请求,如果每个都能从MB级降到KB级,省下的电力是指数级的。

这不是理论推演。他给出的.htaccess(Apache服务器的分布式配置文件)片段显示,实际部署中还可以通过缓存策略进一步降耗——图片缓存一年、CSS和JS缓存一个月,避免服务器重复劳动。他称之为「 arguably the best 'Green Tech'( arguably 最佳"绿色技术")」。

路由和状态管理:为什么非要交给浏览器?

现代前端开发的一个默认假设是:交互逻辑必须放在客户端。路由用React Router,状态用Redux或Zustand,UI组件用Chakra或Mantine。每个选择都合理,但叠加起来就是一个必须下载、解析、执行的庞然大物。

作者的替代方案是:把这些工作推给服务器。

PHP在服务端处理路由,.htaccess做URL重写和缓存控制,JavaScript只保留最小必要的交互。对于简单店铺这类场景,用户感知不到差异,但服务器负载和能源消耗大幅下降。

这种架构选择背后是一个被忽视的事实:不是所有网页都需要是"应用"。我们过度工程化了很多本质上只是展示信息、接收输入的场景。

作者没有否定复杂应用的价值。他强调这是"自己的未来项目标准"——意味着他会根据场景判断,而不是一刀切。

行业惯性:为什么"简单"反而难推行?

这个方案的技术门槛并不高。任何有基础PHP/JS经验的开发者都能手写。但行业趋势完全在相反方向。

招聘市场偏好React/Vue/Angular经验。技术社区的热点是Next.js 14、Astro、Bun。教程作者需要展示"现代技术栈"才能吸引点击。团队决策时,"用大家熟悉的"比"用更省的"更容易通过。

作者的选择因此带有一点"逆行者"色彩。他不是在批评任何具体技术,而是指出一个系统性盲区:我们把"开发效率"和"运行效率"混为一谈,默认前者优先。但当全球互联网基础设施的能耗已经占到总电力的2-4%(国际能源署2023年数据),这个默认设置可能需要重新校准。

他的做法提供了一种可操作的修正路径:不是等待下一代绿色数据中心,而是现在就让手上的代码瘦身上线。

从个人标准到行业追问

作者把这套方法定位为"个人标准",这个限定很重要。他没有呼吁所有人放弃框架,而是展示了一种可能性:在特定场景下,原生方案可以兼顾体验、开发速度和环保目标。

这种"场景化理性"比极端立场更有参考价值。对于内容型站点、营销页面、简单后台,245MB的依赖包确实可能是过度设计。但对于复杂交互应用,现代框架的价值依然成立。

真正的启示在于:环保责任可以嵌入技术决策的最底层,而不是作为事后补偿。不需要专门做一个"碳中和应用"来抵消 guilt(愧疚感),而是让每个日常项目的架构选择都计入能耗账簿。

作者用12KB的代码体积,把这个抽象理念变成了可测量的实践。

技术社区的反应分化明显。一部分开发者认同这种"回归本质"的思路,认为行业确实需要反思框架滥用。另一部分则认为,现代开发效率的提升可以覆盖运行时的能耗成本,而且可再生能源正在替代化石燃料,问题会自然解决。

两种观点都有数据支撑,也都有自己的盲区。但作者的贡献在于:他把一个通常停留在辩论层面的议题,变成了可以复制、测量、改进的具体方法。

数据收束:12KB的参照系

245MB到12KB,20480倍的体积差距,最终指向一个被低估的杠杆点:代码层面的优化,可能是个人开发者对全球碳排放影响最直接的技术行动。

不需要等待政策、投资或基础设施升级。现在打开终端,mkdir一个目录,三个文件,就能开始。

作者没有给出能耗的精确换算——这取决于具体的服务器配置、能源结构和访问频次。但他建立了一个清晰的比较框架:在同等功能下,选择计算负载更轻的架构。这个决策逻辑可以延伸到任何技术选型场景。

当科技行业热衷于用更复杂的方案解决复杂问题时,这个地球日项目提醒我们:有时候,最有效的创新是识别哪些复杂性其实可以砍掉。

12KB的店铺页面不会改变世界。但如果有10万个开发者各自砍掉200MB的无用依赖,累积效应就值得关注了。