活文档:与代码共同演进
上QQ阅读APP看书,第一时间看更新

1.4 文档是为了传递知识

文档一词一般会让我们想到很多含义:书面文档、Microsoft Word或PowerPoint文档、基于公司模板制作的文档、印刷文档、网站或wiki站点上的大篇沉闷文本等。但是,所有这些含义都只展示了过去的一些文档编写方法,并没有提供更新、更有效的方法。

为了本书要实现的目标,我们将使用一个更广泛的定义:

文档是指将有价值的知识传递给当前以及未来的人的过程。

这个定义体现了文档的一种“物流”特性。文档既可以在处于不同物理空间的人之间传递知识,也可以在处于不同时间的人之间传递知识,技术人员称之为持久性存储性。总的来说,我们对文档的定义看起来像是货物的运输和仓储,这里的货物就是知识。

在人与人之间传递知识实际上是在不同大脑之间转移知识(见图1-7)。从一个大脑转移到另一个大脑,这是传播或扩散的问题(例如,为了吸引更多的受众)。从现在的大脑转移到以后的大脑,这是知识的持久性,与记忆有关。

图1-7 文档是为了传递和存储知识

你知道吗?

开发期限的半衰期为3.1年,而代码的半衰期为13年。文档必须帮助解决这种半衰期不一致的问题。

要将知识从技术人员的大脑传递到非技术人员的大脑,需要将知识变得易于获取。使知识变得易于获取的另一种情况是使其能被有效地搜索到。

还有一些情况,例如为了合规,你需要将知识整理成特定格式的文档。

关注真正重要的事情

作为传递有价值的知识的一种方式,文档可以有多种形式:书面文档、面对面的对话、代码、社交工具上的活动或者没必要时就不写文档。

基于文档的定义,我们可以传达一些重要的原则。

  • 只有长期令人感兴趣的知识才值得被写成文档。
  • 只有令很多人感兴趣的知识才值得被写成文档。
  • 有价值的或重要的知识也可能需要被写成文档。

只要不是以上任何一种知识,你就不需要考虑将其写成文档。将时间或精力花费在将这种知识写成文档上是一种浪费。

你最需要考虑的是知识的价值。如果知识不能在足够长的时间内给足够多的人带来足够大的价值,那么你就不需要花费精力去传递它。如果某项知识已经众所周知,或者仅对某个人有用,又或者人们只在某一刻对它有兴趣,那么它也不需要被传递或存储。

默认不记录知识

除非真有不得不传递的理由,否则没必要专门花费精力去记录知识,否则就是一种浪费。不要因为没有记录那些不需要记录的东西而感到难过。

我们已经从知识的传播和保存以及应如何管理文档的一些早期后果出发,为文档重新下了定义,下面该介绍活文档的中心思想和核心原则了。