写技术博客的一些心得体会
1. 是什么
不知不觉已经写了近百篇技术博文了,其实在写到七八十篇的时候就想着,等写到第一百篇的时候就写写自己的感受和心得体会,很多事情不光要去做,还应该想想自己为什么要这么做。
确实很奇怪,在微博、公众号、头条为主导的互联网中,程序员之间却普遍更加乐于技术博客作为流量需求;大概程序员大部分的问题都是在互联网上搜索解决的吧!所以一切都回到最初的问题,为什么会有这么多人写技术博文呢?难道因为程序员都是活雷锋吗(手动doge)?
2. 为什么
在很久之前,我也有这样的疑虑,一项知识,我好不容易研究清楚了,在把它分享出去,别人不劳而获,不是很令人心寒吗?其是看待问题没必要那么狭隘,自己写技术博客至少有以下这些好处:
2.1. 优秀的学习方法
很多地方都会看到如下图的学习金字塔,写作演练、向他人讲授是学习和巩固知识最好的方法:
就我自己的个人感受来说确实也是如下:
- 对于大部分人来说,都是接受信息的多,输出信息的少。被动接受的知识没有经过主动输出信息的梳理,总是很容易忘记,理解程度有限,以为自己明白了实际上没有明白,下次遇到了可能又需要重新学习。
- 工作以后很多时间都是零碎的,这样就会导致学习的知识都是零散的,实际上很多的知识都是需要总结的,需要知道自己遇到的东西在这个体系中处于什么位置。每次都只知道一鳞半爪,是很难从总体上认识整个知识体系的。
- 主动认真的进行信息输出,会把所有的相关的知识都搜索参考一篇,这无形中又稳固了一篇相关的知识。
2.2. 知识的备份
技术博文是最适合程序员做知识备份的手段之一(另一个是Github)。程序员的工作真的是特别零碎,三个月以后连自己亲手写的代码都看不懂了是常事。而将总结的知识、解决问题的经验输出成文章之后,这些东西就会真正变成自己的东西。即使很久以后忘记了,也能看一下博文就能捡回来。其实我自己就是把自己的常用代码、解决思路都备份到博客上去——其实很多问题经常会遇到,但其实也不是多难的问题,在网上搜索操作一番总是能够解决的,既然搜别人的还不如直接用自己已经总结好的,这样无疑会大大加快工作的效率。
2.3. 体系的形成
更重要的是,写技术博文能够总结、梳理属于自己的知识体系,提升自己的姿势水平。单纯的知识碎片,并没有太多的用处,总是比不上成体系的知识。在写博文的时候,更能感受到总结的知识在体系中处于哪个位置,自己的知识体系还有哪些缺点需要补全。等到形成完善的知识体系的时候,也就是成为该技术行业大牛的那一天了。
2.4. 知识的交流
现在真是越来越感受到,一个人的能力再强也是有限的,终究是比不过一个团队的智慧,知识总是会在交流中逐渐进步。即使是一个菜鸟新人,有时候也能有些独到的见解,帮助自己进步。碰到过菜鸟,也碰到过大神,自己的博文能帮助别人,也能提升自己。不得不说这种感觉还是很不错的。
2.5. 写作能力和思维能力
其实以前在学校也是老笔杆子了,自从毕业后就没啥正经的写文章。现在自从写博客后,写作能力和思维能力又恢复了不少,表达能力也提升了不少,解决问题的思路也更条理清晰。
3. 怎么做
关于“怎么做”的问题,如果是初始尝试写技术博客的话,我有如下的建议:
- 选择一个技术博客网站。个人网站的话不是很推荐,毕竟建站很麻烦也很难做搜索排名。推荐选择一个你经常搜索问题是能够遇到的网站。
- 推荐学习下Markdown格式的写法,现在的技术博客网站基本上都能支持Markdown格式写博文了,你可以通过这个格式保存在本地,发到多家网站上面,是一种很好的通用格式。而且Markdown非常容易学习,初始学习我建议只需要会使用标题还有插图图片就行了,其他的问题可以边写边学。
- 初始写的话可以经常从小的问题入手,积累经验和信心,不在于一篇文章的量的多少,而在于长期的坚持。不过前提是对这些问题能有深入的调查,从整个知识体系上去看待这些问题。
- 有的人建议博文最好写的大而全,深刻而有见解。这样做的目的的是好的,不过这样的精品文章写起来还是很耗精力的,有时候一个星期才能写一篇。其实我们初始写作也可以写的短小精悍一些,如果内容确实很多,也可以拆分成多篇文章,这样可能更加符合零碎的时间安排。
- 写技术博文思路很多,我认为大体分成两种,一种是向下回归,追溯到学科知识的本身;另一种是向上总结,总结到知识体系,行业应用。
其实具体怎么写技术博客也没有固定正确的做法,我觉得光是愿意写,能写,就已经是巨大的进步了——人嘛,还是不断保持学习很进步的好,态度决定一切。