Present Day, Present Time

gobomb

2019 年终总结

打字的时刻是2020年3月28日,2020都已经过掉了4个月了,我才厚着脸皮写2019的总结。

多多少少有回避的心态。但不管怎样,这是个仪式,总要和过去的一年道个别,然后在下一年好好改进。

2019的关键词是成长。虽说也还没有肉眼可见的成果:没有真正拿得出手的项目,没有引以为傲的作品,财务上也没有值得一提的增长。这个成长更多体现心态和性格上。发生了不少重要的事件,让我对生活、工作、自我认知的态度有了深刻的转变。

工作上,主要侧重于计算机网络。这是我向来感兴趣的领域,也有幸在工作中得到相关的锻炼:任职的公司有相应的场景可以摸索,能跟随技术很强的mentor学习。怎么去定位网络问题,怎么去使用相关的工具,怎么去做网络插件的开发,慢慢开始入门。

对容器相关的技术也有了更进一步的了解,但还不够深入。需要阅读的源码,需要理清楚的概念,我还是没有付出足够的时间的。也体现在:没办法深入浅出地向别人介绍这些知识,当被提出质问的时候,会特别不自信。我越发觉得如果对一项技术没有自信心,就说明没有真正吃透。很遗憾,在很多方面,我都是处于没自信的状态。

也写了几篇博客,准确来说是写了几篇学习笔记。写博客最大的焦虑就是,认为自己写的东西没有用。毕竟互联网重复的信息那么多,大家时间那么少,凭什么来看你的东西呢?我又何必增添噪音?我的想法是,我就是写写学习笔记嘛,我是总结自己的学习过程、记录自己的思考而已,如果对读者有用自然是好事,没有的话,至少对我自己是有用的,这是个备忘,我随时可以查阅。写博客这回事,向draveness大佬学习,总是没错的。他的高产和质量自然是很难做到,但努力做到他的十分之一,也还是值得追求的。

  1. 容器运行时笔记 :对容器runtime概念的梳理,总体还是比较凌乱,有堆砌信息的嫌疑,在写的时候是知道存在这些缺点的,还是硬着头皮写下去。先写出来再慢慢修改,比起想着缺点不愿意写,总是更好的(写代码也是一样的道理)。另外容器的发展史和生态确实比较凌乱,有技术的原因,有商业的原因,要清晰地讲清楚那些概念的渊源,还是有点超出我能力的。后来我发现我能读懂 cmgs 的文章了,18年还没毕业的时候看《容器战争》 就是一种不明觉厉的心态。
  2. Kubernetes 网络学习:阅读 Flannel 源码 :k8s 网络插件 flannel 的源码阅读笔记。这篇对我还是蛮重要的,踏出网络插件学习的第一步。选择 flannel 是因为它比较简单,而我自己私下搭的集群也是用的这个。读源码的收获还是蛮大的。其实各大插件的大同小异,看懂了一个的套路,其他的也可以举一反三,对我在工作中定位问题帮助很大。
  3. 通过实验学习 Linux VETH 和 Bridge :对 Linux 虚拟网络设备的学习笔记。让我对 Linux 内核以及网络栈有了感性的认识。以前学计算机网络是从理论和设计的角度去理解,Linux 网络设备拓展了我看网络的角度:应用/软件的角度。这篇博客还是写得挺愉快的,一个是理论能在应用中得到应征,另一个是平常工作学到的一些技巧也能用上。挺有成就感的。
  4. Wireguard 使用笔记 :Wireguard 是比较新的 VPN 软件,是少数能被 Linus 表扬的代码(“it’s a work of art”),已经合并入5.6内核。所以我一直有好感。这篇博客的由头,也很值得一提:是一个朋友在使用 Wireguard 的时候遇到了问题,然后我们一起讨论解决了问题。这种一起工作分析解决问题的感觉超棒!这个时候从应用的角度,我对二/三层网络、iptables、tcpdump 都比较熟悉了,也是一个对自己知识的检验。文章写得还是比较流水账,不怎么突出重点,还是有进步的空间的。
  5. Kubernetes 网络学习:阅读 ovn-kubernetes 源码 :由于工作的关系,稍微接触了 SDN 以及 OVN。这又是一个大坑。花了不少时间和精力去阅读 OVN 和 OVS 并不好读的文档,再一次处于每个单词都知道但就是读不懂的尴尬境地(可能又一半的时间是耗费在自我怀疑上面)。ovn-kubernetes 是尝试将 OVN 的体系引入 k8s 作为网络插件,之前对 flannel 的接触至少让我不需要对 k8s 的“套路”有额外的负担。对于我这个不喜欢折腾硬件更喜欢软件/虚拟化的人而言,OVN 还是蛮有意思的。见识了 OVN 的架构,也让我强化了某种错觉:分布式软件似乎都大同小异,OVN / k8s / Hadoop 其实都有其共同之处?另一个让我不知道是好还是坏的点是:OVN / OVS,其实是绕开了 Linux 网络栈,对 Linux 网络的那些经验,其实挺难迁移过去的。不得不学习一系列新的协议和工具,没法用 tcpdump 一把梭了……(学不动了

coding 方面:做了一些网络配置方面的工作(跨集群网络的设置、k8s 访问控制策略的实现),做了部分重构。很感谢 mentor 对我的耐心指导(虽然他在2020离职了)。另外写了一些临时的代码,对个人 coding 能力并没有很大的帮助。这方面一直也有很多困惑:代码还是写得太少了,一方面是基础架构的功能迭代确实不频繁,另一个方面是创业公司的需求快速变化,很难有完整系统实践的机会。我很担心这个会成为我的短板,我可能运维或者定位线上问题的能力还行,但代码量是远远比不上搞业务的同学的。

技术书的阅读方面,还是不够系统,很多书都是开了个头,浅尝辄止。所谓“读书如抽丝”,真不容易。应该逼着自己建立“阅读-产出”的链条,让阅读成体系化。希望2020年能够真正读进去。

读完的书:

  1. UNIX环境高级编程 需要继续消化
  2. 码农翻身 把技术讲得通俗易懂,是用户友好的后端入门书

开了坑没读完的书(准确地说只读了一章):

  1. Designing Data-Intensive Applications “认识的大佬都在读所以我跟风系列”
  2. C Primer Plus
  3. Operating Systems: Three Easy Pieces 开源书籍,英文版也很好读。比《现代操作系统》好读太多了。讲解三大操作系统主题:Virtualization, Concurrency, and Persistence.

非技术书的阅读(部分):主要侧重于心理学方面。19年有太多成长困境和突破了,这些书给了我不少帮助和支持。从前偏好理论、理性,落入“懂得了很多道理却过不好人生”的陷阱;后来开始慢慢放下了对头脑的执着,更喜欢侧重感性、行动的文字了。

非暴力沟通》至少三个朋友向我推荐,值得一读再读;《有限与无限的游戏》转变思维方式的书;《亲密关系》亲密关系也可以是一门学科,从统计学的角度认识爱与婚姻;《最初和最终的自由》促使我开始培养冥想的习惯。这几本书对我非常重要,更新了我对人际关系以及情绪管理的认知。

小说:《远山淡影 》石黑一雄读起来很诡异;《看不见的爱》果然是哲学家写的小说;《山月记》“因为害怕自己并非明珠而不敢刻苦琢磨,又因为有几分相信自己是明珠,而不能与瓦砾碌碌为伍,遂逐渐远离世间,疏避人群,结果在内心不断地用愤懑和羞怒饲育着自己懦弱的自尊心”;《城堡》卡夫卡无法评论;《地下室手记》陀氏太令人震撼了,这本书是重读,第一次读根本就没读懂,也许也是需要一些经历吧;《》中规中矩的村上小说;《了不起的盖茨比》也是重读,失恋套餐……

象与骑象人》《活出生命的意义》《给心理治疗师的礼物》都是很不错的心理学作品。

小狗钱钱》朋友推荐的理财入门书。几个不错的理财基本原则,其实也是怎么“成长”的基本原则。