中國互聯網產品90%以上都是基於開源。 然而大部分開發者卻以「用」為主,缺乏真正融合的理念,對開源社區的回饋少之又少。 開發者應如何利用資源更好發展,建立起開放共贏的開源生態?這一問題一直困擾業內。
最近,諸多媒體對微軟開放技術公司開源社區高級總監GianugoRabellino和微軟開放技術有限公司總經理雲浪生進行了採訪,其中關於中國的開源現狀和未來前景等問題的討論很有意思,特別拿到專訪速記,進行整理,分享給大家。
以下是採訪實錄摘選:
中國開源與互聯網一同輝煌
雲浪生認為,中國互聯網做的產品,90%以上都是基於開源來做的。 中國軟體的發展是斷代的,直接跨過了真正實現桌面軟體發展的輝煌時期,躍至互聯網開發。 中國互聯網開發是從電子商務,還有QQ這樣的通訊軟體做起來的,中國在這塊做得非常不錯。 開源在中國會發展的非常好,因為開源跟互聯網是密切相關。 有了互聯網,開源才真正取得了當下的輝煌。
如何看待開源和開放的的關係?
雲浪生:在這個「移動為先,雲為先」的時代,伴隨著技術飛躍的同時,觀念以機器為中心轉至以人為中心。 在不同的環境、不同的平臺下,各種技術如何很好地融合在一起至關重要,從而也突出了開放的重要性。 微軟在標準(如系統API)、開源、社區和互通性等方面做的都不錯。
互聯網企業也會將產品繼續開源,這樣的趨勢很好。
雲浪生:這是將來的趨勢,微軟也在往這個方向走。 硬體變成了消費品,變得很便宜了,消費品的利潤是非常薄的。 現在軟體也在逐漸變成一個消費品,想靠軟體許可證去賺錢,已經非常困難了,應該靠增加額外的價值去做生意。 很多公司把自己的東西拿出來,去開源,它有大量的使用者,通過各種別的方式賺錢,Facebook就是。 這是趨勢。 這也是為什麼開源的前景會越來越好,因為願意把自己的技術分享出來的公司會越來越多。
代碼維護成本高,是否是開源的重要因素?
雲浪生:是的,代碼需要長期的去維護,改進,投資非常高,現在開發模式都是快速疊加,第一次把它做出來可能花不了太大的力量,跟長期的五年、十年的開銷比起來還是很小的。 你把它開放出來,可以讓這個群體説明你來做這個事情,從中你可以得到很多收益。
落地生根的中國開源社區還需繼續發展
要打造一個活躍的開源社區,微軟開放技術公司開源社區高級總監GianugoRabellino認為,開源的治理需要確定兩大規則:規則一,社區本身的重要性超過代碼;規則二,要讓個體開發者意識到,在一個開源的社區中, 工作起來是更加容易的。 」即在這個社區中,你做的事情別讓人反感,你要學會跟別人去協作,在你打造開源社區的架構時,一定要考慮到它的可擴充性」。
記者:美國有很多開源社區運營的很棒,如何看待中國的開源社區?
Gianugo Rabellino:中國做開源社區第一可以規模化,因為規模足夠大;第二,中國也有理工科教育的基礎;第三,中國人民有這樣的意願去做這樣的事情。 所以我對於中國社區的觀察就是,開源社區已經落地生根,而且成長得很快。 但是如果要讓中國開源社區有一個非常堅實成長基礎的話,還需要做到一些非常基石性的工作。
第一就是為開源定義。 最基本的一個開源軟體就是能夠允許人們在任何時候、任何地點都可以去用這個軟體。 在中國,軟體可以給你開源去用,接下來又要加一條,就是不可以商業化的去用它。 我覺得這完全就是對開源和善意使用的誤解。 因此我認為,中國的開源社區必須要保證一點:大家都對於開源有一個一致的認識,不要只把開源當做一個市場宣傳的理念去使用,而要遵守國際上開源軟體的規則去做。
未來開源社區的前景如何?
雲浪生:在中國開源社區不是小眾,是大眾的,基本上每個互聯網公司,他的基本技術全都是開源的。 現在的問題是,它們都是以用為主,沒有真正融入進去,受眾面是非常大,只是沒有非常成功的東西。 原因非常複雜,有些原因是英文的環境,你要用英文交流,去寫,這些大量的運作工作也不是非常容易的。 開源界很多社區領袖認為有些原因是溫飽問題,中國這邊的社會保障程度不是很高,社會保障程度高了以後,大家都不用去擔心這些問題,人貢獻的就多了。 另外跟企業、法律的完善都有關系。
怎麼樣去做這個事情呢?你要是真的願意去做,還是能做到的。 再往前走,這個情況會越來越好。
要推動中國開源往前發展,有哪方面的建議?
雲浪生:社區比代碼更重要。 在中國,要想把開源做好,最重要的事情就是要把社區做好。 就像中國足球一樣,不是找到一個足球明星就可以把中國足球變好了,而是如何把這個系統做好。 社區是一個很綜合的概念,怎麼去把它做好,不光是用,還要如何去回饋,甚至在一些主要的軟體開源的專案裡起到主導的作用。 要保持生命力,就要融入主流,甚至在主流上起到決定性的作用。
要盈利,開源可以通過服務來實現
Cocos2d-x背後的公司谷歌科技,華爾街的分析師認為開源的遊戲引擎是沒有價值的,一般這種開源專案存在商業化的問題,很多遊戲公司很難直接看到在業務上的回報,沒有廠家的投入的話,最後這個遊戲引擎沒人用了,或者代碼就沒了。 所以從開源引擎這個例子來看,雲浪生認為,開源和盈利需要平衡。
開源的盈利模式會是怎麼樣的?
雲浪生:大家一直都在爭論開源如何賺錢。 這是一個非常大的問題,將來軟體通過許可證去賣錢會越來越少。 硬體被商品化後盈利很薄,軟體也出現這種情況。 像谷歌、Facebook等這些公司,都不是靠賣軟體賺錢,而是靠服務,或者用這個軟體真正給使用者提供的價值來賺錢。 如果能提供有價值的東西,公司就可以長期存在下去。 開源引擎公司同樣不是靠許可證賺錢,它要證明對使用者是有價值的。
Gianugo Rabellino:首先,從業務戰略角度來說,採納率非常重要。 作為開發平臺的公司,需要找到一種方式,把高採納率轉化成盈利的專案。
開發者和開源的關係?
Gianugo Rabellino:我說三點。
第一點,我們和各種各樣的技術平臺都是合作的關係,只要是開發人員用的這些技術,我們都是跟他們合作的。
第二點,作為一個開發人員,在目前你要選擇一個技術的話,是否是開源以及這個開源專案其後的開源社區品質如何只是要考慮的諸多因素中的一個。 事實是,如果技術本身就不好,即使在它上面撒一些開源的調料,也不會變得更好。
第三點,在這樣一個全新的開放的世界,如果只是談開源和閉源的關係的話,本身就太有局限性了。 同時我們還要考慮其他的一些元素,比如開放標準、社區以及互通性。 如今一個非常明確的業務需求就是要做跨平臺的開發,作為一家公司,需要考慮業務目標是什麼,達成業務目標的最佳技術是什麼。 而在這個考慮的過程中,開放性是一個關鍵的因素。