從協作程式設計到婚禮請柬:GitHub正走向主流

發表於2013-09-05

Bubby Rayber 大婚的日子來的太快了。當時已是四月中,而不到一個月之後他就要在印度南部舉辦一場曠日的千人慶典。他亟需一個能快速傳播婚訊的方法。因此這名 28 歲的 LinkedIn 高階系統工程師,轉而向一個他很熟悉的網站尋求幫助。Rayber 通過程式設計師們最愛訪問的社交網站GitHub向其好友們發出了邀請

事實上通過 GitHub 傳送婚禮請柬的事並不多見。發起於 2008 年的 GitHub 是一個軟體工程協作平臺,其主要功能是儲存你的工作成果,並對提交的各種變化進行全面跟蹤。同時其內容面向全世界共享,並接受各種評論。程式設計師們對此津津樂道。直到最近,其業務已經開始不滿足於此了。

950c89cb441ffd0ece4a7661e4d9ca45

GitHub 聯合創始人兼 CEO,Tom Preston-Werner

 

正如前文所述,婚禮請柬與開源軟體專案的共同點其實比你能想到的更多。在 Rayber 的例子中,就在他剛剛上傳了自己婚禮請柬後不久,一名賓客就修改了其中一處筆誤,而另外一人則新增了一條文辭可愛的祝賀。而 GitHub 的員工則認為這種協作方式代表了未來:任何人都可以向任何專案諫言,而針對解決方法的討論就像在 Facebook 發文一樣簡單便捷。

GitHub 聯合創始人兼 CEO,Tom Preston-Werner 談到:

我們為軟體開發所打造的開放協作流程非常誘人,以至於具備高協作性的非軟體專案都會為此吸引。

就在去年,Twitter 的首席律師 Benjamin Lee 通過 GitHub 為工程師們起草了一份新的專利許可協議。而不久之後,GitHub 使用者們就為其修正了很多小的語法錯誤。再後來,Twitter 聯合創始人 Evan Williams 的孵化器創業公司商業運營總監 Trishan Arul 又建議加入一些文字,Lee 表示接受。

在另一個迥異的領域中,來自德州一家聖公會教堂的音樂總監 Adam Wood 正嘗試將一份格列高利聖詠的大綱上傳至 GitHub。他認為對於唱詩班總監而言,那是最好的用來分享和改進各種音樂的服務平臺。

GitHub 這家擁有 5 年曆史,三百四十萬使用者的網站已經成為了黑客圈中最炙手可熱的社群。程式設計師們樂於在其上分享專案雛形,並眾包各種改進。但是公司本身有著更大的志向:改變人們的工作方式。首當其衝的當然是軟體開發人員,而後將是任何與文字修編有關的工作。例如律師,作者,甚至是公務員,都會樂於接受 GitHub 的協作方式。

對於初來乍到者,GitHub 就好像某種意義上將視訊美圖抽象為程式碼片段版本的 Facebook。但其實很多內在的觀念是想通的。你可以“追隨”其他黑客的動態來了解他們在做些什麼。你還能夠在他們的程式碼上加評論。就像在 Facebook 上評論照片一樣。你甚至可以為專案“加星”來表達你對它的喜愛,就如同在 Twitter 上標註“最愛”一樣。

但它還遠遠不止是社交網路。人們通過它發掘感興趣的新專案,除錯並改造,嘗試新想法。然後通過推送按鈕,將更新融合入專案。你還可以對專案進行“分叉”。這是 GitHub 中對於複製專案的術語。你可以通過複製一個專案,進而修改並建立你自己獨立的版本。

事實上人們不僅限於對 Lee 的 Twitter 版權專利修改提出建議。那份專利被複制了 53 次:其中包括 Arul,一名波特蘭的計算機專業學生,還有比利時的自行車設計師。這些複製版本會各自演化,甚至最終融合回 Lee 的最初版本。這項實驗激發了矽谷的頂級法律公司 Fenwick & West(GitHub 是其客戶)在今年早期於 GitHub 上發表了 30 頁的創業公司標準文件。該公司合夥人之一 Ted Wang 談到:

我猜測在未來,GitHub 會成為法律從業者的實際工具。

這便是 Tom Preston-Werner 同其 GitHub 團隊正在構築的。任何人都可以通過此網站來架設免費的開源專案,而這也是大部分使用者正在做的。然而通過付費服務,公司可以保持他們的軟體及其他專案不對外公開。甚至是通過安裝他們自己版本的 GitHub,將專案內容保密。針對不同的專案,收費可從每月幾美元到每年成千上萬美元不等。

34 歲的 Preston-Werner 稱,他銷售給其客戶的是更好的協作。如同傑克韋爾奇治下通用電氣一般的品質。Preston-Werner 談到:

通用電氣擁有六西格瑪哲學。他們是本著這樣的原則來確保產品質量和組建團隊的。而我們擁有 GitHub 的方式。並且我們相信很多人都會從中獲益,並輸出更多更好的成果,並樂在其中。

就在去年,該公司接受了 Andreessen Horowitz 的風投公司驚人的一億美元注資。鉅額投資彰顯了更大的野心。Andreessen Horowitz 的合夥人 Peter Levine 說:

我們堅信這是絕對是一項非常特別的業務。GitHub 對於原始碼所做的事情絕對可以應用到其他領域。不論是 GitHub 自己開發或是其他公司給基於其上的再次開發,可以想象那將會是一個非常有趣的合作平臺。

作為投資人他看到了 GitHub 立足於程式開發人員的起步階段,並相信這種模式適用於任何需要儲存,修改以及討論文字的行業:比如法律公司,醫院,銀行,設計行業。

很多人都試圖將基於網頁的協作工具銷售給大企業。儘管目前對於購買了微軟的 Yammer 產品以及 IBM 的 Connections 軟體的公司能否適應 GitHub 的模式還不清楚,但是 GitHub 的確具備它們所缺失的優勢:大批已經在 GitHub 架設了私人專案的忠實擁躉。這些人通過對 GitHub 的試用,將會成為推動其單位安裝 GitHub 用於日常工作的根本動力。

fed3580bb3b59a26187ad601927af4a2

GitHub從何而來

Beer:30 酒點半——這是 GitHub 每週一次,兩個小時的員工集會的名字。同時也是 TED 演講。GitHub 的近半數的員工都參與其中。窗外是四月陽光下巨人隊球迷為擊敗對手聖路易斯而熱烈的歡呼。屋內 GitHub 的員工們要麼懷抱 MacBook,或是手捧啤酒。臺上四架攝像機鎖定著演講臺後身著牛仔褲黑體恤的 Preston-Werner。他正在責備著灣區的地鐵系統 BART,源自他幾周前攜妻子和幼子乘地鐵去農貿市場的不快經歷。他談到:

這便是 GitHub 從何而來,發現了一個糟糕的方案,進而試圖打造一個更好的取代它。

六年之前,Preston-Werner 同他的聯合創始人們,Chris Wanstrath 以及 PJ Hyett 都是典型的灣區程式設計師。微軟正試圖將 Preston-Werner 從收購的搜尋創業公司 PowerSet 留住,但還是失敗了。Wanstrath 和 Hyett 已然辭去了他們在 CNet 的工作,創立了一家叫做 FarmSpam 的網站。一切都還未開始。

為大公司打工的經歷讓他們身心俱疲。他們痛恨低效與官僚的作風,以及缺乏自治的權力。Preston-Werner 說:

你在某處工作了兩年,無聊且沮喪到了極點,只好離職。

他們相聚在一個叫做 Zeke 的運動酒吧,緊接著就決定啟動 GitHub 這個專案作為副業。而他們所要修正的“糟糕方案“正是 Linux 作業系統的創始人 Linus Torvalds 的 Git 軟體,一個設計用來跟蹤變化的軟體。

Git 對於極客程式設計師來說是很棒的,但是大部分人在安裝使用的時候都會遇到很多困難。因此 Preston-Werner 和 Wanstrath 建立了一個網站,通過 Git 管理來便捷的分享程式碼。他們在 2008 年對其好友們開放了私下的測試版。

三個月之內,GitHub 便擁有了 6000 名使用者。他們當中很多人都從自己的專案中分享程式碼。他們推舉 Hyett 作為營運長。業界公司對這項服務非常欣賞,甚至樂於為此付費。因此一項商業計劃應運而生。(PeepCode 的創始人 Geoffrey Grosenbach 甚至在一封郵件中寫道“免費使用讓我很不自在,我能直接寫張支票給你們嗎?”)GitHub 的企業客戶讓該網站成為了鮮有的無需諂媚廣告商的社交網站。

對於不寫程式的人,觀摩 GitHub 網站的感覺是有些雲裡霧裡的。其網站上包含了很多程式碼倉庫,程式分支,大片的程式碼文字等內容。還有小的片段稱之為 Gists。對於非技術使用者這些近乎天書,但對於工程師而言則充滿了甜頭。

GitHub 的最大創新在於 pull request。那是在你通過分叉複製了某些東西之後,GitHub 會向軟體開發者傳送一份電子文件,其中說到“嘿,我正在你的專案基礎上進行二次開發。你能看到我都做了哪些改進。按下這個按鈕,這些變化就會加入你的專案。”其中 pull request 使得任何人都可以很方便的修正文件中的筆誤,或是軟體程式中的錯誤,甚至是新增對於法律文字的新建議。

在此你可以從 Preston-Werner 的 GitHub頁面 中瞭解到很多。GitHub 的 CEO 建立了超過 40 個程式碼倉庫,其中包含了一個非常火爆的針對黑客的部落格引擎,叫做 Jekyll。Jekyll 已經被使用者加星超過 12000 次,並且複製超過 2000 次。以 GitHub 的標準而言這都是很了不起的。

如果你繼續往下看,你會發現 Preston-Werner 確實比一般 CEO 寫的程式碼要多的多。但這裡不乏他的其他愛好。其中一個專案包含了各種 GitHub 的定製啤酒櫃照片,共被複制了 3 次。他還有一個倉庫包含了他最愛的舊金山素食館。共被複制了 37 次。但是包含了很多很多修改,這些幾乎都來自素食主義者們對筆誤的修正,以及新增上他們自己喜愛的餐館,酒吧,以及冰淇淋店。

Preston-Werner 希望他的員工能能夠像重新設計地鐵一樣來思考問題,因為他不希望他們忘記自己的使命:重塑人們的工作方式。在這一點上,他已經花了 4 百萬美元來改善員工所使用的工具。該公司僅有的一筆收購,在他們獲得 Andreessen Horowitz 一億美元投資之前敲定。是一家由五個人組成的專門製作網頁開發者工具及軟體的公司,他們的產品是用來幫助人們線上分享幻燈片的。

從風投公司獲得一億美元投資,對於一家制作原始碼管理軟體的公司來講本是可望而不可及的。但是 GitHub 的社交網路屬性令其與眾不同。加州 Shasta Ventures 的管理總監 Jason Pressman 談到:

程式設計師是新時代的搖滾明星。誰能在 50 年代就設想到搖滾明星能夠擁有那麼大的商業價值?程式設計師正在取得這樣的影響力,因此 GitHub 作為程式設計師的中心擁有無窮的價值。

98f7d5f4848da409e7a225624f7d3069

GitHub在白宮

如今,GitHub 擁有眾多的付費使用者:暴雪娛樂,Etsy,以及大的雲服務提供商 RackSpace 等。最重要的科技公司中,甚至微軟也擁有公開的 GitHub 頁面。同時也擁有很多粉絲。GitHub 本身也透過敏銳的商業眼光,採用自身五條腿的小章魚商標製作了一系列的主題帽衫,杯具以及不乾膠貼紙。

但是究竟 GitHub 將如何達到其改變工作方式的目標,目前還不明確。Preston-Werner 稱產品路線圖的方式是違背 GitHub 企業文化的。他說:

我認為制定路線圖的想法是過時的,承諾太多而達不到的風險是很高的。所以我們在釋出新功能之前都不會談論。

但是風險投資人 Levine 和 Pressman 認為 GitHub 的優勢在於,其已成為一個平臺。擁有超過三百萬的使用者,它完全能夠以像 Linux 或是 PC 類似的方式進入企業,成為定製軟體背後的共享平臺。Pressman 稱:

GitHub 絕對能夠滲透入大企業。

就像 GitHub 進入白宮的方式。在一年前,白宮 CIO Steven VanRoekel 開始著手製定一個令政府資料更便於訪問的計劃。聯邦機構堪稱資訊的寶庫,從法庭記錄到聯邦通訊委員會掌握的私人無限廣播電臺資料應有盡有。但是這些資料都很難被軟體開發者訪問到。

VanRoekel 在來到華盛頓前在微軟工作過 15 年,授命解決這個問題。去年夏天,他的團隊制定了一系列軟體工具和政策檔案,作為官員們的指導手冊。

這個專案被稱為 Open Data,其編寫以及程式碼的完成就是基於 GitHub。最開始的時候,整個專案是存放在私有程式碼倉庫中,僅能在 VanRoekel 管轄下的工作組內部訪問。當任何人需要進行一項大的修改,他們無需傳送郵件或是打電話。他們需要做的就是提交一個 pull request。

五月的時候,VanRoekel 的辦公室對外界程式設計師釋出了開發他們資料庫所需的軟體。這些程式連同 Open Data 專案的政策文件都一併公開釋出於 GitHub。VanRoekel 談到:

這是白宮第一次通過 GitHub 程式碼倉庫釋出政策,因此如果你覺得自己比官員們高明並且希望改進“公開許可證”的定義,那就去做吧。直接複製下來原版,改進後再提交一份 pull request 給白宮。

VanRoekel 正在通過 GitHub 開啟聯邦政府的現代化,但是還有另外一群設計師正在試圖通過 GitHub 來協作 3D 列印,而這很可能會成為 GitHub 的新增長點。一名猶他州鹽湖城的軟體開發者 Duane Johnson 最近通過 GitHub 將他的房子開源了。他正通過 GitHub 釋出小型房屋改進 3D 列印設計專案。比如一個水槽增氧機,一個客廳地毯固定薄片,或是一個餐盤架。

Johnson 的設計密集且複雜。他們並不像原始碼或是餐館名錄那樣易於修改,但是 Preston-Werner 認為他的公司能夠通過 3D 列印圈所使用的工具來改進 GitHub。他說:

3D 列印技術的革新業已成熟,我們很樂於成為這場革新的一部分。

在 GitHub 公司內的蛋蛋屋(60 年代仿古風格的乘涼地,還有很多球形椅)的一角就擺著一臺 3D 印表機。公司鼓勵員工將好的創意列印出成品。去年十二月,員工 Yossef Mendelssohn 弄傷了腳,並苦於無法同時杵著醫用柺杖和普通手杖一起行走。於是他設計並列印了一個固定裝置,能夠幫助他將普通手杖與醫用柺杖繫結。其程式碼可供任何人閱覽。

Mendelssohn 的固定裝置會走紅嗎?不會的。但是為了能找出什麼才是有用的開源設計,把玩 3D 印表機還是很重要的方式。或許還需要五年的時間才會有結論,但是一旦 3D 設計師以及硬體黑客們對開源革命做好了準備,GitHub 就等在那裡。Preston-Werner 說:

如果我們能夠做到讓任何一個普通人,都覺得 3D 列印是很方便的。那麼開源之風就會像如今影響軟體業一樣,影響硬體世界。而那正是我想去做的。

相關文章