这并不是一个技术类的文章,是属于一个essay。

近来有一个新闻,很是牵动人心。

大意就是说,因为种种原因,core-js的作者没办法继续对core-js进行maintenance了。而受益最大的babel也没法接他的班,因为人手不足
中间的过程很漫长,他自己过去一直用空闲时间在维护这个工程,而后辞职专职维护而募捐,但是因为太底层知名度低,导致几乎没弄到钱。
前阵子又时运不佳开摩托压了个人,现在要吃牢饭1年半。

看到这个消息有几天了,但是我一直不知道该说些什么。

在转型到yarn之前(可能yarn也有,但是我没注意),每次我用babel进行build的时候,我都会看到core-js作者在npm的message上面的推送, 大意是说要找一份工作求推荐。

As advertising: the author is looking for a good job -)

我当时想的是,哇靠,大神诶,大神在这上面找工作,这肯定是一般的饭碗满足不了他。 当时还特意的去观摩了一下core-js到底是个什么东西。在node_modules里面发现core-js是把js的标准库都实现了一遍,用pure js的代码来实现的。 在qiita上面查询,发现@babel/polyfill使用的就是这个东西,在文档上面看就是直接使用了它,简单的封装了一下而已。

@babel/polyfill IS just the import of stable core-js features and regenerator-runtime for generators and async functions

基本上babel是单纯的更改语法来适应ie,core-js是提供新的标准库。

比如Array里面有一个函数是 Array.prototype.keys()

https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/keys

对应的core-js的就是这个

https://github.com/zloirock/core-js/blob/master/packages/core-js/features/array/keys.js https://github.com/zloirock/core-js/blob/master/packages/core-js/es/array/keys.js

开源运动至今,有仍旧看起来没什么钱的GNU的几个元老级人物,也有着商业化模型成功的nginx,MongoDB, Docker。

不得不承认,只有商业化了,才会有可持续发展性。 正是因为商业化的成功,才会让开源有这么光鲜的地位。

如果一直都是那几个hacker,geeker,我想是不会有那么多的人争先恐后的继续帮助开源,让开源这么蓬勃发展的。

core-js作者的这个宣言让人颇感意外,在这样一个时代,这样一个重要的库。

当然在这里面也有许多不和谐的声音,corejs的作者在npm的post install message里面追加内容让一些人不满,去他的project里面发issue。说什么不应该在里面乱加自己的料云云。作者回复道:这使我意识到我这么做是有效果的,我还会继续这么做。

我也觉得是有效果的。现在一个js包动辄依存数百个包,且不说安全成了问题,事实上就连记述license都成了煎熬。更别提里面还有多少个像corejs一样重要,却又无人问津的包了。

不过corejs的作者不再维护–或者至少一年半不维护已成定数。

读到这里不知道大家有没有发现什么违和感? 对的,corejs的作者到底是谁?

笑,就是这位俄国老哥。

https://github.com/zloirock

有闲钱的除了给主播,也可以给这位老哥的打打赏,笑笑。


creativ common license