资讯专栏INFORMATION COLUMN

欢迎来到 npm 智慧星球

marek / 3404人阅读

摘要:年的模块总数是万,年就升到万以上,超过所有其他同类平台。截止目前只有个员工,他们没去设计完备的发布措施让模块合格的上线。类似的工具可以分析出未来热门的领域,可以看出不同技术应用方向的进化程度,可以看到每个方向人群的技术水平进而预测进化周期。

npm 是 2009 年开始的一个 javascript 模块管理工具,也是最流行的代码共享平台之一。2013 年 npm 的模块总数是 4 万,2014 年就升到 8 万以上,超过所有其他同类平台。


(数据来源: http://www.modulecounts.com )

截止现在 npm 的模块总数量是 31 万个,6 月份的总下载量超过 49 亿(因为有些情况下 npm 安装模块从缓存读取时不会被算入下载统计,所以总安装量远远超过这个数)。

今年 4 月 npm 官方(http://blog.npmjs.org/post/143451680695/how-many-npm-users-are-there )发了一份统计,截止 4 月全球估计有 4 百万用户使用 npm,并且这个数字每年会翻一倍。

作为一个 npm 的重度依赖者,我近 2 年的十几个项目都在使用 npm,我还把自己的多个模块发布到 npm,并且推荐朋友使用。

最近一位朋友跟我吐槽 npm 上很多模块不严谨,都没有测试过,很多坑。确实如此,不仅代码质量有问题,还有很多模块是重复的,比如在 npm.com 搜索 requestAnimationFrame 的 polyfill 可以看到一整页 20 多个功能重复的模块。

这些问题只能用“林子大了什么鸟都有”来解释,npm 现在就像一个自然生态,它靠最简单的规则让原子化的个体形成进化群体,依托群体的”快速应用->大量反馈->快速迭代发布->快速应用“模式,让整个 npm 生态快速迭代进化起来。

目前在 npm 上发布模块的人数超过了 8 万,这些人发布了超过 31 万个模块,其中有 3 万模块是被用户大量下载使用的。我们来简单筛选一下有多少合格的模块(数据来自https://unpm.nodesource.com 网站):

按照所有模块为 100% 来算
减去没 readme 文件的模块,剩下 89.0%
再减去缺少 license 的模块,剩下 58.4%
再减去没配置对应 Github 仓库地址的模块,剩下 53.7%
再减去没测试代码的模块,剩下 42.3%

所以这么多模块中只有 42.3% 即 1 万多是有各种必备配置的“合格”的模块。但剩下更多的是不“合格”的有些连 readme 都没有的模块,这些 npm 居然也允许发布。

其实,npm 能有如此大的活力也是得益于允许不完美的模块存在着,它给发布者很大的权利,只需很简单的步骤就可以发布模块,没人审核你的代码。就这么简单的规则,造就每天 440 多个模块的发布量。

截止目前 npm 只有 25 个员工,他们没去设计完备的发布措施让模块“合格”的上线。相反,他们“放任”大量不完美的模块发布出来让用户自己甄别筛选,用户之间形成的进化群体在”快速应用->大量反馈->快速迭代发布->快速应用“的模式下,模块趋于完善。

我经常看到有雷同的模块其中一个作者自认为不如另一个模块做得好,建议大家去用另一个。而那些现在依然“有坑”的模块就是提示你它刚刚开始进化,你可以参与它的进化群体,它会与你一同完善。

从更大的视角看,npm 可以用大数据分析看到整个开发者生态的状况。

比如通过 http://npmcharts.com 这张图可以看出 2016 年 sass 的用户数量超过了 less。

类似的工具可以分析出未来热门的领域,可以看出不同技术应用方向的进化程度,可以看到每个方向人群的技术水平进而预测进化周期。从几十万茫茫模块中几十亿下载量中,它能计算出最佳选择,为每种应用场景提供稳定优质的模块组合。这简直就是编程行业的智能时代,而对开发者来说,这样的时代也许并不需要个体很长期复杂的积累,编写出可靠的应用程序会是一件轻松简单的事情。

本文同步发布在我博客:http://zaishanda.com/post/%E6%AC%A2%E8%BF%8E%E6%9D%A5%E5%88%B0%20npm%20%E6%99%BA%E6%85%A7%E6%98%9F%E7%90%83

文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。

转载请注明本文地址:https://www.ucloud.cn/yun/87793.html

相关文章

  • 【人工智能】一张图看懂华为云EI的年度心路历程

    摘要:人工智能一张图看懂华为云的年度心路历程我们总是听到人工智能这个词就会把它与科幻电影相结合例如星球大战终结者等等。看完下面的长图或许你可以从中探得华为云整年的心路历程。 【人工智能】一张图看懂华为云EI的年度心路历程 我们总是听到人工智能这个词,就会把它与科幻电影相结合,例如星球大战、终结者等等。科幻大片大都是虚构的,所以人们总觉得 人工智能缺乏真实感,但是如今,它已经切切实实地从实验室...

    seanHai 评论0 收藏0
  • 你认为的智慧社区是怎样的?

    摘要:作为业主的惘魍早上出门,坐着电梯下楼,单元楼下电瓶车电动车有序的在智能充电棚充电,看着社区里面的花草树木整洁卫生的环境,心情也舒畅起来。智慧社区,未来可期,至简可期     作为业主的惘魍早上出门 ,坐着电梯下楼,单元楼下电瓶车、电动车有序的在智能充电棚充电,看着社区里面的花草树木、整洁卫生...

    NicolasHe 评论0 收藏0
  • En-Tan-Mo共识之夜重磅启幕,大咖云集聚焦区块链新业态

    摘要:北京时间月日,公链项目与星球日报及区块律动联合主办的共识之夜将拉开帷幕。据悉,共识之夜将于星球日报与区块律动主办的生态大会当晚正式开启。 showImg(https://segmentfault.com/img/bVbuNyu?w=1206&h=971);北京时间7月10日,公链项目En-Tan-Mo与Odaily星球日报及区块律动联合主办的Staking Con After Part...

    UCloud 评论0 收藏0
  • En-Tan-Mo共识之夜重磅启幕,大咖云集聚焦区块链新业态

    摘要:北京时间月日,公链项目与星球日报及区块律动联合主办的共识之夜将拉开帷幕。据悉,共识之夜将于星球日报与区块律动主办的生态大会当晚正式开启。 showImg(https://segmentfault.com/img/bVbuNyu?w=1206&h=971);北京时间7月10日,公链项目En-Tan-Mo与Odaily星球日报及区块律动联合主办的Staking Con After Part...

    lentoo 评论0 收藏0
  • 程序猿:论学习方式的重要性

    摘要:大家都知道,做我们开发这行的,最核心的竞争力就是学习能力。学习只要找对了方法,也没那么累。核心就是一起学习,讨论后端技术。这种方式会一直继续下去。目前已经有课程了,后续还会更新下去。 大家都知道,做我们开发这行的,最核心的竞争力就是学习能力。技术一直在变化,框架一直在更新,学还是不学。 不学,你会落伍,学,太累了,根本学不过来。学习只要找对了方法,也没那么累。 最好的学习方式那就是兴趣...

    OnlyMyRailgun 评论0 收藏0

发表评论

0条评论

marek

|高级讲师

TA的文章

阅读更多
最新活动
阅读需要支付1元查看
<