Redis之父退出開源項目維護:人生苦短不想上班

Redis之父Salvatore Sanfilippo決定不再擔任Redis項目的軟件維護者,Redis項目放棄之前的專制管理模式,轉而採用新的“社區自治模式”。

兩天前,Sanfilippo(又名antirez)在自己的博客上發佈了一篇公告,表示將不再擔當Redis開源項目的軟件維護者,並“將Redis交給Redis社區”。這意味着Redis項目的未來命運將由整個社區決定,而不再單純掌握在Sanfilippo一個人手中。

Sanfilippo的公告受到了業界的強烈關注,以至於他在Twitter上感慨說:“簡直不敢相信我收到了如此多的消息:)即使有些聽起來像是我死掉了一樣(大笑),這有點像參加自己的葬禮呢…”

Redis以後怎麼辦?

Sanfilippo於2009年初啓動了Redis項目。經過一段時間的發展,Redis數據庫在緩存領域大放異彩,成爲支持大規模後端交易以及內容服務系統的重要實時數據庫選項之一。

Redis數據庫以開源形式全面開放,其中的企業級功能與Redis模塊則分別採用不同的許可協議。根據DB-Engines的報道,Redis已經成爲領先於Amazon DynamoDB、微軟Azure Cosmos DB乃至Memcached的最受歡迎鍵值存儲解決方案。去年,Redis Enterprise還以託管服務形式登陸Google Cloud。

但作爲Redis項目的支持方以及負責銷售Redis企業模塊的廠商,Redis Labs去年在一片爭議聲中更改了其開源許可條款,希望阻止競爭對手(特別是Amazon Web Services)將Redis軟件重新打包爲其他競爭性產品。

發展到今天,Redis的成功基礎已經從Sanfilippo個人變成龐大的技術社區。Sanfilippo退居二線之後,空出來的維護者角色將由Redis項目新任負責人Yossi Gottlieb與Oran Agra接管。

Redis Labs在官方博文中指出,Redis項目的基因中“有着明確的原則性,例如追求簡單高效、強調少而精的解決能力、以正確的判斷爲導向等。這一切,都是爲了讓項目能夠在發展道路上走得又快又穩。”

“隨着Salvatore的退出,再結合項目當前的規模,Redis已經不適合再搞一言堂式的管理模式。我們認爲Redis正好可以藉此機會調整治理模式,希望新模式能夠促進團隊合作與組織結構優化,讓我們進一步擴大項目的開發與維護流程。新的治理模式旨在強調精英管理制度,任何願意爲項目長期付出並做出重大貢獻的參與者,都將擁有對應的決策權力。”

Redis核心團隊將繼續負責Redis核心項目——核心項目屬於Redis體系的組成部分,位於Redis主repo內並採用BSD許可。

天天“上班”,讓人怎麼創新?!

Sanfilppo在他的博客公告中表示,他已經不想再繼續擔任該軟件的維護者,因此決定後退一步,在Redis Labs中擔任“謀士”。

“最近幾年來,我每天的工作內容發生了很大變化。我把大部分精力花在檢查其他開發者提交的Redis代碼、改進代碼質量以及提升軟件正確性、速度與安全性方面。但我真的不喜歡這類維護工作。”他還提到,根據自己的編碼習慣,他“更願意當個有脾氣的藝術家,而不是那種有求必應的程序員。

退居二線的決定,其實他在一年前就想好了。

一年前,Salvatore Sanfilippo發表了一篇博客說:“我覺得之前Redis之所以能夠快速普及,就是因爲我能夠按照自己的思路設計並編寫軟件。但現在我的工作重心發生了變化,每天得花大量時間查看問題並提出請求。”

“我有時候會丟掉問題審查和PR方面的工作,花幾個禮拜時間跑去寫代碼或者做設計:後者纔是我真正喜歡的工作。但這反過來又給我心理帶來了巨大壓力——做喜歡的事已經違背了我的角色定位,這種感覺太痛苦了。”所以他不得不考慮“轉換角色定位”。

他在博客中重點談了談全年無休的上班生活使人無法放鬆,從而無法做一些創造性的工作。而他更喜歡的是“編程”這樣的事兒,他在Twitter上也說道,“人生苦短,不能一直都做同一件事情”,得趕緊開始另一種生活。

網友紛紛在他的Twitter下留言:

您應該相信,您確實創造了一段IT歷史。
恭喜您重生!
慢慢來。我最近休了一年假,這是有史以來最好的舉動。
大家因爲您的工作而聯繫在一起,就好像已經認識您很長時間了。因此,我們爲您辭職感到難過,但很高興您能嘗試一些新東西。

附上Redis之父一年前的博客文章《開源項目維護者的掙扎》節選翻譯:

首先,在參與Redis項目之前,我從沒經歷過那種全年無休的工作體驗。以往我可以工作一個禮拜,休息兩天,然後工作一個月,再休息兩個月之類。人總是需要充電,放空自己來獲得新的能量與靈感,只有這樣才能做好創造性工作。沒錯,高層次的編程就是一種令人着迷的創造性工作。Redis在頭兩年的發展當中也是如此,那是段美好的經歷。結合個人經歷,我覺得想工作的時候才工作,總體產出要比每天被迫固定工作還更高一些

但在公司上班之後,職業要求成了我的“緊箍咒”。爲了靠開發Redis賺錢,我必須得強迫自己按照正常的時間表工作。在我看來,這是對多年個人習慣的一種破壞。而且我敢肯定,實際產出是不及當初隨性開發階段的,但工作就是工作,沒有太多可以商量的餘地。我也不知道該怎麼解決這個問題。我當然可以向Redis Labs反映,要求迴歸原先的工作方式——但這樣沒用,因爲現在我的報告對象已經不是公司,而是整個Redis社區。

另一個問題是,從心理層面講,長期從事同一個項目確實非常累人。我幾乎每六個月就要進行一次項目變更,而且同樣的工作已經持續了十年。爲了解決問題,我嘗試在Redis中引入多個子項目,讓自己保持一點正常的激情和神智。比如抽點時間做Cluster,過一陣子再做disk-storage(已經被廢棄),然後是HyerLogLogs等。總之就是儘量把大型項目拆分成一個個孤立的有價值元素。但最終,工作總是回到“問題和PR”上,讓生活再次陷入沒有停歇的重複。“發生超時,副本斷開連接”纔是生活的真諦,咱們看看出了什麼狀況吧……

有時候,我覺得軟件成果雖然很棒,但永遠不可能像經典著作那樣永世流傳。這並不是說軟件本身不好,而是軟件具有動態特性,其中某些部分總會隨着時間推移被替換掉。所以我越來越感覺自己做的一切都是在浪費時間。我們設計和編寫的系統,終將被新的系統取代。但在另一方面,如果我們能夠在軟件開發方面更進一步,強調“軟件開發中所蘊含的偉大創意”這個意象,是否能樹立起新的標杆?我覺得自己或多或少有一點發現偉大創意的潛力,但現在的工作迫使我只能專注於編寫軟件,而不是思考軟件的深層含義,那這種潛力根本沒有發揮的餘地。可能是我自視過高了,我應該更謙虛一點,抱歉抱歉~

參考鏈接:

https://www.zdnet.com/article/redis-database-creator-sanfilippo-why-im-stepping-down-from-the-open-source-project/

http://antirez.com/news/129

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章