不要重新發明輪子 32/365

A Thought



先提一個名詞,資料庫。軟體的背後通常有資料庫,用來儲存以及快速找出資訊。大約是這一兩年,公司有一項從前的產品頻頻出錯,究其原因,發現其使用的關聯式資料庫(SQL)沒有辦法應付現今大量的資料存取。而另一種類型的資料庫——非關連式資料庫(NoSQL)正好可以解決這個問題。後來組織變動,我們部門接手了這個燙手山芋,轉而研究NoSQL的使用方式。這次有另一個任務,我們要為其加上好用的搜尋功能,改善舊產品被詬病已久的搜尋功能。經過幾次開會與測試,終於定調了怎麼使用NoSQL來重新設計這個產品,也已開始進行。不料,這時我發現了一樣東西。

本來只是一場因緣際會的交談,我注意到有個新創團隊在用一種奇怪的資料庫,稱為Elasticsearch(簡稱ES)。基於好奇,我跟同事開始著手研究這到底是什麼,越研究就越吃驚......這是一個擁有超強搜尋功能的非關聯式資料庫,可以用最方便的網路協定存取,而且是開放原始碼,任何人都可以直接使用。套句我同事的話來說:「......這簡直把我們要做的事都做完了!」。多麼戲劇化,ES就像是我們本來規劃要做的超完美版本,現在居然只需設定就可以使用。知道與否,資訊落差的可怕,可見一斑。(當然,ES也有它的缺點,只是正好在這項需求上完美符合所需。)我們真正該做的工作,是直接使用ES然後附加新的價值,而不是重新發明一個ES!

有一句話說得很好,如果你想做蘋果派,打算什麼都自己來......要小心,如果你真的"什麼都要自己做",你必須先發明宇宙!(然後才有蘋果。)我們不可能不依賴他人幫我們做好的東西,不要害怕站在別人的肩膀上。有時我們會陷入這種謬誤:好像知道的太多,就以為什麼都要自己來,然後每件事都顯得很不容易。切記,去找有沒有人做過類似的事,因為你未必做的更好;去使用別人的智慧結晶,然後在上面創造新的價值。

不要重新發明輪子。去找新的輪子,不斷地去找。如果有天你真的找不到,也許,就是自己來發明一個的時候了。



--
photo credit: ! ramblinworker via photopin cc
Recommend


Keanux

登入或註冊帳號

Facebook 登入

我們絕對不會未經過你的允許發表到Facebook