2020 年度写作汇报。
学习内容
其实我今年写得博客并不多。期间有连续好几个月没有输出博客文章。那时候我是在捣弄各种东西。
比如看 CSAPP,说真的这玩意真要花好多时间看,大概看到第三章一半就没看了,因为我觉得我的时间不够(第三章还是枯燥的汇编码之类的内容),还有其他的东西要学,于是这个便暂且搁置了。搁置后好几个月后我也根据 CSAPP 专门写了说明补码的一篇文章。补码的认知,很多人停留在 “取反加一” 这一粗浅的认识上,于是我写下了这篇文章,在巩固自己的知识的同时,也希望其他人能够通过我写的这篇文章真正理解补码(因为以前我也不是很懂补码)。
其次我在今年开始到 6 月的期间,也在学习设计模式的内容,方式是极客时间的付费专栏《设计模式之美》,内容很多,且是连载状态,花费了不少时间去学。我十分推崇作者通过实际项目的实战来加深对知识理解的做法,毕竟学的理论就是应该为实践服务的。这点我也尽量在自己的博客中加入联系实际的内容,而不是干巴巴地讲述学术性的原理。但如果要联系实际,可能要求你在项目中用上过自己博客讲的内容才能讲好,否则就需要花费不少的时间去根据一些知名项目去了解用到某个知识点的地方。这点实在耗时耗力,可能做得不是很好。
设计模式虽然大致是学完了,但专栏中使用的是 Java 语言。我为了学习这个专栏,大致是了解 Java 的语法,本想写篇设计模式相关的文章的,但我并不熟 Java,便放弃了。不过期间也有用 TypeScript 的面向对象风格写了一个 HTML5 小游戏的 DEMO,输出了一篇博客。不久前也有写了用 TypeScript 实现创建型设计模式的博客。年后打算把剩余的设计模式都写完。
期间看了架构相关的文章,我想试试后端。因为后端才是掌握业务的核心岗位,有机会成为架构师,即便成为架构师很难,但成为公司高管的可能性还是很大的。于是我便尝试学了下 Golang,并尝试用 gin 框架搭了个简单的 Todo 应用的 Web 服务,也尝试用 Golang 来做 leetcode 的题去巩固语法学习。最终还是放弃了,因为我没有真实的项目来积累经验。前端也挺有趣,而且要学习后端的各种技术栈,nodejs 应该也是可以的。这期间大致对 Golang 有了一些粗浅的认识,最后觉得还是 Java 这种纯正面向对象的语言比较好。
也有了坚持看英文文章的习惯,毕竟最好的信息源当然是一些官方文档,而文档多是英文。stackOverflow 也给我带来了很大帮助,解决了我遇到的各种小问题,比如配置安装方面的问题,通常用搜索引擎搜一下关键字,就能看到 stackOverflow 的相关问答,真的非常有用。其次也有一些质量很高的文章,和国内 CSDN 一堆不求甚解甚至给出错误理解和方案的现象形成了鲜明的对比。
看了极客时间的《面试现场》的专栏,对面试的过程有了一定的了解,也通过这篇专栏学习了职业规划方面的内容。比如应聘者素质模型分为:经验、技能、潜力、动机,如何理解面试官的提问意图之类的东西。
开始着手开发一款开源 SVG-Editor 编辑器,是我毕业第一家公司做的东西,那时候是做一款鞋款编辑器,其实和 SVG 编辑器没差多少,只是加入了一些特有功能。那时候对设计模式并没有足够的了解,而且代码写得也很少,实现编辑器的时候遇到了太多问题,代码也写得烂(最后公司也倒闭了,不关我事哈)。所以我就打算重写了,利用学到的设计模式和 TypeScript,UI 层也尝试用了
至于工作上,我觉得我并没有太多成长,每天都是没有多大挑战性的后台管理系统,或内容不太多变的 H5 活动之类的需求。因为实在没法成长和成就感,而且薪资还被压价了(终究是太年轻了),所以我选择了离职。工作上并没有什么太顺心的事呢,不过因为没有什么含量,倒是没什么压力。
反正是今年学习了各种各样的东西。有些东西我也不太记得了,但终究再好好地去努力,整体上做得还不错,就只是工作让人糟心呢。
博客产出不多的原因
仔细看一下,在 2020 年,我的文章产出并不多,一个月一篇都没有。这其实是有原因的:
- 写博客非常耗时耗力
要完成一篇中等乃至优秀的文章,非常费时间,尤其是这个知识点其实本来就不是非常透彻的情况下。
就拿我写的那篇 CSS 实现文本截断的文章来说。原本我大概知道 CSS 的文本截断写法只是 text-oveflow :elliplise 这种,每次要截断我都直接用搜索引擎去找解决方案,只是这种程度而已。直到有一天我的一个前端群(交流兴致)的一个群友问怎么做文本阶段,我就萌生了写一篇专讲 CSS 实现文本阶段的各种方案和优缺点的文章。首先是阅读相关的优秀文章。在这个信息爆炸的时代,找到优秀知识源的能力非常重要。
离题了,总之,我阅读了 CSS-Trick 的文章和其他的一些文章,找到了一些方案,并实现出来,且要进行各种修改,来发现这些方案的有点和缺点。并理解它们的优缺点。
- 动机不足
发到掘金的文章,大多数阅读量并不高,更别提点赞了。首先我发现这和发布时间有关,基本上一篇文章的阅读量的点赞在掘金发布一天内就决定了。因为掘金不会给你太多的流量,其他人的新文章会让你的文章渐渐失去了踪影。所以我最后是在个人博客网站上发布文章,等到周一或周二的时候再发布新的文章。
至于我发到自己搭建的博客的文章,我曾经分析 Nginx 日志文件,发现浏览器并不是很高的样子。且真的没有人给我评论。没有反馈,我也无法知道自己的文章有什么问题,也会缺乏动力(觉得没人看)
这点好像没有什么好的解决方法,倒是偶尔将链接发给群友,但群友并没有提什么意见,可能连看都没看。我只好坚持下去了,虽然可能没能得到别人的评价(而且我写的博客总的来说还是挺少的),但自己确实能够巩固知识,而且还能给面试加分呢(这个挺好的)。
- 主题过大时,过分纠结于细节
有时候,主题开的很大,里面涉及到一开始我没考虑过会有的细节。我认为得认真讲讲细节,导致花费大量的时间在细枝末节上。对文章的主题的偏离,即没有把真正的重心放到主题的主干上,而写了很多扩展的东西。这样写到最后我觉得文章深度不够,虽然一些细枝末节也认真进行了描述,但也只能说是 “什么都懂一点”,最终失去了继续写下去的动力。
对于这点,我觉得我可以在细节末节上,及时刹车,留下 “至于这个话题,因为篇幅原因,以后再写一篇文章进行说明”,或 “相关内容请自行学习” 之类的东西。不要每次写一篇文章都花费大量时间和精力,要专注于一点,这样才能坚持写下去,除非你本来就打算写一篇长文。虽然我不是很讨厌长文,但真的很难坚持写下来,因为写下来可能也没有人会来看的这种感觉。
- 懒
整理成大家能看懂的文章,确实比我用云笔记简单记录知识点要麻烦的多。很麻烦,我也是挺懒的,虽然喜欢研究各种知识和技术,但写文章就是非常麻烦。所以我想偶尔写博客大概才是常态,貌似也不坏。加上我有写长文的习惯,认为太简单的内容没有必要写成短文,所以更提不动笔来。或许我应该改改这种观念?算了,随缘即可
新年的目标
新年就要到了,我想我也确实应该立一些 flag 了。
- 每个月至少两篇博客
- 尝试加入对一些现象思考的文章,而不只是纯粹的技术文章。比如可以写一些方法论和职业规划相关的文章。先尝试每两个月要有一篇这样的博客
- 尝试写一些和技术和工作无关的内容,比如生活上的小方法分享之类的(选做)
- SVG-Editor 编辑器在上半年要变得可用且扩展性好,下半年尝试推广,目标是 100 star。
- 一周 3 道算法题(认真想了下一天一道我可能吃不消呢,easy 或许还可以)
- 日记还是要坚持写
- 看一本比较大部头的经典技术书籍(暂定是 《TCP/IP 详解》),慢慢看,这个不急哈。
- 学英语,每天 30 ~ 60分钟。
说真的,目标太多并不好,有的人为了坚持一件事养成习惯每天就已经耗费了巨大的努力,如果一次坚持多件事情,大概不需要多久就会放弃了吧。所以我虽然在这里定下了目标,但我还是会根据实际情况调整剂量的,防止自己过快地放弃一些目标。