為什麼行業和初創公司應該開源
已發表: 2016-06-25每家假裝涉足技術的公司都傾向於鎖定其代碼,並小心翼翼地保護它。 有充分的理由——知識產權本來就是珍貴的,對吧?
然而,考慮到總有其他潛在雇主在徘徊,等著搶走你最好的工程師(稍後會詳細介紹),隱藏所有代碼是否明智?
不,不是。 通過保護您的代碼和數據,您會錯失很多機會。 讓我們更多地了解您錯過了什麼。
為什麼你應該開源?
1. 利用社區的力量:
一旦您的代碼吸引了外部用戶的貢獻,那麼您的所有工作肯定會更快完成,而且費用要低得多。 這只是挑戰“太多廚師破壞肉湯”這句格言的一種情況。 但是,在這裡,更多的用戶意味著更多的人檢查你的代碼並修復它的問題和添加功能,這最終意味著更健壯的代碼。
2.打造世界級團隊:
- 跨國公司有哪些你的公司沒有的? 也許,幾百萬美元的資金以及世界級的人才。 由於我們不能對金錢部分做太多事情,所以讓我們關注後者。 當你開源你的代碼時,你很有可能會吸引有才華的工程師來解決問題。
- 這使得招聘過程變得相當簡單,因為你有一群非常聰明的人在處理你的代碼,改進它,讓它運行得更好。 再見,技術面試!
- 最後,一旦你為公司僱傭了所需的人才,確保你留住員工的一個好方法就是繼續致力於開源代碼。 開發人員可以解決您的業務面臨的問題,並被激勵留下來,因為他們可以為自己創建一個投資組合,改善他們的個人資料。 這解決了那些討厭的招聘人員等著搶走你最好的工程師的問題,隨著更多人的工作,你會看到你的代碼運行得越來越好。
3.為了榮耀:
當你開源你的代碼時,你自然會從所有談論你的公司的媒體、論壇、團體和編碼極客那裡獲得價值數百美元的免費廣告。 它轉化為善意,也讓你獲得更多的討人喜歡的布朗尼積分。
如果它那麼好,為什麼沒有更多的人去做呢?
1.專有原因:
每個人都害怕自己的代碼被盜。 幾家大公司認為,開源他們的代碼和/或數據將導致大量信息洩露,然後他們就會失去競爭優勢。 在某些情況下,這種擔憂是真實的——最明顯的是聯邦執法機構和國防單位,例如 NSA 或 FBI。 他們當然不能開源任何東西。
2. 開銷:
對於幾家公司,尤其是剛剛獲得資金的科技初創公司來說,他們有足夠的工作要做,支付員工和其他間接費用。 對於剛剛站穩腳跟的公司來說,開源的財務影響可能並不可行,尤其是在競爭激烈的矽谷生態系統中。
3.裡面沒有錢:
雖然這很明顯(重點在於它是免費代碼),但最近 75 家初創公司在舊金山召開會議,討論從開源軟件中賺錢的可能性。 雖然免費贈送軟件然後對其收費的最初想法一直在少數人身上奏效,但並沒有產生很好的效果。 風險投資公司 Andreessen Horowitz 的普通合夥人 Peter Levine 說:“從歷史上看,每家開源公司都與專有對手相比相形見絀。”
4. 每個人都認為有人會反對:
Code Combat 是一個非常有趣的網站,可以幫助用戶通過玩遊戲來學習代碼,它在一篇博文中寫道,當他們決定開源代碼時,他們會詢問與公司相關的每個人的反饋。 事情是這樣的:顧問們喜歡這個想法,但想知道遊戲開發者是否願意。 開發商都支持它,但想知道投資者。 投資者喜歡它,但擔心律師。 律師們說:“當然,問問你的顧問就行了”。 這尤其適用於由資金或風險投資支持的公司,其中有多人以不同的方式投資於公司。 不要只是假設某個地方的某個人會遇到問題。 竭盡全力找出答案。
那麼這是誰做的,真的嗎?
你會感到驚訝。 這裡列出了五家公司——我保證你會知道他們的名字——它們已經將大部分代碼提供給了開源社區。

1.谷歌:
這些傢伙不需要介紹,對吧? 所以我只談事實。 根據谷歌開發者網站,谷歌已經為開源社區貢獻了超過 2000 萬行代碼,以及超過 900 個項目。 他們的移動操作系統 Android 是開源的,為全球超過 15 億台設備提供支持。 我提到它是開源的嗎?
2. 臉書:
2013 年,ReadWrite 的 Matt Asay 稱 Facebook 為全球最大的開源公司。 在 Facebook 負責開源項目的 James Pearce 曾這樣說:“事實證明,我們的大部分工程師在加入之前就會知道我們的開源項目,他們會說這對他們的決定做出了積極貢獻加入公司。 這是了解我們解決的各種問題的一個很好的窗口,當然我們希望世界各地有世界級的工程師會喜歡這些機會,當他們看到我們正在解決的問題時有看一看的衝動。”
Facebook 開源的另外兩個大型項目是 React Js,一個用於構建用戶界面的 JavaScript 庫,以及 React Native,一個用於構建原生應用程序的框架。
看? Facebook 使用開源進行招聘。 你也應該!
3. 推特:
聽說過引導程序嗎? 您可以使用那個美妙的開源 HTML、CSS 和 JavaScript 框架來美化您的網站嗎? 是的,這屬於推特。 這是 Twitter 為開源社區提供的幾個項目之一,從那時起,網站改頭換面就再也不一樣了。 只需查看 Start Bootstrap、Bootstrap Expo 和 Built with Bootstrap,即可了解該框架的價值所在。
4. 領英:
LinkedIn 擁有 80 多個開源項目,貢獻了超過 50 萬行代碼。 他們認為,為了鼓勵卓越,公開做事是有意義的。 LinkedIn 內部使用的所有工具都可以訪問和使用。 LinkedIn 的首席參謀工程師 Jay Kreps 說,他們不希望一切都成為他們的“秘密武器”。 就像 Facebook 一樣,這種策略對他們來說效果很好,有助於吸引優秀人才。
5.廣場:
這家公司為開源社區貢獻了超過 25 萬行代碼,其中最著名的項目是 Picasso,它是“一個強大的 Android 圖像下載和緩存庫”,使用他們自己的定義。 Square 有 60 多個開源項目。 雖然這家公司遠不及名單上的其他公司那麼大,但他們的首席技術官 Bob Lee 認為這正是開源戰略如此有意義的原因。
除了這些公司之外,還有 Linux,它是由 Linus Torvalds 開發的開源操作系統,被數十萬人以一種或另一種形式使用(Android 是基於 Linux 內核開發的),以及深受開發人員喜愛的首選操作系統世界各地。 它是世界上現存最大的開源項目。
所以,這就是“開源的理由”,不僅是大型公司(至少部分)這樣做了,還有不少軟件公司,如 Hadoop、Drupal 和 MongoDB,都是開源的。 它有助於改進代碼,並為公司提供合適的平台來向其他開創先例的人學習。
你應該開源嗎?
答案取決於您的業務線以及通過公開數據和代碼您會失去或獲得什麼,因為這是使您的公司與眾不同的兩個主要重要因素。 “開源的風險在於你沒有知識產權,”Gartner Research 分析師 Nick Heudecker 說。
然而,隨著越來越多的公司採用開源策略並尋找使其發揮作用的方法,保持代碼專有的意義越來越小。 您需要了解如何使其快速為您工作。