為什麼要貢獻開源

voscommunity發表於2018-12-28

Video++內部關於是否開源VideoOS討論了很多次,為什麼要開源,開源能為公司和行業帶來哪些價值?

如今已經幾乎不可能找到沒有從開源軟體受益的公司或組織了。有些公司如Intel、IBM、三星等,均是設立了專門的開源專案部門去專門貢獻開源社群的,而還有的公司之所以成為了開源的使用者,完全是因為他們的系統管理員或開發者在工作中出乎意料的引進的。

很多公司都在商業上依賴開源軟體,而且還獲得了很大的成功,所以他們也懂得和明白為開源軟體專案做貢獻。我們來看一組資料,從2005年,截止到現在,單單Linux核心一個專案,就有來自1300個不同的企業的13500位開發者參與了貢獻。

偉大的Google就是受益於開源軟體成長起來的巨頭的典型。它早期的服務都是跑在linux系統之上。它開源的瀏覽器核心專案chromium也是fork了apple開源的webkit;2007年它開源的Android系統也是基於linux之上;2015年它開源了kubernetes專案是基於開源的docker專案;2015同年它開源的TensorFlow也成為AI領域的明星。這4個專案讓Google分別在web、移動網際網路、雲端計算、AI 4個領域成為了事實上的標準。

“對於很多大型專案來說,紅帽知道我們大多數的貢獻者均是來自實際使用開源專案的其它公司的人們,如Ceph、Gluster等。紅帽有自己的客戶,而且這些客戶也經常會貢獻專案,因為他們在使用這些專案。紅帽認為無論是個人蔘與還是公司參與,都是值得訴說的成功。” Stormy Peters – Red Hat開源社群領導者高階經理

為什麼要貢獻開源
或許有一部分的企業的貢獻僅僅是為了回饋社群,但是仍然有很大一部分企業有更為充足的理由去貢獻開源專案的,因為內部使用了相應的專案貢獻會獲益更多。這裡列出幾個貢獻上游的益處:

  • 吸引人才: 當貴司依賴開源軟體,那麼尋找人才最好的地方莫過於熟悉專案內部本身,而且還是專案社群成員。通過在社群的公開的工作,貴司可以吸引到一些既是做自己喜歡的工作,還能獲得一定報酬的人。尤其重要的一點,貴司現有的專案參與的員工,每天都會和他們在一起打交道,自然是非常熟悉的,找到他們也很容易。(更多詳情,請參考招聘開發人員指南系列)

  • 降低維護成本: 如果一個企業開始在本地的分支做缺陷修復、增加新的功能,然而卻沒有將這些程式碼提交到上游的開源專案中,那麼很快維護本地的分支,將成為該公司的一個成本噩夢。將上游作為優先的提交缺陷修復和增加新功能是最為明智的做法,因為這樣的維護成本最低。

  • 專案影響力: 在一個開源的專案中,新的特性或功能來自社群的貢獻,那麼這些貢獻就會影響到專案的走向,如果你認為為專案所貢獻的新功能對於貴司非常的重要,那麼你應該去安排積極的貢獻者對這些功能進行開發和實現。通過貴司的貢獻,自然而然就可以影響到專案的走向(只要你的變更符合專案本身的目標)。

當然,參與社群是需要適當的方式方法的,若是方式不當的話,那麼就可能出現不可預料的問題,即使真正的做了貢獻。每個開源專案在具體的規範、期望和流程上都有一些細微的差別,所以貴司在參與一個專案之前,首先要做的就是去了解這些專案。這點可以有多種方式來完成,如先安排員工加入社群並花時間和精力去實地的考察,又或者是直接在該社群招聘已經有了貢獻記錄的參與者,進而瞭解專案本身。

Video++預測到未來網際網路視訊會佔據的網際網路使用者時間會持續上升,如何讓使用者在觀看視訊的同時又能滿足他們更加多樣化的需求,如何讓企業通過視訊可以探索更多的商業變現。為了解決這些問題,我們決定開源VIdeoOS,讓大家一起來為視訊賦能。

參考:

相關文章