對話Ubuntu Tweak作者:站在用戶的角度玩Linux
原創(chuàng)【51CTO獨家專訪】前不久,Ubuntu上流行的優(yōu)化軟件Ubuntu Tweak的開發(fā)者周鼎剛剛來到了北京,成為了Ubuntu背后的公司——Canonical公司的一位員工。從一開始的第三方Ubuntu開發(fā)者到現(xiàn)在成為Canonical員工,周鼎對于當(dāng)下Linux桌面的發(fā)展情況和Ubuntu在這個市場中的定位是如何理解的?下面請看本次專訪實錄——
51CTO:先聊聊你的網(wǎng)名吧。Tualatrix這個名字,似乎是Ubuntu Tweak的早期開發(fā)代號,Cyrix和Tualatin拼起來形成的?而圖拉鼎應(yīng)該就是Tualatin的音譯了。這兩個詞跟你有什么特別的關(guān)系嗎?
周鼎:其實是先有我的網(wǎng)名,再有Ubuntu Tweak的。Tualatrix這個名字起源于我的中學(xué)時代,那個時候剛剛開始上網(wǎng),喜歡在網(wǎng)上東注冊一個東西西注冊一個東西,就發(fā)現(xiàn)我名字的拼音在很多地方都已經(jīng)被人注冊了。當(dāng)時對硬件比較感興趣,我們家***臺電腦的CPU代號是Cyrix,那臺電腦非常老了;后來更新?lián)Q代的時候升級到Tualatin,就是賽揚三的代號,于是就用這兩個CPU代號組合一下,生造了Tualatrix這個名字,算是成了我的網(wǎng)絡(luò)ID吧。那時候是2000年左右。
51CTO:那這個網(wǎng)名是歷史很久了。后來你最初接觸Linux是在大一的時候?
周鼎:對,當(dāng)時是9月份開學(xué)嗎,大概是11月開始接觸的。
當(dāng)時是在學(xué)C語言,然后一個網(wǎng)友說學(xué)C語言***在Linux平臺上,就這么開始玩的。***個用的其實是Fedora 6。
51CTO:***個接觸的是Fedora Core?
周鼎:對,不過一開始接觸一個星期就放棄了,開始用Ubuntu了。你猜猜是什么原因?
51CTO:因為找不到軟件源么?
周鼎:嗯,是這個原因。因為06年那時候Ubuntu社區(qū)已經(jīng)相當(dāng)成熟了,在國內(nèi)各大高校,還有一些電信機(jī)房,都有源。cn99你知道吧,實際上就是現(xiàn)在的163源。那時候Ubuntu的源非常多,中國南北都有,很容易找到一個離你比較近、速度比較快的。在使用Fedora的時候,更新這些太麻煩了,后來用到Ubuntu就輕松多了,裝個軟件非常方便。
對于初學(xué)者來說,你發(fā)現(xiàn)裝個軟件都裝不上,就比較麻煩。這一點是最重要的。
51CTO:那之后一直使用Ubuntu也是因為源的關(guān)系么?
周鼎:之后其實我嘗試過很多其他發(fā)行版,比如Gentoo,ArchLinux,openSUSE。用的時間最長的其實是Gentoo,用了整整一年多吧,僅次于Ubuntu。用Gentoo其實真的能學(xué)到很多東西。
51CTO:關(guān)于開發(fā)方面的東西?
周鼎:倒不是開發(fā),僅僅是針對Linux本身,就是你可以知道Linux到底是怎么一回事。
51CTO:有點像是系統(tǒng)管理那方面的東西?
周鼎:對,有點像是SA,運維方面的。玩過Gentoo的人,我覺得都特別適合做運維方面的。我認(rèn)識的幾個做SA的朋友,他們都用過Gentoo或者正在用Gentoo,幾乎都是這樣。
51CTO:那是很有意思。那你在接觸Linux之前,做過開發(fā)么?
周鼎:其實中學(xué)那會兒開始上網(wǎng),最初就是因為對Web開發(fā)感興趣。但那個時候不懂,以為做個靜態(tài)頁面就是Web開發(fā)了。那個時候比較喜歡做網(wǎng)頁,還不是網(wǎng)站,就是個人頁面那樣的。
51CTO:是你做過的那個LDCN嗎?
周鼎:哦,那個LDCN已經(jīng)是大學(xué)時候做的了,Linux桌面中文網(wǎng)。中學(xué)的時候就是做網(wǎng)頁做動畫,F(xiàn)lash那些。
51CTO:那后來大學(xué)做網(wǎng)站是用什么?PHP么?
周鼎:大學(xué)那會做網(wǎng)站,主要是用現(xiàn)成的CMS框架,比如Drupal、WordPress搭建的。后來覺得限制太多,于是自己開始學(xué)習(xí)真正的Web開發(fā)。***個接觸的應(yīng)該是Python了,用Django框架來做動態(tài)網(wǎng)站。Python在國外很流行,在國內(nèi)也正在流行起來。特別是北京這邊,有個豆瓣帶頭。
51CTO:的確是這樣。接下來聊聊Ubuntu方面的話題。你在進(jìn)行Ubuntu Tweak開發(fā)的時候,和其他Ubuntu開發(fā)者接觸多么?
周鼎:實際上從有這個想法到把它開發(fā)出來,基本上都是一個人開發(fā)。等到用戶多了,有一些人感興趣了,就有人來主動幫助你。其實都是這樣,你要先把東西做出來以后,才有人來關(guān)注你幫助你,就這樣才接觸到Ubuntu社區(qū)里那些開發(fā)者。剛開始很多東西都不懂,比如ppa你知道嗎,就是自動打包發(fā)布的比較方便的一個途徑。剛開始我是自己打包,自己發(fā)布,讓別人再來下載;后來就有人告訴我,去Launchpad注冊,去搞個ppa,這樣軟件的發(fā)布和更新都比較方便。
51CTO:那你其實一開始還不是在Launchpad上,就是單包發(fā)布?
周鼎:嗯,一開始我是在Google Code上做,后來才轉(zhuǎn)到Launchpad上。這些都是后來一些有經(jīng)驗的人告訴我的,算是有個引路人吧。其實現(xiàn)在如果有人對Ubuntu開發(fā)感興趣的話,我肯定會告訴他這些步驟,不會讓他走彎路。我一開始算是走了不少彎路。這些東西都需要有人來引導(dǎo)比較好。
51CTO:那你一開始是在郵件列表里發(fā)布,然后其他人在郵件里給你指導(dǎo)么?
周鼎:哦,不是在郵件列表里面。那時我注冊了個域名,搞了個Ubuntu Tweak的英文官方網(wǎng)站。我覺得這個比較重要,因為你開發(fā)的東西,如果不用英文的,國內(nèi)開發(fā)這方面的人比較少(當(dāng)然現(xiàn)在多一些了),就不容易推廣。我當(dāng)時雖然說英語比較差,各方面都不懂,但我還是用英語發(fā)布出來,現(xiàn)在想來是非常正確的選擇。
51CTO:那現(xiàn)在你和其他開發(fā)者主要是怎樣溝通呢?
周鼎:現(xiàn)在這段時間其實開發(fā)沒以前那么活躍了,因為事情比較多?,F(xiàn)在主要在Launchpad上比較多吧。
其實我自己沒建過郵件列表?;旧习l(fā)布新版本的時候,我就在Blog上更新一下。然后用戶和開發(fā)者,主要是用戶,就會在Blog后面評論,也會提一些請求,比如“請支持Debian吧”,“請支持Fedora吧”之類的。這些比較多,但我一般也不會特別去回復(fù),因為很早就回復(fù)過了。其實我很早推出過一個Fedora測試版,不過也很久沒管了。
最主要的還是Launchpad上的bug報告。Launchpad上有兩個主要的功能,一個是bug報告,還有一個是問答(Answers),可以向開發(fā)者提一些問題,請求加入一些新特性之類的。人家也會通過報bug的方式提供一些建議,這種方式的溝通比較多。
51CTO:那你后來跟其他項目的人是怎么認(rèn)識的?比如Debian的Aron Xu,和紅帽的Caspar Zhang他們?
周鼎:好像也不是因為Ubuntu Tweak這個項目認(rèn)識的。因為我除了開發(fā)Ubuntu Tweak之外,還玩很多Linux其他方面的東西。比如09年、10年那會兒,喜歡研究圖形方面的新技術(shù),玩了之后基本都會寫一篇文章,跟中國這邊的社區(qū)主要是通過這種方式交流?;旧蠈懥宋恼?,人家會來你這里留言,然后就互相加好友,也會討論一些技術(shù)之類的。
最簡單的總結(jié)其實就兩個字:分享。我把我知道的分享出去,然后感興趣自然的也就找上來了。
51CTO:那么就你所知,其他Canonical的員工是不是也有很多像你這樣的情況,一開始是Ubuntu第三方開發(fā)者的?
周鼎:那個Compiz你知道嗎?Compiz的開發(fā)者smspillaz之前也是一個獨立開發(fā)者,現(xiàn)在也是Canonical的員工。
51CTO:Compiz好像已經(jīng)內(nèi)置在Ubuntu中了吧?
周鼎:它已經(jīng)內(nèi)置了很長一段時間了。但是因為Unity的原因,有一些變化。你也知道Unity是Ubuntu 11.04開始的默認(rèn)桌面,是高度整合的桌面環(huán)境,而Compiz以前是一個比較松散的、通過插件來實現(xiàn)各種效果的,所以把Compiz的作者招進(jìn)來,可能是想把Unity做的更好,提供更智能的使用效果。當(dāng)然我不是桌面那邊的,這只是我猜的。Compiz是通用的,在所有發(fā)行版上都可以用。通用,就會犧牲其他方面的一些東西。而現(xiàn)在在Unity上,就可以根據(jù)發(fā)展的需要做相應(yīng)的調(diào)整。
51CTO:嗯。接下來這個問題是很多人一直以來對Ubuntu的質(zhì)疑,說Ubuntu對Linux的貢獻(xiàn)比較少。一個是說Ubuntu對Linux內(nèi)核的代碼貢獻(xiàn)少,另一個是Debian社區(qū)的人說Ubuntu開發(fā)的二進(jìn)制包跟Debian不兼容之類的。對于這一點,你是怎樣看的?
周鼎:對***個問題,我覺得這是非常工程師的想法。一想起Ubuntu不好就說它對內(nèi)核貢獻(xiàn)少,我覺得這完全沒有從用戶的角度去想。實際上市場是非常重要的,你覺得呢?
據(jù)我所知,我們很多玩Linux的朋友,都會有一個共識。用一句比較流行的話來說就是,“Ubuntu是我們的初戀”。就是說,即使他現(xiàn)在在用Fedora,或者在用Debian,或者已經(jīng)在紅帽或其他家工作了,但是我周圍玩Linux的這些朋友,基本都是一開始因為Ubuntu而喜歡上Linux,從而最終把它當(dāng)作自己的職業(yè)的。所以說你覺得這是不是貢獻(xiàn)?
51CTO:嗯,這是一種比較人文的方式。
周鼎:用戶方面就更不用說了。我是從一個開發(fā)者的角度,應(yīng)該說Ubuntu把我們普通用戶,把我們計算機(jī)系的學(xué)生,領(lǐng)進(jìn)門了——至少沒被Linux的難用給嚇跑。然后社區(qū)比較成熟,人又比較多,你有什么問題了,可以上網(wǎng)問,就這樣把我們留在社區(qū)里了。不然的話,你用一個比較難用的發(fā)行版,玩了幾天,到處都是英文的東西,然后問個問題都沒人答,可能過幾天就不玩了。
再回到最早那個話題。如果我最早用Fedora 6,用了幾天,又沒源,又沒Ubuntu的話,可能我以后就再也不玩Linux了。這么難用的系統(tǒng),我干嘛要用?所以我覺得,這些貢獻(xiàn)不是用幾個補(bǔ)丁,用幾千行代碼來衡量的。
51CTO:嗯。那么關(guān)于Debian社區(qū)那邊的想法呢?
周鼎:你說二進(jìn)制不兼容的問題啊。這個問題主要是因為兩邊的開發(fā)模式不同。你也知道Ubuntu是六個月一次的,但是Debian的話,則沒有具體的時間表。當(dāng)然Debian倒是也有發(fā)布計劃,比如一年,18個月這樣,但是它跳票會比較嚴(yán)重。這就會造成一個情況,因為Debian它要保證很穩(wěn)定,底層的庫都會保持在一個穩(wěn)定的版本;但是Ubuntu會用一個比較新一點的,就是從Debian測試版里面取出來的東西,作為Ubuntu下一個版本的基礎(chǔ)。所以說,因為它是比較底層的庫,然后Ubuntu上的很多軟件是在比較新的庫上開發(fā)出來的,在底層庫版本較低的Debian穩(wěn)定版上自然無法正常的跑起來。
所以這個問題是兩個發(fā)行版開發(fā)模式不協(xié)調(diào)造成的,不是說Ubuntu專門為了搞出來,不跟Debian兼容。其實Ubuntu上能共享的東西都是盡量共享出來的。
據(jù)我所知,好象是從去年開始的,Canonical鼓勵開發(fā)者直接在上游,就是Debian那里進(jìn)行一些更改,在Ubuntu這邊就直接可以拿過來用。不像以前是Debian那邊開發(fā)者進(jìn)行更改,然后Ubuntu這邊開發(fā)者拿過來再更改,既浪費精力,兩邊又協(xié)調(diào)不起來?,F(xiàn)在可能還不是所有的包都在上游修改,但至少有部分包已經(jīng)在這樣做了。
我覺得這幾年,Debian跟Ubuntu的關(guān)系應(yīng)該比最初那幾年好不少,沒看到那么多爭議了。再過幾年應(yīng)該雙方關(guān)系都會比較好,可以一起做些什么東西。
51CTO:那就***一個問題了。按照你個人的理解,你認(rèn)為Ubuntu在未來三年中發(fā)展的關(guān)鍵在哪里?是更好的用戶體驗,更強(qiáng)的公關(guān)/市場,跟Dell等硬件廠商的緊密合作,應(yīng)用軟件商店,或是別的什么方面?
周鼎:呃,我覺得你已經(jīng)把一些重點都列出來了:)
***個是更好的用戶體驗,這個很明顯是比較重要。為什么Ubuntu會開發(fā)Unity?就是為了在用戶體驗上、用戶界面上自己進(jìn)行更改。你知道Gnome 3、KDE 4,這些都是社區(qū)控制的,有些地方并不是很合理。比如Gnome 3,有很簡單的兩個例子,它的窗口沒有最小化按鈕,甚至連Power Off關(guān)機(jī)鍵都沒有,你覺得這個是對用戶負(fù)責(zé)的表現(xiàn)嗎?明顯社區(qū)有時候也會昏了頭腦,做一些自以為是的更改。所以在這種情況下,由公司和社區(qū)一起開發(fā)Unity這個桌面,應(yīng)該是比較重要的一步吧。當(dāng)然現(xiàn)在用戶滿意度也還不是很高,也有一些抱怨,但總方向我認(rèn)為還是正確的。
然后有關(guān)市場方面,肯定也是非常重要的。你也看到市場上現(xiàn)在預(yù)裝了Ubuntu的,從最早Dell開始,09年還是08年那會兒有了***臺預(yù)裝Ubuntu的電腦。因為對于普通用戶而言,要自己裝系統(tǒng)的難度還是比較高的。雖然這幾年Ubuntu的安裝工具已經(jīng)非常傻瓜化了,但是要用戶自己去裝,還要自己下載ISO,還要自己弄U盤,有很多障礙。預(yù)裝的話,可以讓對電腦什么都不會的用戶,打開電腦就能用,這個是非常重要的一步。
包括Linux用戶經(jīng)常遇到的硬件驅(qū)動不兼容的問題,因為有時候用戶使用的新的硬件,但發(fā)行版的內(nèi)核一般都是稍微老一些的版本,就會遇到不支持的硬件。但如果是和硬件廠商一起預(yù)裝的版本,都是經(jīng)過嚴(yán)格的測試,就不會遇到這個問題。
軟件中心方面,也比較重要。我不知道你最近有沒有注意到一個趨勢,就是軟件中心里面收費的應(yīng)用,尤其是游戲,越來越多了。以前可能就兩三個游戲,但現(xiàn)在,尤其是國外的,經(jīng)常會有一些游戲加進(jìn)去。而且整體來看,軟件中心里面現(xiàn)在無論是收費的還是免費的軟件都越來越多。如果到了量變引起質(zhì)變的時候,人家就會愿意把軟件發(fā)布到Ubuntu這個系統(tǒng)上。實際上你知道Mac上的游戲是比較多的。我沒開發(fā)過游戲,但是我知道上面很多都是用的比較開放的,比如OpenGL的技術(shù),那么這個只要廠商愿意移植的話,移植到Linux上還是比較容易的。所以以后可能會有這樣一個趨勢,就是廠商會愿意把游戲移植到Linux上,并在Ubuntu軟件中心里面發(fā)行,畢竟支付和購買的系統(tǒng)也已經(jīng)成熟了。
51CTO:那現(xiàn)在比如說國內(nèi)的開發(fā)者想在Ubuntu軟件中心里面上應(yīng)用賣,也是可以的?
周鼎:整個流程其實我也不太清楚,但肯定也是有個審核,不會像Android菜市場那樣,想放什么就放什么,結(jié)果一些惡意的東西也都放上去了。
其實我最近看到的,不光是游戲,軟件中心里面也有一些商業(yè)軟件,比如Windows上的UltraEdit,也有其他平臺上一些知名度比較高的軟件,也已經(jīng)在Ubuntu軟件中心。這個在我06年開始玩的時候,還是不能想象的,Windows上的商業(yè)軟件,居然會登陸Linux平臺。但是現(xiàn)在我們也都看到這個趨勢了嘛。
51CTO:作為一個Ubuntu開發(fā)者,你還有其他希望補(bǔ)充的嗎?
周鼎:作為開發(fā)者的角度,其實現(xiàn)在Ubuntu一直在積極建立開發(fā)者社區(qū),你可以在Ubuntu的Wiki網(wǎng)站上看到一些開發(fā)者的信息,有一個叫做App Developer Week,應(yīng)用開發(fā)者周,一周的時間,在IRC上公開討論,比如今天講怎么給Compiz開發(fā)插件,明天講怎么用Python GTK開發(fā)軟件,也有講怎么用Qt開發(fā)。這個活動其實之前就有了,不過近一年來尤其的多。
然后就是,比如拿Unity來說,它有一個非常豐富的Wiki頁面,上面講的比較詳細(xì)的就是Unity的整個架構(gòu)和API。說道Unity的發(fā)展,有兩個比較重要的方面。一個是社區(qū),會不斷跟Unity提點建議,提交bug,或者有一點編程水平的人也會去修bug。這是一個比較好的趨勢,因為會有第三方的用戶,主動給你解決一些問題。還有就是Unity跟Google,說具體點就是Chrome的合作。Chrome***版,Chrome 13,就直接用了Unity的API。比如你Chrome在下載東西,Unity的Launch上面會顯示一個“1”,代表當(dāng)前有一個文件在下載,還有一個進(jìn)度條。
51CTO:已經(jīng)做到這個程度了?
周鼎:是的。其他第三方的整合就更多了,開發(fā)者開始在自己的軟件里整合Unity的一些高級特性。Unity現(xiàn)在發(fā)布不到半年,有這樣的發(fā)展,我覺得是非常快的。這些都是用戶能夠享受到,能夠直接看到的一些進(jìn)展。我覺得未來一年應(yīng)該也會像Windows 7一樣,出現(xiàn)越來越多的第三方軟件。
51CTO:嗯,希望如此!那么本次問題就到此結(jié)束,感謝周鼎接受我們的采訪!如果想了解更多與Ubuntu Tweak相關(guān)的信息,可訪問Ubuntu Tweak的官方網(wǎng)站(英文)。
【51CTO.com獨家特稿,轉(zhuǎn)載請注明原文作者和出處。】






