关闭 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* 的未来将完全取决于他个人的需求与进度。

此次讨论的核心围绕“Canario Terminal”的开发者关闭源代码一事展开,引发了关于维护者倦怠及开源预期的争论。 批评者认为,“开源”仅仅是一种授权模式,而非必须接受外部贡献的强制规定。一些参与者提出了折中方案:保持代码公开,但禁用 Issue、Pull Request 和评论功能,以消除维护开销及人工智能生成的垃圾信息。另一些人则提到了“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