本周(03/27 ~ 04/02)是三月份最后一周,虽然周末已经进入了四月份但是 3 月的天数多就归入3月份吧

Life

#1

周四的时候又去踢了场球,然后又伤了,其他同事踢得实在太认真了…

未来 1~2 周得歇一下,至少等到脚好了再说

#2

之前帮前同事内推了我们的 meeting 组,经过好几轮面试后目前也正式给他发 offer 了。

不过考虑到现在的大环境,先撑到6个月后转正再说吧。转正了就算哪天真的又 layoff 了好歹还有 N+4 可以拿…

#3

去年公司发的李宁的跑鞋因为之前不小心踩到了呕吐物和翔的混合物,大半个表面都污染了而我又懒得洗就直接扔了。

后来去银泰买了一双400多块钱的李宁跑鞋,但是这几个月来总感觉跑步的体验不如之前公司送的那双百来块的。

于是周末实在忍不了下单买了双类似的新款,没有任何优惠券的情况下只需要 178…

看来不是越贵的鞋越舒服,还是得看是否合脚

#4

这周老婆一直念叨着想吃东北菜的锅包肉,于是骑着小电驴带着她去了马丫东北菜,那家店刚好在常去的三分银的附近。

东北菜的分量有一说一是真的大,老婆点了四个菜:锅包肉,烤鱿鱼,奶香饼和干锅花菜(干锅花菜不是东北菜,但是我老婆不管吃哪家都会点这个…)到最后锅包肉还剩下一个,饼还剩下半张…

吃完之后在家附近的河道走了走,最近阳光不错,适合外出散步 😁

Work

#1

本周学习进入如下

《重新理解创业》看完了

    1. 重新理解钱
    1. 重新理解领导力
    1. 领导者的自我成长

这本书很薄,稍微翻翻就看了好几张,有些经验分享还确实值得思考

DDIA 看完了

    1. Data Models and Query Languages Done

一如既往的高质量

《Apache Kafka 实战》看完了

    1. 管理 Kafka 集群 Done

从这章开始感觉都是偏运维的内容了

CppCon 2020

  • Building a Coroutine based Job System without Standard Library - Tanki Zhang

这个 talk 很早前就看过一点,但是因为前半部分讲 coroutine 的一些细节看的我发懵(作者实在没把这部分内容梳理好)就直接搁置了。

这次重新看,果不其然前半部分还是一样发懵…勉强看完之后感觉也就那样吧…

要说收获嘛,就是知道能做个这么个东西,但是真要说啥干货还真不太多

Posts

其实就是 TCP 虚拟连接各种状态的事儿

老生常谈

#2

这周公司的某个 golang 项目遇到一个构建的问题。

整个项目是一个大 repo,但是拆成了两个独立的 golang projec,有各自的 go.mod,整体用 go workspace 组织管理。

两个 projects 都用了一个公司内部的 SDK 而这个 SDK 好巧不巧间接依赖了某个包的版本因为安全问题被 security 锁住了,没法从内部的 jfrog 拉取。

但是诡异的是 go get -u 更新了 SDK 及其依赖后,发现还是会尝试拉取老版本的间接依赖,但是 go mod why 明明有提示没地方在用这个包了。

折腾了很久发现大概原因是这样:

  1. 我当时只改了其中一个 project
  2. go workspace 自己会缓存(via go.work.sum)子工程的依赖包信息
  3. 导致实际上这个 workspace 还是会有这个老版本的包。

正确的做法是

  1. 两个 projects 的 go.mod 都升级依赖
  2. 在 go.work 那一层执行 go work sync 同步一下
  3. 然后再清理包缓存重新编译一下

#3

这周把研究 glog 源码的 docker container 弄好了,开始研究 glog 的一些核心流程的实现了。

主要是最近想不到想写啥代码,又不能白耗着时间,所以索性看看 glog 代码好了。

毕竟公司的日志库用的就是 glog;虽然我个人现在不太偏好 glog,但是看一看也无妨,而且 glog 都是一个经典老库了。

想想之前自己也前后写了1~2个日志库,并且还看过 chromium base/logging,刚好可以对比一下同是 Google 出品的,设计和实现上有什么不同。


好了本周就这样,下周见