1  从技术笔记到技术书籍

1.1 为什么要用书籍的方式来整理笔记?

现代“文化人”,都有记笔记的习惯,由此也催生了一大堆为笔记而生的的工具,比如说老牌代表如 onenote Evernote、新生派代表如 Notion 等,都是为了记笔记提高生产力而生。知乎上同样有一大堆名为“什么是最优秀的记事本软件”的争吵,每个人眼里的优秀笔记本软件标准都不一样。

不管是哪个笔记软件,包括那些看似有序实则零散的笔记软件,在记录了大量的笔记以后,几乎不可能轻易找到你所需要的内容,里面夹杂了大量的、无效信息,最算无用、过时的内容你也未必舍得删除,毕竟很多笔记软件的口号就是类似“在一个地方存储你需要的一切东西”。最终的结果,就是导致笔记软件臃肿难用,里面的笔记虽多但不成体系,查找效率低、链接容易丢失,并且夹杂着大量过时的、临时剪藏的、不规范的内容,大概率你在后面的时间里永远都用不到。

以前的我,经常痛苦于此,在诸多笔记本软件里倒腾来倒腾去,就为了提高查找效率,不过依旧觉得效果不佳。最终,我发现把记录下来的笔记条目,按主题独立成册是最好的笔记整理办法。通过整理成册,可以做到保存有效的笔记,系统化笔记、写作成书的笔记也更加方便保存。你试想一下,一个排版和结构精良的 pdf 文件或 GitBook 文件,有目录有索引,参考文献齐全,格式工整阅读愉悦,实在是太方便了。最重要的是,在整理成书的过程中,能让你系统化思考你的工作,进而进一步整理你的笔记,从框架到结构再到细节,一次性梳理好,摒弃掉废旧无效的笔记条目,保留你所必须的笔记条目。通过这个过程,留下的内容就是精华,不需要的内容果断删除,毕竟电子垃圾也是垃圾,必须坚决清理,减少电脑的内存同时也清空你大脑的缓存。

这里,必须走出一个误区,写作成书并不表示需要出版,这里的书籍只是一个形式,并不代表着出版物,这些书可以是给自己写的书,也可以是写给别人看的书,最终结果如何,完全取决于你的目的。

1.2 为什么要写给别人看?

尽管把笔记结集成书,并不意味着你一定要给别人阅读,并不一定意味着你要出版,但是我依然鼓励你,与别人分享你技术书籍。

最重要的理由就是,“为别人写作会比为自己写作更严格”(Wayne C. Booth, Gregory G. Colomb, 和 Joseph M. Williams 2009, loc. 402)。书面写作最基本的理由,是把你头脑里的思维变成文字;而一旦你要把你的文字写给别人看,你一定会很认真的对待里面的每一条内容,毕竟你交出去的不单是你的文稿,还有你的金字招牌。

1.3 技术写作的基本原则

既然要写书,甚至于还有可能要与别人分享,那有哪一些原则是我们必须要注意的呢?

1.3.1 找到你自己真正感兴趣的内容

如果这个内容主题是你真正感兴趣的,那你十之八九会有与别人不一样的发现。只有你真正感兴趣的内容,你才能做好研究,你才有热情写出不一样的内容。

不管是工作或是项目,找到你真正感兴趣的技术点,并持之以恒地深入挖掘,是你在技术上脱颖而出的必要条件。最忌讳的是,天天在换方向,天天在配置软件环境,天天在从零开始,这样是做不好研究、做不出与别人不一样的东西。

1.3.2 不要抄袭,要引用

中国教育最缺乏的一个环节,就是学术诚信。你引用别人的内容,就要标明出处,不标明就是抄袭。中国高校做大作业,抄袭的惩罚实在太轻,包括我自己在内,大学都抄过作业,并且是豪无廉耻的抄袭,不正之风该杀。

当你引用别人的内容或是想法,未标明为引用的是抄袭,有意的抄袭则是剽窃。养成好的工作作风,引用别人的内容,记下出处,既是对别人负责,也是对自己负责,相信你总会有一天还需要找到这个出处去做更深入的研究。

1.3.3 写完以后,放上几天

刚写完文章,自我感觉一定非常良好,但这个感觉未必准确。这时,最好的处理办法,就是把文章放上几天甚至更久一点,村上春树每次写完,就会把自己的稿子在抽屉上放上一个月(村上春树 2017)

村上春树. 2017. 我的职业是小说家. 翻译 施小炜. Kindle. 海口: 南海出版公司.

对于我们科技写作来说,道理是一样的,当然,放上一个月可能太长,顶多写完后放上几天,让自己的思绪冷却一下,再想想有什么不足的地方,补充好、定稿、发布。

1.3.4 不要求完美,不担心错误

不要追求完美,你永远写不出完美的东西。不要等东西完美后再发表,差不多就可以打印出来。黎曼就有只发表完美内容的习惯,但是他这为人类带来了很多损失。我们虽然没有黎曼优秀,但是把自己的东西烂在手里、闷在肚子里,是不能帮助自己进步的;只有把不完美的想法勇敢地拿出来,才能督促自己进一步修改它。

不要担心错误,你永远写不出 100% 正确的东西。技术的发展日新月益,而对于技术文章来说,时效性远比绝对正确性重要,你永远不知道现在的技术结论在不久的将来是否会被修正。系统地写出你的观点,早日发表出来,接受同行的评议,这远比自己闭门造车靠谱。

1.3.5 相信在你的领域,你比别人懂得多

写书的第一个层次,就让自己更好的学习和掌握知识。俗话说得好,读一遍不如抄一遍,抄一遍不如写一遍。任何知识,只有通过自己一字一句地写出来,才是真正掌握了,这与给别人讲课有异曲同工之妙。

写书的第二个层次,那就是与人分享自己独特的见解。书籍永远是最系统阐述理念的最好方法,司马光通过《资治通鉴》阐述自己的政治理想,马克思通过《资本论》系统地阐述自己的政治理念,傅立叶想方设法地出版书籍目的就是为了让世人了解其变换的想法。

为了实现这两个层次,你都一定要坚信自己知道一些别人所不知道的东西。所以,这一条原则基本上可以认为是废话,如果你懂得不多,那还写啥呢?如果只是复述一下别人知道的东西,最多只能是当作自己的练习,想作为作品,那是远远不够的。

1.4 科技语言风格要素

科技写作,可以认为是写作的一个新的范畴,大量的科技文章写作和文学作品,风格和形式完全不同,或者说它要遵循自己的范式。简要来说,科技语言的写作风格,需要让人感觉客观冰冷机械,但是又需要简单直白平易近人,需要用最少的字数把事情讲清楚,做到简明、高效。要做到这一点,必须满足以下几个要求:

  1. 统一语言风格

    对语言风格的概述,英文书籍比较多,也有比较好的范例,虽然不能照搬到中文,但是值得借鉴。The elements of style(Strunk 和 White 1999)(中文译名《风格的要素》,有多个中文译本,Kindle上还有免费公版)就是一本不错的书籍,虽然是针对英文世界来写的,但是同样值得我们阅读。

  2. 多用图表及示意图说话

    一图胜千言,好的图表,绝对是最直接的说明。

  3. 写对你那该死的标点符号

    技术写作不同于文学写作,文学写作里,标点符号的适用、巧用或许是出于某种写作目的,可以更准确地表达作者在情感或是情节上的诉求。但是对于科技文档写作,不按规范写错标点符号,会让人看起来特别痛苦,也会让你的文章在行家里看起来特别糟糕。要知道,标点符号的发明,就是为了更好的阅读,更好地表达作者的意图,千万不要让标点符号成了新的拦路虎。如果你的标点符号用得不对,那还不如没有标点符号!中文科技写作的格式内容,尤其是标点、数字的约定都有着严格的要求。中文科技写作,推荐通读一下阮一峰整理的《中文技术文档的写作规范》,这是一个值得阅读多遍的规范,按这个规范,就可以写出非常漂亮的文档。

  4. 正确的引用参考文献

    必须按规范引用参考文献,包括参考文献格式、出处等内容。引用别人的观点、内容,复述别人的观点、内容,均需标明引用。对一些常识性的内容,不需要标明引用;对别人鲜明的观点,必须标明引用。参考文献的标注,不单是给原作者带来荣誉(这个对于很多原作者几乎是唯一的收获),更重要的是帮忙你自己,帮忙你自己在以后再回来查看该内容的时候,能迅速找到出处。对于很多高阶的读者,你的参考文献是他很重要的阅读内容,如果他对某个观点感兴趣,他一定会按图索骥地查找原始文献进行更深入的阅读。“当作者不清楚引用什么或何时引用时,就会发生抄袭(Plagiarism)……刻意的抄袭即剽窃( stealing)”(Wayne C. Booth, Gregory G. Colomb, 和 Joseph M. Williams 2009, loc. 2850-2863)

    无论是否蓄意,当使用他人的文字或想法却没有注明原作者,从而导致读者认为这些文字是你自己的时,这便构成抄袭。 在所有的领域中,使用某份资料的语句或想法却不注明出处即是抄袭。在大部分的领域,使用一样的语句,即使注明出处却不使用引号或缩排,一样算是抄袭。

Strunk, William, 和 E. B. White. 1999. The elements of style. 4th ed. Boston: Allyn; Bacon.
Wayne C. Booth, Gregory G. Colomb, 和 Joseph M. Williams. 2009. 研究是一门艺术. 翻译 陈美霞, 徐毕卿, 和 许甘霖. Kindle. 北京: 新华出版社.

1.5 熟练掌握排版工具

中文科技写作对排版的要求高,需要符合一个固定的排版格式,尤其是里面的公式、图表甚至于代码等内容,有着行业自然的规范。因此,熟练地掌握一个排版工具,把它用到如火纯金是最理想的,就像那些老手工艺人的工具一样,一直用到别人“叹为观止”为止。

目前来看,写作者个人使用的排版工具,不外乎是 Word 或是 LaTeX 这两大流派,两种流派风格与理念迥异。现在还有人部分人使用 Markdown 写简短的内容,但是这个流派可以认为是 LaTeX 的改良派。如果是数学和 IT 论文,推荐使用 LaTeX;程序员使用 Markdwon 上手简单友好,排版效果好,并且方便转换为其它格式。用 Markdown 或是 LaTeX 来排版,在格式与形式固定下来后,可以让自己更专注于写作本身。

当然,现在除了这两者以外,还有一些更好的选择,比如说 Quarto 就是在 HTML 和 LaTeX 上抽象出来的更高阶排版工具,可以输出多种项目格式,并且写作语法采用的是 Markdown 这种更加友好的格式。

对于这一部分给出来的答案很简单:挑选一个你最喜欢的工具,并坚持用下去,一直到你用得非常熟练为止。

1.6 扩展阅读资料

推荐一些扩展阅读资料,有兴趣的读者可以继续深入阅读,以建立自已的写作体系。

1.6.1 LaTeX 类

  1. 刘海洋的《LaTeX入门》(刘海洋 2013)

  2. 华东师大LaTeX讲稿,介绍很详细查找方便。

  3. 各种 LaTeX 模板:http://www.latextemplates.com,基本够用,需要写作的时候,挑一个模板,最重要的是动手开始写。

  4. 制作书籍封面(Book Cover):LaTeX 并不是制作书籍封面的好选择,不过也有类似的工具可以完成这一类工作:

刘海洋. 2013. LaTeX入门. 北京: 电子工业出版社.
  1. 论坛与求助

本章简述了技术书籍写作的必要性,以及技术书籍的基本要素。