怎樣維護成功的開源專案

2021-09-09 00:17:10 字數 2375 閱讀 7812

開源可不僅僅是將**扔到網上就萬事大吉了,將開源專案變成能讓自己引以為豪的東西才算成功。那麼,你需要注意哪些方面呢?

寫好指導性文字

每乙個開源專案有三樣東西是少不了的:專案目標和方法的簡要說明、如何參與和授權許可。最好把它們預先放在乙個readme檔案裡。

我還喜歡加入乙個名為「組織和理念」的部分,概括專案如何構成,各個東西都在哪兒,**是怎樣寫的,需要哪些型別的測試,效能與簡潔性怎麼平衡。(詳見案例unstdlib.py)

接下來是「貢獻」部分,要說清楚開發者怎樣開始參與專案,以及將**成功合併進專案的所有步驟。urllib3的貢獻部分,已經被其他好幾個專案採用了。

檢視還沒有解決的問題,或者新開乙個問題來討論某個功能設想或bug。

把urllib3庫新增到github上開始進行更改。

編寫測試來顯示這個bug是固定的或者它的功能是否正如預料的那樣執行。

傳送乙個pull請求,干擾保持器,直到它被合併到一起並發布。

最後,每乙個開源專案需要有乙個授權許可,如果沒有許可,那就意味著版權屬於開發者,其他人需要明確的許可才能使用。

態度

對待使用者和貢獻者有好的態度是至關重要的,偶爾會有類庫使用者誤闖到你的問題***裡,並且很愚蠢的在文件編制裡寫了命令。那該怎麼辦?

1.你可能會斥責使用者,因為他們的魯莽行為浪費了你很多時間。

2.你也可以耐心的向使用者解釋他們所誤解的,一旦他們進一步理解問題,那麼邀請他們傳送乙個pull請求為其他使用者改善檔案編制。

有些團隊可能因為某些原因選擇第一種態度,也許是因為他們覺得維護人員做的是一件吃力不討好的工作,還要承擔丟失貢獻者的責任。不過先來檢查一下這兩種態度所帶來的效果。

當你責怪使用者的時候,毫無疑問會丟失使用者,還意味著丟失了他成為你的貢獻者的可能性,說不定這種影響會傳播到其他人那裡,一傳十十傳百,別人可能真的認為你的檔案編制裡有問題。這無異於搬石頭砸自己的腳。

但只要你有足夠的耐性,禮貌待人,鼓勵他們為專案出力,他們就會很有鬥志。說不定他們就能在專案上做出重大影響,徹底改變現狀。

在工作中保持良好的態度可能是比較難的一部分,因為每個維護人員的情況是不一樣的,但是,禮貌、積極和進步是至關重要的。不僅僅是對於你和專案,還有整個團隊。

營銷

也許你能寫出最有用最完美的**並實現**執行,但是你對技術社群的貢獻會因為你允許人們重複使用你的**而無限放大。

urllib3——帶有執行緒安全連線池的python http類庫,支援檔案公布,智慧型友好等等。

python,http類庫,執行緒安全,連線池,檔案公布,這些都是當人們遇到要使用python的標準http類庫(urllib、urllib2、httplib)的時候所需要的。

一旦準備好了readme,就要確保能夠生成一些文件。發布在read the docs將是乙個很好的選擇。包括一些**樣本和便於採納的詳細選單。

考慮合作關係,為框架編寫乙個可以使用你自己工具的外掛程式,並觀察這些工具能否將框架連線到readme。兩年前,我和kenneth reitz在不同的場合進行交談之後,我們決定合作。雖然urllib3已經是非常流行的requests類庫的核心,但遠遠落後於當時的httplib2。當我和kenneth reitz合作之後,我們兩個團隊的成果遠超出了我們的想象。此時,在我們的合作之間建立明確的規則和界線是非常重要的,這個規則後來也幫我們在合作當中建立了深厚的友誼和相互尊重打下了基礎。

技術社群

想要乙個人做完所有的事是很難的,特別是很多人都期待著你能拿出好的作品。

抓住任何乙個機會尋找pull請求。集思廣益的力量是無窮大的,所以無論何時何地我都會向技術社群的成員尋求意見,他們常常說的rfc我從來沒聽過,甚至有的時候他們會主動研究前端主題。

大膽尋求幫助,我本打算花數小時致力於開源工作,但有時候日程安排忽略了或是我忘記了關於pull需求。我鼓勵人們參與並在我需要更多的人參與的時候提醒我。在更複雜的分支,它有助於要求志願者代替維護人員來處理這個問題,直到它準備好合併。

盡可能的自動化,去年,我們為urllib3設定了100%的測試覆蓋規則,這使得我們的專案維護更加簡單。任何功能都必須經過測試,否則它可以在沒有通知的情況下被刪除。這意味著每乙個pull請求必須在合併之前完全測試。

維護貢獻者列表,提醒並邀請貢獻者把他們自己新增到列表裡,即使他們做的事情微不足道。幾個位元組的儲存庫不花費你任何東西,這和他們因得到認可而產生的自豪感是無法比擬的。

找到樂趣

andrey petrov從事與http和urllib3相關的的工作已經數年了,但仍然堅持維護開源專案,因為他喜歡技術社群,並在開源專案中感覺到自豪。他最後強調,工作中盡最大的努力,並為自己的工作而驕傲,有些人可能會欣賞你,有些人卻不會。最後總會有人感激你為開源社群所做的積極有效的貢獻。

原文:medium

中文原文:怎樣維護成功的開源專案

開源維護機制 如何為您的開源專案找到新的維護者

開源維護機制 關於開放源 軟體 oss 您可以說一件事,那就是它默默無聞地執行著我們的世界。網際網路的大部分都建立在開源軟體之上,如今,數百萬開發人員使用250多種程式語言來構建和維護成千上萬個開源軟體包。如果這還不夠,那麼企業公司將在2020年繼續增加對開源的投資。開源軟體滲透到我們的日常生活中越...

怎樣提高LIMS專案的成功率

隨著全球經濟一體化程序的加快,國家在大力提倡 資助各行業的資訊化程序,可以說目前國內lims專案市場處於一種天時 地利 人和的快速發展時期,可在實施lims時,我們怎麼能夠提高成功率呢?是否成功,與目標有關,達到了目標就是成功,因此,確立適當的目標很重要。目標不能定得太大 太高,否則,目標無法實現就...

2023年十大最成功開源專案

舊的一年剛剛過去,是時候對這段時光做出總結 並談談我們對未來的展望了。在本文中,我將帶大家共同回顧2012年中最為成功的十大開源專案。apache hadoop 從很多角度來看,2012年都堪稱大資料之年。hadoop的多個發行版在這一年同期上市,對行業領導者的地位發起輪番衝擊。hortonwork...