今天我们来聊聊在线文档这回事,在最近这段较为特殊的时间内,很多在线办公软件为疫情期间在岗的人员提供了免费使用的福利,而我作为石墨文档的长期使用者,不免有些想抒发的欲望,毕竟这样好的在线工具应该早就被大家知道,而不至于是不得不用的办公软件。

说到在线文档,国内这块石墨文档也算是响当当的「头部玩家」了。本文也会以石墨作为典型来说说做好一款在线文档的关键需求点。

协作的核心

本文不是要仔细横向评测各家的功能多寡以及细节差异,而是拎出一些在线办公软件的核心需求点,一起从做产品的角度聊一聊石墨现在做的如何,未来的着眼点可能在哪里。

说到在线文档,不免各家都会拎出在线文档便于协作的优势来说,所以我们可以简单地理解,在线办公文档的核心功能在于及时协作,多人所见即所得。而云端同步已经算是在线文档的必备属性,就不展开说了。

扩展阅读:国内「在线文档」哪家强?用过石墨、金山、腾讯后我来说说......

文档能力

第一次听说在线文档,并不是来自石墨。首先听到的是大名鼎鼎的 Google Docs,但是当时,我的眼界还很狭窄,认为这不过是一个在线 Word,潜意识里怀疑稳定性和流畅度,加上网络限制的原因,一直没有太过深入的尝试。此时对于在线的概念还没有太多理解。

再到后来,公司开始启用 Tower 这款 kanban 协作工具,偶然间发现上线了一起写1 这款应用。

一起写内置在 Tower 中的应用页面

一起写的产品名称简洁明了,如果能在 Tower 中协作书写文档,相信能吸引住一大批用户。但是,因为应用的启用需要管理员统一配置,最后团队没能尝试得上。作为产品部门,随着团队的壮大,文档协作编辑是越来越迫切的需求,从这时候开始,我们就开始寻找第一款在线文档协作工具。彼时已经是 2018 年末,石墨文档也是在那时候登陆 Tower。出于和上面同样的原因,团队选择自行开通石墨账户,迈出了团队协作的第一步。

参考阅读:

能一起愉快不冲突地协作当然是一件非常棒的事情,但是如果多人在编辑同一段文字,以谁的更新为准呢?我相信初用石墨的时候很多人跟我有同样的困惑。

但其实我们来简单分析下这些场景,就会发现冲突并非不能被解决,毕竟石墨大多处理地不错。(只是理论上,实际技术还是比较复杂的)。

输入冲突

当两个人初始在同一个点键入时,会有网络传输的时差,所以键入的效果由云端的同步顺序决定(视网络和服务端实际情况),一旦有了先后顺序,那么光标的位置就不同了,此时就没有同步的问题。多人协同输入也是同理。

假如编辑的场景是分工合作,一个人在上方输入,另一个人在下方输入,此时如果上方用户回车添加行,下方用户会如何感知呢?从体验角度来讲,下方用户正在编辑的行如果毫无感知应该更棒,这样就真正做到了编辑互不影响。

当然石墨的现状是,如果上方的用户多按了几次回车后,下方的用户就看不见自己在编辑的内容了,除非主动下滑到内容区。

上下两人同时编辑

这需求似乎听起来理想化,但从产品角度来说,恰恰是多人编辑互不干扰这一特性的完美体现。如果能够做到这点,石墨应该会更棒。

删除冲突

如果两个人在同一个位置删除呢?此时删除的内容相同,都是光标前一个字符。换句话说,石墨做到了异步删除的并发操作,简单来说就是,两个人都体会到了离线删除同一个字符的效果,不会出现一个人的删除先触发,另一个人多删了内容的情况。这点在使用时几乎是无感知的,但出了问题却是非常容易察觉的。

如果一个人多删除了一段文字呢?当两个人的删除内容存在交集的情况时,石墨是如何反馈的呢?

让我们先来思考下理想的情况是怎样的。

假若我有一段字符串:「12345678」,我要删「123456」的时候,另一个人要删除「5678」,两个删除动作几乎在同时触发,那我们几乎可以认为请求同时发送到了服务端,但是本地的删除应该立刻响应,而对方的删除应该滞后响应,这样给用户的感知才是第一手的,不会出现自己想删除的内容被别人先删除的情形。

两人同时删除的内容有交集

石墨恰好是这么表现的,确实符合用户直觉。这里要强调的是先本地响应后请求的处理方式,因为无论如何本地操作的反馈都应该快于服务器请求的响应。

及时沟通

非常值得一提的是,协作开始时的沟通可能不多却极为重要,让对方看到评论可以及时纠正方向性错误,防止主题跑偏,毕竟频繁地在微信和文档之间切换体验会大打折扣。

石墨提供选中内容添加讨论的功能,这确实能起到一些辅助沟通的效果,并且支持回复,结束讨论,基本能满足一部分的沟通需求。

在线文档因为协同的场景居多,反而对修订功能要求不高。在 Word 场景中,我们往往将文档发给同事,收回的是添加了修订的版本。一来是对内容的修改建议,二来是鲜明的标记能标明改动历史。这就像是软件工程中的瀑布流式开发,一步步更新、审查、发布。

一旦到了线上,原先瀑布式的协同则变成了敏捷式的协同,实时的评论代替了一部分「修订」功能,文档的审核则由删除、高亮等标记以及文档增删改查的全量记录来替代支撑,说到历史记录,下面会展开说说其之于在线文档是多么重要的一件事情。

更新日志和版本记录

为了能准确清晰的标记修订内容,在线文档应该实时在文档区提供不同角色的交叉修改展示方案,同时在侧边栏等处提供所有历史记录,并支持查看和回退操作。

当别人改动你输入的内容时

长久以来,在开发者这块就有很多版本管理工具,从 SVN 到 Git,这中间不变的是对代码修订历史和提交记录完善的记录和管理机制。但是在文档这块,我们一直用着通过带日期、人名等后缀命名Word 的方式做简单的版本管理。这确实能解决非在线文档的版本管理问题。可一旦到了线上,事情就不是这么简单。

回到石墨文档,对应上文提到的命名 Word 文档的方式,恰好对了「保存为历史版本」这一功能。而针对多人不停地混编文档,右侧更新日志除了提供清晰的查看形式外,更重要的是提供了快照的能力,即能支持恢复任意时刻的文档状态。一定要提一点的是,当真正丢失了内容时,怀着急迫的心情在这里滚动查找实在不便,提供一个更佳的视图,比如按文档历史位置、按日期、按协作用户等维度来呈现历史记录或许会更加方便,加一个简单的模糊搜索说不定也能派上用场。

日志记录和历史版本

离线能力

说到在线文档的离线能力,考察这点好像是在刁难,但其实却在情理之中,试问如果在座的各位都在编辑文档,而网络突然断了会发生什么。假设能继续编辑,断网后编辑的内容能否正确被同步,这都是考验的重要点,毕竟用户没法保证网络环境时时刻刻都是稳定的。

石墨服务器故障的提示

在这点上,石墨直接否决了离线编辑的可能。断网的一瞬间,除了几秒的延迟内可以输入内容,一旦检测到断网,石墨就会显示「网络不通,文档将离线保存」,但实际现状却是页面无法键入内容。印象中我也遇到过网络断开继续编辑的情形,不知道是否石墨最近对这块策略做了更改,或者是由于疫情的原因做了限制。但单独这就这块能力来讲,不允许继续编辑从用户角度来说是不友好的,即使在人人都有手机开放热点的当下。如果有离线编辑文档的需求,只能下载 PC 版本使用。

重新恢复网络后的内容应该及时同步,并给到正确的界面反馈,在线文档最大的优势,同时最大的隐患就在于「在线」二字,网络的状态和断网通网后的界面提示应当及时且贴心,优先以保留用户的内容为准。这点上石墨只能说是差强人意了,尤其服务器还偶尔会出现开小差的情况。Tower 在网络这块的反馈做的相当及时,并且提示的样式也足够鲜明。

用户和权限管控

多人协同引入的变动因素远远不止于编辑冲突,在文件所属、操作权限方面也同样会引起问题。这需要提供适当的产品方案来解决。比如提供基本的文件管理页面和快速访问标签,在初期,石墨确实这样做就够了。

但在用户量激增,企业用户入驻后,简单的文件系统就显得有些不够用了。个人、团队、企业,针对用户的组织管理一般在这三个层面进行,石墨的组织形态是提供了团队空间这一概念,企业版之前试用下来还增加了企业用户管理这个模块,并且考虑到了一些离职等变动带来的用户变更和文档权限收回等功能。不过这里面容易做的不明白的是团队和权限的区分,因为最终权限其实面向的是文档,团队作为一种维度的权限分割方式,时常被混淆成权限管理的主要对象。

任何一个系统在设计权限的时候都会发现,越设计越膨胀,似乎所有内容都会跟权限扯上关系,事实确实是这样。我们拿房子来比喻文档,房屋所有权归属于户主,户主可以将房屋其他房间租给朋友来住。当然也可以过户或者租赁给其他人,这就等同于文档的所有权(注意不是管理权)移交和赋予可编辑权限。

继续拿石墨对应的话,房屋对应文档,户主对应文档所有者。当在桌面新建的文档被移动到团队空间时,本质上是将房屋委托给了租赁公司,由签约的租赁公司继承一部分管理权限,租赁公司对应着石墨文档团队空间的管理员。但要记住,房屋的买卖权利应该始终在户主手中,对应着移动到团队空间的文档依然只能被创建者销毁。但事实上,石墨文档并不是这样表现的,一旦内容被移动到团队空间后,团队空间管理员即可删除。上面强调的管理权≠所有权就是这个意思,原本只能行使租赁权限的公司突然把你的房子卖了,这点还是挺令人懵逼的。

石墨文档移动到团队空间

从做产品的角度,我能理解石墨这样实现的目的。移动到团队空间这个动作,当等同于过户房屋时,表现就和现在一致。一来重置了协作者,重新继承团队空间的现有权限,二来避免了一份文档两处存储的同步问题,毕竟这是一个移动的操作,而不是复制。这多半是因为团队空间是后来推出的,为了避免跟之前的协作权限冲突采用的一刀切的方案。但其实团队空间的文档是允许被非团队成员访问的,所以重置协作者的操作现在看来并不合理。再说回不允许移动回桌面这点,表现为团队空间中的文档只能在团队空间中移动。我可以认为在历史包袱问题上,石墨遇到了一些数据兼容性的问题,初版的石墨在权限这块确实设计的有些不清晰,并且迭代后中的几个版本权限又设计地有些复杂,导致了现在这样的问题。不过好在权限隔离地不错,团队空间内部的权限还是相对很清晰的。作为普通用户,企业版的权限如何这里就不得而知了。

性能因素

性能恐怕也是大家忽略的一个问题,我曾经一段时间都是使用的石墨文档的 Mac 版本。原因就是在线版本总让我觉得很卡,动不动就加载也很令人崩溃,另外支持多窗口也算一个小的功能点。不过桌面版应该还是内置了一个浏览器引擎,相当于单开了一个 Chrome 只开了一个Tab,内存可以单吃,实际可能区别不是甚大,这点大概心理作用居多。(这点比较懂的评论区解释下)

在线文档受限于浏览器的性能,一旦单个文档过大,比如插入了太多图片后,加载就会变慢,编辑时出现卡顿、崩溃等情形。这是不可避免的,能解决的方案就是减少文档的内容,如果是超长超大的文档,并且对排版和格式还有要求,不太适合用在线文档来书写,比如动辄几百页的标书。(再提一下,PC 版本真的性能会好一些)

从石墨几乎每周一更的 Release Note 来看,无论是表格还是文档的性能提升,隔一段时间都会有相应的需求体现,能看出来问题在被重视着,只是解决需要时间,相信未来应该会愈加改善的。

审美角度

现如今大家讨论产品,一般会涉及以下几个方面:
  • 让人不得不称赞的常见功能,做地非常优秀和极致
  • 一些不常用但是隐藏地比较深的好用细节功能
  • 一些高级进阶技巧,类似自动化、应用联动、hack技巧等
  • 视觉审美
  • 交互审美
  • 其他审美
  • ...
是的,可能绝大多数讨论都会基于审美来展开,富文本样式是否好看,时间长了是否会审美疲劳之类。建立在产品客观层面的讨论可能以细节功能居多,富有经验的工具使用者传达一些工具的实用功能安利。二者的共同点在于,讨论的出发点掺杂着个人不同的喜好。拿我自己举例,当初用石墨其实很大的因素是其石墨灰的风格吸引了我,颇有一种工业风的味道,整体的样式一体性很高。但在我使用过飞书文档之后,我觉得可能鲜明的富文本样式和界面风格,更适合强调文档内容,当然客观来讲,我只是对石墨有些审美疲劳了。这问题并不复杂,换着用用再回来就能解决了。
但关键的点在于,产品的风格要自成一派,不需要太过亮眼,只要足够吸引用户打开文档试用下产品,审美这关就算是过了。

在线协作的未来

这点我没法说的太远,因为展望未来和商业环境密切相关,适合单独写一篇专业文章来分析。这里还是围绕石墨面向的市场来说说国内的在线协作可见的前景。

巨头强势入局

国内最有实力,用户量最大的办公软件应该非金山的 WPS 莫属,一句话,在 Mac 上真的很好用,至少弥补了 Word 出故障时打不开文档心急如焚的遗憾。

是谁最早,去考究已经意义不大。但在桌面端,已经非 WPS 和 Word 莫属。现如今在线文档这片红海,作为选手的石墨已经不容小觑。2016 年与钉钉深度合作,2017 年获得今日头条近亿元投资。2018 年,石墨算是真正完成了产品端的初步打磨,正式走向面向企业服务的商业化市场。彼时,金山文档和腾讯文档也已经初见形态,甚至今日头条自家的 Lark 也内置有自研的文档,其老对手快手则收购了开头提到的一起写。

石墨的发展历程

未来,恐怕不只是在线文档,整个在线生产力工具可能都会出现巨头包办的局面,消费者从中可以体验到更好用的工具,但作为工具背后的创造者们,恐怕满脑子都是如何商业化和提升用户体验,巨头们则在期待下一个更大的市场契机出现。谁也没想到,桌面办公用 QQ 的时代被微信的横空出世打破了僵局(怎么感觉是一种倒退233),这也许是国内的办公与生活杂糅的现状使然。但钉钉和飞书的出现,正在尝试破局,未来就业者们除了熟悉办公三件套外,可能还需要熟悉一款办公软件,至于这个软件是哪家的,现在说还为时尚早。

国内的 Google Docs

做不成那个必备的办公工具,石墨要做国内的 Google Docs 的决心应该还没改变,只要体验足够好,就可以被内置在其中,也算是完成了最初的梦想。

办公三件套这块,石墨的文档已经大差不差,表格这块常用功能也基本成型,虽然幻灯片还只是一个雏形,但是好歹是有的,只不过优先级应该比较低。考虑到差异化的原因,独立出了专业版本的文档,目前可以看到针对高级企业版的付费权益里是有专业文档的。未来技术和时机到位,应该还会提供专业表格等。石墨的每一步,都还算走的扎实,希望未来也能如此。

写在后面

限于篇幅原因,一些文档协作的细节功能点未必说得清楚,穷举功能,深扣细节也并非我所想。如果有任何说错的地方,欢迎评论区指正。

下一篇我们说说真正想要一统国内办公领域的应用们。