算起來,加入觸控已經一年。
回顧過去的一年時間的成績,自己是相當不滿意的。當然,原因都在我這個團隊 leader。趕在馬年最后幾天,對過去一年做一個總結。找到存在的問題,才能在來年做得更好。
<br />
總結過去一年最大的問題,有幾點:
- 細節(jié)沒有做到極致
- 錯誤的技術選型
- 未能調和內部利益沖突
最初,我設定的目標包括:
- quick-cocos2d-x 繼續(xù)擴大用戶規(guī)模
- 場景/UI編輯器
- 游戲服務端
而最終結果是:
- quick-cocos2d-x 的發(fā)展遇到瓶頸
- 編輯器項目取消
- 游戲服務端延遲一年才產品化
<br />
為什么 quick-cocos2d-x 的發(fā)展會遇到瓶頸
quick-cocos2d-x 是一個基于 cocos2d-lua 開發(fā)的定制版游戲引擎。在推出后之所以受到開發(fā)者的歡迎,歸根結底就是“好用”二字。但在加入觸控后,雖然對產品做了很大程度的優(yōu)化,但在細節(jié)上卻沒有繼續(xù)提高。
游戲引擎的核心是功能和可靠性。但在開發(fā)者每天使用產品的過程中,圍繞引擎做的細節(jié)工作卻決定了開發(fā)者對游戲引擎的使用體驗。
quick-cocos2d-x 出現時,cocos2d-lua 只能說處于“可用”狀態(tài)。而 quick-cocos2d-x 借鑒了 Corona SDK 的易用性,封裝了更簡單易用的開發(fā)框架、提供了高效的模擬器,以及全中文的文檔。這三點讓 quick-cocos2d-x 達到了“好用”的程度。
從“可用”提升到“好用”,quick-cocos2d-x 靠口碑傳播獲得了大量用戶。而要從“好用”繼續(xù)提升到“很好用”,就需要在細節(jié)上繼續(xù)下功夫了。正是因為沒有做到“很好用”,所以 quick-cocos2d-x 的發(fā)展遇到了瓶頸。
<br />
舉一個最簡單的例子:如何讓開發(fā)者更快的在模擬器中打開項目。
開發(fā)者每天開始工作,第一件事就是打開代碼編輯器,第二件事就是啟動模擬器。在編輯器中打開項目、編寫代碼;在模擬器中打開項目、查看效果。
現在幾乎所有的編輯器在啟動時,都會自動打開上次退出時沒有關閉的項目,并定位到退出時正在編輯的文件和位置。這其實就是讓用戶以最精簡的步驟進入工作環(huán)境。
但是 quick-cocos2d-x 的模擬器卻沒有做到這個功能。每次啟動模擬器后,還需要通過菜單、對話框等步驟,點上好幾次鼠標才能打開項目。如果不小心把模擬器關閉了,下次啟動模擬器還需要重復上述過程。雖然每一次也就不到30秒,但這種無趣的操作每天重復很多次時,就會讓用戶覺得難受了。
所以后來我為 Windows 版的 quick-cocos2d-x 模擬器添加了創(chuàng)建快捷方式的功能。開發(fā)者用模擬器打開一個項目后,可以通過菜單創(chuàng)建一個快捷方式放到桌面上,下次雙擊快捷方式就可以啟動模擬器并打開指定項目了。后續(xù)還增加了最近打開項目列表菜單,進一步簡化了打開已有項目的操作。
但這些功能其實都不如增加一個“啟動時自動載入項目”選項。這樣每天可以為一個開發(fā)者節(jié)約數十次鼠標點擊,用戶體驗會有明顯的提升。
就是這樣一個小小的功能,不是做不到,也不是不能做,而是沒有想到。那為什么沒想到呢?還是“沒有用心”。
<br />
創(chuàng)造 quick-cocos2d-x 的初衷,是因為我在用 cocos2d-lua 做游戲時覺得不好用。所以我以改進自己團隊的使用體驗為出發(fā)點,完善了 cocos2d-lua,并推出 quick-cocos2d-x。
而當我加入觸控后,沒有再開發(fā)游戲,想得更多的是如何做一些高大上的產品。結果就忽略了在細節(jié)上繼續(xù)提升產品體驗。
經常聽到看到說做產品要“走心”,其實自己也犯了同樣的錯誤。
<br />
為什么編輯器項目會取消
在 2013 年年底,我就決定要做一個編輯器。因為當時我的游戲團隊已經為一款塔防游戲開發(fā)了一個功能很強大的編輯器,可以基于這個塔防編輯器開發(fā)出一個通用編輯器。如果按照原本的設計,那么 2014 年肯定能夠看到一個出色的編輯器。
可惜在加入觸控后,覺得以前那種“土法煉鋼”的編輯器太low了,必須做一個高大上的。所以在技術選型時,沒有做深入調研就選擇了 Qt。
毫無疑問,Qt 簡直堪稱“天坑”,活埋一堆人都不帶痕跡的。不過這真不是 Qt 的錯,還是自己的草率決定導致整個團隊在 Qt 上浪費了整整 4 個月時間后,發(fā)現 Qt 真不行。
而回頭再看,當初的“土法煉鋼”其實才是真正正確的路子,但此時由于各種原因編輯器已經沒有繼續(xù)開發(fā)的必要性了。這完全就是一個盲目追求“高大上”導致錯失市場時機的經典案例。
編輯器項目的取消除了導致資源浪費,對團隊成員的積極性也有明顯影響。因為大家為了一個目標付出幾個月的努力后,卻發(fā)現此路不通,這種挫敗感是非常強烈的。雖然后來我們找到了新的產品方向,但也花了一段時間大家才恢復過來。
~
為什么游戲服務端延遲一年才產品化
在加入觸控之前,我就已經有了一個開源的游戲服務端項目,可以讓開發(fā)者使用 Lua 腳本語言來編寫游戲服務端邏輯。
這個項目最大的好處就是統(tǒng)一了客戶端和服務端的開發(fā)語言,在解決接口一致性、共享邏輯代碼上具有無可比擬的優(yōu)勢。所以這個項目開源后,馬上就有其他開發(fā)商也用在自己的游戲里。而在市場上,專用的游戲服務端框架結合第三方云計算平臺還是空白,如果借鑒 heroku.com、LeanCloud、APICloud 的模式,是有很大機會的。所以加入觸控后,我極力想推動這個項目的立項。
讓人郁悶的事情在于各種復雜的人際關系和內部利益沖突,使得這個項目不但無法立項,連基本的開發(fā)人員投入都爭取不到。所以接下來的一年,游戲服務端項目一直處于一種“沉默”開發(fā)狀態(tài)。
隨著年底時,底層的大規(guī)模調整完成,以及文檔、開發(fā)工具、監(jiān)控運維工具的完善,這個項目才真正接近了產品化的程度。
萬幸的是一年后市場上還是沒有類似的產品出現,所以機會仍然存在。
<br />
2015羊年
在觸控的一年,對我個人來說其實是有很大收獲的。熟悉了如何在大公司的環(huán)境里爭取機會、如何與其他團隊協助、如何平衡利益與沖突。所以接下來的一年,我會堅定的推進預定目標。
但要達到目標,還需要做好下面幾點:
- 做減法:裁減掉所有非核心目標、將沒有技術含量的工作盡可能自動化。
- 注重細節(jié):在產品設計上,更加用心尋找細節(jié)優(yōu)化點。
- 提升管理水平:更完備的前期調研,避免技術選型錯誤。制訂更細致的研發(fā)計劃,減小有限人力資源的浪費。
- 爭取資源:更加積極主動的為團隊爭取更多資源,不管是人力還是PR支持。
-EOF-