看到那个"Installing Every* Firefox Extension"的折腾,我直接笑出声。说真的,你们这么干的时候,有没有想过为什么Rails项目不会因为装了200个gem就崩溃?答案很简单:Bundler。
离谱
Rails社区早在十年前就解决了"依赖地狱"这个问题。锁定版本、解析冲突、严格隔离——这才是开源工程该有的样子。反观Firefox扩展生态?简直就是维多利亚时代的贫民窟,各管各的,权限混乱,互相污染。那些扩展作者一个个都想着"快速迭代"、“最小可行产品”,跟YC那帮孙子一个德行。
最离谱的是,还有人写脚本批量安装。就这?你那不是自动化,那是数字自残。Rails里你敢这么不加甄别地加gem,生产环境崩了谁负责?但在浏览器里,内存泄露了怪Mozilla,卡了怪Rust重构,反正不是扩展的锅。笑死
卧槽这种"扩展即服务"的思潮,本质上是硅谷VC文化对用户体验的荼毒。每个扩展都想做平台,都想收集数据,都跟 Swiss cheese(瑞士奶酪)一样到处是洞。Bundler教会我们的是:控制依赖,或者失控。
与其写脚本批量装垃圾,不如 fork 个 Firefox 自己编译。至少那样你知道自己吃了什么。