谈谈微信的信息流
最近才更新到微信的最新版本,早有耳闻公众号变成了微博似的信息流展示信息。之前也没有太在意,这次微信客户端版本更新以后,发现坏了坏了,以往的阅读习惯已经被彻底毁掉了。下面两图都是我手机上的截图,左边是新的信息流模式,右边是信息流界面下点击右上角图标,回到的“类似以往”的基于订阅号发布者的模式。
首先我要澄清的是,我认为信息流是绝大多数 SNS 软件都乐意采用的信息传递模式,简洁而且高效,包括我经常使用的那些应用,比如微博,比如知乎,比如 LinkedIn,甚至绝大多数 RSS 软件,因此,它绝不是一个新东西。毫无疑问,基于信息和基于信息发布账号(公众号)的方式比较起来,通常前者更有优势,但是此事不绝对,而且很遗憾的是,在微信这块地盘上,对于多数用户来说它恰恰就是一个反例。
别急,听我慢慢道来。
先谈一谈这方面的老大哥微博
为什么要谈微博?因为 在微博出现以前,在国内你找不到一个像微博这样能够在非双向联系,而仅靠单方面关注中迅速扩散消息的软件了 。它的革命性是在多方面都是毋庸置疑的。想想微博出现以前,互联网上消息要扩散有哪些典型方式?博客?显然无助于迅速扩散消息,而且作为快餐消息的载体明显不适宜。新闻?新闻只能说还是基于 Web 1.0 的模式,它和 Web 2.0 的最大区别是,普通的用户无法成为主要的信息创造者。QQ、MSN,甚至人人网?它们虽然差异很大,但是都是基于“好友”的方式,利用的是“杀熟”,而非微博这种以明星为核心用户(与草根为核心用户相反)来决定的信息传递群体完全不同,信息扩散速度也慢得多。扯一句题外话,应该说,一般情况下,信息扩散速度越快,国家机器的审查就越困难。在这个信息爆炸的时代,最大的优势当然是信息自身。可是除了信息本身的价值,信息出现的位置和时机至关重要。利用时间来组织信息,把越新的信息越往上放,非常有助于实时性软件,或者接近实时的软件扩散信息。
于是,微博出现了。和其它成熟的 SNS 产品不同,在当时你根本不可能找到一个相近功能(相近功能是指上文所述)的替代品。但是,纯粹的基于时间线来调整信息优先级是有很多问题的。虽说从技术层面来看,这种简单的方式,无论是实现还是优化,都有相对成熟而且有效的方式。比如根据不同的用户量采用 push 还是 pull 的模式,比如采用从冷到热分级存储,等等等等,我在 这篇介绍系统设计典型问题的文 中曾经介绍过,举的例子是 Twitter。
最大的问题就是,对用户来说, 信息重要性的衡量,绝不是一个简单的基于时间的逻辑 。虽说越是实时的软件,时间因素的重要性占比越大。比方说,微博的时间线重要性,就要比 RSS 软件高得多。但是,重要性的衡量不能仅仅靠时间。微博有 转发机制,这个机制保证了,热门的消息,即便不那么“新”,它依然能够经常在眼前出现 。而如今的微博和 Twitter,除了转发机制自身,都还有自己评估“重要消息”的一套办法,即便错过了,即便没有看到它的转发,它依然有机会回到你的视野里面。这个弥补,是一定需要引入基于用户特征的机器学习的,否则对于消息重要程度的的认知无从谈起。咱们暂且不论是转发机制还是这个额外的重要消息评估机制,它们毫无疑问都是对时间线弊端的弥补。
好,再回到微信公众号消息上面。
先看看基于时间信息流这一半
首先,微信公众号文章发布的实时性如何?有一定实时性,但是远没有那么高的实时性,也就是说,9 点钟的消息,我 11 点看到,也没什么大不了的。从这个角度说,基于时间的信息流,有益,但多数情况下并不能带来特别大的好处。而且,微信信息流优先级还不完善,用户更感兴趣的内容很容易被淹没在茫茫信息大海之中。