腐化的Karma

摘要: 在过去的几年里,有一种想法在我心中日益强烈,那就是社交网站生态系统出了严重的问题。这也是我将 Reddit 和 Hacker News 从我的信息流里删掉的原因。尽管我已经在很多对话中提到了

在过去的几年里,有一种想法在我心中日益强烈,那就是社交网站生态系统出了严重的问题。这也是我将 Reddit 和 Hacker News 从我的信息流里删掉的原因。尽管我已经在很多对话中提到了这一点,但我一直未能将完整的想法写下来,直到今天。

让我有冲动下笔的是 Yann LeCun 的一项提议,在这项提议中,他主张将 Reddit 和 Hacker News 等类似社交新闻网站的做法移植到学术研究上,所有上交的论文都将由同行自主审查并投票,过程则受由作者和审阅者组成的信誉机构监管。简而言之,就是建立一个学术界的 Reddit,说真的,这个想法让我心生恐惧。

下面,我将分五个层面说说我担心的缘由,文末也会给我的建议。

腐化的Karma

Reddit 最初的想法是通过一些精妙的算法比如 Karma(喜欢你帖子或评论的人数) 来挖掘重要的信息,以此给用户创造价值。在 Reddit 或 Hacker News 平台,无论是你发布的文章,还是评论,都是通过特定的算法来决定其排名的先后。这本应该是一个了不起的创举,只是发展至今,其弊端也开始浮出水面。

人类从本质上讲都是虚荣的猴子,他们对社会地位有着近乎本能的渴望。Reddit 引入的这种将原本虚无缥缈的社交价值变成可估量 Krama 点数,会驱使人们不再关心发布内容的质量,转而竭尽所能的去追求更高的 Krama。在现实生活中,这种人通常被我们成为“政治家”——他们主要工作是将中立派拉到自己的阵营,以此将自己的文章和观点在首页呈现。Hacker News 和其他一些流行的社交新闻网站,目前都是由这群人所引领,而正如所有政治家的言论,他们的观点大都是可预估的,鲜有独到且深刻的见解。

同样,在食物链的最低端,还生存着另外一群跟政治家拥有相同目的的物种,他们缺乏政治家极具煽动性的才能,只能通过挑衅和蓄意滋事等方式,达到赚取 Krama 点数的目的。

这种本意是想挖掘有价值信息的 Karma 算法,因为“政治家”和“恶意滋事者”的存在,而同最初的理想背道而驰——真正深刻的想法被淹没,有争议的观点也不可避免的被掩盖,四处弥漫的都是赚取 Karma 的萌猫图片。

不健全的筛选机制

Hacker News 超过前两页的文章,就算内容再好,也难逃默默等死的命运,快速更迭的信息流,使得人们像在用 Google 搜索一般,除了头两页,不会再有兴趣继续翻看下去。而反观头两页的文章,你会发现内容出奇的差——好的内容默默等死,差的内容大行其道,这就是社交新闻网站的现状。在这里,质量并非排名的标准。

这会导致什么结果?打个比方,假设现在有 10 个账号,这 10 个账号每隔一小时会对最新发布的文章进行随机的投票,其结果就是,被投票的文章极有可能最终会出现在首页——这就是社交新闻网站现有的筛选机制。只要文章内容超过一定水准,那么决定它会不会出出现在首页的,不再是其质量,而是取决于它被读到的可能性。值得注意的是,这并不适合极端案例,极好或是大牛的文章,自然会被置顶,极差的文章也不会反常出现,但对于介于两者之间的大多数相对优质的内容,都会被不健全的筛选机制埋没。

这也正是现有社交新闻网站没能提供一个有效筛选机制的原因——优质内容被埋没,平庸的内容大行其道。

针孔效应

在社交新闻网站里,首页是王道。大部分用户不会翻看超过前两页的内容。但头两页的信息量,对于每天更新无数的 Hacker News 和 Reddit 来说,比重非常少。这造成的局面就是,我们只会通过头两页这一“针孔”来查看当天浩繁的信息流——这就是所谓的“针孔”效应。而即便拥有完美的筛选机制,我们通过针孔能看到的,也只是金矿一角。更何况,类似 Krama 等算法推送的内容,绝大多数都是通过共识机制筛选出来的,并未考虑到个体化的需求和兴趣差异。

你能看到的信息流并非为你量身打造的,它是经过打磨、消弱个性化之后,适合普罗大众的结果。这会导致的结果是,最终呈现在你面前的文章,都是可预知且缺乏深刻洞见的内容。订阅系统已经开始尝试建立相关主题的社区 (比如 r/Programming) 来解决这个问题,即便如此,针孔效应也依然存在。

这就是场游戏

社交新闻网站的可操作性很强且作弊猖獗。一部分原因在于,一个文章的命运完全掌握在少数人的投票中。如果你的文章还有点质量,你可以召集人手,先将它顶到首页,获取一定曝光度,之后它便会一直停在首页。如果它根本就乏善可陈,你也完全可以通过作弊的方式,拉来数十乃至上百的“赞”,使它强制性的显示在其他人的页面上。

同样,如果是类似 Reddit 这类不仅有“赞”还有“踩”的网站,你也可以用同样的方法,打压你不认同的观点。这样的例子不胜枚举:“Digg 守卫者”、“社交媒体顾问”等都是此类恶劣行为的范例,而被爆出来的丑闻永远都是极少数。有关注就有价值,有多少我们看到的内容都是经过操控和精心策划之后的结果?具体的数量我们无从知晓,但可以肯定的是,其所占的比重必定很大。

我想要说明的观点,远比我举出的实例要宽泛。假使社交新闻网站不能改变其运作的核心,它们终究难逃被恶意操控的命运。这样的体系,可能非常适合传播“暴走漫画”这样的内容,只是,我对于它能提供优质内容的期望会就此打住。

社区崩溃综合症

最后我要发的一点牢骚就是,社交新闻类的网站,有很多在线社区,尤其是技术类的。我们都非常熟悉技术论坛的生命周期,这类论坛通常由一批能够贡献高质量内容的人牵头,尔后因为更多的人加入进来,导致质量变水,于是原先这匹大牛决定搬到一个新的社区,周而复始。我们已经从 Usenet 等网站见证过这一点,而现在,Hacker News 正在经历这个过程。

我认为社区崩溃综合症使我们面临的非常重要的问题,尽管我们一直在不断尝试,但截至目前,我们依然未能想出一个合理的解决方案。Hacker News 已经有一批大牛走了,Paul Graham 也意识到了势态的严重性,并采取一些措施来对抗这一现象,只是收效甚微。

我们目前仍没有一个既兼容并蓄又可持续发展的社区。开放社区势必会导致其无可避免的衰败,社交网站也不例外。

解决方案

我不用社交新闻的原因,很大程度上是因为由社交网络提供的优质新闻流已经足以满足我的需求了。内容几乎是为我量身打造的:我 follow 的这群人里有专门负责搞笑的;也有跟我品味和兴趣类似,充当我内容过滤机的;还有一些人是我的老乡,我可以通过他们获知我家乡的消息;另有一部分人则专门发一些深奥且严肃的内容。同样,我也是粉丝们的信息过滤器,可以说我对他们非常负责,我几乎每天都会找一两条我认为最重要的信息,通过 Twitter 推送给他们。

自然,Twitter 也并非十全十美,它是一个非常适合分享信息链接的平台,同时它也是个非常糟糕的讨论媒介,基于 Twitter 平台做深入讨论,体验非常糟糕。在使用社交网站时,我会需要类似 Flipboard 和 Prismatic 这样的工具,将我各大社交平台上的内容和链接整合在一起。而同样,相信未来利用社交网站去过滤信息,远比通过社交新闻网站自有的筛选机制要强很多。倘若让我来解决社交新闻现有的问题,我会去做一个社交新闻领域的 Flipboard,来推动社交新闻网站往更好的方向发展。

时间: 2024-09-27 04:26:56

腐化的Karma的相关文章

karma 测试框架的前世今生

这篇文章主要来自 karma 作者的一篇论文,主要是说 karma 的由来,通过这篇文章,可以了解下 karma 的设计思想,这样大家在做前端单元测试时,也能了然于心. 背景 JavaScript 作为 web 端使用最广泛的编程语言,它是动态语言,缺乏静态类型检查,所以在代码编译期间,很难发现像变量名写错,调用不存在的方法等错误,除非在运行时才能暴露出来,所以非常有必要有一个测试工具来验证你的代码. karma 就是在这样的背景下产生的, 它是一个 runner , 旨在帮助开发者简单而又快速

karma作为jQuery单元测试Runner

karma作为angular测试runner出现,如果你使用过karma一定感受到这很不错的javascript测试runner.简单干净的配置文件karma.config.js,以及karma init一些快捷的配置command.以及整套测试套件,如html2js,coverage.对于angular单元测试karma就是一个全生态的测试套件,能够简洁快速的搭建整个测试流程. 本文将尝试运用karma作为jQuery单元测试runner.对于jQuery这种DOM操作的框架,有时难于分离vi

Karma和Jasmine自动化单元测试

前言 在Java领域,Apache, Spring, JBoss 三大社区的开源库,包罗万象,但每个库都在其领域中都鹤立鸡群.而Nodejs中各种各样的开源库,却让人眼花缭乱,不知从何下手. Nodejs领域: Jasmine做单元测试,Karma自动化完成单元测试,Grunt启动Karma统一项目管理,Yeoman最后封装成一个项目原型模板,npm做nodejs的包依赖管理,bower做javascript的包依赖管理.Java领域:JUnit做单元测试, Maven自动化单元测试,统一项目管

javascript-关于集成karma后的JavaScript单元测试配置的问题

问题描述 关于集成karma后的JavaScript单元测试配置的问题 小弟初学js的单元测试,使用的是karma+chai+phantomJS,进行的单元测试.现在的架构搭建起来,对应的文件也有,但是使用karama start这个命令的时候,能够看到phantomJS已经连接上,但是不加载对应的测试文件,求教应该怎么处理,图片稍后附上 解决方案 参考下http://www.aichengxu.com/view/34311http://www.tuicool.com/articles/yuMv

架构腐化之谜-阅读笔记

架构腐化之谜 本文的内容来源于此,但非仅限于此:http://www.infoq.com/cn/articles/cjz-architecture-corruption 失败的经验更容易让人记住,是因为失败让人印象更深刻,5年的编码经历,大部时间都是在循环搞一些让人胃疼的东西. 腐化的特征 每个项目初创之时,都有一个目的:理念先进.架构优美.编码简单.易于维护,但往往随着进度的推进,因为各种原因会变得难于理解.维护.扩展.我曾参与2个遗留产品:关于支付.社交的,在我加入的时候已经只能添加新的功能

使用Jasmine和Karma对AngularJS页面程序进行测试_node.js

AngularJS是继jQuery之后发生在JavaScript上最好的东西.这也是JavaScript开发一直以来想要的方式.Angular主要的优点之一就是它的依赖注入(Dependency Injection),它非常利于代码的单元测试.但有点小怪异的是,我在无论如何都没能找到一个介绍如何做单元测试的教程. 当然有很多不错的推荐:使用Jasmine测试框架和Karma测试执行器(Test Runner):但是并没有一篇完整的从无到有指导如何测试的教程.所以我写了这篇文章.我在网上找了很多资

前端单元测试之Karma环境搭建

前言 在前端开发中,测试常常是被忽略的一环.因此最近在研究前端自动化测试框架Karma,把个人的学习过程分享出来,希望对大家有帮助. 什么是Karma? Karma是由Google团队开发的一套前端测试运行框架.它不同于测试框架(例如jasmine,mocha等),运行在这些测试框架之上.主要完成一下工作: Karma启动一个web服务器,生成包含js源代码和js测试脚本的页面; 运行浏览器加载页面,并显示测试的结果; 如果开启检测,则当文件有修改时,执行继续执行以上过程. Karma的安装配置

Credit Karma融资7500万美元:估值超10亿美元

网易科技讯 9月30日消息,据国外http://www.aliyun.com/zixun/aggregation/31646.html">媒体报道,P2P借贷搜索网站Credit Karma在晚期融资中筹集了7500万美元,其估值超过10亿美元.谷歌旗下Google Capital.Tiger Global Management公司和Susquehanna Growth Equity公司领投这一轮融资. 目前,投资者们将资金投入到各种网络P2P借贷公司之中,后者已经成为网上消费者获得贷款的

传信用查询服务公司Credit Karma获Google Capital领投

摘要: 据彭博社援引熟悉内幕人士消息,提供信用分数查询服务的初创企业Credit Karma刚刚获得了Google Capital领投的7500万美元D轮融资,其估值也将超过10亿美元. Credit Karma是一家提供信用分数查 据彭博社援引熟悉内幕人士消息,提供信用分数查询服务的初创企业Credit Karma刚刚获得了Google Capital领投的7500万美元D轮融资,其估值也将超过10亿美元. Credit Karma是一家提供信用分数查询的初创企业,成立于2008年,总部位于旧