微信规定小程序开发者上传的包,不能大于 1M。我们目前看到的大众点评、京东、滴滴的小程序,如果不能说照搬了 app 90% 的功能,至少可以算解决了 90% 用户的核心需求。
而这些 app,你可以在 App Store 看一眼,都是 100M+ 的安装包体积,也就是小程序的 100 多倍。
我们不展开对技术细节的探讨,但无论如何都不能否认,这些 app 之间各自为营,重复造了很多轮子,没错,它们需要统计自己的用户行为,要保证程序的健壮性,要有一套自己的 UI 引擎……
你当然可以主张,比特流几乎是没有成本的,网络越来越快,用户的手机空间越来越大,但是,你依然不能否认,开发人员付出了时间去重复造这些轮子,用户花了更多的时间去等待下载,
即使那些比特流没有成本,但这些人的时间,我想一定是有成本的
。
当你足够大的时候,你的一举一动都会有乘数效应。比如说,单就扫码这件事情,安卓手机的扫码速度就是慢半拍,乘以全球的安卓手机用户数,这就已经是一笔巨大的浪费,而更进一步的,如果苹果肯向第三方开放 NFC,那么二维码不一定会成为主流的解决方案,这里也有一个巨大的 what if。
不把复杂性给暴露出来是成年人世界的一种美德
,就像父母不应该把这个世界的复杂性过早地暴露在小孩面前一样,员工不应该把执行细节的复杂性暴露给老板一样,开发者也应该尽可能地呈现简单的事物,小,也是简单的标准之一。从这一点来看,像微信这样体量的平台(而不是工具),对自己所带来的乘数效应是负责的。
也许,Google 的 PWA 不会成功,微信的小程序可能也不一定会成功,谁知道呢,但是,
一定会有一个类似的产物填补上这一层空白
。
从虚拟的比特流角度,小程序解决的是某种意义上的信息超载(重复发明),而真正决定小程序能不能在商业上获得成功的,则是它要在现实世界解决的另一个问题,这个问题刚刚好相反,是信息不足。和很多人的认知相反,
现实世界从信息流动的角度来看,反而是一个非常静态化的世界,你只看到了事物当前的状态,却无从追踪,无从关联
。
和比特世界中信息超载带来的巨大浪费一样,现实世界中的信息不足,同样也是巨大的浪费。我们就不举等公交车的例子了,现实世界有太多的基础设施可以被改造,餐饮外卖、打车、单车都是典型的细分改造,但就像在虚拟世界一样,你当然可以造出一款又一款专业软件,但
最具有魔力的那一刻,是接通网线的那一刻
。
说句题外话,我记得以前我在哪篇文章中提到过,有一个亚文化圈对微信的一切都深恶痛疾,认为公众平台是对互联网精神最赤裸裸的背叛,认为二维码是违反美学产物的丑陋实现。这一次,他们照例吐槽了在公交车站扫码,获取等待时间的使用场景。没错,有少部分城市的基建,已经在公交车站配置了液晶显示屏,可以一眼看到下一辆车到站的时间。但是对于另外几百个城市,二维码仍然是一个丑陋,但最有效的实现。当然了,最关键的是,
这群反微信原教主义者,这时候一定是不会记得他们在另外时候会夸夸其谈的 Worse is Better
。
从现实世界回到比特世界,同样是在微信里,有一个很微妙的类比,我不说我的答案,你可以自行判断。
看看微信的 iOS 和安卓版的网页右上角菜单,一个严格遵守苹果的设计规范,是美的,却不一定高效;另一个彻底摧毁了用户的心智模式,是丑陋的,却可能更直观方便;