本周给大家谈一点和自己本行相关的内容。当然读书的主题还是不能丢弃。这里推荐大家关于这个领域一本很浅显,但是却可以澄清很多概念的书《Data Points: Visualization That Means Something》
说起数据可视化,就不得不提到牛掰的Tableau Inc。就像Google之于搜索,“Tableau”在很多场合俨然就是数据可视化的动词同义词。因为工作的关系,我曾经深度阅读Tableau的各种专利文献,亲手从Tableau 4.0开始使用体验,然后长时间思考过数据可视化的产品问题。这里我分享一部分自己盲人摸象的片面而不成熟的思考。欢迎大牛们讨论指正。
Tableau孵化于2003年斯坦福大学计算机图形学实验室的项目“Polaris”。至今在这个实验室(好像已经部分迁到了University of Washington)的网站上还有Polaris当年的网页:
这个项目是做什么的呢,网页上的第二段交代得非常清楚:
Over the last several years, we have been developing Polaris, an interface for exploring large multi-dimensional databases that extends the well-known Pivot Table interface first popularized by Microsoft Excel.
这里说到,他们的idea是扩展Excel的pivot table结构,以方便对大型多维数据的探索性分析。从Tableau的最终实现来看,简单说这个idea就是让Excel的每个单元格里都能显示一个图表。同时,软件要允许自定义、多级表头存在。这样的好处是什么呢?这样就可以把一个多维数据集完完整整的用可视化呈现出来,同时可以实现对数据的“缩放”。
一般的图表比如说Excel里的一个单系列的横向柱状图,纵轴放一个维度,横轴显示它的数据,就没了。
这种数据用来表达某些个特定的语意是没有问题的。但是在对数据做“可视化探索”的场景中,数据集都是多维度的。在用掉了一个维度来画出以上的柱状图以后,你会发现你数据集里的其他维度没地方放了。也就是说,你的数据集没法再进一步被“可视化”了。你当然可以把多个维度的数据字符串连接起来,还是当作一个维度放在纵轴上,可是这样一来维度之间的层级关系就没有了。
可是当你可以有多级表头,你就可以把这些维度一层一层的往表头里加,做出这样的东西来,同时通过改变表头上最低级别的维度来实现对数据的“缩放”功能:
为了实现这个对“the well-known Pivot Table interface first popularized by Microsoft Excel”的扩展,Tableau开发出了很多的算法级别和模型级别的核心技术,概念都非常的优雅完备,非常有数学和工程的美感。这里篇幅有限就不多说了。
在学校里完成了核心的研发之后,Polaris的商业版本Tableau 1.0在2004年就问世了。可是对比它辉煌的今天,你可能都无法想象在接下来的将近4年里这是一款多么默默无闻的软件。一直到2007年年末,Tableau的年收入都不到五百万美元。考虑到它每个用户999美元的价格,Tableau的总用户(注意是用户,不是客户)数量可能只有几千,甚至更少。
一般而言,一句“市场和品牌还没有孵化成熟”就可以解释Tableau初期的疲软了。不过我们不妨说的更细一些。个人认为这里有个关于数据可视化的使用场景的问题。从《Data Points》作者的观点(也是目前业界比较通行的观点)来看,数据可视化分为“娱己”和“娱人”两种。所谓的“娱己”就是,你拿了一个数据集想“看看”。至于要看什么,你可能已经有了清晰的目标,也可能根本没有,打算玩出什么就是什么。用户玩出好的可视化之后自己恍然大悟一下,产生了一些思考和认知,就完成任务了。在一个纯粹用来“娱己”的工具软件里,用户的用例也就到这里为止了。这种工具就是所谓的纯粹的Data Discovery Tool;相应的“娱人”则是更进一步,在数据集的探索过程完成后,你的目的是要把你这个“看看”得到的结果讲述给别人。这个“别人”可能是你自媒体的读者,可能是你公司的老板;可能是一个人,一个会议室里的人,也可能是全世界的人。总之,在“娱人”的使用场景里,你还会想使用手里的工具进一步格式化和注释你的图表,试图让它们能通过自身的表达力向别人传达准确无误的观点。
我们从Polaris项目的初衷,以及Tableau的初始版本都可以看出,最初的Tableau,是一个极为先进和强大的“娱己”的可视化工具。可是仅仅“娱己”的数据工具使用的频率和时长都不会很高,相应的商业价值自然是非常有限的。从后续的产品改进和marketing上看,Tableau果断的意识到了这个问题。他们在2008念推出了免费版本的Tableau Reader,在2010年推出了免费的客户端和云端服务Tableau Public。在Tableau desktop的后续版本中,他们也持续的加入了对图表样式的精细自定义、文字注释、以及storytelling的各项功能。这些动作迅速的让Tableau能更好的“娱人”,从而给产品和公司注入了巨大的商业价值。
另一方面,从这个收入曲线图的我们还会有一个观察,在2007年到2015年这段时间里,老牌BI公司如MSTR(作者你为什么好死不死挑了这家……)的收入基本是趋势持平的波动走向,这是一个渐趋饱和市场的成熟企业的走向;新兴的数据可视化公司QLIK是线性增长的,这是一个良性成长的to B公司的走向。可是Tableau,它是指数级增长的!这可是只有一个解决了终端用户刚需的to C的公司才会有的成长曲线。
于是这里又有一个数据可视化的用户的问题。上面说到的“娱己”和“娱人”两种使用场景,传统的to B思路的公司,都是把这两种场景推销给企业和机构用户。毕竟在过去,只有企业和机构,甚至是超大型的企业和机构,才能积累到足够多的结构化数据,才有进行数据分析和呈现的需求。可是时代的发展改变了这一状况。Tableau适时的出现,leverage了个人和小型组织的数据保有量的增加,以及由此产生的数据分析需求。由于它的低部署成本和易用性,它在中小企业、自媒体、个人这些无力使用传统的重型BI工具的市场里飞速的增长。借由这些惊人的增长数字,Tableau开始给世界讲了一个很宏大的故事:数据可视化,并不是只是一个企业级的市场,它潜在的用户数量是巨大的;而数据,和社交一样,将会是我们每个人未来生活的一部分。
这个故事一讲出来,华尔街沸腾了。2013年那个在纽交所IPO的股票代码叫“DATA”的股票(个人认为这个股票代码选的,真的有点自我感觉过于好了……)成了BI和数据可视化圈里的一个传奇。
当然后续的跌宕起伏其实是很多的,包括那次股价的腰斩,这里就不多说了。总的来说,Tableau的这个故事说对了方向,但是夸大了变革发生的速度。从目前Tableau的股价来看,大家对这个故事的预期,应该已经调整成了“谨慎乐观”。毕竟这种给资本讲的故事,早晚都是要回归真实的价值的。
这里面还有一个小插曲,Polaris最初设计的拖放操作并实时更新图表结果的交互方式,在后来无心插柳的成为了Tableau的一个杀伤力巨大的核心竞争优势。因为传统的BI产品的可视化部分大多都是先编辑后执行,或者在编辑框上点击应用后才能看到修改结果。Tableau的这个交互上的优势(其实Spotfire的交互也是类似的,可惜Spotfire太早被收购导致了发展受限)间接把最大的竞争对手Qliktech逼着去做了Qlik Sense,导致Qlikview12跳票了3年才在2015年发布,同时也导致很多传统BI厂商开始花费精力研发与此类似的产品。这也在另一方面给了Tableau在2012年开始腾飞的机会。
建议大家去网站上翻翻Polaris当年那些论文、原型、ppt。读过之后我感受到了一种科学技术和资本的相爱相杀。为了成为一款成功的商业软件,Tableau加入了很多和最初的设计思路完全无关的功能。这些功能已经让如今的Tableau用户很难再清晰的看出这个软件的作者们最初优雅的和富有前瞻性的设计思想了。每次翻看那些生成查询的代数表达式和计算规则(后来被brand成为那个叫VizQL的东西),我都感慨,大牛们看问题的高度和抽象维度是多么的不同。可是退一步想,Tableau如果没有及时的对产品做调整来满足商业需求,这个数据可视化领域的“先驱”可能就会因为太过阳春白雪已经成为一个“先烈”了。
不知道如今在Tableau工作的人们,是不是也如一个典型的软件企业一样陷入功能堆砌、实现臃肿、政治斗争的庸俗之中。可是无论如何,这款软件和这个公司都已经极大的推动了数据可视化的发展。我们的时代应该对它们表示感谢。
记得曾经参加唱歌比赛的导师张精冶老师说过,很多事情到后来都超出想象的混乱,但是只要它最初的初衷还没有完全改变,就算是成功了。