2020 年是我正式参加工作的第十四个年头,我仍然在一线写代码,我很开心。在这个到处弥漫着程序员 35 岁事业恐慌的年代,还能稳扎稳打写代码,对我这个写码爱好者来说,也是一件幸事。
接下来开始总结。
知识付费
前几年,我尝试过投身知识付费,然后失败了——投入产出比太低,家庭条件有限无法做更多尝试。总结经验教训之后,2020 年我只保留了最低限度的尝试:跟思否签了一个实战课程。目前还在拖稿(视频)中,春节前一定会交稿,一定会的!
博客
博客仍然在坚持写,去年总共写了 69 篇(不算草稿箱里的半成品),简单回顾一下吧,可以了解我去年的技术经历。
前端开发工具链:Webpack 4 & 5,webpack-mock-server
年初升级 Webpack 到 4,年底又升级到 5。顺便升级了一大票相关插件,研究了规则、配置、缩减包体积的方法,等等。
发现了 webpack-mock-server 这个工具,可以很方便的添加 mock API,跑测试非常方便。
树莓派/nginx/php/PostgreSQL/MariaDB/Flarum 配置
厂里发了个树莓派,于是就把一些常见的软件,比如 WordPress、Ghost、Flarum 等都装在上面,以及 OpenResty、MariaDB、PostgreSQL 等软件。
如今我大部分后端软件和代码都跑在上面,这样最大的好处,就是我的后端开发环境可以随身携带,更大的扩宽了我远程开发的范围。
Vue 3.0
2020 年前端届的一件大事。年初准备迎接 Vue 3.0,年中关注它的进度,Q3 正式发布,Q4 开始升级到 Vue 3.0。
Vue 3 升级比想象中的麻烦,也比想象中的简单,目前仍在摸索中。
浏览器相关
比如自动完成的问题、模拟用户点击动作、扩展开发等。其实我去年大量的工作都围绕在浏览器扩展开发上,不过似乎写的不够多。
Chrome 86 开始支持读取本地文件和文件夹,这个发展需要大家注意。
Ubuntu 20.04
去年久违的装了台新电脑,就给老电脑装上了 Ubuntu 20.04,然后顺带着就摸索了一些 Ubuntu 的使用技术,比如科学上网、配置网卡什么的。
Bootstrap 5/Icons
这也是前端领域值得关注的一件大事。Bootstrap 作为最受关注的前端(CSS)框架,它的发展很能体现页面搭建方面的进程。去年最成功的框架应该是 Tailwind CSS,一篇《从零到200w美金的生意》刷遍了我关注的圈子,今年希望有时间深入体验一把。
Bootstrap icons 则体现了另一方面的循环往复,webfont 从无到有到滥用到回归,值得思考。
自荐三篇博客
然后从去年的博客中选出几篇我觉得值得一读的文章,兼顾新技术、老技术、技术生涯发展:
知识学习和积累
去年计划学习 flutter、TypeScript、Vue3、开发工具链。现在回望一下,完成了一半,Vue3 和开发工具链都有比较大的进步,flutter 和 TS 则基本一点没看。那就顺延到下一年吧。
Vue3
Vue3 方面,迁移了一个自用 UI 组件库到 Vue3,同时保持 Vue2&3 两边同步更新。另外启动了一个 Chrome extension 项目使用 Vue3。整体来说迁移成本不高,但是开发成本略高,主要原因是周边生态落后于主框架,SourceMap 也无法正常工作,给开发带来很多困难。
Chrome Extension
因为工作的关系,去年大量接触到 Chrome Extension 的开发,对浏览器的工作机制加深了很多。比如一次 click
事件包含哪些动作、一次 keypress
包含哪些动作、如何模拟用户输入,等等。
PouchDB & CouchDB
为了让 Navigator Extension 能够适应更多的场景,我选择 PouchDB 作为本地存储方案,它可以很方便的和其它 PouchDB 或者 CouchDB 实例同步数据,很适合用来进行团队协作。
CodeMirror
我厂开发了大量的 DSL,在线写代码是刚需。所以经过一些实践,基本掌握了 CodeMirror 解析代码和添加样式的方法,加深了对 tokenizer 模式的理解。如今让我自己开发语言感觉也不在话下了。
新年计划
- flutter
- TS
- 继续深研工具链
- 实现教程小语言
总结
2020 年,比较困难,也有不少收获。2021,虽然前途仍然不明朗,不过也只有努力,才可能会有更好的将来。所以,加油吧。
本文参与了 SegmentFault 思否征文「2020 总结」,欢迎正在阅读的你也加入。