如果问我,近30年来,世界上最伟大的企业信息化产品是什么,我会回答 Excel,它的伟大,在于提供了一种普适性很强的工具和方法论,影响到了企业的方方面面。

那么,近10年来,最好的这类产品是什么呢?我要回答是 Airtable,它是一个在线工具,每个人都可以去尝试一下,那为什么我会觉得它好呢,本文尝试给出一些解读。

小微企业的信息化诉求

小微企业信息化的最基本诉求有三点:

  • 存储
  • 查询
  • 分析

在此基础上,还会附带:

  • 规则
  • 流程
  • 权限

可以说,如果满足了以上这些点,很大程度上就满足了小微企业信息化的大部分需求。

带着这些诉求,我们来看看在 Airtable 体系下,如何解决其中的一些问题。

数据的存储与展示

存储其实是一个比较容易被理解的事情,因为,我们习惯于基于表来存储一组数据,从视觉角度,一张表格就足以表达多条数据,表头表达字段,一行表示一条数据,每个单元格表达所在记录的对应字段值,而这么一张表格,就正好表达了一种实体。

截屏2020-01-21下午5.50.29.png

在 Airtable 中,我们可以轻松添加字段,选择它们的类型,添加一些基本约束,然后,填充或修改数据,也可以建出多个表来,存储不同形态的数据。

从这个角度,我们完成了数据的分类存储。这样一个表格视图,已经足够我们进行数据的录入、编辑、查看了。

数据的查询与分组

已存储的数据,可以进行各类过滤、排序、分组。视图顶部的 filter、group、sort 等功能区中,可以设置各种条件,根据这些条件,数据会被汇总为所期望展示的形态。

截屏2020-01-21下午5.54.34.png

可切换的交互形态

在 Airtable 中,数据的存储与展示不是强行绑定的,同一份数据,完全可以在不同视图下编辑,但结果都是同一份。

Airtable 内置了几种视图,除了刚才提到的表格视图之外,还有这些典型形态:

日历视图

截屏2020-01-21下午5.51.00.png

看板视图

截屏2020-01-21下午5.50.04.png

简单的多人协同

Airtable 天然面向协作,在看板或者日历视图中,点击一条记录,可以编辑这条记录的详情:

截屏2020-01-21下午5.55.18.png

注意到这个详情界面的右侧,有一个日志区域,还可以编辑评论。这个功能在很多情况下是非常有用的,因为它是附加在任意实体、任意记录的详情中,比如说,我们用来做商品管理,那每个商品的每次修改,都留有操作记录,还可以编写评论,留作日志,甚至还可以在这里 at 其他人,对方会收到消息,点击之后直接跳转到这个界面来。

这样,就可以很容易进行团队中人员的协作。

任务管理示例

以上都是对 Airtable 的简单介绍,下面我们来做一个实际的例子。

项目

在 Airtable 中,一个用户可以拥有多个“base”,可以理解为这是一个“项目”或者“库”,新建一个用于本次示例,选择“Start from scratch”,表示从无到有开始新建,起名为“示例项目”。

image.png

除了这种方式,还可以导入现有的 Excel 表格,或者基于模板新建。本例为了演示,选择了完全新建的模式。

一个新的项目,会默认有一个表,可以点击表名旁边的下拉,把表名从“Table1”改为“任务”。

一个项目中可以有多个表,点击表名右侧的加号新增其他表,通常,一个项目中会有多个表。

在领域建模中,实际上这么一个表,被称为一个“模型”,比如:任务、子任务、商品等等。

我们新建一个“子任务”表,用于演示。

image.png

字段

每个表的字段都是可以调整的,字段可以是基本的数据类型,还可以是附件、图片等复杂形态。

把任务表的字段调整为以下形态:

image.png

  • 标题,Single line text
  • 内容,Lone text
  • 是否已完成,Checkbox
  • 执行人,Collaborator
  • 截止日期,date

将子任务表的字段调整为以下形态:

image.png

  • 标题,Single line text
  • 内容,Lone text
  • 是否已完成,Checkbox

关联字段

有一类字段表达的是关联关系,它的实际存储在另外一张表里,比如说,我们在某个任务下面,关联了几条子任务,可以从子任务表里面去查看所有这些子任务,任务里面只是关联了它们。

我们来尝试一下在任务表里面关联子任务表。添加一个字段叫做:子任务列表,类型为 Link to another record,然后选择子任务这个表,如图。

image.png

这样,一个简单的任务管理系统就完成了,可以在其中填写数据。

自定义视图

我们可以为这个系统定制多个视图,比如说,看板视图。

点击任务表的 Grid view 选项,弹出视图切换的界面。

image.png

在视图切换界面中,点击 Kanban 视图。

image.png

接下来,需要选择用于分组的字段,暂时,我们先选择“执行人”字段作为分组字段,在 Airtable 中,只有人员或者单选字段可以作为分组字段。也可以创建一个表达任务当前状态的枚举字段专门用来分组,比如:

  • 未开始
  • 执行中
  • 已结束

这样,整个视图就自动切换到了看板视图,也可以点击上方的 Customize cards 来自定义任务看板中需要显示的字段。

小结

通过这个例子,我们大致感受了 Airtable 对数据的管理能力,完全可以借助它来做一些简单信息管理的工作。

高级扩展能力

以上提到的都是比较简单的使用,Airtable 还提供了两种不同层级的扩展方式。

一类是可视化的扩展,可以添加已有的组件块,比如高级搜索、图表、地图等等,对视图进行更复杂的辅助。

另外一种扩展方式是使用它提供的 sdk,自行开发客户端,这样,可以开发出更复杂的统计汇总功能,视图也可以更加贴合自己的需要。

此外,在 Airtable 上提供了很多模板,可以直接复制出一个小型 CRM,或者 Bug 跟踪系统等等,也可以在此基础上进行自己的定制。

还有个有趣的彩蛋,如果你把 Airtable 某个表格存储到 Google Drive,在那边会看到一个文档的样子,但是打开这个文档的时候,会跳转到对应的表格页。从这个角度,我们是不是可以把一个应用系统看成一个“文件”呢?在 Unix 中,一切都是文件!

思考

这个产品至少可以从几个方面给我们启发:

  • 小企业如何获得尽可能低成本并且满足自己需要的信息管理系统?
  • 模型驱动的自定义视图系统,究竟应该如何构建?
  • 不同类别的人群,其协作的分界可以是怎样的?
  • 彻底抽离了技术属性之后的业务抽象形态应该是什么样子的?

后续的几篇文章,会从技术角度给出:构建一个类似系统,在实现时候需要考虑的一些问题。