2018年12月总结

2018-12-30

前言

年底,又到了全人类对着未来吹牛逼的季节。可是,大家都忙着往前看,有谁还记得往后看看吗?毕竟,当下的 12 月份它马上要结束了。

本文是我 12 月份的月度总结,我先不着急往前看,先给 12 月做一个负责任的了结。

目标管理方法

在 12 月份,我应用了自己最新摸索出的目标管理方法。因此在本节中,我先介绍这个方法,它非常简单。

月度目标

在月初时,我会制定一个月度目标,思考这个月想做、想提高的事情。

不用写得太复杂,把事情列出来即可,比如我给 12 月列举的有:

  • 博客静态化、SEO
  • 技能学习 Unity
  • 非技术学习《斜杠》
  • BearyChat Hubot 机器人开发
  • ……

12 月份我总共列出了 7 件事,这么多事情可定不可能都完成。在月初的时候只是划定一个范围,划出想做的事情,月底能完成多少全靠造化了。

周目标

每周我会建立一个文档,来记录我本周的计划:

  • Week4 2018.12.24 ~ 2018.12.31
  • Week3 2018.12.17 ~ 2018.12.23
  • Week2 2018.12.10 ~ 2018.12.16
  • Week1 2018.12.01 ~ 2018.12.09

在每个文档内部,我会创建一个项目列表:

|----+----------+------+--------------------+------|
| id | 名称     | 要求 | TODO               | 进展 |
|----+----------+------+--------------------+------|
|  2 | 博客发表 |      | [x] Polar          |      |
|    |          |      | [x] JavaScriptCore |      |
|    |          |      | [x] Pyppeteer      |      |
|----+----------+------+--------------------+------|
|  3 | ...      |      |                    |      |
|----+----------+------+--------------------+------|

其中:

  • “名称”是一个主题的目标
  • “要求”是设定的一些 Check point,比如至少写三篇博客
  • “TODO”是一些备忘
  • “进展”可以记录 TODO or DOING or DONE

每周的业余时间我就扑在这张表格上,按照表格做事情,做完了再更新表格。到了下一周,再创建一个新的文档。

这就是我的项目管理方法,就这么简单。

下面我们来看看这个月所取得的成果。

运维

我有很多主机需要管理(Home Server、VPSes),高效运维逐渐成了一个痛点。我每次部署程序都很费劲,浪费很多时间,因此我这个月把运维技能提升了一些。主要包括:

  • VPS 管理技巧:快速登录、项目部署工作流
  • socat 代理中转
  • Supervisor 任务管理

项目收益是:

  • 管理主机速度更快
  • 上网速度更快
  • 可以在 Server 上部署一些常驻服务,比如聊天机器人

聊天机器人

我一直想给自己搭一个聊天机器人,这个月终于完成了一个 7x24h 常驻的聊天机器人服务。采用的技术方案是 Hubot + Bearychat。主要包括:

  • Hubot 框架学习:回复指令,主动发送,微服务(供其他程序调用,发送消息)
  • Supervisor Hubot 部署
  • 可靠性验证

可靠性验证这点非常重要。很多人理论都懂,Demo 也能跑通,但是没有在真实场景中把它用起来,这种情况下得到的知识都是肤浅的,都是不可靠的知识。

博客

在这个月里我重启了自己的新博客 maxiee.github.io。这个博客的框架是我自己重头开发的,经历了很多困难。在 12 月中,我主要解决的问题是:博客是一个 SPA,SEO 不友好导致 Google 抓不到、sitemap 需要手动更新,不方便等等。

我一步一步解决了这些问题:

  • 学习 Webpack,使用 SSR 将博客静态渲染
  • 恢复 Google 检索
  • 自动更新 sitemap

现在博客已经实现了“Markdown 编写、一键发布”的特性,十分方便。

AppStore 爬虫

这个月我用 Python + Pyppeteer 编写了一个 AppStore 爬虫。包括的内容有:

  • Python Asyncio 学习
  • Python APScheduler 学习
  • 爬取每日总榜、热门榜
  • 简单的分析报告

目前来看,底层设施已经具备了,后面需要进行更加深入的开发工作。

笔记系统

我对自己的 Org Mode 笔记系统也进行了一些升级:

  • 加入笔记行数统计功能,可视化查看、比较笔记大小
  • 加入笔记 diff 比较功能,可以查看两天笔记的变动情况

有了这两个功能,我可以了解自己最近都干了啥、学了啥。

微博爬虫

我同时还在开发微博爬虫,进展没有 AppStore 爬虫大。主要是升级了数据库 Model、添加了项目文档。

React Native & JavaScriptCore 学习

这是我这个月在工作的闲暇中主要学习的东西。主要包括:

  • JavaScriptCore 源码编译
  • Android 载入 JavaScriptCore 库执行 JavaScript 函数
  • JavaScriptCore 核心概念学习
  • React Native 对 JavaScriptCore 封装学习
  • Android JNI 学习
  • React Native 的 fbjni 学习

这块内容很多,自己现在还处于入门阶段,下个月继续努力。

不足

可见,由于这个月规划得比较好,收获也很多。证明我对项目管理摸索地比较上道了,下个月要继续保持。从中也发现一些不足的地方:

读书没有记录

这个月读了几本书,但是没有管理下来,效率并不高,这块可以改进。

核心数据没有监控

我希望有一个监控系统,能够自动收集起我关心的指标数据,这样可以定量、闭环地了解自身状态。

核心产出

希望每个月都能有一个拿得出手的核心产出。码农这条路是青春饭,未来想要走独立开发的道路,就得具备相应的素质。核心产出规定了这个月必须实现的事情,能够促使我面对现实,找到差距,进行补齐。

小结

以上就是我 2018 年 12 月的阅读总结。是不是比很多人的年度总结还充实、还详尽呢?

不过,我觉得我还能做得更好,期待我下个月的总结吧!