決定將代碼開源之前要確定的四個問題

jopen 8年前發布 | 4K 次閱讀

決定將代碼開源之前要確定的四個問題

在任何一家公司的開源部門中,最常見的任務之一是評估內部軟件,確定它是否可以作為回饋社區的開源項目。我們在 PayPal 進行相關評估時發現回答下面四個問題對我們的審查潛在的開源軟件的過程非常有用:

  • 誰關心這個項目?

  • 我們還在使用這個項目嗎?

  • 我們還在維護這個項目嗎?

  • 這個項目能夠在一顆公共代碼樹上開發嗎?

誰關心這個項目?

在公司之外,誰會對這個軟件感興趣?開源軟件失去社區的支持將一事無成。如果外面沒有人對這個項目感興趣,圍繞你的成果構成一個有意義的社區的幾率就會變得渺茫。一旦維護這個項目的員工都離開了,就一定要有人接管這個項目,否則這個項目最終會被拋棄。

有很多可以獲得外部反饋的方法。和其他公司的同事說、寫博客、參加社交聚會和發表會議演講都是不錯的方法。有些員工可能已經做好了這件事,有些需要 告訴他們可以說些什么,并且要怎樣做,而有些則不希望談論他們的工作。其實很多人只需要有人告訴說他們是允許與外面的的人談論他們的工作的。同時我們還發 現給需要的人提供演講培訓以及幫助開發者管理博客內容是非常有效的。

我們還在使用這個項目嗎?

如果我們不再使用該項目,那么它總是能夠通過開源的審查。如果我們不再繼續開發這個軟件,我們不太可能完成維護項目的任務或者圍繞其建立一個社區。 而如果一個它依賴的組件(或者軟件本身)發現了一個漏洞,那么一定會有一個人要花費時間處理這個問題。除此之外,將 bug 分類、指導新的貢獻者、合并代碼這些都需要時間,而一個公司是不太可能投入大量的時間維護一個它不再使用的軟件的。

然而,更大的問題在于,將失敗的項目開源是很差的企業行為。如果我們因為不符合我們的需求而拋棄一個項目,那么其他人也不可能發現它是真正有用的項 目,開源并不是我們拋棄無用軟件的垃圾桶。如果一家公司只是開源了一些它不再需要的一些軟件,那么還不如它根本沒有開源過軟件。

我們還在維護這個項目嗎?

正如上面提到的,維護一個開源項目需要時間。而其消耗的時間取決于項目的規模。一個編碼風格檢查程序耗費的時間不可能和一個強大的應用程序框架相 比,但是他們都需要一定的時間。另一點不能忽視的是,開發人員和他們的管理者要有一定程度的共識。如果管理者不愿意開發者在維護項目上花費時間的話,我們 將會再次走將軟件拋棄的路。

當你在一個比較靈活的環境中工作時,你能用很多種方法處理這些問題。如果你選擇的工作是基于開發者能力的,那么你應該適當的減少參與開發工作的每個 開發者的能力。如果你選擇的工作是將任務分發給多個人做的,那么你需要明確每個人要處理哪個部分。否則這些項目很容易夭折。如果這一切對于管理者而言是不 合理或者不可行的,那么這些項目需要額外的審查

這個項目能夠在一顆公共代碼樹上開發嗎?

代碼中存不存在不能讓我們將整個代碼樹公開的部分?如果這些代碼由于依賴內部系統而不能完全公開,那么這些依賴關系將需要被分離、抽象或模塊化。如 果這樣做了之后軟件對外界的價值不大,那么你需要考慮是否添加部分內部依賴來讓整個項目變得更加有價值。如果不能添加內部依賴的話,那就沒有理由再繼續下 去了。

更深入的講,你不能在內部開發你的軟件,將你項目的里程碑版本配合合適的開源許可證發布到 GitHub 中,從而合理的參與到開源中。外部的開發人員必須能夠平等地參與到設計與開發相關的討論中,這樣才不至于讓你的社區走向沒落。從另外一個角度來看,這也意味著你需要開放一些內部的資料給社區,并允許他們在公開的討論相關的技術,而不是一味地由內部貢獻這些資料。

結語

這四個問題并不能代表所有情況,一家公司必須從項目開源后對公司和開源社區的意義等方面考慮,而這四個問題可以作為討論的起點,相信明確了這幾個問題后,你會很快得到你的結論的。

原文鏈接 : https://opensource.com/business/16/1/4-questions-ask-open-sourcing-project

本文轉載自: http://www.linuxstory.org/4-questions-before-open-source/ 

來自: http://www.oschina.net//news/70102/4-questions-ask-open-sourcing-project

 本文由用戶 jopen 自行上傳分享,僅供網友學習交流。所有權歸原作者,若您的權利被侵害,請聯系管理員。
 轉載本站原創文章,請注明出處,并保留原始鏈接、圖片水印。
 本站是一個以用戶分享為主的開源技術平臺,歡迎各類分享!