李笑来老师说,要「活在未来」。所以这篇文章,我是在 2019 年 2 月份写的,那时候突然心血来潮,与其到了年末再写总结,为什么我不能在一年的初始就先写下,以此为目标,然后根据实际情况,不断地修改、调整、充实文章的内容,最后再 2020 年的第一天,输出到平台呢?我想了下,是可以的,那我就二话不说地行动了。

我是在 2019 年才开始写年终总结,那时候总结 2018 年,就感觉自己仍旧活得像没有脊椎的腔肠动物一样,软绵绵的一堆。那时候我就决定让自己的 2019 年,起码能够对得起自己,把一系列自己想要做得事情全部做完,再稍微给自己提一个小小的、过分的要求,那就是——成为一枚优秀的大前端工程师。其实这个目标是没有导向性的,如果一开始我仅仅设置了这个目标,那就跟什么都不做没什么不同。那到底我想要成为一枚怎么样的大前端工程师,才能称得上为优秀呢?又,需要怎么做,才能达成自己的这个目标呢?我做了如下规划。

第一,我所认为的大前端,应该包含:

  1. Web 前端领域的知识,包括前端渲染和后端渲染,以及三驾马车;
  2. 以 Node.js 知识为切入点,成体系地学习后端知识;
  3. 以 Mysql 和 MongoDB 两者不同类型的数据库为代表,学习 DB 知识;
  4. 部分混合 App 开发的知识,可以从 iOS Hybrid App 开始切入,具体可使用 Weex 框架;

第二,怎么样才称得上为优秀?
现在,会用框架且写出来一个项目,只能说明这样的开发人员充其量只是一枚 API 熟练工,一旦遇到性能优化、底层调优、异常处理等等时,往往捉襟见肘。万丈高楼平地起,落叶依旧归根,所以想要变得优秀,我提取出如下几点:

  1. 基础知识非常扎实,包括数据结构与算法,运行时状态、语法等等;
  2. 学习一门新知识时,首先能够抓到重点,在最短的时间内通过类比的方法,将其学会;
  3. 有能力架构自己的知识体系,明确自己知识体系的结构与构造,并且能够准确定位知识点的位置,举一反三。

第三,怎么做才能够达成自己的目标?

  1. 有个人的一套学习方法论,能够集中自己的注意力和管理自己的精力;
  2. 能够逐步地学习着去构建自己的知识体系,并能以一种感性的方式去呈现出来;
  3. 收集有高效的工具能够辅助自己,并能够在已有的工具上继续深入,充分挖掘工具的性能和优点;
  4. 爱上输入、思考、复盘、输出、反馈的一套知识体系,并且能够内化成自己的能力;
  5. 提前做好有实践意义的规划。

那么接下来,我首先就要制定有可行性的目标了。我想在 2019 年完成如下几件事情:

  1. 公众号粉丝从 0 到 1,上半年完成 5000 粉丝,下半年完成 10000 粉丝;
  2. 开通 tiger,投资 1~2 款自己考究过得股票,长期持有;前半年研究、学习相关知识并且积累资金,下半年开始投资入市;
  3. 夯实技术基础,数据结构与算法,一锅端掉,自己创建场景,用 js 和 c 语言去实现;
  4. 剖析 vue 及其重要生态的底层实现;
  5. 剖析 react 及其重要生态的底层实现。

我为什么没有提到要赚多少钱呢?很简单,注意力 > 时间 > 金钱,收入的多少只是自己人生的一个又一个的里程碑而已。

阅读

我今年读了很多的书,但是并不限于纸质书,知识的传播媒介有很多种,书本只是其中传统的一种,但是为了能够在特定场合下也能利用碎片化的时间进行阅读,我选择了便携的电子书阅读模式,而且越来越喜欢电子书模式。

今年完成的书单:

  • 《香帅的北大金融学课》
  • 《通往财富的自由之路》
  • 《怎样成为精力管理的高手》
  • 《怎样写出吸引人的好文章》
  • 《重学前端》
  • 《数据结构与算法之美》
  • 《玩转 Git 三剑客》

项目

今年独立完成的项目。所有的项目都是根据自己日常学习或者工作的实际需要,然后自己仔细分析需求,并付诸实践,使用了大量的工作之余的时间来完成,实属不易,觉得不错的话,麻烦给个 star。

  • irm-markdowner
  • mini-todo
  • react-todo
  • hexo-theme-irm
  • generator-irm
  • hapi-be
  • express-be

输出

今年所有的文章输出,都可以在我的博客、微信公号、github 上看到。
(列出所有的文章链接)

(后文可采取 CHANGELOG 的格式跟踪目标修改过程)