2020,对我来说,就是从 MLGB,到 My Life Goes Better。

2020 每个人都绕不开的梦魇就是新冠疫情。

春节假期的前两天,印象中那时武汉确诊的人数大约是 400 多人,那个时候大家意识到事情可能不大妙,最后两个工作日公司已经让大家在家办公了,那几天车胎还被扎了,我去 4S 店补车胎的时候,发现算上我只有两三个人戴口罩;

开始犹豫是不是要回老家过年,最后抱着不能“客死异乡”的想法,买到了大年三十一大早的机票,惴惴不安的回老家过年。

机场几乎没有人不戴口罩,回家的飞机是很早班的,印象非常深刻的一幕是在机场摆渡车上,天气寒冷,车窗上全是雾气,车上的人们裹着厚厚的棉衣,每个人带着款式各异的口罩,没有人说话,安静的出奇,这个场景仿佛是一个生化游戏的开幕动画,非常的赛博朋克。

没想到,一回家,就在家里呆了一整个 2 月。

第一次 WFH,而且是在偏远地区龟速的网络下,完成了地址表单的改版,产品同学的评价是,“没想到能做到这么高的产品还原度”。但是经历后面的事情后,这样的评价竟然变得有些讽刺,有什么意义呢?

本来疫情已经很艰难了,没想到,2019 回杭的艰辛还要再经历一次。

直飞杭州的飞机被取消了 5 次,无奈买了天津中专的机票,出发的那一天,突降大雪,在去机场的路上收到航班取消的信息,心都凉了。最后买了从锦州直飞杭州的机票,第二天一早,姐姐和姐夫积雪中送我去锦州机场,最终从锦州回到了杭州。

回杭州后,是我工作后最黑暗的一段日子,也是至今想想都无法接受甚至无法原谅自己的一段日子。工作的变动,我被安排去负责了商品详情页的业务;与此同时,部门的政治斗争越发激烈,内耗越来越严重,我的两位主管甚至对我进行打压和职场 PUA,我虽然获得了晋升的机会,但是在晋升述职的时候,被评委蹂躏的体无完肤,本来我是晋升希望最大的那个人,最终还是晋升不通过。

这段经历让我痛苦不堪,我自己真切感觉到,那个时候的确是有一些抑郁的症状,很严重的抑郁症状。

我知道,这个地方我不能再继续呆下去了,于是开始考虑其他的机会。

机缘巧合下,我有一个去新部门转做服务端开发的机会,几年前还不错的 Java 底子,内卷严重的无线开发,再加上新部门离家很近,我知道,我一定要抓住这个机会,从新开始。

这是我工作以后第一次转岗,新的环境,新的人,新的技术栈,内心非常忐忑,不过好在新部门里还有一个跟我一起转岗过去的做前端的老朋友。抱着舍去一切,从头开始的觉悟,8 月 17 号,我去新部门报道,开始了我服务端开发的日子。

转岗后有一种置之死地而后生的感觉;集团中间件一个一个学,每天把能找到的文档全都读一遍,从头学习服务端技术,以及集团的工程体系,学到了非常多的知识,这是我最快乐的日子。

可能是因为我无线开发稍微有点积累,在新部门的第一个项目是一个跟钉钉相关的项目,要去钉钉园区驻场开发,有很长一段时间地铁往返于城西城南,我负责 iOS 端的开发,好在是我熟悉的领域,完成的还算漂亮,我正式“落地”了。

不知道能不能算我一直奢求的好运气,机缘巧合下,服务端方面,我被安排负责了一个新的应用,一块新的业务,没有历史包袱的感觉非常好!

我很珍惜和感恩转岗到新部门的日子,可能新部门也有政治斗争,也有 PUA,但我是个边缘人物,我只想踏踏实实把事情做好,一点也不想参与任何派系斗争,同时收获满满的成就感和收获感,不奢求太多!

现在想想,如果没有 PUA,如果没有晋升失败,那我可能就没有机会专做服务端开发,就不会想着转岗出来,就不会来到更大的世界,是好是坏,who tmd knows。

这可能是我工作后最快乐的十一假期了。虽然少了很多加班工资,但是我去了两个地方玩。

先是去长沙吃嗦喝,后来又去宁波玩海,捉螃蟹,非常非常开心!

今年看过的国产剧《隐秘的角落》《沉默的真相》还不错,国外剧《李尸朝鲜》《后翼弃兵》值得一提,疫情期间看的了非常不错的校园剧《Sex Education》,以及最终弃剧了的《爱的迫降》。

今年年度最佳是在 2020 尾巴看完的 2003 年的老剧《半泽直树》。

疫情期间终于看完了《万历十五年》,往返城西的地铁上看完了郭德纲的《过得刚好》,正在看杨绛的《我们仨》。

通关了《战神4》!虽然是看着游戏博主的视频通关的,但是绝对值得一玩。Switch 平台的游戏入了《死亡细胞》的坑,回合制的游戏让人打着没有负担。

最后,不展望 2021 了,也不做什么狗屁计划,没有卵用,只求一切正常,世界和平。


Surge 可以利用 MitM 抓 HTTPS 的包,代替一部分小花瓶的功能。在客户端开发过程中调试跟服务端的网络交互很实用。本文以用 Surge for Mac 来抓 iPhone 的包为例,简要介绍一下操作流程。

在 iPhone 上安装 Surge 生成的证书。

点击「配置根证书」→ 「生成新的 CA 证书」,安装。注意安装后要手动去系统设置里面「通用」→ 「关于本机」→「证书信任设置」中,把刚刚安装的 Surge 证书启用完全信任。

回到 Surge 证书页面,确保「系统已信任」。


从 65A8F 说起

笔者前段时间买了一台大法电视 65A8F,作为从来没看过 OLED 电视的土狗,刚开始用的时候觉得什么都是香的,屏幕声场、超窄边框无一不坚定我充值信仰的决心。

可是,在使用过程中发现,不管什么信号源,无论是内置的 App,还是外接的 HDMI,看了一会后,屏幕或左或右就会出现一个窄窄的黑边,大概半半公分宽,仿佛画面渲染不完全一样。如果我切换信号源 …


初步认识

ComponentKit 是 Facebook 在 2015 年开源的一个构建 UI 的框架,用以解决 Facebook Feed 流繁重低效的 UI 开发工作、复杂的数据流、越来越难维护的状态。 ComponentKit 很大程度上受 React 启发,基本概念和用法跟 React 大同小异。ComponentKit 早于 React Nati …


2019 是不太好的一年。

春节在家,中午跟家人吃火锅喝酒,出了一身汗,下午领着小外甥和小外甥女去看电影,北方的冬天太冷了,我居然什么护具都没带,在路上果然冻感冒了。我真是用实际行动践行了“不作死就不会死”这个亘古真理。这场感冒绝对不是玩虚的,第二天起来就浑身酸疼,之后就是发烧到快 39 度,嗓子疼、并有蔓延到呼吸道的趋势。

后来吃布洛芬也没用了,去楼下小诊所输了 4 天头孢,终于好了起来。

这期间奶奶也生病了,我永远也忘不了那天下午,我跟姐姐们在医院陪着奶奶,聊着天,轮流给奶奶举着手机看《西游记》。仿佛一下子回到了小时候,没有这么多烦心事。

可现实是,我的两个小外甥都快上初中了。

最最让我没想到的是,整个春节假期都阳光明媚,临回杭,在去机场的路上,突降大雪。我经历了从机场关闭,到接到航班取消的通知,那种绝望。我甚至在想,不是说本命年会不太顺利么,都已经过去好几年了,怎么还这么坎坷。

后来历经波折买到了一张去北京的绿皮火车的站票。决定去北京倒车,坐高铁回杭。到北京的绿皮火车是从晚上 11 点多到第二天快 10 点。那一晚是毫无尊严,痛不欲生的一晚。我实在撑不住坐在过道上,被来来往往去厕所和接水的乘客踢来踢去,真的很佩服自己能坚持下来。

回杭后继续做些我自己都不知道有什么意义的事情,在我看来就是产品经理为了写周报而提的项目。

2019 有一个心态上的转变。做事情会考虑 ROI 了。对自己成长没有帮助的事情,多一事不如少一事。我早已经过了那个需要靠多做事情来证明自己的时期,是时候为自己考虑了。

我一直特别讨厌“务虚”,一直想踏踏实实做点事情。可 2019 团队也经历了很多变故,变得越来越乌烟瘴气。不过也有可能是我自己心态变了。什么 2019 是过去几年最差的一年,也会是将来几年最好的一年,说白了这种状况会越来越差,要做好准备。

2019 是来公司第 5 年了,感觉激情正一点一点的消失。提前步入了中年危机。

晋升季,绩效虽然拿了 A,但是由于大部门太差了,依然没有晋升的机会。不过话说回来,即使给了我机会,我自己都没信心能晋升成功。

去上海参加了一个苹果组织的没什么卵用的活动。

在杭州“秋老虎”来势汹汹的时候,我和团队里面的几个同学被派去乐佳国际支持一个项目。于是有了在乐佳国际闭关 “996” 开发的一个半月。乐佳国际条件很苦,唯一的小卖铺就是一个很简陋的全家便利店,我们说这不是“全”家,只能叫“半”家。

食堂太难吃了,每天中午我们都会出去,去老娘舅吃一份黄金蛋炒饭套餐,有的小伙伴甚至会加一份酸菜米线,我们戏称“米蛋一体”。


前几天去参加了苹果在上海举行的主题为“构建面向全球的 App”的 workshop,简单记录下。

整个 workshop 包括分享和交流两部分,苹果的人先分享了一系列 App 国际化的最佳实践;接着跟苹果负责开发者关系的技术人员就国际化和本地化相关的问题做了一对一的交流。

分享篇

分享部分基本上是把 WWDC 中国际化和本地化的 Session 翻译成汉语 …


2018 年过得真的好快,今年的经历比往年都要丰富,有大事有小事,闲时很闲,忙时超忙,觉得被生活、被情绪拽着衣领子到处摩擦。

今年是在公司的第四年和第五年的阶段,工作上做的技术项目跟业务项目大概五五分,技术项目更偏多一些。觉得在组里越来越有发言权,毕竟也是老员工了,也越来越受到老板的器重,是好事的同时,也增加了很多无形的压力;一整年来处理了很多线上问题,没掉链子,基本都是技术债,没有我的锅;越是做过一些东西,做新东西时想的就越多,做的也就越谨慎,这是好事;尽力追求把事情做好做漂亮,不止步于做完,这个初心没有忘,以后也希望继续坚持;

这一年来的大项目,值得一提的,有 2018 年元旦假期加班做的动态配置平台接入的项目,有组内打包工具的大升级项目,有下半年的组织结构调整后,换了老板后做的 App 架构升级和大重构项目,有收货地址大重构项目,之所以都加了一个“大”字,是因为它们真的是很大的项目,耗费数月的那种。

App 架构升级和大重构项目、收货地址大重构项目,算是两个团队核心项目,这两个项目我也发挥了比较核心的角色,项目细节不便多说,但这两个项目一下子把 11 月和 12 月打满,让我每天超负荷运转,忙得根本没时间去思考别的事情,不知道是不是喜欢被需要的感觉,我竟然觉得这种高负荷的运转还挺爽的。我爱程序员这一行的原因可能是,创造即工作,看自己设计和做出来的东西是用欣赏的态度和眼光,看一切按着你的安排去运转,很好。

今年还有一个值得一提的就是,英语口语能力有了很大的进步,主要是突破了心理障碍,老子英语本来就不差嘛!今年面试了很多俄罗斯人,又有很多俄罗斯同事来杭州出差交流,跟他们相处的日子虽然短暂,但是在这种“被迫”的英文交流场景下,有了进步,很开心。

详见 2018 — 从“苏C”到“浙A”

  1. 公司 6 月末搬到西溪,每天上下班通勤时间变为 1.5 小时,起床时间提早了一个小时
  2. 第一次去音乐节,冒雨,见到了崔健
  3. 世界杯,阿根廷和法国的比赛可能是伪球迷看过的最精彩的一场足球比赛了
  4. 去莫干山团建,回来的路上跟同事谈天说地
  5. 入职后最大的线上故障,细节不便透露
  6. 十一加班
  7. 双十一狂买东西,买衣服,找到了适合自己的裤子的 Style
  8. 电动车撞上了我的车,经历了第一次交通事故
  9. 房子交付了,准备装修
  10. 整个十一月和十二月,高负荷高强度的投入工作

CSAPP 读到了第五章,后面还是断断续续,没有每天早上都坚持读。但其它书到的倒是比去年多了一点。

《月亮与六便士》今年终于看完了,小说类还看了东野圭吾的《新参者》和余华的苦难之二《许三观卖血记》。

非虚构类看了《人类简史》前面很多观点让人眼前一亮,后面个人觉得乏善可陈,闲暇时随便看看了解一下即可;又看了《睡眠革命》,也算小有收获。

今年纪录片看了一些,《河西走廊》的壮美,《极地》、《西藏时光》的震撼,《最后的棒棒》的苦难、无奈和坚持;通勤时间听完了《朗读者》第二季。

今年看了 Top 250 的电影有《寻梦环游记》、《请以你的名字呼唤我》、《阳光灿烂的日子》、《鬼子来了》、《末代皇帝》,其它值得一提的电影有《白夜追凶》、《我不是药神》、《红海行动》、《三块广告牌》、《燃烧》。美剧补了《黑镜》系列,但我居然一点都不记得是今年看过的。

年度最佳电视剧 — — 《请回答1988》。“岁月依然流逝,一切终将过去,年岁渐长,青春之所以美丽,恐怕就是这原因。在刹那的瞬间,耀眼的闪烁之后,再也无法回去。”

买了 Switch,刷完了塞尔达;
手机换了 iPhone XS Max,入了 Apple Watch Series 4,SONY WI-1000X,ASUS RT-AC88U。

  1. 多读书,多读书,多读书
  2. 把握机会,不留遗憾
  3. 装修顺利
  4. 一切都好


这可能是我 2018 年干过最牛逼的事情之一。

背景是,春节假期在家得知公司将要从城南搬到城西,单程通勤距离从 3 km 变成 35 km。为了不限行,3 月份的时候,竞拍了一块 “浙A”。为了把原来的“苏C”换成“浙A”,不得不去“苏C”所在地江苏徐州,具体地说是距离杭州市 700km 的徐州市辖区的沛县,把车子的资料提回来,落户到杭州,相当于是给车子迁户口,那个时候还不能电子提档落户,必须要人车到场。

作为没开过高速的新手司机,开始时本来寄希望于一个跟我一起竞拍车牌的同事,让他跟我一起去,但是以往的经验告诉我,不能靠任何人,后续事实再一次证明我的经验是对的,于是,在 6 月底,我做出了一个大胆的决定,自己开过去,办理各种手续。

出发前我做了充分的准备,买了咖啡红牛,尽可能多的了解了新手开高速的注意事项,详细调研了一路上的服务区,几条关键的高速路和大的枢纽,高德地图体验很好,数据非常完备;即使有妹子同行,但她毫无驾驶经验,全靠自己。

行程计划

出发那天是星期日的早上,天气晴朗,按着既定路线一路向北,长时间开车真的对人的意志力和精力都是很大的考验,不知不觉手和肩膀就酸胀了,上午按计划到了第一个服务区 — — 太湖服务区后,淡定了不少,简单休整后,继续向北,中午到了南京的八卦洲服务区;下午南京到徐州段的路程,车非常少,不像上午路上全是“皖”、“苏”、“豫”字头的大货车,这些马路王者,看着就发怵;在路况好、车少的高速路上开车倒挺舒压,定速巡航打开,看着路边的风景,就像去自驾一样,就这样几乎马不停蹄开了一整天,终于在傍晚到了沛县,沛县满街都是“苏C”,别人根本察觉不到我是来摆脱这个烦人的“苏C”的。


谈一下最近说英语的一些感受。

我的英语学习历史可以说是一穷二白了。
高考前后是我英语水平的巅峰,因为我们省高考是不考听力和口语的,我高中三年的英语学习全部倾注在读写上。坦率地讲,我英语读写基础还可以,每次考试英语成绩都是班里的前几名,高考英语分数记得是 130+。
上大学和工作后,确切的说是过了四六级后,对英文的学习就主要来自读英文文档和看美剧了,这期间可能听力水平有一些提高。

但整个过程因为没有海外经历,唯一缺少练习的就是“说”。人们都说,在公众场合说方言就跟当众脱衣服的感受是一样的。的确,在公众场合说英语也是一样。

但最近,因为组里来了一个俄罗斯小哥,几天的英语交流下来,我对说英语的感受发生了很大的变化,特别想分享给大家。

先分享一下曾经看过的两个东西。

一个是那天(老师的名字叫“那天”)的知乎 Live,《从哑巴英语到 native speaker 的逆袭秘诀》,这是我唯一看过的知乎 Live,质量不错,总结了一些如何让发音和表达更地道的小 trick,很多东西印象深刻,很多之前疑惑的问题有了答案。

另一个是一本书,《1368个单词就够了》。里面讲了如何用“小”词解决在一些场景下词汇量不够导致的不会表达的问题,也很有启发性,这也是在最近的口语应用中我使用最多的技巧,小词大用。

回到近期的感受上,第一点也是最重要的一点,就是像我这样口语基础不好、不自信的同学,一定要克服心理障碍。大胆说吧,那些英语比你好的中国人,他们知道学习过程的艰辛,是不会嘲笑你的;那些 native speaker,更不会嘲笑你,你想想 KPL 的职业玩家会嘲笑业余打两把的青铜?毕竟术业有专攻。所以,笑你的人一定是那些一瓶不满半瓶晃荡的人,这些人是彻头彻尾的 loser,他们不敢像你一样大声说出来, 试图从别人的失败中找一些自信,当你迈出第一步,去说,就比这些人不知道高到哪里去了。

第二点就是表达技巧的使用。

第一个技巧是小词大用。举个例子,东北人爱用一个动词“整”。“整两盅呗,老铁?”、“交给我,两天给你整利索了。”、“这火锅太辣了,整不动啊。”。英文其实一样的,一些“小”词,比如“make”、“get”等,当紧急情况不知道该怎么表达时,想想这些小词。

第二个技巧是学会变通,活用否定、和反义疑问句。有时候你一时半会想不出来某个词,没关系,变通一下。举个例子,跟小哥聊天时,谈到“社会保险”,当时根本想不到“insurance”这个词,但没关系,我会跟他说,“Something like, When you’re in some bad situation, the goverment will give you some money”,小哥结合上下文,一下子就明白了。再就是像我这样的青铜选手,有时候想问一个问题,但是情急下,不知道该怎么问,不妨直接用陈述句说出你认为的答案,然后加一个反义疑问句,或者跟上一个“right?”来提问。再举个例子,比如我想问小哥,莫斯科有夏天吗?我是这么问的,“There’s no summer in Moscow, you know, it’s always very cold there, right?”,小哥告诉我还是有夏天的,只不过比杭州凉爽多了。

最后,当你克服了心理障碍,能把自己的意思用英语表达给别人时,会产生一种良性循环,这非常重要。反正对我来说,我现在会刻意加强自己的训练,说的越多越熟练,很多压在记忆深处的词,有时候一下子就蹦出来了,以前只能单个词往外蹦,现在逐渐发现,慢慢说可以连成完整的句子了,这种感觉真的很好。

英语相比汉语来说真的很简单,你一定可以的,加油。


书中农业革命部分讲到人类种麦子,这个原本看似划算的决定,最后变成了越来越沉重的负担。这是个很有趣的观点,我迫不及待想写下来与大家分享。

种麦子的确会让单位大小的土地养活更多的人类,但是随着人口的增加,对粮食的需求也会变多;不知不觉中人类对食物的依赖相较于采集狩猎时期变得越来越单一,无论是从营养摄入的角度还是对自然灾害的抗压能力的角度都变得很不利;小麦驯化了人类,人类开始定居在疾病容易传播的村庄聚落,死亡率也大大提升。

然后人们会陷入恶性循环,会加倍努力工作,种植越来越多的粮食试图缓解这种境地。人们的初衷是好的,想多收获一些粮食,想过上富足的生活,但实际上已经是深陷其中,无法自拔。

但这并不是说农业革命是一种退步。从进化的角度来看,人类的 DNA copy 的确越来越多,从整体来看,农业革命为现代的富足生活打下了基石;但是对个体来说,我们无论如何都不能说,对汉代的某个因为家里农作物歉收而饥饿致死的孩子来说,农业革命是有利的。物种演化的成功,不代表个体的幸福。因此作者总结了农业革命:

让更多的人更糟糕的活下去。

即使在现代的社会,也有无数类似的例子。

我们追求高效的信息摄入,企图多学一些知识,于是每天刷知乎、刷 RSS,刷即刻,各类信息汇聚一处,以为自己学到了知识,对窗外事了如指掌,实际上深陷其中。当我们发现摄入的信息熵逐渐变低,我们不会放弃这些平台,而是花更多的时间去搜索更多的信息,就像我们的祖先发现种植麦子似乎不像想象中的那么美好时,想的不是放弃这种生活方式回归采集狩猎,而是想多挑一担水、深挖一丈土来解决问题。

讽刺的是,我刷 RSS 得知了 Facebook 开源了一个 Python 类型检查工具 Pyre。这又是另一个例子。当时 Java 的类型带来的繁琐让人们苦不堪言,于是开始转向使用 Python、Ruby,初衷是好的。但随着工程变得庞大,这些动态类型的语言变得愈加难以维护,于是人们想着那就多做一点事情,于是开发了各种工具来增加可靠性。

一次次重蹈覆辙,道理很简单。人类总是做当下最贪心的选择,不计后果。

以上。

liushuaikobe

programmer @ Aliyun

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store