“開放”一切的夢想
Marc Anderson 有個(gè)著名的論斷,即軟件蠶食一切?,F(xiàn)在,有一家軟件公司有了一個(gè)更加宏偉的目標(biāo),那就是開源解放世界。
開放源碼
這家公司的名字叫做 GitHub。它的名字和做的事情都跟開源有關(guān)。GitHub 就是 Git 的 Hub。Git 是開源操作系統(tǒng) Linux 的創(chuàng)始人,極客之王李納斯•托沃茲(Linux Torvalds)為了更好地管理 linux 內(nèi)核開發(fā)而創(chuàng)立的分布式版本控制/軟件配置管理軟件。而創(chuàng)辦于 2008 年的 GitHub,其作用是為分布在各地開源軟件寫手提供手段,讓他們可以快速創(chuàng)建自己工作的新版本。這些工作被存放在 GitHub 上,供小組共享和討論,成員可以根據(jù)其中提出的拉請求(pull requests)提出代碼改進(jìn)等建議來不斷完善項(xiàng)目。上述事情的一個(gè)支撐的手段就是 Girt,一個(gè)由 GitHub 聯(lián)合創(chuàng)始人兼 CEO Preston-Werner 編寫的基于 Ruby 的 Git 托管網(wǎng)站。
他們圍繞著 Girt 做出了一個(gè)決定:開放 Girt 的源碼。這個(gè)決定也決定了 GitHub 的核心價(jià)值:開源一切。
是,封閉可以設(shè)置壁壘,帶來競爭優(yōu)勢(市面上有很多 Git 托管網(wǎng)站在競爭)。但是,開放卻可以讓更多的人用來制作 Git 工具,營造出更加生機(jī)勃勃的生態(tài)體系。
Preston-Werner 是這樣解釋為什么要開源的:
廣告效應(yīng):開源讓用戶了解軟件,反過來開發(fā)者則開源了解用戶的需求和關(guān)注點(diǎn)。開源可以給軟件帶來名聲,贏得超級(jí)粉絲。
增益效應(yīng):開源有助于流行(當(dāng)然前提是你做得不賴),然后外面就會(huì)有高手幫你挑刺、改進(jìn)。進(jìn)而工作可以完成得更快、成本更低。然后用戶越來越多,用戶越多,用戶案例就越多,而這又可以促進(jìn)代碼變得更加健壯。
惺惺相惜:聰明人喜歡與聰明人為伍,聰明人喜歡與聰明代碼為伍,開源有用的代碼可以吸引人才,智慧的頭腦可以碰撞出更好的解決方案。如果開源項(xiàng)目要想面試人,最好的人選是不用面試的人—即那些已經(jīng)對你的項(xiàng)目挑過刺的人。剩下的只是看看對方是否適應(yīng)你的文化并說服對方加入。
留住人才:通過其貢獻(xiàn)來招聘到人才之后,對代碼開源也是留住人才的有效方式。因?yàn)楹玫某绦騿T可以隨便挑工作,他愿意來自然也知道開放代碼的價(jià)值,他更愿意做出可以向朋友炫耀、向未來的潛在老板展示的項(xiàng)目。這似乎是一個(gè)悖論,沒錯(cuò),為了讓殺手級(jí)開發(fā)者快樂,你必須幫助他,讓他在其他雇主眼中更具吸引力(開源才能讓人看到你的才華,走了也沒關(guān)系,因?yàn)楫?dāng)他可以證明自己的才華時(shí),你的項(xiàng)目也已經(jīng)成功了。如果項(xiàng)目不開源,那這樣的人也許早就另謀高就去了)。
易模塊化:一旦想到外面的人會(huì)用你的代碼,潛意識(shí)里就會(huì)回避專有的配置細(xì)節(jié)和緊耦合的接口。代碼就會(huì)更加整潔、更易維護(hù)。
減少重復(fù):開源使得別人做過的事情自己不必重新再做,從而可以把精力集中在更有意義的事情上。
道德使然:GitHub 受益于開源軟件,自然也有道德義務(wù)去回報(bào)社會(huì)。
他還打了一個(gè)比喻:如果說軟件是水,那么開源就是“水漲船高”中的那股“漲”的力量。
不過開源一切并不是絕對,核心價(jià)值的東西還是不要開源,因?yàn)槟鞘瞧髽I(yè)生存的根本。
開放管理
當(dāng)然,GitHub 的開放不僅限于此。他們的管理模式與傳統(tǒng)相比也有很大的差異。傳統(tǒng)大型企業(yè)中的大型組織效率低下(實(shí)際上幾乎所有的大象跑的都不快),他們希望改變這一現(xiàn)狀。
GitHub 有 140 名員工,但是沒有一名經(jīng)理?;蛘哒f,每個(gè)人都是經(jīng)理,管理自己的經(jīng)理。但是 CEO 的頭銜仍然保留,像薪水之類的事情還是要由 Preston-Werner 來決定。
GitHub 的早期員工,現(xiàn)在的工程總監(jiān) RYAN TOMAYKO 曾在《告訴做什么,不如演示怎么做》一文中闡述過他們的管理思路—管理的最高境界就是不管:無為而治。
GitHub 的組織和流程是按照第一原則即實(shí)現(xiàn)高效優(yōu)質(zhì)的生產(chǎn)來考慮的,而不是去復(fù)制傳統(tǒng)的管理模式。在他看來,公司的人只用對用戶負(fù)責(zé)而不是對公司的誰負(fù)責(zé)。作為工程總監(jiān),他被賦予了極大的自由度,可以自由設(shè)計(jì)內(nèi)部的組織流程,根據(jù)需要確定人員的角色。
傳統(tǒng)的管理模式中,經(jīng)理負(fù)責(zé)確定任務(wù),而員工則負(fù)責(zé)履行。但 RYAN 反對告訴別人該做什么。因?yàn)?/p>
1) 這是偷懶表現(xiàn)
只說做什么,不說為什么要做,如何做,只能靠權(quán)利壓人很難讓人心甘情愿地做,也不會(huì)做得好。
2) 偷懶導(dǎo)致更累
因?yàn)檫@樣的話每個(gè)人每一步你都要告訴他做什么。
所以,他要做到的,是成員的自我管理。
首先要教成員確定事情的優(yōu)先級(jí),然后再到自治—即不用匯報(bào)自己也知道自己做的事情是正確的。
而這種管理應(yīng)該是:
身體力行:告訴別人怎么做不是簡單地說教,而是要舉例、示范。
完全透明:每個(gè)人都可以自我管理,但是你做事情的過程必須高度透明,讓別人看得見。任何有礙透明度的點(diǎn)對點(diǎn)聊天、私下會(huì)議、IM 等都取消。這樣的好處是你有什么做得不對的馬上就會(huì)有人指出。做得好和不好別人都可以吸取經(jīng)驗(yàn)教訓(xùn)。
沒有經(jīng)理:但是人人都是經(jīng)理。管理的角色分配到—
1)每一個(gè)員工身上
2)定制的內(nèi)部工具上,讓每人均能了解其他項(xiàng)目的情況
這樣做的好處是:
1)100% 的員工實(shí)現(xiàn)生產(chǎn)力 / 效率最大化又不會(huì)失察
2)100% 的員工均清楚項(xiàng)目進(jìn)展并給出意見
3)所有員工都是決策制定者
后來,Ryan 又把這種管理模式概括為像開源項(xiàng)目那樣工作—即借用開源軟件項(xiàng)目開放的天然約束來設(shè)計(jì)內(nèi)部流程與溝通方式。
這些約束是:
電子:討論、計(jì)劃、運(yùn)營流程采用高保真的電子化溝通方式(電子郵件、項(xiàng)目管理系統(tǒng)、項(xiàng)目聊天組等),避免開會(huì)討論。
可見:工作和過程必須讓大家看見。工作必須有 URL 地址,出錯(cuò)可回溯過程。優(yōu)選 Git、問題、pull requests、郵件列表、聊天記錄等形式。
異步:流程不應(yīng)該存在需要對方及時(shí)關(guān)注的環(huán)節(jié),任何干擾(小會(huì)、電話等)都會(huì)影響流程的暢通。建議采取郵件或 pull requests 的形式。
無鎖:避免流程中出現(xiàn)同步 / 鎖的環(huán)節(jié)。GitHub 沒有負(fù)責(zé)審批的部署經(jīng)理、發(fā)布經(jīng)理和產(chǎn)品經(jīng)理。他們認(rèn)為,朝著目標(biāo)前進(jìn)的步伐不應(yīng)該被等待批準(zhǔn)阻礙。把這些事情放在最后的評(píng)審環(huán)節(jié),但是應(yīng)該盡早披露工作過程以爭取反饋。
乍一看,開源項(xiàng)目與傳統(tǒng)開發(fā)相比存在諸多限制。人員分散,無法湊到一起開會(huì),不能一起在白板上推演,而溝通基本上只靠郵件。
但是選擇接受開源項(xiàng)目約束可以讓許多類型的業(yè)務(wù)、產(chǎn)品開發(fā)、運(yùn)營活動(dòng)具備更好的自然生命力特征,其結(jié)果是運(yùn)行得當(dāng)、引人矚目、自生自存的項(xiàng)目,而更為傳統(tǒng)的項(xiàng)目組織則需要更多的人工協(xié)調(diào)和命令式的督促,這些往往導(dǎo)致過程效率低下,產(chǎn)出質(zhì)量欠佳。
在 Ryan 看來,傳統(tǒng)的辦公室跟這些原則背道而馳,所以他喊出了“安息吧辦公室”的口號(hào)。
當(dāng)然,他特指的是軟件開發(fā)組織的辦公室作為計(jì)劃、協(xié)調(diào)和溝通的中心已經(jīng)不合時(shí)宜。他認(rèn)為需要開會(huì) / 聚會(huì)的只有兩個(gè)例外,1 是討論宏偉愿景和戰(zhàn)略,2 是慶祝勝利。
也許你會(huì)質(zhì)疑他觀點(diǎn)的偏激,人性到哪里去了?!會(huì)不會(huì)像《機(jī)器人瓦力(Wall-E)》里面那樣,人類的所有互動(dòng)都演變成僅剩下虛擬 / 電子化的溝通方式,導(dǎo)致人陷入深深的悲哀當(dāng)中、機(jī)體功能喪失、乃至于人類滅絕?
不會(huì)。面對面溝通已被證明是進(jìn)行戰(zhàn)略思考及發(fā)展個(gè)人關(guān)系的一種極其有效的方式,而這些對于公司成功是至關(guān)重要的。開源項(xiàng)目約束則不適合做這些事情。
而且他們當(dāng)然還有辦公室,大家碰頭的機(jī)會(huì)跟其他地方一樣多。但是他們的辦公室主要是根據(jù)以下兩個(gè)目的而設(shè)置:
•成為個(gè)人辦公的極佳環(huán)境。如有美食、咖啡、wifi 和音樂。
•成為聚會(huì)和閑逛的好去處。
開放一切
這種模式成功嗎?起碼投資者看好,起碼 GitHub 的發(fā)展數(shù)據(jù)給力。
今年 7 月,GitHub 從硅谷著名的 VC 機(jī)構(gòu) Andreessen Horowitz 處獲得了 1 億美元的融資。這是一筆巨額的融資,因?yàn)閷τ谶@個(gè)階段的初創(chuàng)企業(yè)來說,2000 萬美元就已經(jīng)算是一筆財(cái)富了。
2012 年 GitHub 的發(fā)展數(shù)據(jù)也堪稱亮麗。用戶數(shù)從上一年的 120 萬攀升至 280 萬。存放代碼、文檔、圖像等項(xiàng)目相關(guān)信息的“容器”則從 170 萬猛增至 460 萬。
由于一些最好的人才都在上面展示自己的工作,或者對他人的工作發(fā)表深刻見解,GitHub 的流行還使得它成為了企業(yè)招募工程師的重要途徑。
Preston-Werner 對企業(yè)的看法是公司應(yīng)該是讓快樂而不是金錢最大化的地方。人們愿意從事感興趣的事情。而利潤會(huì)隨之而來。
開放帶來透明,放權(quán)讓人主動(dòng),快樂實(shí)現(xiàn)精品。
Preston-Werner 認(rèn)為開源這種要求高度信任與協(xié)作,以及相對平等的關(guān)系(加上若干定義工作范圍和做出最終決定的高級(jí)經(jīng)理)的方式可以推廣到更加廣泛的領(lǐng)域,比方說開發(fā)移動(dòng)和企業(yè)應(yīng)用,甚至包括政府。
他認(rèn)為可以開放的不僅僅是代碼,也應(yīng)該包括決策,讓決策透明和開放。開放、自由、平等、公正,用開源的精神去影響人類的交互和生存方式,這個(gè)愿景可謂宏大無比。
不過,這一切是否真的能否延伸到復(fù)雜大型的組織中去呢?
紐約時(shí)報(bào)的 QUENTIN HARDY 認(rèn)為,像開源項(xiàng)目這種復(fù)雜程度的事情也要基于單一的、定義清晰的成果,而工程任務(wù)往往不受公平正義之類概念的束縛,否則的話那些話題有可能讓人陷入無休止的爭吵之中。而哪怕不討論那么崇高的話題,像 GitHub 和 Asana 那樣的公司也要向持續(xù)多年、同時(shí)牽涉到科學(xué)與人文技能的復(fù)雜企業(yè)流程發(fā)起挑戰(zhàn)。Google 一度曾以經(jīng)理少、執(zhí)行快而自豪,但是隨著公司變大,它也發(fā)現(xiàn)自己陷入到許多的會(huì)議當(dāng)中。而一度敏捷創(chuàng)新的 IT 公司一旦發(fā)展龐大后變得臃腫死板、頑固守舊乃至于走向失敗的例子更是不勝枚舉。
組織變大是不是就會(huì)不可避免地陷入到效率低下、利益沖突等管理難題?還是說因?yàn)槿说谋举|(zhì)是孤獨(dú)的,更加理想的組織形式本該就是沒有組織,或者說起碼像 37Signal 那樣堅(jiān)持以小為美?
開放一切,實(shí)現(xiàn)人人平等相待,處處互利共贏究竟是可以實(shí)現(xiàn)的夢想還是空想的烏托邦?在一個(gè)人人奔向在線生活的世界里,這無疑是一個(gè)有趣的問題。