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

Redis之父退出开源项目维护:人生苦短不想上班相关推荐

  1. 钱少事多,开源项目维护人员几乎集体出走

     聚焦源代码安全,网罗国内外最新资讯! 作者:Steven J. Vaughan-Nichols 编译:奇安信代码卫士 最近,Linux 内核稳定版本的维护人员 Greg Kroah-Hartman ...

  2. 突发!Redis之父退出:不在维护Redis项目

    点击上方"朱小厮的博客",选择"设为星标" 后台回复"书",获取近百本电子书入口 Redis之父Salvatore Sanfilippo在自 ...

  3. 使用redis和mysql的开源项目_干货!带你了解为什么那么多开源项目都是用Redis!...

    很多开源项目中都使用了redis,这些项目为什么使用redis?使用redis有什么好处?怎么使用redis?带着这些疑问,我们来了解一下redis. 一.什么是Redis Redis是一个免费开源用 ...

  4. java的开源项目哪里找,我想参加开源项目的开发,请问在网上去哪找这样的项目? 纯C语言的(非C++或JAVA)...

    我想参加开源项目的开发,请问在网上去哪找这样的项目? 纯C语言的(非C++或JAVA)以下文字资料是由(历史新知网www.lishixinzhi.com)小编为大家搜集整理后发布的内容,让我们赶快一起 ...

  5. 维护开源项目太难,Redis之父:只做自己想做的

    本文转载自 InfoQ 最近,开源项目 Docz 作者 Pedro 发表短文称繁重的开源维护工作不可持续,自己曾处于"崩溃"状态. Pedro 表示最初为了开发 Docz,他可以提 ...

  6. 开源代码维护人员大诉苦水,超半正考虑或已经决定放弃

    金磊 发自 凹非寺 量子位 报道 | 公众号 QbitAI 代码开源,或许会让许多开发者兴奋不已. 但作为开源代码的维护者,又会是一种什么体验呢? 就好比成千上百人站在你家门口,大声吆喝着: 有合并代 ...

  7. 如何做好一个开源项目之徽章(二)

    在上一篇[如何做好一个开源项目(一)],笔者已经介绍过开源项目运作和维护的一些理念了,本篇开始,笔者将着重于介绍一些开源项目维护过程中的一些细节,比如徽章.构建等等.由于最近经常出差,所以博客有中断, ...

  8. 2020年1月1日起,谷歌 Patch Rewards 计划将降低准入门槛,提升开源项目的安全性...

     聚焦源代码安全,网罗国内外最新资讯! 编译:奇安信代码卫士团队 刚刚,谷歌宣布将在明年即2020年重振已设立6年之久的 Patch Rewards 计划. Patch Rewards 计划是谷歌最悠 ...

  9. 做好开源项目 需要坚持

    将一个项目的代码开源出来很容易,但是将它长久维护下去,并吸引更多人参与,这就比较难了.开发者Jim Cowart结合自身的开源项目维护经验,给出了本文这些建议,希望能为你的开源之路带来一些帮助. 1. ...

最新文章

  1. 每年节省170万美元的文档预览费用,借助机器学习的DropBox有多强​?
  2. 【安装PHP】如何在openSUSE42.1下编译安装PHP7
  3. 脉冲电子围栏系统介绍_网络型脉冲电子围栏系统介绍
  4. micropython函数库下载_Python microfs包_程序模块 - PyPI - Python中文网
  5. alsa 放的声音和录制的声音之间的延时_webrtc视频录制总结
  6. coreos 搭建PHP,Linux_用Mac在CoreOS上搭建WordPress的教程,作者以自己的Mac笔记本为例, - phpStudy...
  7. Oracle弱智100问
  8. 解决将visio图片插入Word后有大片空白
  9. mysql宾馆客房管理系统视频_java swing mysql实现的酒店宾馆管理系统项目源码附带视频指导运行教程...
  10. 清华计算机系研究生刘艺华,2017年清华大学计算机系硕士录取名单
  11. 小爱同学控制ESP8266点灯
  12. python 开发金山打字通辅助脚本
  13. 软件分享,PicPick中文版 v5.1.4 滚动截图
  14. 微信小游戏上线发布全流程详解
  15. 一键上传文档至Google文档
  16. 2021-07-28 Python爬虫
  17. 青龙羊毛——酷狗滴滴
  18. Web应用系统开发的两种流行架构
  19. 谷歌开放问答搜索最大语料库NQ,包含30万自然发生提问
  20. ghost 服务器系统,涨姿势:Ghost系统、纯净版系统、原版系统各是什么?

热门文章

  1. 多个类的DLL封装及调用
  2. 《大话数据结构》第9章 排序 9.3 冒泡排序(下)
  3. strcpy和memcpy的区别 | strcpy和strncpy的区别
  4. 关于.NET参数传递方式的思考
  5. bzoj1208: [HNOI2004]宠物收养所
  6. ubuntu14.04使用rails连接mysql数据库
  7. 测试系列之六---软件测试分类
  8. 求解带时间窗车辆路径问题的多目标模因算法
  9. Matlab的内部常数
  10. 设计模式-创建型-单件