在互聯網時代如何開發一個成功的應用?先發放一萬份調查問卷,找幾十個人關在黑屋子里花兩年時間研發,然后期待著一旦推出就顛覆整個互聯網?我不得不抱歉地說,以這樣一種方式研發一款互聯網應用,在互聯網時代已經不太適用。
互聯網應用單純地從和傳統應用的運行環境下的不同所帶來的差異就足夠決定互聯網應用并不是把傳統應用簡單地搬到網上。對于開發應用的開發模式上也存在很大的區別,我們先姑且認為那種花兩年時間甚至更長時間找幾十個人在黑屋子里悄悄研發,刻盤,裝在一個大盒子里,順便附上一本牛津字典一樣厚的使用手冊屬于傳統的模式。
那說到互聯網時代的應用設計,我想我們大可不必先從什么需求分析開始,大談特談軟件的魯棒性,考慮什么代碼的可讀性,不厭其煩地重復說明團隊合作的重要性。是的,這方面的理論和書籍已經多到泛濫的程度,以至于你隨便進入一個書店,在《XXX無師自通》那類書的旁邊書架,即輕松獲得。但我實在不忍心在繼大量軟件工程教育后再去毒害大家的靈魂談論毫無生趣的理論,在這里我想和大家分享的其實是一些互聯網應用設計的變化。通過對一些互聯網成功案例的關注和研究,我在此歸納了我認為一個成功的互聯網產品應該具備的最重要的五種特質。
1. 專注
互聯網應用越來越傾向于專注,并且正是因為這種專注,讓用戶的需求得到充分滿足。例如Microsoft Outlook那樣臃腫的軟件已經在互聯網上被分解成為了很多應用。需要日程安排?可以用Google Calendar。需要電子郵件?可以用Google Mail。需要記Notes?可以用Evernote。需要TODOs管理?可以用Remember The Milk。正是因為分解,這些互聯網應用的設計師可以專注地把一方面的功能設計得十分出色。
如何做到專注?我認為不妨遵循以下幾個基本的設計原則。
沒有料復雜的流程龐大的組織結構內容精致流程清晰機動靈活的團隊從簡
和商品還沒有上市前就考慮降價一樣,產品還沒開始設計就在思考比別人做得更多一些是十分愚蠢的事兒。我們已經有太多鮮活的例子去證明優秀的產品不是贏在價格上。可能你會問,在計算機應用的設計上從簡也一樣適用?若你有這樣的疑問,并且希望真實地體驗這種感受,我的回答辦法很簡單,你去附近的新華書店前臺,那邊有一個SAP提供的查書系統(沒錯,他們稱自己是最偉大的商業管理解決方案提供商),你試著去搜索一本書并且試著完成一次購買流程,同樣地你再回家用當當圖書試著同樣購買這本書,一切都不需要我多說了。
輕量
若曾經有個暴發戶老板找你聊過他想做的事,動輒就是一個平臺要和alibaba一樣,你辛苦地按他的想法實現了這樣的一個“宏偉平臺”,最后90%的欄目無人問津,結果一年不到就死掉了,那我相信你能更容易地理解輕量的重要性。
輕量不是
輕量是
即使tecent和alibaba,事實上都是在變得輕量。沒錯他們有龐大的產品和服務結構,但是當我們剝離出其中一個產品,他們都是很輕量的。輕量也不僅僅是對于產品而言,他們團隊也是由很多輕量靈活的小團隊組成。
給自己撓癢
你明明是一個做互聯網應用信息架構天才,卻去因為覺得設計一款幫助分析電機震動頻率分量的軟件更賺錢而決定選擇做一件讓你痛苦不堪的事兒。這本身就是一種悲哀。
沒有任何一個外行能理解你看到Basecamp的信息架構時的興奮。同樣地,你有何必委屈自己去給別人撓癢呢?
和攝影中“最美的東西就在你身邊一公里以內”一樣,最好做到專注的辦法就是做自己需要的東西。不用擔心所謂狗屁市場的問題,這個地球很大的。(PS,我并沒有說不充分思考就推出項目,并且相樣那樣是很致命的)
2. 開放
把用戶牢牢地鎖在自己的屋子里深怕這些用戶跑掉的做法,在互聯網上也許這些用戶根本就不會愿意進入這個屋子。這樣的例子很多,例如有的軟件你就死活找不到導出選項。互聯網上,用戶更容易更換產品,你的不好用,我就用其他的,因此用封閉的辦法留住客戶無異于把別人騙進店里吃飯,關著門站別人走不了,這樣并不是個持續發展的好辦法。相反地,如果放開自己的應用,擁抱進入互聯網的價值鏈并成為其中一環會相反會增加應用的價值。例如通過Google Map開放的API,可以讓我們把租房信息繪制在地圖上,也可以把我們當前的位置繪制在地圖上同時看到好友所在的位置(例如foursquare)。做一個這樣的應用完全沒有必要自己“生產”所有的環節,通過接口的開放使得“Remix”同樣具有很高的價值。在國內也有同樣的例子。“無所不能”的騰訊自己并沒有做“騰訊讀書”,也沒有做“騰訊菜園”。但是引入的豆瓣網和五分鐘的農場兩個應用的確實現了多方獲利。從豆瓣網的用戶注冊量上來看吧,2009年08月份正是QZone和douban.com合作的時間(數據來源www.8qk.org)。
3. 按需付費
和那些新聞軟文去大談特談SaaS的趨勢和優點?算了吧,我還不準備這樣浪費你的閱讀時間。但是事實上,我們已經可以體會到按需付費的好處了。你不用因為需要待辦事項管理而花150美金購買一個只能在計算機上使用的Microsoft Outlook,而你可以免費地使用rememberthemilk.com就可以在Android、iPhone、Twitter、Gmail、Windows Mobile等等環境下記錄和管理你的待辦事項。當然,如果你覺得這個應用對你幫助很大,你可以一年只花25美元就可以享受更多的服務。不用再去做大量的經濟學的證明,事實上,互聯網用戶已經習慣了根據自己的需要購買服務。
4. 個性化
我想說的這個個性化,和更換一個軟件皮膚完全不一樣。我想說的是在互聯網中,人們的溝通變得更容易。這種溝通讓用戶不希望登上一個互聯網產品網站,看著一個板著臉穿著西裝的人用著播報新聞的語氣告訴你這個產品的優勢。不僅僅是用戶變得更個性化,提供服務的“老板”們也變得更個性化了。“你不喜歡我們的這種哲學?好嘛,你可以關掉這個網站了。”他們通常會這樣告訴網站的訪問者。他們會讓你感覺到你們是一伙的,或者讓你感覺到厭惡。這種個性的偏執恰好幫助在互聯網中對用戶的篩選。使得應用的設計師們可以更專注地為這些目標用戶設計更好的產品。37singles公司就是一個很好的典范。他們并沒有擁有超級龐大的用戶群,但用戶都和他們保持著很高的粘度,這正是價值所在。所以,我們不一定要去設計一個80%的人都勉強喜歡的產品,但可以設計一個只有20%的人極其喜歡的產品。
5. 敏捷
如果你是寶潔公司的CEO,你想了解到你的用戶對于某個產品到底怎么想的,也許你會安排一次大型的用戶調查,從60億人里判斷哪些是產品的用戶,再做問卷或者談話,分析這些需求,制定一個改進方案,評估方案,對這個產品進行升級,再投入市場,再做調查跟蹤。如果你做的是一個互聯網產品呢?除非你們團隊像Vogons一樣的官僚,否則你只需要在產品中加上一句“我們很樂意聽到您的意見”,附上一個文本框即可。 當然,我想說的不是放上一個文本框就能把問題解決,而是互聯網應用中,用戶和設計師之間的溝通更直接,意見的反饋速度更快。甚至你可以在應用的官方博客里發一篇文章來透露產品即將增加的新功能,看看大家的反應如何,或者增加一個Wish-list來搜集用戶想要的功能。像“十年磨一劍,雙刃未曾試”地這樣設計互聯網應用,產品失敗的可能性會很大。敏捷使得應用更靈活,更能快速地提高產品質量,減少開發的開支,降低應用的執行風險,延長應用的生命周期。千萬不要去輕信經濟學的原理還有那些公認的“最佳實踐”,很多時候這些理論對于你的應用并不適用。最好的辦法就是“快”!在他還沒有爛掉之前早點動手,快速地去彌補過程中的失誤,多思考。
當然,以上5點并不是互聯網時代的應用設計的準則,但是正是因為互聯網突破了很多傳統的限制,使得我們必須多觀察多思考才能設計出更好的應用。然而正是因為這些變化,才使得互聯網更加精彩,與其把自己關在屋子里憋死,不如去擁抱屋外的風景吧。