[轉]中國Linux程序員生存現狀

Linux,在很多人看來,是一個既熟悉又陌生的名詞,好像時時在我們的周圍,但又抓不到它真實的一面。在我們的印象中,Linux同着網絡經濟的泡沫息息相關。隨着網絡經濟的江河日下,Linux的聲音也低沉了下來,只是偶爾揮動幾下手臂,便又消失的無影無蹤。不過,當我們爲C#還是Java誰更有前途爭論的不亦樂乎的時候,希望視線中不要忽視還有一批在Linux上做開發和研究的程序員。雖然相對於Windows平臺的開發者數量,他們少的可憐,但他們也是一股新力量,同樣在爲中國軟件產業的發展創造着價值。現在就讓我們走近這些Linux程序員,瞭解他們的工作和內心世界吧!

中國有多少Linux程序員?他們收入高嗎?

談到Linux程序員的數量,我們很難得到確切的數據。實際上,從宏觀上來講,單以自由軟件的範疇,有很多使用Perl、PHP等腳本語言開發的程序員,這些程序能夠在Linux系統平臺上運行。但大家認爲做這些工作的還不能算是Linux程序員,因爲這些開發往往也是在Windows平臺上進行的。除去此種類型的程序員,真正的Linux程序員的便寥寥無幾了。有人這樣計算:國內擁有一百名左右開發人員的Linux軟件公司不過幾家,比如紅旗、中軟、TurboLinux、衝浪等。除此之外,還有十家左右的冠以Linux名稱的小公司,這些公司的程序員一般不超過二三十人,此外還有一些沒有使用Linux名稱,但事實上也部分從事Linux相關開發的公司,而這樣的公司也不會超過幾十家。

當然除了公司之外,還有很大一部分做Linux開發研究的集中高等院校,比如中科院、清華大學、北大大學、浙江大學,還有杭州理工大學等。因爲Linux在很大層面上仍是具有科研價值的載體,另一方面,這些學校由於歷史的原因或者同國外的Linux機構有很好的合作關係,還有學校也開設了相應的課程。這些院校也是Linux技術發展最爲迅速,氣氛最爲活躍的場所,無論是Linux的講座還是沙龍都會吸引衆多學生和程序員的參與。

從互聯網上看,國內最大的Linux論壇LinuxForum有會員五萬名,除去很大一部分參與的愛好者,有人認爲國內Linux程序員的數目不超過一萬。既然做linux開發的程序員數目很少,物以稀爲貴,自然他們的收入也高一些。但絕大部分Linux公司現在還沒有盈利,而且隨着Dot Com經濟的破滅,這些公司也不可能支付天價的工資,所以在我們的採訪中,瞭解到高出的程度也是非常有限的,有位市場人員估計同等水平的開發人員,大概Linux比Windows平臺做開發的工資要高30%左右。

Linux程序員在做什麼?

就此問題我們採訪了國內幾家最大的Linux軟件廠商。紅旗Linux嵌入事業部高級經理魏永明說:“公司現在的開發方向有幾個:系統安全產品、服務器軟件、嵌入式軟件開發,此外還有桌面的Linux系統,而嵌入式軟件開發部門的人員是最多的。”TurboLinux公司的市場負責人說他們現在的主要在做Linux中文化產品和相應的解決方案,比如Mail和Web系統等,另外也從事一些對操作系統核心的優化、調整,但具體到操作系統的核心機制研究,一般主要是其公司的研究機構在國外做。

除了這些在公司接觸到Linux開發的程序員之外,很多人也在做一些項目的開發。由於Linux屬於自由軟件(OpenSource)的範疇,所以這些項目也同國際上的OpenSource機構有密切的合作關係。比如魏永明現在就在做一個MiniGUI的項目,此外有國防科技大學的章文嵩也在做一個有國際影響的項目LVS(Linux集羣系統),在這些項目的周圍,往往團結着很多的Linux程序員,他們從中學習到了很多知識,並以此爲樂。

實際上,國內Linux開發的方向現在仍然存在一些問題,最重要的就是技術和業務方向不專一。在這方面,美國和德國公司要成熟的多,也比我們踏實,每個公司都“術業有專攻”,比如美國HardHat公司,就專門研究Linux嵌入式操作系統的基本系統,並憑此牢牢把握住了自己的技術優勢。而芬蘭的一家公司Troll TECH就專注於做嵌入式系統的操作界面QT,此外還有很多人都知道的Opera公司也將自己的注意力集中到嵌入操作系統中的瀏覽器技術。而國內現在還缺少做Linux開發的專業化公司,現實的情況是,很多公司大包大攬,但最終什麼也沒有做成。

Linux程序員如何提高自己的技術水平?

Linux出現的時間很晚,而Linux真正進入到應用層,尤其是進入中國的時間也就是在一九九八年底左右。沒有時間和積累,任何事物都不可能完美的發展,所以有人說中國Linux處於初級的初級階段。在這種現實情況下,很難找到更多高質量的書籍,也沒有更多好的老師,Linux程序員的學習途徑有哪些呢?在我們採訪中,深深體會到了自力更生的含義,也再次領略到了網絡帶給開發者的好處。

“國內Linux程序員數目很少,自然圈子也很小。這樣也就要求我們不得不從內部更好的挖掘潛能。”在Linux軟件公司中,內部會有一些做法,除了內部網上的一些技術交流,他們還經常座談,某人在某個方面技術有一定的特長或者心得體會,就會上臺給大家講。“此外我們經常性的要求每個人都講講自己最近遇到的問題,讓所有人都參與解決。這樣不僅可以提高大家的技術水平,還凝聚了開發團隊。”

“在公司內部,做項目或者產品開發的過程中,我們也會着重的使用一些軟件過程控制方法來促進技術提升。比如有一種軟件工程方法Extreme Programming(譯:編程風暴或極度編程),其中有幾種很好的方法。比如Pair Programming,就是成對編程,從嚴格意義上講,這種方法要求兩個人在同一臺機器上、同一個鍵盤前、完成同一項開發。而我們把這種方法簡化爲一種學習方法,並制定了一個規定,就是要求水平比較高的程序員每週都要帶領另外的程序員,利用一個或者兩個工作時間來做同一件事情,這個方法是很有效的。”

從外部交流方面,Linux程序員主要參加一些民間的交流團體,比如非常有名的AKA組織。這個組織最早是由清華大學發起、以信息技術研討爲主的協會。他們去年做了兩期面向大衆的Linux技術培訓,並得到了藍點和IBM的贊助,效果非常不錯。現在轉向了面向Linux專業的程序員和愛好者的團體。他們舉辦的講座也越來越專業,一般採用專題的形式,每週一次,主要講述Linux內核方面的技術,文件管理等等。每次講座,能容納數百人的教室都座無虛席,講座地點也主要集中在北大,清華,或者中科院。還有一種就是沙龍的形式,在北京大學有一個積極參與的AKA的成員,他經常幫助找場地來舉行聚會。另外還有像LinuxForum這樣的論壇或者IBM的Linux技術交流站點,很多Linux程序員也經常寫一些總結性的技術文章,相互交流。”

不過在我們的採訪中,發現國內大部分Linux程序員和國外的交流非常少,這是我們做的比較弱的一項。要知道Linux起源於國外,Linux技術發展的最成熟的也在國外,如何能更好的同國外的技術同步,應該是每個Linux程序員感到非常頭疼的問題,而這個問題的產生想來同國內程序員英文語言的交流能力差有密切的關係。自力更生不是壞事,但學學“拿來主義”應該更有好處!

中國Linux開發氛圍如何?

一般說來,國外自由軟件的氛圍非常的好,比如一個人去做某個自由軟件項目,很快周圍就會聚集一些人關注,並且會幫助他做版本的檢錯和測試。反觀國內,魏永明說自己在開始做MiniGui項目的時候,很長一段時間仍然還是一個人做核心的工作,雖然有一些人也問一些問題,但從總體上看,受關注的程度同國外是沒有辦法相比的。沒有人花費時間和精力來幫他做測試或者編寫一些文檔的工作,頂多就是寫一個心得體會,而這樣的人也少的可憐。

不過目前這種情況正在逐漸好轉,國內越來越多的人開始關注自由軟件了。“國內整個Linux開發氛圍的改進是需要很長的一段時間的。但現在可以看到一點的曙光了。現在只要我們發行一個新版本,立刻就有一些人下載,並幫助測試Bug,發現了錯誤,就給我寫mail,一些用戶還寫了很多使用的文章,探討如何解決問題。這樣我們在下一個版本發佈的時候,便會把解決這些問題並修改我們的核心。所以我認爲,自由軟件的氛圍正在向好的方面轉變。”

談到軟件的協作開發,魏永明認爲國內的協同開發還是比較原始的。國外的做法一般是用CVS,把CVS服務器建在網絡上,然後大家協同開發,隨時可以保持同步。但國內很多是在公司內部有CVS,發佈之後,面向大衆發放測試的過程中,只是打包成程序之後給用戶使用測試,並沒有使用CVS來進行控制。“所以我們下一步,準備等版本穩定之後,建立外部的CVS服務器。”

國內程序員之間交流還有一個奇怪的現象:就是大家都喜愛論壇。但在國外,使用最多的是兩種途徑:一種是郵件列表,一種是新聞組。國內的開發者並不太喜歡這兩種方式。“當然在國內找一種免費的郵件列表服務是很困難的。我曾經找過很多,都不好用,後來我在美國一個網站上建立了一個郵件列表,但很少有人蔘與進來。但當我開一個論壇的時候,很多人都會在上面發言,踊躍參與。”這個現象後面的深層原因是什麼呢?

Linux開發技術是不是很難?

TurboLinux公司研發部負責TurboHA開發的項目經理(TurboHA和章文嵩的LVS同屬集羣軟件,不過LVS是負載均衡集羣,TurboHA是高可用性集羣,分別適用於不同類型的服務。)於瀟洋認爲:”linux技術的難度未必比windows高多少,實際上,linux開發也分爲兩個層次:第一個層次,比如做內核、中間件、或者數據庫系統,這些要求對系統瞭解的非常清楚,C語言的功底非常紮實,對系統的開發工具鏈非常清楚,才能做這些工作。第二個層次就是做Linux上的應用開發,在linux中,有字符界面的開發和X下的開發,現在Linux環境下已經有了比較好的集成開發環境,也包括borland出品的kylix,如果要做應用開發的話,只要邁過了Linux命令的門檻,其他的和windows下面沒有什麼不同,即便是對於命令,你也會從中感受到linux的強大。比如做文本的字符串,在windows下面,必須要工具打開文本,搜索替換,但在linux下面只需要兩個命令就可以實現批量的替換。我認爲windows下面的程序員也很容易轉移到linux下面的開發工作。任何一個程序員沒有必要去害怕技術的堡壘。”

什麼樣的人做Linux程序員?

在我們採訪的很多Linux程序員中,主要的有兩種心態:一種是自身就看好linux的發展前景,認同linux的發展模式,尤其是自由軟件的精神。他們感覺Linux有很好的優勢,認爲在這個平臺上通過自己的努力,可以做出一些成就。而另外的便是很多人都有的遊歷心態,也就是打工者的心態。他們覺得做什麼都一樣,做Linux給的高一些,也就做這個好了。

Linux這種精神,這種開放源代碼的方式,對於哪些願意刨根問底、喜歡鑽研探索的程序員有很大的吸引力。他們認爲Windows上做開發的程序員,由於所處的層面已經很高,在開放的過程中,實際上並不瞭解程序是如何運作的。但在基於Linux的開發中,會對系統瞭解的很深入。水平非常高的hacker,甚至對自己軟件代碼產生的二進制數據流在計算機中的運行瞭如指掌。

另外一個角度上講,Linux上的開發範圍很廣,無論是Web服務器,還是MySQL、PHP程序的開發,都離不開Linux。事實上,Linux已經成爲了技術交流和發展的一塊非常好的土壤。

所以,如果你喜歡自由(Free)和控制(Control),如果你是一個願意去探索新技術、新事物的程序員,那可以試着去了解Linux,從中你會發現它會給你帶來很多其他平臺上沒有的東西。

Linux的發展前景

國內的Linux沒有得到更好的發展,也同反盜版力度不夠有一定的關係,由於反盜版的力度不夠,現有的企業沒有看到windows平臺上潛在的資金投入,在這方面,我們要向韓國和德國等國家學習,他們從政策上對linux扶持的力度更大。當然我們國家也在積極的扶持linux的發展。

此外諸如IBM等大公司投入資金大量的資金來從事Linux研究和推廣,他們如此看中Linux,一方面是從自己發展戰略考慮,因爲微軟對其地位產生的巨大挑戰,所以要樹立一個對手去挑戰微軟。與此同時,推廣Linux也可以促進其服務器的銷售,這些投入對linux的發展提供豐富的機會。

做linux的機會要多一些,比如做windows程序員,數目衆多,競爭也越來越激烈了。而相對來說,linux上做開發的程序員很少,只要你做一段時間,就可以做的很好。從提高技術實力方面講,因爲linux更接近底層,因此效果會更好的。

“從我個人的經歷看,開始大家都是由愛好者爲主,但現在,專業做Linux的公司比較務實了。去年做的時候,我們還給客戶一種沒有實力的感覺,但現在從市場的反饋來看,國內的Linux技術提高非常快,前景非常不錯,linux在未來的幾年會有大的發展。”魏永明對此非常自信。


後記:記得很多人曾經遺憾中國爲什麼沒有誕生比爾蓋茨和Linus這樣的軟件天才,很多人質問爲什麼中國的軟件技術只能圍繞着”中文”兩個字。但看看自己的周圍,很多人包括在學校期間不用擔心收入,課程負擔也不重,但就是很少有人蔘與技術的鑽研中,在空閒的時候,更多的是去QQ上聊天,去論壇灌水,很少有人靜下心來,花一些時間去鑽研技術。Linux現在提供了我們這樣一個機會,你有興趣嗎?

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章