3月14日,業界便有消息稱GitHub計劃收購廣受歡迎的開源JavaScript包管理服務npm背后母公司,如今看來,該筆收購已經正式完成。
npm全拼為NodePackageManager,是JavaScript軟件包管理器。自打十年前首次發布以來便深受好評,目前已經是全世界最大的開發者生態系統了。截至目前,npm已經為超過1200萬名開發者提供了超過130萬個軟件包,這些軟件包每個月一共要被下載750億次。
Github的CEONatFriedman在文章中提到收購完成后的工作重點是:
建立可靠的注冊表基礎架構,JavaScript生態系統規模龐大且發展迅速。它需要堅如磐石的注冊表。我們將進行必要的投資,以確保npm快速,可靠和可擴展。
改善核心體驗,GitHub將努力改善開發人員和維護人員的日常體驗,并支持npmv7CLI上已經開始的出色工作,它將繼續保持免費和開源。我們感到興奮的一些更大的功能是工作區以及對發布和多因素身份驗證體驗的改進。
積極與社區互動,GitHub將積極與JavaScript社區互動,以獲取用戶的想法并幫助我們定義npm的未來。
此外,還將把Github和npm集成起來,從而提高代碼的安全性。
至于npm的未來去向,博客中稱將集成GitHub和npm來提高開源軟件供應鏈的安全性,并使開發者能夠跟蹤從GitHub拉取請求到修復它的npm軟件包版本的更改。開源安全是一個重要的全球性問題,隨著GitHubSecurityLab的最新發布和GitHub的內置安全公告,GitHub已做好充分準備,可以發揮作用。
此外,npm將永遠保持免費,購買了npmPro、Teams、Enterprise的客戶仍然將繼續得到技術支持,今年晚些時候還會將npm付費客戶的私有npm軟件包免費轉移到GitHubPackages上。
npm創始人回應:免費并將持續改進npmCLI
對于此,npm方面發布了一篇文章簡單回顧了這家公司的歷史。npm的創始人表示:
npm免費的部分仍將繼續下去,npm將繼續發展,并且有充分的的理由相信會變得更好,我仍然將負責npm的工作,但會擁有更多的資源和更少的壓力。
2009年,現任npm的創始人辭去了工作,因為他覺得這份工作束縛了自己的創造力,然后他寫了一個包管理器,最初只是很少的人在用,后來逐漸成長起來。
2013年,npm的資金運轉陷入困境,雖然籌到了看起來不菲的資金,但不可避免花的很快。
如今,npm正式被收購,在這個過程中,其公司一直在堅持的使命是:減少JavaScript軟件開發中的摩擦。
創辦當初,npm創始人列下了一些目標,在之后的日子里也未曾有過太大變化:
保持npm注冊表永遠運行(不僅在公司生命周期內)。
成為一家開發者都喜歡的公司,并盡力完成迄今為止的職業生涯。
獲得足夠大的退出機會,讓我可以辭職,然后再來看第二遍。
與獲得npm的人公平地分享獎勵。
過往,npm也在思考最終可能的出路是什么,不得不說,科技公司收購是一個可行的方案,GitHub是一種很好的選擇。收購開始時,沒有完整的設想,隨著整個團隊對GitHub技術研究和戰略計劃的了解,其認為這對JavaScript社區來說是一個不錯的選擇,明顯優于npm自行運轉。
沒有多少公司可以聲稱擁有GitHub那樣對開放源代碼的狂熱承諾。在GitHub團隊的往績記錄中,確實有一些特別的事情讓我很高興能加入其中。
未來,npm注冊表免費進行開源開發,并繼續改進npmCLI。在GitHub上,npm將獲得全球最大的公司之一的支持,其背后是世界上最大的開發人員社區。在npm體驗方面存在一些很棒的改進機會,可以改善JS開發人員的生活。
這對開發者而言意味著什么?
對于本次收購,前端之巔專門采訪了阿里文娛前端技術專家狼叔,他對此也發表了自己的看法:
GitHub很早就在個人主頁和組織首頁增加了Packages功能,意圖很明顯,就是整合開發上下游生態鏈,我注意到了這個細節,但沒想到GitHub會收購npm,收到這個消息既意外也不意外,畢竟微軟財大氣粗。
官方原話是“Discoverandpublishpublicandprivatepackagesinoneplace”,這里包含了3層意思:1.發現和發布,在GitHub有源碼也有包,讓開發者更方便;2.公開和私有的模塊,私有的模塊應用場景也是很多的,比如很多公司內部自建npm源的其中一個原因是就是為了私有化,保證業務代碼的安全;3.都放在一處管理,做好代碼托管,工程管理,又將手伸向了更為基礎的包管理領域,可見GitHub大大的野心。這其實對程序員來說是好事,你要做的只是寫好代碼,其他工作GitHub都會幫你做起來。GitHub今天宣布收購npm,收購之后的npm仍會保持免費、公開的,大家可以放心使用。GitHub也承諾會改進npm核心體驗。今年底,npm付費用戶將可以選擇遷移到GitHubPackages(GitHub也將繼續支持npm付費用戶)。
在今天,npm有超過123萬+的模塊,內容涵蓋了js能夠涉及的方方面面,是今天Node.js和大前端繁榮的真正底座。npm完全用JavaScript寫成,最初由艾薩克·施呂特(IsaacZ.Schlueter)開發。我們看一下Isaac的工作經歷,RyanDahl在Joyent公司于2009年發布Node.js第一個版本,2010年Isaac進入Joyent,Isaac表示自己意識到“模塊管理很糟糕”的問題,并看到了PHP的PEAR與Perl的CPAN等軟件的缺點,于是編寫了npm。直到2014年1月,開始以公司的方式運作npm。npm伴隨Node.js崛起,在大前端如火如荼的發展中,伴隨大前端的發展相互成就,這其實也是技術創業的很好的方式。
npm,Inc畢竟是垂類的的小公司,被收購也許是最好的結局,再次感謝Isaac的偉大工作。其實,在Node.js世界里,有很多這樣的默默付出的大佬。比如一直被忽視的Cnpm作者蘇千。npm固然優勢明顯,沒有Cnpm搭建私有源,Node.js還是很難在企業里大量應用的,此一極大功勞也。正是有了Isaac和蘇千這些保有初心的人護航Node.js,才有了今天Node.js的美好前景,我堅信Node.js和npm未來的發展會越來越好的。
閱文集團技術專家彭星同樣表達了自己的觀點:
這對npm來說是好事,能和GitHub深度整合。從我個人的角度來看,還是希望每個組織能夠保持自己的獨立性。但好像不太現實,開源組織很難保持絕對的純粹。對于開源界來說,GitHub畢竟是微軟收購了的,微軟畢竟是商業公司,很難說好壞。不過微軟最近幾年在社區的口碑不錯,影響力也很大,只能說希望微軟能夠繼續保持目前對于開源和社區的態度。商業公司本質是逐利的,只是這個利怎么逐是很講究的,像個別公司那樣追求短期利益,飲鴆止渴是一種方式,像Google、微軟等看長遠的規劃,從人才培養和吸引以及建立生態來獲利,又是另一種。只是后者更高明,也更讓人敬佩,不會讓人產生反感。