关闭 Canario 终端源代码
Closing Canario Terminal source code

原始链接: https://rapha.land/closing-canario-terminal-source-code/

在为开源社区贡献多年后,开发者 Raphael 决定将其新项目 *Canario* 闭源。 凭借其在 Mozilla 的工作经验以及维护 *Rio* 等热门项目的资历,Raphael 指出了开源维护中那些隐性且令人心力交瘁的成本。他解释道,应对社区期望、跟踪问题反馈以及日益增多的低质量 AI 生成垃圾内容,占用了他进行个人开发工作所需的宝贵时间和精力。 Raphael 强调,*Canario* 的构建初衷仅是为了解决他个人的技术需求,而非作为商业产品。尽管他承诺会继续维护 *Rio*,但他选择私下开发 *Canario*,以避免公共维护带来的额外负担,从而保护自己的工作节奏。他承认此举可能会让一些人感到失望,但他坚持认为,为了保持对编程的热情,这一决定是必要的。现有的代码版本仍可供有心人分叉使用,但 *Canario* 的未来将完全取决于他个人的需求与进度。

这篇 Hacker News 帖子讨论了作者决定将终端项目“Canario”闭源的原因:由于管理 Issue 和合并请求(PR)带来的倦怠感,以及由 AI 辅助生成的垃圾内容所造成的巨大困扰。 尽管评论者们认可作者对自己作品的控制权,但许多人认为闭源是一种过激的反应。批评者指出,开发者可以在保持“开源”状态的同时缓解倦怠,例如关闭 Issue 功能、忽略合并请求,或者仅公开代码而不提供公共仓库。一些人建议采用“SQLite 模式”,即保持代码开源但拒绝外部贡献,这被认为是一种可行的折中方案。 反之,支持者认为,维护一个公共项目的社会负担是一项沉重的、往往被忽视的成本。他们指出,仅仅是“保持可联系状态”在心理上就可能是一种负担,而闭源是恢复隐私和获得内心平静的有效途径。这场讨论凸显了现代软件领域中更广泛的矛盾:在自动化、低质量贡献泛滥的时代,维持由志愿者主导的开源项目正变得越来越困难。
相关文章

原文

Disclaimer: No AI was used to write this.

Also, writing this blog post for myself, so I can reason with myself again in the future ha.

I have been doing Open Source since I was 17y old. My first pull request was fixing some broken links in Brad Frost’s This is responsive project.

I spoke in free software conferences when I was 18y, got engaged, my dream job for many and many years was work at Mozilla. Most of the companies I’ve worked for, I helped to kick start open sourcing internal projects.

However I decided to close source Canario terminal.

The reason is that Canario is something I built for myself, and I simply don’t have the time to maintain it as an open source project. Rio and other stuff already drains everything I have. It’s the same reason I never open sourced boo. Which is a shame, because boo introduces a first class replacement for the LSP system.

People underestimate what open source costs from the maintainer side. It’s not just writing code. It’s issues, pull requests, discussions, people demanding things from you for free. I got spammed like crazy. And now with AI, spamming a maintainer is so easy: low effort issues, generated pull requests, and every single one of them takes a bit of your time and energy.

Three things I want to make clear:

  1. Canario doesn’t have telemetry. The only request it does is to check for updates.
  2. If closed source is a big deal for you, I am sorry, but there’s many other wonderful options in the world.
  3. The Canario source code is still there in the older versions of Rio. People can fork that if they want to. All good from my side.

Also want to explain why I built Canario in the first place. I was watching my friends at work using so many half-baked solutions and I thought: I don’t want to use any of that. So I built it for myself. No VC money, no expectations of getting rich. Just a terminal I wanted to use for agentic code.

If you look at every project I did that got popular (react-tv, react-ape, Rio, etc), all of them were me fixing my own problems. Boo and Canario are the same thing, but this time I don’t have the same energy and time I had before.

To be clear: I will continue maintaining Rio, that’s a project I love. But Canario will be developed on its own pace. No drop-in requests, no AI spam issues or PRs. Just me building the thing I want to use.

Best,

Raphael.

联系我们 contact @ memedata.com