工作快一个月了,有必要每天记录一下自己的工作内容,状态,反思,展望等。
今天是一个月来感觉最累的一天,原因主要是安排给我的任务从51前两天到56都未做好。一方面自己确实对Go的情况不太熟悉,另一方面自己确实也没太上心这件事,还有就是缺乏一次完整流程的指导,自己摸着石头过河的成本过于高昂,需要不断地试错。
上午对进度,比较尴尬,其实我一个都没做出来,估计xf也看出来问题了 ,于是单独拉我说了一下。我也请教了她几个问题。
下午,由于同事老哥的一波骚操作,for循环了5000个协程,服务器宕机。于是我因此又阻塞在了服务器上。我的工作确实是强依赖于服务器的。于是我也在考虑,是否可以将环境打包起来,做成镜像,让我们的go程序在容器上跑。这样的话不至于调试代码都有宕机的风险。容器挂了可以自己重启,服务器挂了只能手动重装系统了。关键是系统是有状态的,重装系统得到的是无状态系统,需要配置go,java等一系列环境。比较麻烦。当然可以写个脚本一键配置环境,没问题,但没有从根本上解决问题,问题不是服务器挂了如何自动配置,而是调试代码的时候如何不让服务器挂?
今日读书:《赤裸裸的统计学》,第一章。这本书在大学的时候曾看过一半,爱不释手,作者曾是个学渣,后来爱上统计学,也为大家带来了不一样的统计学视野。第一章主要讲解了几个结论:
1、用单一指标描述事件是简洁的,乐于被人们接受的。
2、用单一指标描述事件也是不可靠的,缺乏多样性的。
例如GPA绩点,能够反映成绩水平高低,却不能反映选修科目的难度。
一方面,对于用人单位,高校招生,GPA单一指标是很乐于被招聘者所接受的。
但另一方面,隐藏在GPA背后的诸多数据维度,却不是显而易见的。从这个方面来说,人们也容易被单一的指标误导。
用单一指标描述的过程我理解也是对数据的一种降维表示。
今日收获比较多的是,go写单元测试,然后看别人4年前的代码,改单元测试的方法。
写单元测试的方法主要是用smartstreet库,还有convey库。测试一个函数的时候,先convey传送一下,再做一个Func假的函数与等待调用的函数匹配,defer函数,最后用So验证一下,期待值和实际值的差距ShouldResemble。这样就是一次验证了。
还有一个收获就是,不懂马上就问,别拖到最后。不要脸地问。没什么脸皮不脸皮的。学习才是硬道理。
明日计划,继续CleanCode,然后可能还要把另外一个同事的活分摊过来做。他要去优化代码了。