我如何在200小时内撰写技术书籍

幕后花絮回顾了我如何在4个月内作为副项目自行发布“使用WebAssembly升级”。

本月初,我出版了《 WebAssembly🎉升级》一书。 它旨在成为使用WebAssembly的实用指南,WebAssembly是一种新的编程语言,可帮助您将现有的C / C ++ / Rust代码移植到Web(单击此处以了解更多信息)。 我写这本书的原因是,我发现虽然WebAssembly具有很大的潜力,但学习难度却很大。

我上一次写书(《使用Bash进行数据科学历险记》)时,我遇到的最常见问题是: “你花了多长时间?” 。 那时我没有一个明确的答案,但是这次我来了!

从我决定写一本关于WebAssembly的书的那一刻起-确切地说,是在2018年11月11日下午6:22- 我一直在跟踪我花了多长时间在这本书的各个方面 ,包括研究,写作,编辑和营销。

给我看数据

从构思到出版, 这本书花了超过185个小时才完成。 该书共分为11章,共有85页,其中最顶层的内容包括备忘单,截屏视频,顶点项目和案例研究,总共约125页。 当然,一旦我出版这本书,时钟就不会停止! 总会有更多的营销要做,写博客文章,以及回应读者评论。

鸟瞰图

下表显示了从2018年11月到2019年3月之间,从开始到发行,我每周花在书上的时间为多少:

从开始到发布,每周在这本书上花费的小时数。

尽管我平均每周要花12个小时在这本书上 ,但还是有很大的波动,因为这是我在每周40个小时的常规工作之外解决的一项附带项目。

出乎意料的是,我三个最富有成效的星期都(无意间)以21小时为上限,标准差仅为10分钟! 我只有3的n ,所以这可能是一个巧合,或者……这表明我的大脑在一周之内只能处理这么多的WebAssembly。

如果您想知道12月3日的异常值,那周我将打包并搬家!

分解

为了更深入地了解我花了多少时间,让我们将185小时分为以下几类:

将花在书上的时间分为几类

有趣的是, 我只花了大约一半的时间在与书的内容直接相关的活动上 。 这包括编写和编辑书籍(33%),还包括我花费编码来编写材料的时间(23%)。 编码部分涉及诸如弄清楚如何将UNIX工具编译为WebAssembly,构建示例应用程序(例如jqkungfu.com)以及将Cong游戏(例如Pong和Pacman)移植到Web上的事情。 剩余时间分为市场营销(19%),研究和计划(11%),将书包装到不同的层次(12%)和封面设计(3%)。

回顾过去,令我感到惊讶的是我花了17个小时来制作目标网页! 这比我想象的要多出约15个小时,但是我对结果非常满意:

该书的着陆页

通勤因素

接下来,让我们看看什么时候以及什么地方写了大部分书。 由于我每周要乘火车上下班约1.5至2个小时,每天工作3天,因此我养成了习惯,每次上车时都要拔出计算机并写东西。

然而,对数据进行了更多的整理,看来我在火车上总共只写了55个小时,大约是三分之一。 尽管我显然在下班后和周末在家里花了很多时间在写这本书,但如果我不在上下班时间写作这本书就不会实现 。 这是因为在火车上写作产生的动力使我下班后有动力去写书。 哎呀,我什至在火车上写这篇 文章

工具

自出版书籍是一个项目,不仅涉及写作,还涉及很多内容。 这是我用来使过程更流畅的工具:

  • Google文档:编写和版本控制; 离线工作
  • 代码块:用于突出显示代码的Google文档插件
  • Trello:项目/待办事项列表管理
  • Gumroad:付款处理和分配
  • Canva:设计封面
  • Asciinema:命令行截屏
  • 切换:跟踪时间

为什么要自我发布?

您可能想知道为什么有人会首先进行自我发布。 对我而言,这取决于能够完全按照我的意愿制作书 。 当您进行自我发布时,您将探索不同的定价方案,设计本书的“用户体验”,并包括我在传统书籍中未曾见过的各种材料,例如命令行截屏,顶点项目和案例研究。 。 如果您的书很有用,并且您的行销会将其传达给潜在的读者,那么还有赚更多钱的“可能性”。

另一方面,不利之处是:威信少,没有钱垫,外部动机少,没有编辑。 另外,我很高兴能够从事书籍出版方面的工作,而其他人可能更希望避免这些工作,例如制作登录页面,制定定价方案和设计封面。

得到教训

到目前为止,我将根据我的经验写一些技术书籍,为您提供一些收获:

专注于写作

在开始任何辅助项目时,我必须抵制工作的冲动,以使自己感到富有成效,但在那个阶段实际上并不重要:找到名称,注册域名,选择模板,设计封面,制作定价方案,等等。 我发现刚开始时,最好的方法是忘记所有内容并专注于重要事项:编写有助于读者获得成果的内容。 本书即将完成时,剩下的最好解决。

养成写作习惯

我听到的一个常见建议是承诺每天写X个字。 虽然这对某些人有用,但我发现最低要求令人生畏; 相反,我的目标只是每周写点东西。 如上所述,每次骑车时都要养成写作习惯,这是促使我继续前进的重要催化剂。

200小时仅仅是个开始

虽然我确实在不到200个小时的时间内写完了本书,但这个数字并不包括我最初学习WebAssembly并花一些时间使我感到困惑的项目(例如fastq.bio)所花费的时间。 我没有追踪那个时间,但是肯定是在数百小时内。 另外,这200个小时不包括我在发布花在营销,撰写博客文章,回答客户问题以及更新书上的时间。