写点什么

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

2020 年 7 月 03 日

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


2020 年 7 月 03 日 17:2012294

评论 1 条评论

发布
用户头像
不错的想法!
2020 年 07 月 18 日 10:15
回复
没有更多了
发现更多内容

从零开始学习3D可视化之数据对接(2)

森友小锘

前端 数据 可视化 数字孪生

JAVA语言异步非阻塞设计模式(应用篇)

有道技术团队

后端 网易有道

回帖送大奖 『和AI在一起』

百度大脑

人工智能 活动 大奖

阿里集团业务驱动的升级 —— 聊一聊Dubbo 3.0 的演进思路

阿里巴巴中间件

云计算 阿里云 云原生 dubbo 中间件

大数据获取客户系统软件开发源码

获客I3O6O643Z97

大数据平台

从京东零售云走出来的3D数字人正在触动未来的互动世界

Geek_459987

支持60+数据传输链路,华为云DRS链路商用大盘点

华为云开发者社区

华为云 DRS

架构实战营模块2课后作业

hello

架构实战营

互操作性和去信任化的两难困境,到底需要治标还是治本?

CECBC区块链专委会

Camtasia入门技巧之视频剪辑

淋雨

视频剪辑 Camtasia 录屏软件

不保护数据的代价!

鉴释

数据 数据安全

新时代程序员都用什么写代码?

程序员鱼皮

Java Python 前端 Web 开发工具

iOS面试·一个iOS程序员的BAT面试全记录(内含百度+网易+阿里面试真题)

iOSer

ios iOS 知识体系 iOS面试题 iOSBAT面试题

音视频的这些功能你知道吗?

anyRTC开发者

音视频 音视频开发 屏幕共享 音视频sdk 智能降噪

PancakeSwap交易所市值管理机器人开发

橙子区块链l53o56oloo3

市值管理机器人开发 PancakeSwap交易所 交易所机器人

数字经济时代下,区块链如何助力数字产业发展?

旺链科技

区块链 分布式存储 数字经济

漏洞非小事,金融服务机构如何对抗代码缺陷?

鉴释

金融科技 代码安全检测

网络攻防学习笔记 Day82

穿过生命散发芬芳

网络攻防 7月日更

鉴释陈新中:源代码安全在物联网时代的重要性

鉴释

物联网 源代码

为什么“内存管理”漏洞值得你的绝对关注!

鉴释

代码审查 内存 代码

给需要关心安全的技术人员的一些建议

鉴释

网络安全 安全

因聚而生 | 图扑受邀参加“生态融合,智创未来”大会

一只数据鲸鱼

数据可视化 数字孪生 智慧工业 智能制造

华为云MVP程云:知识化转型,最终要赋能一线

华为云开发者社区

人工智能 自然语言处理 机器学习 华为云 智能问答机器人

Go语言:参数传递中,值、引用及指针之间的区别

微客鸟窝

go golang

赖建新:关于静态代码分析的问与答

鉴释

静态代码分析

耗时半年,堪称奇迹!阿里架构师整合出258W字Java全栈面试题

钟奕礼

Java 程序员 架构 面试 计算机

关于单元测试的那些事儿,Mockito 都能帮你解决

华为云开发者社区

测试 Mockito Mock Java 开发 模拟测试框架

ES本地debug详解

泽睿

ES 搜索引擎;

字节大牛的1850页Leetcode刷题笔记外泄!用实力折服众人

进击的王小二

Java 面试 算法 LeetCode

阿里内部最新出炉“SpringCloudAlibaba笔记”号称微服务界的里程碑!

云流

Java 编程 架构 微服务 计算机

深度分享|金融行业模型管理效能提升的规划与思考

索信达控股

大数据 金融科技 金融 风险管理 营销管理

Redis之父退出开源项目维护:人生苦短不想上班-InfoQ