2023年06月个人工作生活总结

本文为 2023 年 6 月工作生活总结。

研发编码

Shell

一条命令解压多个.zip文件。

find . -name '*.zip' -exec unzip {} \;

ls *.zip | xargs -n1 unzip -o  # 用ls可指定某些条件

一条命令将子目录压缩:

ls -F | grep '/$' | awk -F '/'  '{print $1".tar.gz"}''{print $1"/"}' | xargs -n2 tar czf

Qt

在编译中,发现不同版本对语法错误的包容度不同。某工程一函数,主要功能是保存h264文件,但只有测试用,且没有被调用到。该函数的返回值为QByteArray,但内部出错处理条件语句中,却返回false。但在虚拟机qtcreator中编译却没有出错。而在某arm构架机子上编译,报错了。两者的表现,十分奇怪。由于只是负责编译,修改的地方只保存到本地。

在Qt的pro文件,可设置VERSION显示版本号,为复用此值,可以定义宏,以便在代码中使用:

xxx.pro文件
VERSION = 1.0
DEFINES += APP_VERSION=\\\"$$VERSION\\\"

初始代代码:
	QString tittle = "Qt Capture Server SC510 N1 ";
    tittle += APP_VERSION;
    this->setWindowTitle(tittle);

Go

golang中json格式需要注意有无空格,示例:

type DateTimeKeyValue_t struct {
	Year    int    `json: "Year"`
	Name    string `json:"name"`
}

注意是,第一个字段Year右边的json字符串内有空格,会有如下提示:

struct field tag `json: "Year"` not compatible with reflect.StructTag.Get: bad syntax for struct tag value

删除空格即可解决。

golang 读取某合计数量,对应变量设置为var Num sql.NullInt64,但如果数量非常大,获取的结果用科学计数,则变成float64类型,转换出错,所以需要使用var Num sql.NullFloat64。出错日志:

scan error:  sql: Scan error on column index 2, name "NUM": converting driver.Value type float64 ("2.55377e+06") to a int64: invalid syntax

思考

涉及前端、后端多系统接口的开发。

先制定接口的初版,前期没有数据,可做假数据,目的是测试接口的通讯和展示,走完整个通路。

工作记录

流水账

这个月除了写代码外,还参加了一些会议,写了一些方案。说实话,我不太喜欢这些事,一方面,不是我擅长,另一方面,很多相关业务不熟悉,写出的方案不够专业,回答业主问题不够清晰。
这几个月来,事情特别杂。除上面提到的事之外,还有完成突击的常规事务;协助解决非我负责的若干线上问题;解决ARM64系统上的一段错误问题(相同代码,在x64上一切正常);解决移植到ARM平台某QT编译问题;着手进行龙芯系统的移植。

另一个重头戏是地图的开发,从接口的定义,到前端页面细节的测试,全程参与。因为其他人经验少,主动性不够,似乎项目与他们无关,而一旦项目出问题,领导又是唯我是问,鉴于身份问题,又不能多说,所以凡事亲力亲为了。比如某页面有基于曲线,有数值,有百分比,实现后,看效果十分抽象,没有主次之分,也没有明显区别。比如某些文字,一大段一大段,没考虑用户的感受。比如一些接口,没有测试就部署了,部署也没有再次测试。更麻烦的是,一件事,交待了2次,几天来一直没收到反馈,问之,未做,又重新交待一次。

与能力强,态度好的人一起共事,的确很好,我在新人中暂时未发现好苗子。我愿意教,但也需对方愿意学。人与人毕竟不同。我晚上洗完碗后,还要继续熬夜写代码,但有很多人能准时下班,周末去远足。

从某些方面收到风,同一办公室的另一公司的外包人员,已经有了公积金和餐补。那个有两个软考高级证书,一份工资养全家大小,还要谦卑教别人的人,也只是在深夜在心里指责不公,仅此而已。

加了一次班

一般地,因自己的事加班,我是不认为加班的,因为基本上每天都拿电脑回去。

某周六傍晚煮饭,同事打电话,有个线上问题,大概是nginx出了问题,数据上传不了。因为我负责传输的客户端,但对此也无能为力,因为瓶颈在接收方。晚上9点多,领导打电话来叫去驻点帮忙解决,无奈去了。实际上到那边我也干不了什么事,运维同事找了日志给我,对着代码看,结论是当前机制无法在客户端解决。到1点半困得不行就回去了。运维的同事继续搞,因为解决方法就是手工限流,让数据慢慢上传。

感悟

似乎事务一旦落到了身上,就不断积压。

入职那年,因为代码需要测试环境,机缘之下,找到一台服务器部署,顺便把代码涉及的其它服务也部署了,接着就是各种数据库(截至目前,就数据库而言,已经部署了一个oracle、若干mysql(相同版本、不同版本)、TiDB、Redis)。后来因组织调整,人变少了,于是接手了若干个项目工程,目前一直在维护。后又加入新项目组,开发了2个子系统。后来又涉及了地图的开发。后来又搞国产化替换,本来我是做开发的,但似乎变成我负责帮别人安装各种库和软件,也负责各种适配的代码工程的配置和试点测试的事。

技术桎梏

不知何故,今年总感觉睡眠不足,乏力,特别是上个月感冒一次后更甚。加上年龄大了,思路不够灵活。对于一些没有积累的技术,除非必要,一般不会自动去碰。像地图项目,有一个Java子系统,是用开源成熟的框架,看上去不错,但最近的业务技术问题,解决起来很麻烦,也耗时。一方面,开发人员不熟悉成熟的框架代码,另一方面,抓问题的方法不对。因为一直没有从事Java开发,对其编码风格有一定看法,另外部门有一半开发人员是Java的,所以我就不再凑热闹。这次项目的事,也加深了一些成见。

生活记录

大锤挑食严重,像青菜,只吃生菜和菜心,其它不吃,肉也少吃,虾不吃,这方面与大妞完全相反。逼他吃,就哭。大锤有什么不好的表现,少不了争吵,有些话我能忍,当听不到。但多了之后,就受不了了。动则以自己臆想的后果来确定未来的生活,比如周六,大锤咳嗽几声,就不断强调周一要请假。大锤不吃饭就强调以后都不要吃。早上大锤起床迟一点,就强调以后都不要上学。某天我也不自主说出那些话,不禁感叹环境的影响力。

思想方面

这个月抽了大半天时间,在B站上看了几集90年代TVB的台庆,比较庆幸,出生并成长在那个年代。但小时候和学生时候,并没有追星。很多年后,我才知道当年听的歌的歌手是谁。现在去看,更多的是回忆。回忆是个奇怪的东西,总去想当时的美好时刻,想着回到过去以另一种方式重来一遍。但是,真的回到过去,又会惘然若失,惆怅不已,因为当时已经不是当时了。

最近说话越来越少了,工作的事,没有交集的人,没必要说,对非公司的人,更没必要说。在公司里,也没有什么个人生活分享的。回到家里,除了小孩的事,其它的不想说,地脏了就扫,地湿了就擦。

业余阅读

计划用一段较长的时间,集中了解先秦时代的文学。已经听了部分古汉语视频,看了部分《战国策》,计划看《左传》。学典籍并不等于尊古薄今,不能认为古代一切都好——当然也不能认为当代一切都好。我觉得,看《史记》,并不影响我写代码,反之亦然。

业余研究

猜你喜欢

转载自blog.csdn.net/subfate/article/details/131484761