Wikipedia 是最受欢迎的在线百科全书,数百万人每天依赖它提供关于各种主题的可信信息。不过,鲜为人知的是,Wikipedia 曾经爆发过多次丑闻,这让人们对其信任度产生质疑。比如,2012 年,英国维基媒体基金会的一位受托人利用自己的职位,在一个月内 17 次将其公关客户放到 Wikipedia 的首页。而 Wikipedia 创始人吉米·威尔士(Jimmy Wales)也曾大幅修改关于自己的条目,删除了共同创始人拉里·桑格(Larry Sanger)的相关内容。2007 年,一位自称是大学教授的活跃编辑被 Wikipedia 聘为仲裁委员会成员,结果被揭发是一名 24 岁的辍学大学生。这些只是冰山一角,记者 Helen Buyniski 还收集了更多关于 Wikipedia 内部问题的信息。
这些问题已经持续了很长时间,似乎 Wikipedia 无意去解决它们。尽管有许多人尝试创建新的集中式 Wikipedia 替代品,但它们都未能获得足够的用户基础。事实是,我们无法依赖任何单一网站来承载全世界的知识,因为它迟早会被腐蚀。唯一的解决方案是分布式架构,让许多较小的网站互相连接、共享信息。这正是 ActivityPub 协议的作用所在,它被用于 Mastodon、Lemmy、Peertube 以及许多其他分布式社交媒体项目。
过去四年里,我(Felix Ableitner)一直在开发 Lemmy,将其从一个原型发展为一个功能完备的 Reddit 替代品。我编写了整个联邦代码,并对该协议非常熟悉。我意识到,这项技术同样可以用于创建一个分布式百科全书。由于没有其他人着手进行这样一个项目,我最终决定自己动手,创建 Ibis。得益于我之前对技术栈的经验以及我创建的 ActivityPub 库,我在短短四个月内就完成了一个概念验证。与 Lemmy 一样,Ibis 构建于 PostgreSQL 和 Rust 技术栈之上,此次的前端使用了 Rust Webassembly 编写。这意味着它可以高效地运行在低性能服务器上,或者扩展到支持大量用户。
这个概念验证包含了所有必要的核心功能。用户可以创建、阅读和编辑文章。每篇文章都有编辑历史,显示各个修改。编辑内容以差异方式存储,这意味着可以通过合并解决冲突,类似于 git。最重要的是,所有这些都是完全联邦化的,因此可以在实例之间同步文章,并像在本地网站上一样与远程文章互动。你可以在这个网站上亲眼见证它的运作,或者在 [open.ibis.wiki](https://open.ibis.wiki/) 注册一个账户开始编辑(无需电子邮件验证)。所有文章和编辑都将在不同实例间自动同步。你也可以按照 [Setup_Instructions](https://open.ibis.wiki/) 部署你自己的 Ibis 实例。
Ibis 目前还处于非常早期的阶段,但它有潜力彻底改变在线百科全书的运作方式。未来将不再是单一、集中的网站,而是一个互联的百科全书网络。这意味着同一个主题可以以完全不同的方式进行处理。比如,geology.wiki/article/Mountain 可能与 poetry.wiki/article/Mountain 截然不同。可能有些 Ibis 实例严格聚焦于某一特定主题,并保持高质量标准,而其他实例可能以通俗易懂的方式覆盖多个领域。还有些实例可能会记录电视连续剧或电子游戏中的虚构宇宙。如果某个实例管理不善或提供了被操纵的信息,用户可以轻松创建一个替代实例。然而,所有这些实例将相互连接,用户可以在不离开自己常用网站的情况下阅读和编辑文章。
然而,Ibis 仍处于开发的早期阶段,缺少众多重要功能,如用户个人资料设置、讨论、语言本地化、管理工具等。我已经为这个项目工作了四个月,估计至少还需要一年时间才能使其准备好投入生产。我无法独自完成所有这些工作,尤其是我的女儿将在几周内出生,因此将没有时间编程。因此,我希望其他开发人员能够通过贡献来帮助这个项目。特别是前端部分目前还很简陋,需要改进,或者甚至可以用像 JavaScript 这样的语言重新开发一个全新的前端。你可以通过以下渠道进行沟通:
- GitHub
- Matrix
- Lemmy
如果你没有时间或技能来亲自贡献代码,请考虑捐款。这将表明这个项目值得我投入更多的时间。我也很想知道是否有组织可以提供资金支持我继续开发 Ibis。
- Liberapay
- 比特币
- 门罗币
另外,ActivityPub 联邦协议也可以添加到现有的 Wiki 平台上,我很乐意为此提供帮助。