上周,F(xiàn)acebook發(fā)布了Create React App,這個新項目旨在幫助React開發(fā)者快速上手其新項目。Create React App這個新項目只是一個開始,它也成為了Facebook在GitHub上的孵化器的首個項目。
Facebook孵化器是Facebook用于發(fā)布開源項目的新流程,用于確保這些開源項目能夠長久平穩(wěn)地運行。我們可以將其看作是Facebook新的開源項目的Beta階段或是試驗場。
Facebook開源負責人James Pearce說,F(xiàn)acebook孵化器的想法在于更好地管理這些項目的生命周期。Facebook目前擁有將近400個開源項目,在GitHub上有數(shù)以萬計的粉絲。他說到:“我們希望通過這一計劃能夠以最具效率的方式管理這些項目”。為了實現(xiàn)這一目標,F(xiàn)acebook決定將大多數(shù)新項目加到這個計劃當中,看看社區(qū)的反響以及使用率如何。
Pearce強調(diào)說,孵化器中的所有項目(就像Facebook頂級倉庫中的那些)也在公司內(nèi)部使用,并且有團隊在積極地維護。不要認為孵化器中的這些項目就是質(zhì)量比較差的項目。
要想從孵化器中順利孵化出來,項目需要證明自己在社區(qū)中的影響力,不過Pearce說到,公司也會考察其他方面。比如說項目有沒有人在用?項目文檔質(zhì)量好不好?將項目集成到其他工具中的難度如何?Facebook與社區(qū)的參與度如何?“如果業(yè)界對項目產(chǎn)生了共鳴,那就是項目將要孵化出來的一個很好的信號”,Pearce補充到。
Pearce不止一次強調(diào)說文檔是非常重要的一個方面,而文檔恰恰也是很多開源項目經(jīng)常忽略的一點。他說,F(xiàn)acebook有一個專門的技術(shù)作者團隊在從事著這件事(工程師也會一同參與),公司也在考察新的StackOverflow文檔服務(wù),用于托管一些文檔項目。
雖然孵化器旨在幫助項目沿著正確的軌道前進,但Pearce也強調(diào)說孵化器并不僅僅在于優(yōu)化項目的啟動與增長階段,而是從長遠來看要管理項目的完整生命周期。
并不是每個項目最終都會取得成功,F(xiàn)acebook有時也會終止自己曾經(jīng)開源的項目。雖然我們現(xiàn)在有了孵化器,但這種事情依然還會發(fā)生,不過團隊顯然希望項目在進入到主倉庫之前能夠糾正存在的種種問題。
Pearce說Create React App是孵化器項目的一個很好的榜樣,因為Facebook并不確定社區(qū)會怎樣看待這個項目,不過他也提到依然會有一些項目會跳過孵化器這一過程。
Pearce說到,“雖然我們發(fā)布了React Native,不過我們可能會跳過孵化器這一階段”。對于Facebook捐獻給一些大型組織的項目來說亦如此,比如說Open Compute項目。孵化器本身是沒有孵化階段的,我們希望Facebook這個用于發(fā)布開源軟件的新系統(tǒng)能夠在可預(yù)期的未來大展拳腳。