2012年9月18日

sbbs.me是什么?

作者 zhuangbiaowei
简要介绍sbbs.me的缘起,开发思路与发展方向。
1. 缘起
1.1. http://wrangl.com/ (墙外)

这是一个专业的辩论网站,他允许创立一个主题,然后用户各自选择正方、反方,提出自己的论点,互相辩驳。
我对他的形式非常喜欢,但是缺感到很多时候讨论问题,往往并非简单的正反双方,而是有拓展话题,另起一摊的情况。
1.2. 社区的发展简史

最早的社区,应该是邮件组吧,人很少,大家都混在一起,回复来回复去的,讨论各种不同的话题。
然后出现了BBS,这是一种规范化,将邮件从一个不太能够满足需求的境况下解放出来,到后期越来越功能丰富的BBS,成为了大量社区的标准模式。
再后来,BBS社区的大而全,再次分化。愿意写长文的,转而在Blog里发表,大家在别人的地盘上评论。没空写长文,只是胡诌几句的,就逛Twitter/微博,大家就140个字的Social着。
Quora/知乎这样的问答网站,其实也是BBS的一种特化,将BBS中的问答需求,更加有针对性的满足了。
在我看来,BBS的讨论里,天然就有跑题的趋势,这样的趋势被一些人热爱,也被一些人痛恨,有没有可能使得跑题成为一种“规范化的形式”呢?
2. 数据结构


在传统的BBS中,内容的最小单位是“篇”。但是在讨论的过程中,我们往往会针对其中的某一段发表议论。而我们发表的议论,有好几段。别人来进一步评论的时候,也只是挑其中的一段下手。这就是跑题的根本原因。
在新设计的数据结构里,最小的内容单位是“块/block”,而块与块之间,会发生各种关联,这样就获得了一种更具有灵活性的结构。
  • Block:最小的内容单位
  • BlockLink:记录Block之间的关联关系(支持/反对/引用/评论/克隆)
  • Tag:标签
  • BlockTag:记录Block所关联的Tag
  • Watch:记录某个用户关注的(用户/Tag/Block/…)
最核心的数据结构就是这些。
3. 展现形式

  • 参考了wrangl.com,在Block之间以不同颜色的连线,表示相互关系。红色表示反对,蓝色表示支持,黑色表示普通的评论…
  • 整个文章的展示界面分为三栏,左边是过去、中间是现在、右边是未来。也就是说:左边的Block是引发中间正文的原因,而右边的Block则是因为正文而引发的评论。
  • 不断的点击右边的Block,就能够顺着某个讨论的线索,追踪下去。当然,也可以反溯回来,再浏览其它的讨论线索。
  • 由于缺乏美术设计的能力,因此本站完全套用了Bootstrap的配送与控件。
4. 可能的用途

sbbs.me是一个全新数据结构的尝试,基于这样的数据结构,可以做很多的事情。

  • 共同创作:写作某种较为严肃的文章,作者只有一个,但是协作者,点评者可以有多位。
  • 翻译:将原文贴在中间,将译文作为评论放在右边。
  • 无主题聊天:基础的跑题类话题。
  • 日记与个人博客:sbbs.me可以支持private创作,只邀请好友查看。
  • ……
5. 结语


欢迎多多使用并批评,这是一个开源的项目,因此不但欢迎功能级的批评,更欢迎代码级的批评。