写书没那么简单

今天基本上没干别的事,就一个人憋到宿舍里写书了。宿舍的其他人都去吃请去了,我因为实验室事件正好没赶上。不过也好,宿舍难得有这么清静的周末。

今天主要是清理书中的第7章,这一章内容比较杂,结构不太好组织,几乎每次看这一章的时候都需要清理一下。添加了对IOCCC的详细介绍,这个过程中又发现不少有趣的混乱C代码。^_^ 准备下次全部补充进去。

有些人经常说我写书太慢,我解释一下原因。一是因为我的事情太多,不可能每天都只做写书这一件事。二是,写书本来就是一个慢活,而且它绝对没有你想象中那么简单。

就拿我写书的过程来说。首先,我要考虑整本书的内容是否有价值?是否有新意(我非常讨厌写被别人写过N次的内容)?针对哪些读者?该介绍哪些内容?目录布局是否合理?难易程度如何?考虑好这些问题整体才算是基本设计好。然后,写每一章内容的时候,我除了关注内容是否符合整体要求外,还要关注它和前面或后面的哪个章节有联系?相关的内容放到这里好还是那里好?引用和参考了哪些资料(整理参考资料是个痛苦的过程)?有没有相关的链接?需不需要插入额外的说明?这还不算完,涉及到更细的问题时更应该小心,比如,代码是放表格里好还是放正文里?或者是放附录里?用多大的字体排版?需不需要行号?还有就是,对源代码或某些文字做详细解释时,经常需要画图。虽然Dia可以帮上很大的忙,可用它画图仍然非常慢,个人感觉就像是在绣花,这同样也是一个细活。

如果你认为写完就完了,那你又错了。写完还需要请别人帮忙审查,从文字到代码,从字体到标点,都不能放过。别人帮你了不能白让人家忙活,在“致谢”里得把人家的名字加上。就算书以后出版了,我也要做好接受读者批评的准备,还要做好出下一版的准备。既然要写书,就要保证它的质量,否则让读者白花钱不说,还白费时间(人家是看你书的内容呢,还是给你挑错别字呢?)。

写书就像开发软件,需要仔细,需要耐心,需要维护。

(鸣谢GFW,让我们访问wikipedia更加“方便” 。 <==这不是广告,真的。)