在进入正题之前,我想要在这里说一说技术写作的重要性。作为一名程序员或者是工程师,我们不单单要会写代码,更要学会写文档。按照我的个人经验来说,写文档也是贯穿项目始终的活动。在项目开始时,要做概要设计,详细阐述功能;结束时,要有软著申请…… 根据课程,我也了解到公司内部的情况,由于每个人的分工不同,公司内的各个部门、公司和海外发行商、公司和客户之间都需要通过文档进行交流,在交流的过程中,有很多需要注意的内容。
写文档的流程
graph TD
了解读者 --> 结构化写作 -->写好标题-->极简写作-->检查文档
了解读者
为什么要了解读者?
我们为了保证文档的可用性,避免自嗨式写作,导致读者看不懂文档。
怎么了解读者?
我们需要明确知道三个问题:
- 读者是谁?是外行人?如果是内行人的话,那么是运维还是码农?
- 读者为什么要阅读我的文档?是为了查找一个参数?弄明白一个概念?
- 读者想要获得哪些信息?个人认知能力不同,提供的信息也不同。是要大概的方法思路,还是要具体的实现步骤?
我们面向的对象不同,使用的语言也不能相同,因为读者和作者之间存在有信息差。比如,一个外行小白可能理解不了内行人说的专业术语,一个不使用国内开发平台的海外发行商可能理解不了这个配置参数的意义。 为了减少信息差,我们需要特别注意术语、相似物和新事物,以此来和读者进行更好的沟通。
对此,我们可以采取行动:
- 邀请同事评审
- 读者访谈
- 文档支持群
我们也需要站在读者的角度思考:
- 读者从哪来?他们现在的问题处于哪个阶段?
- 他们在哪?现在在执行那个文件夹?可不可以无缝衔接着文档的步骤?
- 他们要去哪?下一步应该怎么办?
(未完待续)