如何写一本编程书

2020-05-23 20:18:23

规划书_1写作我并不打算写一本编程书。这意味着我走了一条非常低效的道路,这导致我不得不重写整个内容。然而,在这个过程中,我学到了很多关于我应该做什么才能更有效率,为我的读者提供更多价值的问题。我在本文中概述的一些内容对任何类型的写作都是通用的,不仅是技术书籍,而且还适用于像本文这样的较短的文章。

如果你曾经开始写一本书,你应该问问自己为什么要这样做。原因很多,没有一个比另一个更有说服力。你可以写一本书,因为你想靠卖来赚钱。也许一本书是将自己定位于某一领域的绝佳策略。我见过许多人发布免费的电子书,为他们的时事通讯收集电子邮件,或者试图成为他们陌生领域的知名思想家。

不管你的理由是什么,你能做的最好的事情就是把它写下来,这样你就不会忘记它。你着手一个相对复杂的项目的原因,比如写一本书,应该能指导你的决定。如果你知道你想卖你的书,你必须确保你满足了市场的需求。如果这本书是班上学生的必读书籍,你应该确保你涵盖了所有需要的主题。如果您要输入新字段,请确保您了解该区域的最新信息。

知道你为什么要写一本书只会让你误入歧途。下一步是考虑你的读者。想一想,你希望向读完这本书的人传递什么信息。根据你想要写的主题和书的类型,你可以考虑一系列你应该涵盖的主题。对我来说,这本书是整个项目的指南。对于阅读这本书的人来说,结果是一个完整的程序。

我看过很多涉及不同小项目的编程书籍。每个项目都传递了一些新知识。有时章节之间有衔接,但通常可以独立阅读。特别是,面向更高级程序员的书籍往往更具原子性。章节是独立的,集中在特定的主题上,不一定是相互建立的。

下一件要知道的关键事情是,一旦你知道了这本书的去向,这本书将从哪里开始。在我看来,这可能是最具挑战性的任务之一。您的书的目标读者是知道如何编程但不懂特定语言的人吗?或者他们已经知道这门语言,但不知道编程模式?他们习惯于使用命令行吗?

总是有一些其他的事情需要在更早的时候解释,才能理解随后会发生什么。你可能会产生一种感觉,那就是你的书应该包括*所有的东西。当这种感觉出现时,你应该挑战它。问问你自己,你想要什么样的读者。你的目标是刚起步的人还是有几年工作经验的人?

一旦你确定了基线和结果,你就会对你所面临的挑战的大小有一个概念。这是判断它是否在你触手可及的时候,还是更好地考虑其他事情的时候。

一旦你知道这本书从哪里开始,应该在哪里结束,就是时候决定里面有什么了。大多数书都是按章节组织的,因为它们给了读者一个明确的休息时间。一旦一章结束,他们可以在跳到下一章之前休息一下。对于技术书籍,章节应该是连贯的,范围应该很窄。请记住,一本书的篇章数量是没有限制的。

理想情况下,如果你已经相当了解这个主题,你可以把这本书的提纲写成一系列要点。列表上的每个元素可以是一章或一节。你也可以稍微具体一点,写下一些关于内容的想法,你想传递什么,或者一些关键字。

然而,有时你需要做一些研究来写这本书。很多时候,当你决定写一本书的时候,你是根据你已经知道的东西来写的。然而,你获得知识的方式可能是非常无组织的。写一本书是挑战知识和填补自己知识空白的绝佳方式。如果这是你的情况,这本书的轮廓就会变得流畅。

当你的书内容变得流畅时,你应该始终记住你之前定义的两个锚点。只有这两个地方能让你保持克制,防止你出轨。一旦你开始堆积内容,一定要检查是否每一步都能让你更接近你预期的结果。如果一路上出现了一些离题的东西,请安全地保存起来,以便你为下一本书寻找灵感时使用。

一旦你有了一个明确的开始、目标和路径的项目,归根结底就是执行。写作不仅是一种技能,更是一种习惯。你写得越多,它就变得越容易。每天写一点总比每个月写一大堆要好。然而,你也必须承认写作是发生在其他事情之间的事情。

如果你每周能抽出一些具体的时间来读你的书,那将是一个很大的帮助。失去动力的部分原因是缺乏进展。如果今天你的书没有比6个月前更接近完成,那就很难让人振作起来。如果是这样的话,首先要记住你为什么开始写作。然后,再把注意力放在提纲上,想一想遗漏了什么。

就我个人而言,我倾向于开始写作,直到我意识到有些事情我持怀疑态度。我开始阅读关于它的报道,这阻碍了我的写作。在研究的时候,我会漫游到我不需要澄清我的疑问的话题上。本应是一次写作会议,结果却进展甚微。如果您正在编写一本编程书籍,那么可以通过开发代码来代替研究。边写边发展是偏离你真正目标的一种快捷方式。

在开始写作之前,试着想一想你需要知道的事情。一件事是向上看,另一件事是研究一个主题。当你开始写作的时候,就写吧。也许你犯了错误,也许有些句子本可以重写得更漂亮。如果你一直打字不回头,你会取得很大的进步。记住,进步是保持动力的关键。

一旦你写完了,就是编辑的时候了。重读你所写的内容。改正你能改正的,在你怀疑的地方做上标记,否则你就不会被激励去改进。

将研究与其他研究分开或多或少是直截了当的。这是一项如此不同的任务,以至于大多数人都不会真正去奋斗。然而,将写作和编辑分开要困难得多,需要很大的纪律。尤其是当您看到您键入的单词下面的红色标记,或某些文本编辑器生成的警告时。每个人都应该找到自己的道路。有些人喜欢在写作时把时间花在每一段上。我更喜欢写几个段落,改天再看一遍。

如果你是每周可以花固定时间在这本书上的幸运儿之一,你也可以试着为每一章做计划。如果这是你的第一本书,你将无法计算出确切的时间。你至少可以试着有清晰的目标,随着时间的流逝,你可以不断更新这些目标。你会很快学会每小时能写多少字,一章有多少字。从那时起,计算就更容易了。

如果你没有在这本书上花费固定的时间,你仍然可以计划,但没有日期。您可以随时添加里程碑,例如完成章节研究、编写第X章或编辑。在你面前列出一个清单,每次你坐下来做某事之后,清单都会变得更短,这会给你带来很大的动力。

尽管看起来很明显,读完这本书是重要的一步。你怎么改正都无关紧要。每次你读到你写的东西,你都会发现一些需要改变的地方。知道把最后一个点放在哪里,并决定这本书已经准备好了,这需要很大的勇气。出版一本书会带来一定程度的风险:如果出了差错,或者如果人们不喜欢它,会发生什么?

你可以随时询问你信任的人的反馈,以获得信心。现实情况是,除非你不公开你的书,否则没有办法确切知道。错误是可以改正的。特别是如果您正在分发电子书,改进版本的文本可以非常快速地与您的读者共享。特别是当你**用外语写作**时,犯下自动检查器没有发现的错误的几率很高。然而,如果内容抵消了这些问题,读者仍然会感到高兴。

完成一本书还包括决定封面、版式和页面大小。调整这些细节,直到它看起来与您想要的完全一样,这可能是非常有趣的。但是你应该总是务实的。一切都是完美的。什么时候结果是令人满意的,让其他人能够访问,这由您来决定。

写一本书可能会很有趣。它可以将你定位在一个利基市场,或者它可以帮助你在一个你已经为人所知的领域之外变得知名。然而,写一本书不是一个不经过深思熟虑就能解决的项目。我犯了没有提前思考的错误,写作是自然而然的。这不仅是一个错误,也是一个大错误。我不得不在写的时候改变内容,在某种程度上,完成的书中有一些不一致之处。

对于第二个版本的Python for the Lab,我使用从第一个版本中学到的知识完全重写了章节。我还制定了一个有意识的计划,并坚持了下来。我对结果很高兴,以至于要把它送到印刷品上,这样我就可以真正把它拿在手中了。