停更掘金一年,我写了一本书

大家好,我是杨成功。

将近一年没有更新掘金,仅有的一两篇也是看到停更太久了,整理了部分笔记发一下。其实并不是我躺平了,而是我所有的时间都用来了写一本书。

下面就来聊聊写书这件事。

编辑约稿

写书的事情要追溯到前年吧。那个时候写技术文比较频繁,基本保持一周一篇,也收到了小伙伴们的支持和鼓励。后来被一个电子工业出版社的编辑老哥看到了,就联系到我,和我聊了有没有写书的想法。

说实话我当时压根没有底气,因为网上写文的风格比较自由随意,只要句子读得通、能把技术讲明白就问题不大。但是写书就要正式很多了,一些格式、语法、表述都有要求。

后来和编辑老哥聊完,他告诉我写书最难的不是这些,而是坚持。因为写一本书基本要花费一年之久,而且要用下班业余时间来写,好多约稿的人写一半就坚持不下去了,所以毅力是最重要的,能不能完结后期全靠作者的毅力和自律程度。

我当时也在考虑,如果签了这本书,公众号和掘金基本就没时间再更新了。写公众号技术文时,你只要写一遍发出去,就能收到读者反馈;而写书就不一样了,在出版之前除了改稿没有任何反馈,而且我也不敢保证自己一定能够坚持写完。

后来决定要写,有两个原因。一是我工作已经六七年了,确实有很多成体系、我认为重要的东西想要整理出来;二是纸质版的书籍和电子版感觉确实不一样,正好有这样一个机会,那就努力尝试一下,把自己多年的积累和想表达的内容整理成一本书。

写一本什么样的书?

编辑老哥找我的时候已经有方案了,想写一本实战类的书,这个想法与我不谋而合。因为当时市面上充斥着大量的基础原理和面试真题,实战类的也基本是后台管理系统。这些内容深度不够,而且套路性强,对实战开发真正重要和有用的知识反而比较稀缺。

老哥的建议是,面向前端基础薄弱的读者,让大家轻松入门,然后通过重点知识挖掘和丰富的案例层层拔高。我想写一个偏高级、偏复杂的实战项目。最后经过商定,敲定了"基础案例+项目实战"的总体路线。

基础部分肯定要写,但我们有两个原则:

  1. 基础不必大而全,从我的工作经验出发,挑选那些最关键的部分集中介绍。
  2. 不介绍大段的概念,用"大白话+举例子"的方式,把重点讲明白即可。

基础介绍完之后,进阶必不可少。进阶部分就不局限于前端本身了,很有多可以深入的方向,但整体还是会围绕着前端项目服务。

至于实战,我们设定在基础部分和框架介绍完之后,先来一个前端项目实战;在全书内容全部介绍完后,再来一个全栈综合实战,这样就敲定了这本书"基础+进阶+实战"的大方向。

选择要介绍的前端框架时,其实我更中意React,不过老哥经过调研更建议选择Vue3,因为Vue3的受众更广,所以最终选择了Vue3全家桶。

样章过审,签约

写书第一步是先写目录,这和写代码一样 --------- 先搭框架,再进行业务开发。老哥说一本书目录是最关键的,必须能通过目录看出书中的内容,同时也是全书的思路梳理,所以目录来来回回搞了很久才定下来。

目录敲定之后,接下来选择几个章节开始写样章。所谓样章,其实就是先写几章试试看,编辑老哥会从写的过程中看你顺不顺利,能不能坚持,再决定是否与你签约。

写第一章就和我预料的大不一样。第一章文字表述比较多,我已经尽力的写的符合规范,符合语法了,结果老哥给我返回来的第一版,密密麻麻全是修改。什么主语不够了,主宾不搭了,语句不通了,直接给我整麻了。

可能我自己的写作习惯和文字表达与出版社的要求不同,我觉得很直白的一句话,老哥会觉得太口语了;我觉得一句简单直观的表述,老哥觉得不够严谨,要补充完整,但我又觉得有点多余。总之磨合了很久,我才慢慢和老哥同频。

最让我觉得难受的是,写稿要用 Word。平时习惯了 VSCode + Markdown 一把梭,使用 Word 真的效率低下。首先是格式麻烦,标题、字号、字体都有规定,格式就得搞半天。其次是没有 Git 的加持,还要用传文件的方式互换每次更新的内容。

不过书的版面本身就是 Word,所以只能用 Word 来写,写了一段时间也渐渐适应了。经过初期和编辑老哥的磨合,样章算是顺利完成了,幸运的是样章过审,终于和出版社正式签约。

一直被刷视频困扰

正式开始写作后,我给自己定了一个目标:每半个月完成一章的初稿,有了目标之后就抽出所有时间来完成。

因为平时要上班,写作的时间只能压缩在下班和周末,所以开始的两个月每天特别累,下班就拿电脑开始写,搞的跟加班一样。周末时间集中,我会抽一整天来写,虽然累,但是进度也很快。

又过了一个月,我发现我好像高估自己的自控能力了,想要长时间的保持专注真的难如登天。一开始下班可以专注写作,越往后越难以集中注意力,总是忍不住刷手机、刷B站,一刷就停不下来。

以前下班刷手机会放松,但是有了写作任务之后,刷手机就变成了一件非常痛苦的事情。我明明只想玩半小时的手机,剩下的时间用来写作,但是手机就是卡在手里放不下来,一刷就是俩小时,刷到该上床睡觉的时间,我就会非常懊悔,又浪费了一天。

后来我干脆把抖音和B站卸载了,隔绝干扰源,这下于注力有提升,但也仅仅保持了一周。有一次逛淘宝买东西,莫名其妙的就开始刷视频了,等我意识到的时候已经过去一个多小时。拼多多也一样,最离谱的是支付宝查个基金,点进去也是短视频。

经过N次的实践验证,我不得不承认一个事实 ------ 靠自控力无法管住自己不刷手机,只能是彻底断干扰。我试过有效的方法有三个:

  1. 手机断网
  2. 手机关机
  3. 手机扔到3米外的地方

在我以为终于有了对抗短视频干扰的方法时,某一天在电脑上查资料,突然发现抖音竟然有网页版,然后...悲伤就延续了。手机可以关机断网,但是电脑不行,写作的时候要随时联网查资料,于是又进入了刷视频和写作互相抗争的痛苦中。

就这样,整本书写完花费的时间比预期的时间多了50%以上。不过在这个期间我积累了非常多怎么让自己保持专注的经验,后面单独开一篇文章和大家分享。

终于成书

从开始写样章,到最后一章完结,用了一年多的时间。在整本书完结后,发现比计划的内容多出100多页,于是又开始从全书精简内容,删掉不重要的部分,终于完稿成书。

这本书命名为《前端开发实战派》,每一章的内容我都经过大量的文档查阅,每一个结论我都会自己编写案例确认执行结果。毕竟是自己的第一本书嘛,不上心是不可能的。

回过头看这本书,我确实把自己想整理和分享的东西写出来了。写作的过程也是我整理总结和查漏补缺的过程,也尝试了很多新东西。

全书内容整体分为三个部分:基础部分、进阶部分、实战部分。

基础部分整体向"新"介绍,包括前端三驾马车 HTML、CSS、JavaScript,着重挖掘一些原理和新特性展开介绍。同时还有新时代的 JavaScript,包括 ES6+、TypeScript、Node.js,我把这些也归类为基础,因为之后的章节要大量用到它们。

进阶部分面向"实战中最需要的核心技能"介绍,首先是Vue3框架以及Vue3+TypeScript+Pinia的全家桶详解,接着跟一个项目实战来巩固Vue3全家桶的运用。之后详解Vite构建、性能优化、浏览器高级调试、GIT命令与协作、代码规范实践等6个进阶类的章节。

实战部分除了Vue3的基础项目实战,最重要的是全书最后的项目综合实战 --------- "全栈开发仿稀土掘金"(没错我真的仿了一个掘金哈哈)。综合实战篇幅较大,包括书中的三个章节+两套项目源码,会将书中介绍的所有知识全部应用在项目中。

综合实战的接口部分,使用 Express+MongoDB 开发。为什么选择Express呢?原因之一是尝试了一种新的开发部署方式 ------ 阿里云Serverless函数计算,Express 的轻量优势可以实现更快的冷启动。

综合实战的前端部分,依然是使用书中介绍的Vue3全家桶(组合式API)开发,尽可能贴近掘金的功能(要仿就高仿嘛),这部分我还发现掘金很多功能的设计非常精妙,研究起来很有意思。

下一步的计划

完稿之后,我以为很快可以拿到纸质书了,结果编辑老哥告诉我,印刷出版至少也得4个月。

好吧,比我想象的慢了好多。不过也好,这个空档时间正好放松放松。前段时间看朋友圈大家都在出去玩,我还在苦哈哈的码字,现在终于有时间了,先出门玩一段时间再说。

再之后的计划,首先是慢慢恢复掘金的更文吧,然后我应该会把精力放在如何保持专注力上。写书这一年多,我最大的感受就是短视频时代想要保持专注力有多么困难。那种"不能掌控自己"的感觉真的非常痛苦。

最近也看到很多人经历了裁员,也有很多人越来越贴近生活。不管世界如何变化,在"活的开心"这件事上,每个人都是掌权者。

相关推荐
云枫晖4 小时前
Webpack系列-开发环境
前端·webpack
Rverdoser4 小时前
制作网站的价格一般由什么组成
前端·git·github
拉不动的猪4 小时前
深入理解 JavaScript 中的静态属性、原型属性与实例属性
前端·javascript·面试
linda26184 小时前
链接形式与跳转逻辑总览
前端·javascript
怪可爱的地球人4 小时前
骨架屏
前端
用户677847150624 小时前
前端将html导出为word文件
前端
前端付豪4 小时前
如何使用 Vuex 设计你的数据流
前端·javascript·vue.js
知了一笑4 小时前
独立开发4个月,0到1之后怎么办?
程序员·独立开发
李雨泽4 小时前
通过 Prisma 将结构推送到数据库
前端
前端小万4 小时前
使用 AI 开发一款聊天工具
前端·全栈