對創新的幾點認識——《創新者》讀書筆記
解決需求推動著人們開發新的技術
Hollerith為了減少人口普查花費的時間,發明了制表機;Kelvin和Thomson設計了一臺模擬器專門處理冗長乏味的微分方程;Konard Zuse為了解多變量的線性方程,完成了二進制計算器原型的設計……大量的案例說明了一個事實:解決需求推動著新技術的出現。所以,如何使自己的軟件具有創新性的關鍵,就落在了如何發掘新的需求上。開發團隊必須要找出其他同類軟件未能滿足的需求或者滿足的不夠好的需求,然後對需求進行深入的分析,找出一個合適的解決方案並將其實現。從我們軟工課程小組的現狀來看,我們對用戶的需求了解的不夠清晰與全面,比如:用戶在使用日記app的時候最在意什麽功能?是編輯界面是否方便?還是存儲界面是否美觀?亦或是安全性能否得到保障?這當中哪一些是其他app已經做的很好的?哪些是做的尚有吐槽之地的?沒有清晰的需求分析,那我們做出來的很可能就是一個普通的日記app,早晚會死掉。
好,現在假設我們對用戶的需求非常清楚,那麽如何找出合適的解決方案呢?肯定會想,這個方向已經做了這麽久了,還會有好的想法嗎?我覺得我們可以換一種方向去思考,我們可以看一看有相似功能的其他軟件是如何做的,然後借鑒它們的想法(組合已有事物的能力也是一種創造力)。比如,之前我看到一款小遊戲,Dancing Line,這款遊戲本質上是跑酷類的遊戲,但它卻能在和神廟逃亡和地鐵跑酷等其他同類軟件的比拼中獲勝。原因就在於,Dancing Line采用了類似紀念碑谷的界面風格,立體幾何的風格加上動聽的背景音樂,使這款小遊戲很受歡迎。其實,這就是一種借鑒,我們完全可以按照這個思路去找找其他軟件的相似的功能,說不定就會有很大收獲。
大多數創新是漸進的
除了少數天才中的天才之外,大多數人的創新都是微小的,逐步的。艾達將僅限於數字的問題擴展成了數字和符號的問題,電磁繼電器激發了香農利用電信號實現開關控制的想法……大多數創新都是基於前人的成果進行進一步的深入或者是技術上的改善或者是通過將方法抽象並從中獲取靈感,牛頓說過:“如果說我看得比別人更遠些,那是因為我站在巨人的肩膀上。” 軟件開發也是如此,我們要善於利用現成的產品簡化我們的開發工作量,畢竟真正有價值的是我們的新的想法。但是,但是,現在我們還處於學習階段,很多東西我們並不懂,直接拿來用很可能出現很多問題而不知道如何解決,這個矛盾我尚未想明白(我是認為要用一個東西的前提是知道那個東西是如何來的)。
創新想法的實現需要其他誌同道合的人的協作
貝爾實驗室,哈佛大學……這些地方都是創新者聚集的地方,他們聚在一起,分享想法,互相幫助。不得不承認,一個好的團隊的力量是強大的。理論學家可能對機械制作不太熟悉,這時候他只需要找一個精通機械制作的專家。團隊的存在使得團隊中每個人都能夠專心於自己擅長的方面,從而最大限度的實現每個人的價值。在軟件開發團隊中,清晰的分工不但可以提高開發效率,而且便於管理,使管理者能夠清楚的知道到底是哪一塊出了問題,從而對癥下藥。
對創新的幾點認識——《創新者》讀書筆記