专栏名称: 亿级流量网站架构
开涛技术点滴
目录
相关文章推荐
OSC开源社区  ·  开源模型未必更先进,但会更长久 ·  2 天前  
程序员小灰  ·  DeepSeek让我的朋友一夜暴富! ·  3 天前  
程序猿  ·  DeepSeek招人年薪最高154万 ·  3 天前  
OSC开源社区  ·  Gitee邀您参与SBOM行业调研:共建可信 ... ·  5 天前  
51好读  ›  专栏  ›  亿级流量网站架构

如何开始写一本属于自己的技术书

亿级流量网站架构  · 公众号  · 程序员  · 2017-05-19 08:36

正文

写书是一个苦力活,笔者最近把自己过去三年的博客文章进行了整理,出版了自己第一本纸质书《亿级流量网站架构核心技术》,花去了自己小半年的晚上、周末和假期。笔者从2012年开始在iteye上也陆续写了《跟我学Spring》、《跟我学SpringMVC》、《跟我学Shiro》、《跟我学OpenResty开发》等电子书,目前累计访问量已经有1200万+。也算是对写书有一些个人心得,在此也分享给大家。本文将从如下几个层面介绍如何 写一本属于自己的技术书:

  • 写书的目的是什么。

  • 应该写什么题材。

  • 如何组织架构书。

  • 如何出版这本书。

写书的目的

写书一定要定位好自己的目的,是想学习成长?帮助别人?还是赚钱出名?

如果想通过写IT书赚钱或出名,那么您可以放弃了,因为这种机会太渺茫了,尤其写IT书!另外写书一般拿版税,比如一本100块的书,版税是8%,卖一本书作者到手8块钱,而IT书太垂直,受众人群少,技术更新太快,卖1万本算是畅销书了!所以赚钱和出名基本是不可能了。

笔者的写书目的是什么呢?笔者不是大神,也不是教授,没有教书育人的职责。作为一名社会程序员,写书目的还是自己需要成长,顺便帮助别人。所以笔者写了很多博客,整理成电子书,一开始并没有出纸质书的想法。

另外,写书是一件非常辛苦的事情,一定程度上会锻炼自己的毅力。比如《跟我学Spring》,笔者要读源码、看官方文档,然后按照自己的思路组织起来。而《跟我学Shiro》,是笔者春节期间写的,整个春节大部分时间就在写这个。还有如《跟我学OpenResty开发》完全是因为外边没有成体系的开发资料,为了培养新人入门写的。还有如《亿级流量网站架构核心技术》是笔者在工作中用过的技术或者遇到的问题总结整理而成的,期初并没有想写书。

相信很多朋友跟我一样,买了大量的书,很多书看完一遍就放起来了,所以笔者不希望也出一本类似的纸质书。如果看完一遍就放起来的,个人觉得写博客就好了,如果内容需要反复读或者作为手册,才有必要写纸质书。当然笔者也不是非常高尚,目前也没有能力进行如文化传承或技术传承,所以还是站的位置较低,是从个人成长角度考虑出书这个问题的。

总结一下:

  • 像我这种社会程序员,不要想着靠写书赚钱或出名。

  • 写书的目的还是自我成长,把自己工作中用到的技术进行系统化的学习和整理,不是有句话是“教会别人,自己才是真的会了”,在整理过程中,会更知道自己哪些掌握的不够。

  • 写书的另一个目的是帮助别人,比如先是帮助自己,还有帮助团队,或者帮助互联网上的朋友;把自己的知识体系开放出来,把遇到的问题共享出来,如果能帮别人成长或者解决问题是多么美好的一件事情。

  • 如果是跟我学类型的书,就写博客吧,然后整理成电子书就好了。

  • 如果内容是可以反复读或者可以作为手册的,可以考虑出纸质书。

写博客和写书(电子书)的区别是什么呢?写博客是随意发挥,而写书一定是系统化、体系化。

写博客和写书(电子书)的共同点是什么呢?整理沉淀知识体系,还有人帮你纠正,帮助别人,提升个人价值,让更多人知道你,让自己得到更多机会。

写书有人骂我怎么办?有人的地方就有江湖,总有人欣赏你感激你,也总有人会骂你。我们写的目的要明确,不违心,别人骂的对的就接受,不对的就忽略吧。所以用积极的心态应对吧!

应该写什么题材

比如Java程序员,可以有如下几种题材:

  1. 基础类,如数据结构、算法、操作系统。

  2. 工程与方法类,如设计模式、重构、DevOps、持续交付。

  3. 实践与经验类,如语言/框架入门到深入、源码分析、性能调优。

  4. IT人文与软技能类,如从孤胆极客到高效团队、从0到1、如黑客与画家。

  5. 等等。

笔者目前有实践与经验类的写作经验,而且这部分相对也较容易写,当然写好也非常难。实践与经验类的书籍主要教我们某某技术怎么用、某某技术原理是什么和某某问题如何解决等。

因此,如果您想写自己的第一本书,可以从实践与经验类的内容开始,最简单的题材就是跟我学某某技术,这样就开始了写作之旅。

选择从入门到深入的题材,如Spring Cloud非常火,那就可以写Spring Cloud入门及深入系列,教别人怎么用。

选择帮助自己成为专家的题材,如觉得Spring Cloud架构设计的特别好,可以写源码分析,了解为什么之后,您就是这方面的专家了,别人遇到问题第一个想到的就是您。

选择问题集锦类的题材,如果使用某技术踩了坑,或者解决了某些诡异问题,可以写问题集锦。

选择最佳实践类的题材,如项目使用某技术后得到了成功,可以写该技术的最佳实践。

选择差异化的题材,比如现在写Spring的书已经非常多了,除非觉得自己有差异化,否则还写重复的内容就没什么意义了。

选定题材后,书的定位和受众群体就有了,接下来就要根据题材去组织内容了。

如何组织架构书

写书其实和看源码类似,理脉络,定目录。目录一定要多斟酌,这是书的灵魂。当然有的朋友会说不知道怎么定目录啊!其实这是因为素材积累不够,需要进行大量阅读、搜集整理(思维脑图)、沉淀,我相信之后目录就出来了。如果是第一次写书,可以参考类似书籍的目录或者官方文档目录。

有了目录,其实书的系统化、体系化就出来了,这就是写书和写博客的不一样之处,写博客随意没有章法,写书一定是成体系、成系统。

目录有了,就开始组织内容了。每一个章节都需要进行内容积累,比如文档阅读、源码阅读、碰到的问题踩过的坑、最佳实践、思考、替换技术等。写每一个章节时也需要组织目录,每一个章节对内容进行取舍、排列组合,一气呵成。

语文学的实在太差,我写作只能口语化,所以写的也不啰嗦,简单直接,也符合一些人的口味。

其实写书和做架构类似,先见森林,后见树木!这也是对是否真的学明白了的一种检验手段,本质上受益最大的还是自己,先提升的是自己,然后对读者有益。

当然有些朋友一开始无法完成正向流程(目录到章节),那也可以走逆向流程(章节到目录抽象),不冲突。

如何出版纸质书

如果你觉得这本书看完一遍就不会再看了,请仔细斟酌下是否有必要出这本书,是不是写博客就好了。

出版纸质书需要找出版社编辑,比如我是找的电子工业出版社侠少,大体步骤:

  1. 内容初稿,有整体的目录,写了部分章节就够了。

  2. 跟出版社编辑初次沟通,确定出版的意义(书的定位、读者的定位、销量预估),出版计划(什么时间上市)。

  3. 如果涉及到公司内容,在给出版社之前记得送公司公关内审,防止一些对外数据口径不一样造成不必要的麻烦。

  4. 跟出版社签定合同(主要是版税、版权),定出版时间。

  5. 全部书稿完成后需要进行校稿,校稿到印刷中间差不多需要3~6个月时间。

  6. 在整个校稿过程中,记得保留好各个版本,因为和编辑沟通对接过程中难免会出错;还有出版社会对内容进行口语化转书面语,这个过程还是很痛苦的;出版社编辑会一章章挨着看,不清晰的或者不明白的都会跟作者沟通。

  7. 印刷出版,出版社在各个渠道铺货推广售卖,有些书会提前一个月进行预售。

  8. 出版社一般半年左右跟作者结一次版税。

  9. 收集勘误,在新的版次中修订。

有很多作者较忙,初稿完成差不多要花1-2年时间,而我的《亿级流量网站架构核心技术》是我三年博客内容的整理和加工,差不多从整理到出版也花了一年时间。所以我是那种不太着急的人,书稿差不多完成后才找的出版社。因为都是利用业余时间,不确定自己是否能按时完成。

出版书了,并不代表我的技术有多强,很多时候我只是个知识搬运工,或者知识的组织者,因为网络上已经有很多类似的文章或者内容,只是没多少人愿意去把它们组织成体系,让读者按照体系阅读学习。

最后,在我成长阶段,写书一定是对自己成长有帮助,写书是写给自己的,自己都不认可还是算了吧,写书是一种刻意学习,快速的完成一万小时理论的捷径。还有最重要的就是要坚持写完,这是最难的!







请到「今天看啥」查看全文