写在2019的年末

还记得我在去年年末感慨,2018年过得飞快,如同飞鸟一般,时间就倏忽飞走了。而2019年,这鸟飞得更快,连影子没留下。

今年最重大的事件莫过于儿子出生,几乎每个周末都在围着老婆和宝宝转。用于学习的空闲时间自然是没挤出来。我以前并不觉得那些能在带娃期间备考的有多厉害,如今才体会到其中的不易。如果从外部来观察我的活动记录,最直观的表现是博客停更了,这一点非常不好。我的个人博客大多是笔记性质的文字,用于对所见所学进行记录与总结。子曰,吾日三省吾身。我今年动辄连续数月没有总结,虽说在有道云经常还有些学习笔记,但是总归没有放到博客,形成总结性的正式记录。难怪要到年末总结的时候才意识到好多计划没有落实。

年初目标与惨淡的2019

总结来说,2019年立的众多Flag里,只有寥寥数个是完成了的:

  1. 编程语言学习:我之前说,要每年尝试接触新的编程语言。2019年学了点F#皮毛,虽说没有深入研究,但在用F#写了个斗地主引擎的过程中,让我真正感受到了F#语言的超强表现力。以前老听人说F#函数式编程有多优越,当时我并未理解,甚至对模式匹配的过人之处也不屑一顾。如今自己动手实践了,才体会到模式匹配、Options、主动模式等特性的精妙之处。学了一门语言,总不免要和其他语言对比。由于都采用缩进语法,我在学习F#的过程中,经常不由自主地对Python产生鄙夷:大家都说Python简洁优雅:优雅问题不大,然而没有|>>>的编程语言,如何能称简洁?这种思想非常不好,为了矫正我的这个观念,我不停地跟自己讲:不宜过多评判编程语言本身,编程语言本身设计的优劣与否并不重要——Python远比F#流行,放弃Python就是自绝于生态。面对技术,不可有虚假的优越感。
  2. 取证:取证要趁早是我前年才体会到的道理。我去年跟媳妇说,要争取每年拿一个证,可惜早些年并不懂这个道理,总觉得那些资质和证书并无什么了不起,也没有什么实际用处——很惭愧,我在这方面的眼界和见识总是跟不上形势的发展,已经吃了次很多这种亏了。无奈的是今年的时间实在太过短缺,并没有准备什么认证考试。由于我之前工作的特殊性,甚至大家都学的驾照也没有尝试去考。2019年唯一跟取证沾边的是,虽然很晚,我终于拿到了驾照,好在迟到好过没有。再次提醒自己:任何时候,千万不要小瞧资质与证书,切记!。
  3. 源码与标准的研究:
    • 我通读了ASP.NET Core大部分子项目的源码,同时在有道云记录了一系列源码分析笔记,并把认证、授权相关的笔记放到了博客上,后续要陆续把其他部分的源码分析整理出来;
    • 通读BotBuilder源码实现,记录了一系列源码分析笔记,同时做了个无AzureInDirectLine项目,可以让Bot运行在无Azure/Internet的内网环境;
    • EF Core源码:去年立下的目标,今年并未有空去实现。
    • 掌握XAML:学习了XAML语法,但是并未去做个Demo来巩固所学。
    • 理解MQTT协议:上半年花了些时间学习了下,可惜隔了大半年,如今感觉细节又都记不清楚了。
  4. 读书与刷题:
    • 去年曾想今年要重温GoF 的《设计模式》 、Andrew S. Tanenbaum 《现代操作系统》、和Ian Sommerville 《软件工程》,可惜今年未曾付诸实践。
    • 去年还想每周至少一次LeetCode,今天想想真是害臊。

2020年的个人提升计划

  • 读书

    1. 重读《数据结构(Java语言描述)》,并开始刷LeetCode
    2. 重温 GoF《设计模式》
    3. 读完《The Language of SQL》,并把其中例子都亲自跑一遍(如果还有富裕时间,选择性读一点《SQL 权威指南》)
    4. 读完《Concurrency in C# Cookbook》(如果有富裕时间,有选择的读一点《Pro .NET Performance》)
    5. 读完《RabbitMQ in Depth》
  • OpenCV & Machine Learning

    1. 学习OpenCV:读完《OpenCV Computer Vision with Python》
    2. 正式开始学习Machine Learning,阅读《Data Science from Scratch- First Principles with Python》
  • Practice

    1. 熟悉Moq
    2. 如何为SignalR Core编写单元测试/集成测试
    3. 理解并掌握eShopOnContainer架构
    4. 上线一个电子书分享网站(受限于存储空间,暂时只专注于小部分计算机方面的电子书)
  • 源码

    • 通读 EFCore 源码