軟體抄襲與創新的思考
週末不想寫太多的程式碼,一是因為手部神經性壓迫導致疼痛(職業病啊),二是因為我覺得有必要再擴大一下知識範圍。在找小說未果的情況下,先是買了本微創新,然後收穫挺多的,又買了兩本(基於亞馬遜推薦。。加上我的成功率,我想只要找到一本就可以找到另外的三本):
- 《微創新:5種微小改變創造偉大產品》
- 《第三種創新:設計驅動式創新如何締造新的競爭法則》
- 《模仿的技術:企業如何從"山寨"到創新》
看完了三本書,收穫還是蠻大的。就想著寫篇心得,兼作軟文。
一個快速實現的想法
三週之前,我對策劃了幾天的基於HTML的PPT、部落格、演示框架開始了編寫之路。到了今天,已然有了243次提交,這意味著每天可能有12次左右的程式碼提交(ps:感謝黨和組織,感謝長年不加班的公司讓我有機會去寫程式碼)。
如果你用過impress.js
和reveal.js
,那麼我想你是知道網頁版的Slider是長什麼樣的。如果不知道的話,快來看看EchoesWorks Demo吧。
impress.js
有著酷炫的動畫效果,但是不支援Markdown。Reveal.js
支援Markdown,但是一點兒也不炫。
於是,在很久以前我有一個想法是,基於兩者做一個這樣的框架,但是覺得這樣子顯得沒有創意。這也是為什麼到了,現在EchoesWorks還沒有華麗動畫效果的原因之一(ps:另外一個原因是我對CSS3的動畫效果還沒有深入的研究,如果你研究過快來加入我們吧)。顯然,這激發不了激情。
直到有一天,我在想為什麼我的部落格還是靜態的, 應該要有點彈幕,應該要有點動作。便讓我聯想到了視訊,拿視訊當部落格有點兒戲,又浪費時間。一個Slider和視訊的差距,我想只有字幕
和音訊
了。接著,來了一場頭腦風暴,開始編碼之後,就有了之前很水的一篇文章: 《EchoesWorks —— 打造下一代技術Blog/Presentation 框架》 。
So,來看看我是如何快速再造一個Slider的:
- 首先,我找到了一個叫
bespoke.js
的框架,它是一個DIY Presentation Micro-Framework
,有了這個框架也有就有了基本的輪廓。 - 接著,我需要處理使用者輸入來控制Slider,便參照來了
impress.js
的程式碼。 - 由於,需要基本的計時工作,就參考了
timeline.js
的基本原型設計來完成。 - 需求告訴我,還需要一個進度條,接著就找到了
nanobar
。 - 在微博上發的時候,發現對移動裝置支援不友好,就參考了
Swipe
來完成左右滑動的功能。
結局便是,我抄了一堆軟體來再造一個Slider,雖然還沒有造完。等等,我做了什麼?
- 寫了一堆膠水程式碼。用於連線各個模組間的功能。
- 寫了比產品程式碼還多的測試程式碼。用於保證大多數情況下的程式碼修改都不會破壞系統的功能。
- 對其中某部分寫得不好的程式碼,做了重構。
看上去,不像是抄襲,什麼是抄襲?什麼不是抄襲?
創新
基於那幾本書,我對於創新的分類大致有:
- 體制內創新
- 體制外創新
上面的分類無異於把這個世界上的處理器分類為:
- ARM
- 非ARM
Unix與GNU/Linux
不存在一個好的方法可以成功的把世物分類,不同行業的人的來同創新方法,只告訴我們一件事,這個事件上是沒有絕路的。如果這個路行不通,一定還有別的路,只是你沒學到罷了。只是就如一些作者所說,創新是可以學習的,但是不是很有的創新都是可以學習的。
如果人看過《技術的本質》的話,那麼我想你對書中的一些理論一定很熟悉。如,新的技術是基於現有技術發展起來的。又如,《適應性創新》一開始舉到的造一臺多士爐要花一輩子的例子是一樣的,如果我們要從頭造一個系統要花一輩子。
再回到現實,Linux是一個核心,BASH是一個Shell工具,glibc是C執行庫,GCC是編譯器,還有Binutils、Coreutils、Diffutils、Gawk等等都是一堆庫,或者稱之為技術,如果沒有膠水般的程式將之整合成一個系統的話,那麼這些模組有些可能就消亡了。然而,是Unix告知了GNU/Linux系統的開發者們,你們要用怎樣的膠水來粘合這些模組。故而,在過去到現在的很長一段時間裡,GNU/Linux都逃不了Unix的陰影。
不幸的是,今天已然是GNU/Linux的天下,未來人們就會各種訴說GNU/Linux是如何創新。
同我當時在課上學習設計模式一樣,只有先模仿和基於別人的模式,之後才有可能有更大的突破。同理GNU/Linux已經達到這樣的階段。不要和我說蘋果是如何創新,沒有模仿,只是它們做了膠水做得更好,或者說現在,他們設計了更好的膠水。
說說創新
過去,每天我們都閃現著不同的靈光。有時,我們經常和自己說不可能,說多了有時候就不再想了。或許受當前的條件約束,和所謂的夢想一樣。想想,所謂的創新要麼就是在現有的產品進行微創新,要麼就是某種形式的"無中生有"。人們通過不知道他們知道什麼,或許又如《烏合之眾》說到的那樣,群眾只接受簡單觀念、群眾不知道他們需要的是什麼,你也難於動搖一群群眾。
於是,當我們創造出一種新的產品的時候,我們很難確定這是不是市場所能接受的。而有時候調研,又沒有辦法辦法來幫我們合理地解決創新產品的問題。也從某種情況上說明,像蘋果、微軟這種後來者,更容易獲取市場佔有率的原理。因為先來者,已經將更多的理念賦予大眾。那麼,後來者只需要研究使用者體驗、使用者需求,便可以創造出更好的產品,前提是要有足夠的速度。而,速度從側面反映了一家企業的意識形態。
很多時候一家大公司只所以被新創企業打得無還手之力的原因,除了速度,也還在於錯誤的決策。而錯誤的決策在當時可能是最有效的,但是如果沒有足夠快的意識到這樣的創新,便同諾基亞一樣,需要當明年重新復甦。而有這樣的機會的公司是少之又少。
總得有那麼一些人,需要看看他們新產生的競爭對手。笑他們,還不如去學習他們。
創新,其實是Keep Study
。
其它
啟示
作為一個技術人員,除了保持速度和學習。還要儘快地做到所謂的破
、守
、離
,作為一箇中國人看到這三個漢字從中國傳到了日本,再從日本傳到了美國,又從美國傳到了中國。難道就不應該有一點點覺悟麼,從模仿開始,到自由自在地創造。
模仿和創新只在一剎那之間,想想你做這個東西是為了什麼。除去你模仿的功能看看你還能新增什麼?不要從一開始模仿,而要從一開始在模仿的基礎上創新。騰訊、小米關於模仿的敗筆罵名就是在於此,先模仿而後創新。不過,他們有能力、實力可以很好地做到了上面的三個字,即從模仿 -> 賺錢 -> 創新。
但是,如果是一家小公司,那麼只有死~~。
關於標題
本來標題應該是寫在EchoesWorks三週之後
,後來似乎有了更好的突破點。
也想不到一個好的標題來描述主題,這裡的抄襲說的不算是真正意義上的抄襲,算是某種意義上的Copy,又或者是某種意義上的再造車輪。
EchoesWorks
快來加入我們吧,專案首頁: https://github.com/phodal/echoesworks
(ps: 覺得寫得好的,點個star,點個分享)
相關文章
- 蘋果5大創意“抄襲”谷歌、Twitter、微軟蘋果谷歌微軟
- 明明是你先抄?談安卓和蘋果iOS的“抄襲”安卓蘋果iOS
- MPD軟體工作坊北京站:技術創新與研發效率帶來的前沿思考
- 名創優品旗下潮玩集合店被指抄襲,TOP TOY堅定走“抄玩”道路?
- Google+抄襲Facebook頁面?Go
- 軟體創新與開發——結對程式設計程式設計
- 思考軟體開發中的快與慢
- 建議圖靈成立讀書會(創意是抄襲的,細節請進)圖靈
- 谷歌抄襲門事件再度升級谷歌事件
- 遊戲創作的思考--網路遊戲不是SNS軟體(轉)遊戲
- 範凱:大公司的創新思考:基因延伸性創新
- 與抄襲劃清界限:如何讓遊戲版權得到更好的保護遊戲
- 結合“xPlus”探討軟體架構的創新與變革架構
- 《網路黑白》一書所抄襲的文章列表
- 有關軟體的思考
- 結對編碼-軟體開發與創新課程設計
- 我對雲原生軟體架構的觀察與思考架構
- 谷歌生活搜尋被指抄襲酷訊谷歌
- 如何看待騰訊 QQ 瀏覽器抄襲 Arc瀏覽器
- 軟體研發之道——有關軟體的思考
- 最近剛完成的一個遠端抄表軟體
- 以一名遊戲策劃的角度淺談“抄襲”與“對標設計”遊戲
- 萌新Learning-簡單的文字相似性檢測與抄襲判斷
- 創新就要像小孩一樣思考
- 關於中介軟體的思考
- 軟體產品化的思考
- 軟體加密方法的思考 (轉)加密
- [軟體人生]德國為了學術,情願讓抄襲國防部長下臺,此乃強國之本[轉載]
- 教你用程式檢測抄襲/文章去重
- 抄襲中國品牌 蘋果最近又攤上事了!蘋果
- UOJ #889. 【UNR #8】二維抄襲檢測
- 結合業務需求的創新設計落地思考
- 軟體驅動創新 戴爾科技打造現代化儲存新體驗
- 幽默:歐洲人創新與美國人創新的不同
- 創新產險公司銀保合作思考
- 任天堂Switch剛釋出 就有人噴抄襲了!
- UI設計師自學記:抄襲別人,超越自己UI
- iPhone 6抄襲國產手機 蘋果到底冤不冤?iPhone蘋果