今天在命令行grep一个包的名字,后来突发奇想看看现在整个仓库都有哪些软件包。结果发现,软件包的名单里,python的包翻都翻不完。既然有pip了,为什么还要污染apt/yum/pacman的包呢
? 另外,说包拆小了节约空间。可是,复杂的包依赖逼着我用virtualenv,最后算下来同样功能的包复制出来好多版本。
这在深层次上,是软件复杂度爆炸的恶果。最早写程序的时候,感觉要么是 foxbase, 要么Turbo C语言,要么是Basic。后来,各种工具互相打Call的就多了起来,各种开源库的依赖变成了一张网。这种依赖知识爆炸的速度,再发展几十年,结局就是第一代攻城狮都进盒子躺着了,再没人愿意动底层代码,只能交给AI管理器管理。最后人类已经无法知晓底层的代码的调用原理和关系,只有AI知道。每个人只能掌握一小块,但拼接起来需要沟通成本。当沟通成本过高时,干脆就没人去做了。