不论是在星球上,还是在公众号上,松哥都曾多次鼓励小伙伴们写博客:
为什么鼓励大家呢?因为我自己就是写博客的受益者。
作为一个非科班程序员,博客让我能够快速获得同事的认可;博客也让我在毕业一年的时候薪水翻了三倍,博客也让我认识了各位小伙伴。
好处真是太多了,但一定要先动笔,才能慢慢感受到这些好处。
今天和大家聊一聊博客的一些写作经验,这些仅仅是松哥个人经验,小伙伴们可以作为一个参考。
1.思路清晰
思路清晰是最最重要的一点,无论是看松哥博客还是看视频,思路清晰 我一直觉得是最高评价了。
技术博客不像写散文,语言优美不是必须,最关键的是要把问题讲清楚。对博客作者来说,这个东西你会了,这是一个技能,你能够明明白白的把它讲出来,并且让不会的人学会,这又是另外一个技能。
那么什么样的文章就算思路清晰呢?网上博客那么多,大家在平时学习的时候,应该也看过不少博客,有的文章一看就懂,觉得收获了很多,技能都 GET 到了,这就算是思路清晰的。
对于小伙伴们来说,要写一篇思路清晰的文章,其实也不难,就是把你整个写代码的过程记录下来,按照顺序从头到尾一步一步记录下来,尽量不要有任何跳跃。在这个过程中,最关键的其实就是要有耐心。
有的小伙伴刚开始写博客,感觉一步一步记录、截图啥的都太麻烦了,写一会就烦了,于是可能会跳过一些简单的步骤,对于有经验的读者来说,这些跳跃不影响他们阅读文章,对于没经验的读者来说,这些跳跃可能就会让他们卡在这里看不下去了。
所以你在写的时候,先想想你这篇文章的目标用户是谁?进而决定文章的详细程度。松哥之前写的 Spring Boot 系列教程每篇文章基本都是从 0 开始,而最近连载的 Spring Security 系列刚开始也是从 0 开始,后面基本上就有一些跳跃,但是这些跳跃实际上并不影响文章阅读,因为有前面的文章做铺垫。
2.短小精悍
经常看松哥文章的小伙伴应该能够发现,我一般一篇文章只讲一个知识点,如果这个知识点涉及到的东西比较多,我可能会拆分成几篇文章来写,而不是写一篇超级长的所谓“干货”。
其实我以前也写过那种很长很长的“干货”,记得 2016 年在 CSDN 上发过一篇多线程的文章,很长,长到网页一打开浏览器就卡住的程度,我码了一个礼拜码出来的。这种文章一般转发率、收藏率都很高,但是阅读完成率却很低,阅读完成率低的原因也很好理解,读起来太累了。而且这种方式不容易写清楚一个知识点。
所以我尽量一篇文章讲一个知识点,配上完整的案例,不求多,只求大家看完一篇文章能 GET 一个技能,而且小伙伴们读起来也轻松。积累个几十篇文章后,做成一个系列,分享给小伙伴们,我觉得这种方式也挺香。
3.案例设计
每篇文章最好都有案例,而案例是需要设计的。
如果是涉及到知识点的文章,最好都有配套的案例,因为对于初学者而言,如果你文章写了很多字,但是却没有代码,他们可能还是看的一头雾水,把代码亮出来,一下就懂了,所以最好能够提供完整的案例。
这个案例代码不是随便撸一个,一般来说最好要提前设计案例,要去琢磨,什么样的案例,能够清楚的展示这个知识点。
我说一个案例设计的重要原则,就是尽量不要有无关的代码。
比如我要给大家演示 Spring Security 中的登录功能,那么案例中就是登录,不会有授权、不会有记住我、不会有 session 并发管理等等,为什么要这样呢?因为对于刚刚接触 Spring Security 的小伙伴而言,他可能照着你的案例写,你写了这么多配置,他照着写,写完了他也无法确定到底哪些配置是和登录相关的,哪些配置是和登录无关的,所以即使代码写完了还是比较懵。案例中的每一行代码都是必须的,也更容易让读者理解配置的含义。
所以最好每篇文章一个案例,每个案例不要有无关的代码。以松哥最近连载的 Spring Security 系列为例,讲登录就单纯讲登录,讲授权就单纯讲授权,讲自动登录就单纯讲自动登录,当你把这些文章都看完后,自然而然的就能够融会贯通,将所有的配置集成到一个项目中。
有时候一些无关的代码可以让案例看起来更加完整,但是,在初次介绍一个技术点的时候,还是不建议有无关代码。
4.做成系列
最后再来说说做成系列这个问题。
写博客,可能是工作中遇到问题的记录,也可能是单纯的介绍知识点,松哥的文章基本上都是以后者为主。
以前写 Android 的时候,还没形成写系列的习惯,但是也会围绕某一个主题来写;后来做 Java 之后,基本上都是系列了,Git 系列、Spring Cloud 系列、MongoDB 系列、Spring Boot 系列、前后端分离系列、OAuth2 系列、Spring Security 系列、Docker 系列、MySQL 系列等等,我发现自己还是写了蛮多系列的。
为什么要写系列?
写博客不仅仅是教小伙伴们学习技术,也是博主自己梳理技术的一个过程,从这个角度来说,写系列文章有两个好处:
- 将自己的知识整理成体系,这对于自己技术上的提升是非常大的,你会发现你在工作中遇到的各种奇奇怪怪的 BUG 或者奇奇怪怪的需求,可能在该技术体系中都有对应的解决方案,而你如果没有成体系的去学习过该技术,那么遇到问题后可能就是东一榔头西一棒,面向搜索引擎编程,搞了半天最终还是没搞定。
- 对读者来说,成体系的学习也比碎片化学习要好很多,所以写成系列也会有更多的小伙伴愿意看你的文章。
但是系列文章可能也会遇到一些问题,比如读者看久了可能会有一些疲劳,系列文章到了后面阅读量就会变低,松哥最近在连载的 Spring Security 系列中,就有好几篇文章阅读量非常低,那是我情绪最低落的时候。但是这种时候我还是会坚持把这个系列写完,否则我就没有办法做成 PDF 文档分享给大家,如鲠在喉,非常难受。
每一个系列完结的时候,即是对自己的交代,也是对读者的交代。每一个系列完结的时候,就像以前考试结束的感觉,浑身上下非常轻松。
今天就和小伙伴们分享一点松哥写博客的经验,还是那句话:如果你没写过博客,现在就是你写博客的最佳时机。