Linux手機的前途似乎很少有人懷疑過。曾經做過的,現在正在做的,即將打算做的,在國內估計不下數十家公司。大家都想從中淘一桶金,不過大多是乘興而來敗興而歸,少則損失幾百萬,多則數千萬,有的甚至整個公司因此一厥不
振。在真正意義把Linux手機做成功的,在國內可以說曲指可數。本來以為可以靠開源軟件與國外大公司站在同一起跑線上的,結果還是起了大早趕了晚集。
Linux手機研發是一項浩大的工程,據說國外一般的估計是,Linux手機平台的研發至少要耗資2000萬美元,歷時3-5年時間才可能取得成功。當我們開始broncho項目時,有個Trolltech公司的老外發郵件給我們說,不要把你們的時間和資金浪費在GTK上了,MOTO和XXX(忘記了)公司耗資幾億美金,結果還是買了QT才搞成功的。
有那麼多開源軟件可以免費使用,看似只需要做下簡單的集成就行了,為什麼還會那樣難呢?據筆者的經驗來看,國內Linux手機研發要過五大難關:
人才關:人無疑是軟件開發中最重要的因素,而國內Linux開發方面的人才稀缺,真正參與到開源項目中的人更是鳳毛麟角。據這幾年的面試經驗來看,很多在簡歷上號稱有N年工作經驗,精通N多技術,面試之前讓我都誠惶誠恐的牛人,面試之後才發現其水平實在讓人難以恭維。後來聽人說高手是不會出來找工作的(都是工作機會找上門的),我才死心了,靜下心來做人才培養和團隊建議。即使有機會把一些高手聚集一起,以國內的企業文件和高手的特質來說>,讓他們溶合為一個團隊不是不可能,至少也是要花相當的時間才行。另外一方面就是團隊成員的穩定性,Linux手機研發相對門檻比較高,換人代價相對比較大,如果團隊沒有凝聚力,那就別想把它做成功了。在前一家公司,我見過一個日程模塊換了四個人,代碼亂七八糟,膨脹到3W多行,維護兩年後達到數百個BUG,整個模塊無人敢碰。
時間關:軟件工程裡關於時間比喻,用得最多的莫過了女人懷孩子了,一個女人十月懷胎可以生一個BABY,但十個女人不可能一個月把BABY生下來。軟件項目一樣,時間是必不可少的因素,人多只能在一定范圍內縮短時間。在國內,無論是個人還是公司,心浮氣躁的居多,半年以上的研發時間都是不可接受的,很多水貨手機正常項目周期是45天,要做3到5年時間,恐怕沒有老板願意去投資。結果大家都把計劃訂得相當短,我見過一些搞笑的計劃,我私下裡>說,他們能厲害到能在這麼短時間內搞定,我可能只有轉行了。計劃時間短了,老板同意立項了,接下來以進度為維一的目標,拼命趕工,計劃還是一再延期,老板給的壓力越來越大,所謂欲速則不達,結果可想而知。我見過一個名片模塊,從設計到提交測試只花了兩周時間,結果調試了兩年多時間,其中發現600多個BUG。(我非常慶幸broncho有老魏這樣高瞻遠矚的領導者,我們才能始終堅持質量第一進度第二的原則,每走一步都是真正前進了一步。)
穩定性:有位大師說過,要評估增加一個新特征需要多少時間相對容易,但很難評估將充滿BUG的代碼修改成最終發布的產品需要多少時間。實際幾乎所有Linux手機都把功能做出來了,多半是以犧牲質量為代價的,東西是出來了,>但到出產品的時間沒有人可以估計。聽說幾個公司把Linux手機做出來了,小批量生產之後,再也不敢生產了,原因就在於穩定性太差了。把這麼大項目通過調試和測試變穩定,可以說比推倒重來代價更大。有次和一個芯片廠家的銷售總監聊天,他見多識廣,開門見山就問我們項目的穩定性如何,他說現在大家做智能手機,面臨最大的問題是穩定性,特別是Linux智能手機,如果不能解決這個問題,什麼都白做了。前期我們在設計和編碼投入的大量精力沒有白費,經過這兩周的壓力測試,修改一些BUG之後,穩定性已經達到不錯的程度了。
擴展性:我的上司老魏有句口頭禅,做一款產品不容易嗎,閉著眼睛也可以搞定,做一個平台,在平台上建立一個產品線那才叫有挑戰。這話也是源自於前一家公司的一個項目,老魏是那個項目的事實上的負責人,歷時兩年多把那個項目做完了,到產品化時,幾個最基本的手法,調整屏幕大小,橫屏和國際化,居然都非常困難,原因是在設計時根本就沒有考慮到產品化的問題。後來我寫過一篇<建立手機平台的產品線>的BLOG, 沒有引起什麼反響,甚至連評論都沒有一條。不過讓我非常高興的是,收到了台灣著名的開源軟件高手黃敬群老師的來信,說想在他的報告中引用那篇BLOG。國內關於這方面的考慮實在太少了,部分原因可能是很多Linux手機的開發人員都是傳統嵌入時開發(動則就是幾W行匯編)轉過來的,還沒有意識到Linux智能手機與傳統嵌入式開發的不同吧。
特色關:現在水貨手機大部分都用MTK和展訊的方案,除了手機外觀之外,裡面的東西基本上都是一樣一模的,最多換一下鈴音和圖片而已。沒有特色就意料著軟件失去價值,只能拼硬件,從PC的經驗的來看,硬件的利潤是透明的,除了上游的芯片廠家外,下游的集成商只能賺點蠅頭小利。所以大家除了拼了價格之外還是拼價格,已經進入微利時代了,有什麼辦法呢,沒有研發實力,最終只能淪為代工廠。如果沒有特色,Linux手機的研發成本將無法消化,根本不可能與MTK的水貨機和Windows mobile等智能手機去競爭。