華為莊表偉:三代開源社區的協作模式 - OSCHINA - 中文開源技術...

2020-12-11 開源中國

一、研發工具與研發模式

據說,人之區別於禽獸,最大的特徵在於利用,甚至發明工具。在沒有任何其他工具時,我們只能藉助於自己的肢體,一旦有了工具之後,我們的能力將會大大的增加。

但是,從另一個角度來看,工具也同時在限制我們的能力,甚至限制了我們的行為模式與思維模式。有一句俗話說得好:「手裡拿著錘子,看見什麼都像釘子。」

而在研發工具的領域,我們觀察到另外一些有趣的現象:因為軟體研發工具的開發者,同時也是工具的使用者。因此,他們不僅僅會受制於工具,也往往會由此被激發,開發出對自己而言更加趁手的工具。開發者與使用者身份合二為一的現象,使得研發工具的發展,簡直可以用「日新月異」、「層出不窮」甚至「爭奇鬥豔」來形容。

隨著軟體複雜性的不斷增加,以及軟體開發的參與者不斷增多,團隊協作的輔助軟體,也開始不斷增加,隨後我們發現:工具不僅僅限制了個人的行為模式,更進一步限制了團隊的協作模式。

軟體研發企業的管理者,往往會有某種錯覺,他們會認為:管理就是定下制度、流程與規範,然後「下面的人」就會照此執行。因為有人「聽話」,有人「不聽話」,所以才需要獎勵與懲罰的制度,來幫助管理者推行他的「規則」。所以,他們一般都很喜歡看《執行力》這樣的書。

在開源社區,事情變得有些不一樣。雖說開源社區也有「領導者」,甚至往往會有「精神領袖」,但他們並沒有暴力手段,也沒有經濟手段,甚至行政手段。因此,要協調一幫自由散漫的黑客,共同開發高質量的開源軟體,必須有更加高明的手段。

由於一切都是Open的,所以:不僅代碼人人可見,開源社區的協作模式,也暴露在眾目睽睽之下。從某種意義上來說:這促進了開源社區的協作工具的開發、進而使得開源的研發協作模式,以遠遠超過企業內部的演化速度飛速演化。


二、第一代開源協作模式

第一代開源協作模式,在早期幾乎沒有符合自身特殊需要的工具,有什麼用什麼,因此最為常用的email,被發展為Maillist,成為整個開發團隊的協作核心工具,大多數作業系統內置的diff/patch工具,使得代碼的交流以email patch為主。這些老牌的開源項目,從使用RCS、CVS,到了後來也開始逐步引入svn/git,bugzilla這樣的工具,但是圍繞mailing list開展協作的特徵,則持久不變。


作為協作核心的Maillist

一個開源社區,往往就是一個郵件列表,隨著軟體的日益複雜,社區的不斷擴大,郵件列表也會不斷分化,通常會劃分為:核心組、開發組、用戶組。開發組與用戶組的郵件列表,隨著軟體的架構分化為多個模塊,還會進一步分解。

在郵件列表裡,所有的用戶都是平等的,在無法用工具保障流程的情況下,社區逐漸發展出了一套嚴格的郵件禮儀和格式規範。不規範的郵件,不會被理睬;不禮貌的傢伙,甚至會被趕走。

郵件越來越多,即使分成多個郵件列表,依然太多。Archive這樣的郵件歸檔、查閱的工具,就必須得有了。一封郵件,大家都來回復,嚴格re:的標題,組成了一個可供追溯的線索。

在郵件列表裡,通常出現個人的名稱,加上Reported-By、Tested-By、Acked-By的標記,即是一種代表個人名義的認可,也是流程規範的一部分,更是計算各人貢獻的依據。

Bugzilla應運而生

在郵件中,有一類話題是最活躍的,那就是bug。但是,通過翻找郵件查閱bug的最新的解決狀況,是非常困難的。一個bug,從提出,到最終解決,並被確認在哪一個版本中發布fix,是一種穩定的狀態轉化模式。一個專有的處理工具,勢必應運而生。Bugzilla、trac等一批工具,就由此被創造出來了。

代碼提交流程的規範化

開源社區,表面上非常的崇尚民主自由,但實際上卻盛行精英主義、甚至是個人獨裁的。我們往往會給某個開源項目的創始人,冠以「仁慈的獨裁者」的頭銜。雖然,是否仁慈,大家不得而知,但獨裁確實是顯然的了。

最大的獨裁,是代碼的管理權。因為作為創始人與核心開發者,他們往往以一己之力,貢獻了絕大多數的代碼,確定了項目最初的架構與發展方向。他們不會容忍任何人隨意地向代碼庫提交代碼。

在郵件列表中,一個新來的傢伙,從沒人認識,到能夠獨立的向代碼庫提交代碼,非得經歷艱辛的歷程不可。這樣的歷程,簡單的說,就是一次一次的Code Review。被審核通過、合入代碼庫的patch越多,一個人對於社區的貢獻就越大,可信度也越高,身份地位也逐步提高,然後,他也就可以去Review其他人的代碼了。

總結:在簡陋的工具條件下,發展出高效、嚴格的社區協作模式

三、第二代開源協作模式

第二代開源協作模式,有兩大特徵:Web化、集成化。隨著Web技術的不斷成熟,開源社區也開始創造一個又一個的Web開源項目,其中Web化的項目管理工具,如雨後春筍般冒了出來。在wikipedia上,issue-tracking systems列出了55個,project management software列出了152個,其中開源的也有30+,open-source software hosting列出了22個,堪稱蔚為壯觀。

這類平臺又可以分為兩大類:基於開源的項目管理工具或issue tracking工具,自建平臺,以JIRA、DotProject、Redmine為代表;基於免費開源託管平臺,以SourceForge、Google、LaunchPad為代表;

第二代的開源項目管理工具,可以說,主要是在向企業內的開發管理學習。文檔、流程、角色、權限、統計報表等等功能,都開始出現了。有些開源項目,也在用這些東西。

以SourceForge與Google Code為代表的開源託管平臺免除了開源項目搭建自己的官方網站,管理工具,代碼倉庫之類的繁瑣事務,大大促進了開源項目的發展。不過,由於平臺的功能總是受限的,因此自建門戶,自組工具的開源項目依然層出不窮。

issue & milestone

在第二代開源協作模式日漸成熟的過程中,另一股潮流也正方興未艾:「敏捷軟體開發」。其中,最為深入人心的概念之一,就是每個迭代,完成一批User Story

在開源社區,這個概念被進一步演繹:無論是bug和feature,都被統稱為issue。這些issue,被分到不同的milestone(版本),即使最後有可能延期,milestone也會定義一個預期完成時間。

這是好事?還是壞事?其實很難評價,因為從開源的原始教義而言:所有的貢獻,都是自願、隨機、不可預期的。為自然生長的軟體,規定裡程碑,本來就顯得荒謬。但是,從另一方面而言,我們可以引用另一個中國人過馬路的例子:「不管紅綠燈,湊夠一堆人就過馬路」,開源軟體,往往也是「不管裡程碑,穩定一堆特性和bugfix,就發布一個版本」。

如果在開源軟體很少,更別提形成開源生態圈的情況下,這種隨意的做法還是可行的。但是在大量軟體,相互依賴的情況下,一個開源項目要贏得其他協作項目的信賴與協作,必須給出穩定的規劃,以便相互配合。

這種規範,也是被逼出來的。

服務平臺化

雖然黑客們喜歡寫程序,但是要寫的程序實在太多了,能夠不重複造輪子,有現成的好工具可以直接拿來用,也是件好事。如果可以打開一個網站,註冊一個用戶,創建一個新的項目,剩下的事情自有平臺幫忙打理,那麼大家都可以愉快、專心的寫自己的代碼了。

平臺在逐步進化,因而能夠幫助開源項目,打理越來越多的事務。通常主流的開源項目託管平臺,都能夠完成:

更進一步的,還有能夠完成:簡單的自定義工作流、文件夾與靜態資源管理、輸出各種統計報表、甚至提供論壇、搜索、郵件列表以及各種排行榜等等。

在此之前,一個開源項目,是一個社區。到了大平臺的時代,整個平臺,構成了一個更大的社區。

總結:以Web形式提供的集成化開源項目託管平臺,標誌著開源項目的協作模式,進入成熟期

四、第三代開源協作模式

到了MySpace、Facebook與Twitter這樣的SNS網站的興起,開源項目的協作模式,受到SNS的啟發,也隨之進入了第三代,以Social Coding為核心的開發協作模式,這樣的模式在以Github為代表的網站上,體現的最為充分,眾多的模仿者也層出不窮。過去的開源項目與託管平臺,都是以項目為中心來打造,而Github則是圍繞著參與開源的人來打造。首先滿足的不是項目的需求,而是個人的需求,由於對人的黏性大大增加,也使得Github成為近年來最具吸引力的開發社區。

圍繞著Github,一大批周邊擴展服務被建立起來,構成了一個更加有活力的生態圈。而程式設計師們,不僅在Github上參與開源項目,更在Github上結交朋友,分享經驗,增進能力。甚至這樣的協作模式,還拓展到了編程領域之外,成為開放式協作的流行模式。

激勵機制

第三代開源協作模式,以Github為代表,以Social Coding為精髓,這一代模式想要解決的問題,是激勵機制的問題。

第一代開源協作,雖然創造了一批大大有名的項目,但事實上卻是一個非常小圈子的事業。即使是最為成功的Linux內核開發,也不過1000~2000人。一旦人多事雜,就會出現管理混亂的現象。

第二代開源協作,雖然借鑑了很多企業界的規範管理經驗,但是在事實上,卻是不適應開源軟體的風格的,舉一個例子:在Redmine中存在的角色、權限、工作流之類的東西,實際開源項目使用的,卻非常少。

第三代開源協作,借鑑了社交網絡中的各種數值化模型,關注者數量,Star數量,Fork數量,Issue數量,Pull Request數量,都在顯要位置標示出來,對於開發者形成正向激勵,還有很多的統計圖表,形象的展示了項目的活躍程度。

開源社區,原本就有非常深厚的,統計補丁數計算貢獻度的傳統,這一點在Github被發揚光大,可以說是優秀的繼承與創新。

基於fork/pull request的協作機制

在github,一鍵就能夠fork自己的分支,然後可以跟原有的分支毫無關聯,也可以非常方便的提交pull request,這就帶來了更加頻繁的分裂,使得分裂常態化了。

原來的開源社區,開發者修改了代碼,希望能夠貢獻給社區,需要穿越種種障礙,如果社區不接受,最後開發者只能逼不得已,自己開一個新的分支,變成一個新的項目。

在分裂是異常的狀態下,分裂是罪惡的,是不應該的,是會帶來陣痛的。當分裂變得常態化,pull request也變得常態化,分分合合,以每天N次的速度發生,恰恰因為如此,他不再是一種罪惡,而是一種健康的、向上的、以更快速度進步的模式。大家不再是在一個版本下,各自貢獻,而是在各自的版本下,獨立發展,想分就分,想合就合。

Pull request,從一個代碼合併的方式,變成了開發者之間主要的交流方式,他們發現,最好的交流,正是通過原始碼來交流,一切的講道理,都不如用原始碼來講道理。這恰恰是程式設計師們最習慣,也最喜歡的一種交流方式。

圍繞Github出現的擴展服務

較之上一代的平臺,Github提供了優秀的開放擴展機制:OAuth、API、SDK、WebHooks、ServiceHooks等等,使得圍繞Github,擴展各種滿足項目特定需要的服務,變得非常容易。

這就是從上一代平臺的開源大社區,進化為「圍繞Github的開源生態圈」。

到目前為止,Github一共支持超過170個不同的擴展服務,其中較為熱門的服務有:

  • 與其他項目管理工具集成(Bugzilla,Asana, Basecamp,Redmine,JIRA,ZohoProject)

  • 與持續集成服務集成(Travis,Bamboo,CircleCI)

  • 與消息通知服務集成(Amazon SNS,Email,IRC,Jabber)

  • 與DevOps服務集成(AWS OpsWorks, DeployHQ)

Github 開放平臺與API,基於Github OAuth API,其他網站可以支持開發者用自己Github帳號登錄,並使用一些有趣的服務。

這些擴展服務,極大的豐富了開源生態圈的內涵。

總結:社區天生就應該是社交化的,Social Coding與開源社區,簡直就是天作之和。

五、開源協作模式的新探索

Git:作為標配

目前看來,git作為分布式配置庫的王者地位,已經不可動搖了。能夠初步總結的原因,至少有三個:

  • git與github互相促進,作為全球最大也最流行的開源社區,他的標配是git。這也導致越來越多的開源項目,選擇git作為標配

  • 眾人拾材火焰高,越是參與開發的人不斷湧入,越是幫助git發展得更快。這是一個贏家通吃的世界

  • 開源生態圈的出現,使得圍繞git、github發展出一大批相關的開源項目、開源工具以及次級社區。這一現象,在docker橫空出世之後,再一次得到展現。

Code Review:必不可少

開源社區,一直有非常悠久的CodeReview的歷史,哪怕在最早的mail & patch的時代,Review也是開源協作的頭等大事。僅僅梳理Review的歷程,也可以看到其中工具與流程的發展。

最初是郵件review,然後是在集成平臺上內置review功能,或者提供更強大的review插件。到github創新的提出pull request,則是一種更加方便有效的review模式。

與此同時,獨立於集成平臺的專門的code review工具,也開始發展起來:Review Board、Google Gerrit、Facebook Phabricator是其中重要的幾個代表。

Workflow:百花齊放

在git逐步流行之後,大家發現基於git可以選擇的「玩法」實在是太多了。從最初寫下一行代碼,到最終出現在項目發布的版本之中,期間可以有無數的「路徑」。

在git-scm.com官方教程《ProGit》裡,提及了三種:集中式工作流、集成管理員工作流以及司令官與副官工作流。

在蔣鑫的《Git權威指南》裡,又提及基於TopGit、基於submodule、基於subtree、基於repo、基於gerrit、以及git與svn配合使用的不同工作模型。

再後來:GitFlow、Github的Pull Request、以及基於Github的Github Flow等等工作模式,堪稱百花齊放。

為什麼會出來這麼多workflow?因為團隊與項目的差別,實在太大了。現在到我們簡直無法想像:那些在各種情況下都堅持使用SVN都開發者,是怎麼熬過來的?

當然,從另一方面來說:選擇太多,也會帶來另一種煩惱...

CI、CD、DevOps

從Everything as Code到Everything Automation,是另一個越來越明顯的趨勢。前兩天,我從機場出來,正好看到兩個並列的廣告牌,一個廣告的大意是:「UPS助您打通全球供應鏈」、另一個則是「中國銀行助您打通全球供應鏈」。這真的很有意思,看來在各行各業,大家都開始在關注整個生命周期的各個環節之間的打通。

只是,在軟體領域,我們會感覺到這是一種回歸。畢竟,最初的軟體開發,都是很簡單的。在一臺計算機上,自己寫程序,自己編譯,自己調試、運行,最後發布。既不用依賴他人,更不用等待什麼流程。

隨著項目越來越複雜,參與的人越來越多,我們的軟體,不能僅僅運行在自己的機器上,或者需要部署到伺服器上,或者需要發布到某種平臺上。在協作者眾多的情況下,如何分工合作?

在開發者水平參差不齊的情況下,如何保證質量?在分工、協作、流程與質量保證的要求之下,如何提高效率?

這些都是DevOps致力於解決的問題,也是DevOps不斷得以發展的原動力。

總結:開源社區,始終在進步,Github代表的也只是「一代」而已,新的一代協作模式,還會被創造出來的。

六、暗線:工具、習俗背後的邏輯

過去是如何?未來又會怎樣?想要回答這類問題,其實需要更加深入的思考:「開源社區的協作模式,為何會變?變化背後的邏輯是什麼?」

開源社區研發工具的兩大目標:降低門檻,提高效率

開源社區,與普通的軟體開發最大的不同,就是參與者多多益善。在《大教堂與集市》中,Eric Steven Raymond總結到:「如果開發者協調者有至少一個像Internet這樣好的溝通媒介,並且知道如何不靠強制來領導,那麼多人合作必然強於單兵作戰」,這簡直就是絕妙的預言。雖然當年的ESR也許並未預測到,基於Internet會出現那麼多輔助開源的相關工具(他們當時還只有郵件列表)。

所以,開源社區一直在致力於兩個看上去相反的目標:「吸引儘可能多的人,以儘可能簡單、便捷的方式,參與到開源中來」、「在人多得超乎想像的情況下,依然能夠保持,甚至不斷提高效率」。

如何計算參與者的貢獻?

開源社區,不會給參與者發工資,因此激勵是一個大問題。公平、公開、公正大計算所有參與者的貢獻,以所有人都能夠接受都形式,計算並公布各種排行榜,可以說是開源社區特有都「剛性需求」,因此SNS與開源社區的結合,成為必然。以後,面向開源協作的大數據分析,也一定會出現。

如何激勵、吸引、回報參與者?

計算參與者的貢獻,僅僅是公平激勵的基礎。讓激勵變得有趣,變得有價值,變得有意義,則是吸引與回報參與者的不二法門。因此:遊戲化的思路,會被越來越多的引入到開源社區中來。

如何保障項目質量?

開源項目保障項目質量都最大利器,是引入數量眾多都熱心測試者。但是,僅僅有人願意測試,主動、積極都幫助測試,已經越來越不夠了。隨著項目越來越複雜,開源項目必須逐步走出僅僅依賴肉眼、依賴人多+運氣的質量保障模式。

自動化測試、以及更加規範的Review流程,則是必然出現,而且將越來越重要的環節之一。

如何協調一致的工作?

自由與規範,計劃與變化,興趣與責任。經常會在社區裡,成為爭論的熱點話題。雖然在《大教堂與集市》中,ESR極力鼓吹「禮物文化遠遠勝過交換經濟」,但是:「在一個龐大的社區,各種各樣的事務都需要有人去完成,而且還不能漫無章法。」

因此:「某種調節手段、協調者與協調機制、甚至是看不見的手」之類的東西,會慢慢的回到社區

如何在社區裡平等、高效的協商?

目前來說,依然只能是線上討論+線下開會。雖然,很多開源社區,開始學習《羅伯特議事規則》這樣的開會聖經。但是,開會依然是最令程式設計師感到苦惱的事情。在這方面,將來會不會出現更好的輔助工具,這方面很值得期待。

結束語

唯有變化,是不變的。開源協作模式,同樣如此。惟願我們,能夠成為推起其前進的力量之一。

稿源:Linuxer

相關焦點

  • 開源春天,此時不來,更待何時? - OSCHINA - 中文開源技術交流社區
    隨後 Apache 軟體基金會與 OpenStack 基金會相繼出來澄清,表示「開源軟體、開原始碼協作、參與公開電話會議或私人會議以及提供贊助資金都是不受 EAR 約束的活動,因此不應對社區產生影響」。
  • 開放源碼是開源軟體嗎? - OSCHINA - 中文開源技術交流社區
    許可協議必須技術中立(License Must Be Technology-Neutral):意即許可協議不得限制為電子格式才有效,若是紙本的許可協議也應視為有效。所以,與此類似的,在中文裡,我們可以認為:「開放原始碼」是一個動詞+一個名詞。而「開源」則是一個特定的詞彙。作為動詞,我們說將某某軟體開源,是一種行為。作為形容詞,我們稱某某軟體是一個開源(的)軟體,不僅僅是指我們能夠獲取到他的原始碼。
  • 開源軟體蓄勢待發 - OSCHINA - 中文開源技術交流社區
    相關內容11家值得關注的開源技術公司優異的技術特性和相對低廉的價格的結合使得開源產品廠商比以往有了更多進入企業網絡的路徑。Likewise公司執行長 Barry Crist 稱:「在網絡泡沫時期,由於Linux比SPARC上的Solaris更為便宜,開源產品逐漸由Unix轉移到了Linux。
  • Delta Lake 進入 Linux 基金會 - OSCHINA - 中文開源技術交流社區
    「將 Delta Lake 引入 Linux 基金會的中立組織之下,將有助於依賴該項目的開源社區開發解決存儲和處理大數據(本地和雲端)的技術」,Linux 基金會戰略計劃副總裁 Michael Dolan 表示。
  • SugarCRM:開源與商業的完美結合 - OSCHINA - 中文開源技術交流社區
    他認為,在中國市場以商業為後盾的開源模式將會成為CRM軟體發展的一個趨勢。 2009年4月22日,SugarCRM在上海舉辦了精英聯合峰會,並同時宣布中國區總經理的上任。我們可以看出這是一個信號,是關於SugarCRM商業開源策略正式在中國實施的前奏。
  • 2021 開源社理事會選舉結果公布!
    進而總結經驗,推廣到其他的開源社區。 3. 加強外部協作,包括社區聯合活動、開源社與企業間的聯合活動。例如:與開源社的各個顧問委員會成員及其企業合作,走進企業,走進機構,將開源的理念推廣到更多的領域。 相信在 2021 年,在所有開源社成員與朋友們的努力下,我們會做到更好!
  • 開源社區的「忌諱」話題 - OSCHINA - 中文開源技術交流社區
    加拿大資深開源技術記者Bruce Byfield較早前發表了一篇名為「開源社區從來不想承認的九大事實」(9 Things That Are Never Admitted About Open
  • 雲計算開源產業聯盟發布OSCAR尖峰開源技術和人物
    當前,開源軟體在雲計算領域的應用不斷深入,為推動雲計算技術進步做出了重要的貢獻。中國信息通信研究院調查數據顯示,2016年已經部署私有雲的企業中,有83.2%的企業使用了開源軟體,國內企業在國際主流開源社區中也正在發揮越來越重要的作用,以OpenStack為例,其8大白金會員中就有一家中國企業,在21家黃金會員中有10家國內企業。國內產業力量在OpenStack社區中的貢獻不斷加大。
  • Netflix 的開源文化與技術 - OSCHINA - 中文開源技術交流社區
    在之前的新聞《Netflix企業文化與架構設計》一文中我們介紹了Netflix高擴展的企業文化與架構,而作為一家在線影片租賃提供商Netflix之所以能夠在如此大量的用戶、海量的數據、複雜的拓撲結構下取得成功,離不開其背後的開源文化與技術
  • JavaFX 2012:徹底開源 - OSCHINA - 中文開源技術交流社區
    其中將JavaFX完全開源赫列榜首——在2011年的JavaOne大會上,Oracle已做出保證將開源整個JavaFX平臺。 以下是Richard Bair列出的2012年JavaFX 10大目標: 1.
  • 詳解開源界的 5 大開源許可協議 - OSCHINA - 中文開源技術交流社區
    越來越多的開發者與設計者希望將自己的產品開源,以便其他人可以在他們的代碼基礎上做更多事,開源社區也因此充滿生機。
  • Git 2.4.3 發布 - OSCHINA - 中文開源技術交流社區
    Git是一個開源的分布式版本控制系統,用以有效、高速的處理從很小到非常大的項目版本管理。開源中國 Git 代碼託管平臺:http://git.oschina.net/Windows下的Git請看這裡:http://www.oschina.net/p/msysgitGit 是 Linus Torvalds 為了幫助管理 Linux 內核開發而開發的一個開放源碼的版本控制軟體
  • 納德拉時代下的微軟開源之路 - OSCHINA - 中文開源技術交流社區
    Office 365日前微軟開源技術團隊正式宣布,微軟旗下的Offcie 365服務將會被集成到開源教育平臺Open edx中。微軟官方對此表示:「無論是當地小學的四年級小學生,還是一位40歲每夜堅持攻讀MBA的求學者,亦或者是準備參與升職培訓的公司職員,現在都有機會享受到Open edx帶來的學習管理系統(LMS)和大規模在線課堂(MOOC)。」
  • zmail 6.1版本更新 - OSCHINA - 中文開源技術交流社區
    Zmail的官方主頁:www.z-email.orgZmail的官方論壇:bbs.z-email.orgZmail的QQ群: 257959126系統要求redhat 6.x centos 6.x 64位最小安裝Zmail安裝說明:概述:(1)該安裝包為一鍵安裝包,方便快捷部署;(2)Zmail是開源郵件技術社區的最新的郵件伺服器軟體包
  • Gitbook,這個開源出書平臺了不起 - OSCHINA - 中文開源技術交流社區
    只不過,在 GitHub 上交友十分特別,你可以瀏覽別人在上面託管的項目、代碼,通過 Issue 這個功能反饋意見,與項目開發者討論,還可以用 Fork 這個功能,把別人的項目代碼遷移到自己的空間裡,用自己的方式進行改進後,還可以反饋到原項目開發者——GitHub 通過創新的協作、眾包方式,讓更多的 App、應用、工具得到群體智慧的幫助,變得更加完善。
  • 【珠海】開源中國OSC源創會第27期
    > 2014年源創會全年計劃:http://www.oschina.net/news/52198/oschina-osi-conference-plan 每年的珠海源創會一般都是在年底,今年俺們提前了!
  • Web 是開源最大的成功 - OSCHINA - 中文開源技術交流社區
    開源運動廣受歡迎,並且在軟體開發史上寫下了濃重一筆。但是它影響最深遠的地方在哪呢?有史以來,最成功的開源「項目」又是什麼呢? 事實上,總體來看,Web不就是開源運動最大的成功麼? 可能最有名的例子就是隱藏域眾多網站背後的LAMP,也就是Linux、Apache、MySQL和PHP。
  • 開源平臺引領機器翻譯 - OSCHINA - 中文開源技術交流社區
    令人驚訝的速度,機器語言翻譯現在正在高速發展到各個平臺上,其中開源軟體扮演著重要的角色。
  • 開源Community 對我來說意味著什麼 - OSCHINA - 中文開源技術交流...
    歲月鬥轉,我接觸了更多的領域,除了市場之外,還負責了網絡內容分發、合辦組織了會議、並共同創立最有可能是第一個專門為開源社區量身定製的德國基金會。人生哲學對於我來說,開源並不意味著僅僅是許可證模式、或開發模式,它還是相互尊重的開放心態、信任新手、對他人意見的重視、共同的目標、共同的理想等,開源還涉及數據隱私、民權、自由知識 開放標準等等。我將之總結為這是一種生活的哲學。
  • GitHub 給安全行業的四大啟示 - OSCHINA - 中文開源技術交流社區
    直到今天,安全行業才逐漸開始意識到開源社區已信奉多年的天條:協作才是創新的關鍵所在。數月後Roberts在巴黎與jipegit共進晚餐時感慨萬千:GitHub的魅力在於,它能讓這個世界上互不認識的人也能達成協作,甚至成為朋友。可以說,GitHub重新定義了團隊的邊界。