支線專案
原文由 Salvatore Sanfilippo 于 發布,訂閱此部落格
今天 Redis 滿六歲了。對我來說,這是一項不可思議的成就,因為過去我總是很快就轉向下一個新東西。過去也不是沒有持續六年的事情,但沒有一件像 Redis 這樣,過了這麼久,我每天大部分的精力依然投注在它身上。 我是怎麼做到不再嘗試新東西,只專注在一項獨特的事業上,讓它徹底佔據我的職涯生活?對一個生命有限的人來說,要做出這麼大的犧牲實在太大了。幸好,我根本從來沒這麼做,我從來沒有停止嘗試新東西。 回顧這六年,那是一連串永無止境的支線專案,有些跟 Redis 有關,有些則無關。 1) Load81,兒童程式設計環境。 2) Dump1090,軟體定義無線電 ADS-B 解碼器。 3) 一個 JavaScript 光線追蹤器。 4) lua-cmsgpack,給 Lua 用的 msgpack C 語言實作。 5) linenoise 行編輯函式庫。Redis 有在用,但老實說,它從來不是我們最優先的事。 6) lamernews,以 Redis 為基礎的 HN 複刻版。 7) Gitan,一個小型的 Git 網頁介面。 8) shapeme,使用模擬退火演算法來演化圖片的程式。 9) Disque,一個分散式佇列(目前仍在開發中)。 還有更多做完就丟、沒有列在這裡的專案。 有趣的是,上面列出的許多專案並不只是為了讓自己開心而做的隨手嘗試。有幾個真的走進了別人的程式碼裡。 正是因為這些支線專案,當我因為一再重複做同一件事而感到壓力很大、被掏空時,才能轉而去做些不一樣的事。之後我才能重新聚焦回 Redis,並再次找到樂趣、找回投入的動力,因為小專案固然很酷,但長年投入單一專案,長遠來看能為他人創造更大的價值。 所以現在我大概花 20% 的時間在 Disque 這個分散式訊息佇列上。所以就只剩 80% 的時間留給 Redis 開發,對吧?錯。真正的選擇是在 80% 專注於 Redis 加上 20% 做別的事,或是在長期來看對 Redis 的專注度是 0%,因為要能長期投入,你需要一個能長期探索新事物的出口。 支線專案是讓你的主要專案得以實現的專案。此外,它們也常常是下一個有趣專案的起點。Redis 本身當初就是 LLOOGG 的一個支線專案。有時候你會因為支線專案而暫停主要專案,但當這種情況發生時,並不是因為支線專案奪走了你的專注,而是因為你找到了一個更好的時間運用方式——因為那個支線專案比主要專案更重要、更有趣、更吸引人。 今天 Redis 已經六歲了,但老化得很好:它持續吸引更多開發者的關注,也持續改進,每週為使用者多提供一點價值。然而對我來說,更多的使用者、更多的 pull request、更多的壓力,並不代表我要改變我的模式。今天的 Redis 是我們六年來投入的心血與堅持的總和。為了繼續走在同一條路上,接下來幾年我會確保自己還是有幾個支線專案可以玩。 更新:Damian Janowski 今天送給 Redis 社群一份超棒的禮物,全新的 Redis.io 網站上線了!http://redis.io。謝謝 Damian! HN 上的討論在這裡:https://news.ycombinator.com/item?id=9112250
隨機一篇部落格
留言
登入後參與討論