img

引言

“在计算机的世界里,只要会敲代码,就可以拥有全世界。”

转眼间毕业已经快 2 年了,随着工作时间的增长,越发觉得记录是一件很重要的事,所以在 Github 上创建了这个静态网站。

关于我,自己是个计算机科学爱好者,喜欢研究操作系统、编译原理及网络(还是初学者hh),上学时所学方向为信息安全、无线传感及区块链,目前在字节跳动工作。

学业

本科和研究生都毕业于中国矿业大学(CUMT),之前上大学的时候,其实自己对计算机兴趣不大,更多是为了完成学业,那四年有些浑浑噩噩,每天和室友们一起打游戏,但也很开心。 大四的时候自己也不知道将来要做什么,报考了本校的研究生,认真学了几个月结果竟然考上了。

上大学时,除了学校学到的计算机知识,自己相较于班上的其他同学会的不是很多。记得当时实现过各种各样的密码学算法 DES、AES、MD5、SHA-1 等等,做过一些关于缓冲区溢出的实验,还写过 JSP,主要是用 C++ 和 Java。

但真的很怀念上大学的时光,当时经常在网吧通宵,早上六七点回去,一路上微微凉的空气,阳光穿过树枝洒在路边,去食堂点两包泡面,最后回到宿舍睡觉。

上了研究生以后逐渐开始对计算机感兴趣,一遍从事着实验室的科研工作、项目开发,一遍也自学着各种各样的计算机知识。

科研经历

研究生前两年,主要研究对 RFIDLoRa 这两种无线通信技术的波形进行分析,以对人体动作进行识别或对目标进行定位等,后来发表了一篇关于 RFID 的 paper,也算是对这两年有个交代吧,哈哈。前两天翻到了当时为做 RFID 实验用 WinForms 写的数据采集程序

有次夏天清晨在家门口的路旁做 LoRa 实验,邻居家的萨摩耶一直蹲在旁边看着,邻居说,你还搁这人五人六地看起来了。

研究生第三年,由于不喜欢之前的研究方向,当时迷上了区块链以及涉及的密码学、分布式系统相关知识,就开始看各种跟区块链有关的书籍和论文,最终写了一篇跟区块链有关的毕业论文,还是挺佩服自己的,能在最后一年的时间里,从头开始研究一个新方向并毕业,算是任性了一回。

自学经历

很喜欢敲代码时的感觉,很安静,时间会过的很快。

最开始是给老板做项目,老板会接一些矿井提升机数据采集和展示方面的项目,主要用 WinForms 或 WPF 做 Windows 桌面端图形应用开发,也了解了前端 React 的相关知识,当时使用 OPC UA 技术成功解决了矿上 ABB PLC 的数据采集问题,之后还有一家专门做上位机程序的公司找我们咨询,觉得我们还是很厉害的,哈哈。

后来开始学 Java(SSM)、Tomcat、Docker、Hadoop、算法、NodeJS、PHP、MySQL、Redis 等等一大堆,知识的广度上提高了很多,但了解得都相对浅些。

当时主要是学习 Web 方面的开发,用 Java、NodeJS 开发服务端 API,用 React 或纯 JS 制作网页,也喜欢研究一些好看的前端特效。

研究生阶段最幸福的时间是毕业前的几个月,那段时间已经没有学业上的压力了,写论文的时候对计算机图形学很感兴趣,当时刚好有时间,就从头学习了一遍,也是在那时接触的 Rust。

工作

工作以后自己的学习重心转向了计算机基础理论。

由于上学时不努力的缘故,自己的基础知识并不牢靠,此时开始阅读一些经典书籍 SICP、CSAPP、APUE 等等,也尝试研究 Linux 源码,编译原理,希望自己能更深入计算机的底层世界。

也更加注重代码的规范性与可维护性,比如注释与 Git commit、代码格式、多人协作时的版本维护、撰写 README 文档等等。

价值观

希望自己所习得的知识能够在生活中得以实践,也希望自己做的东西能帮助到周围的人,是有用的,这是件很幸福的事,Make the world a little better!

在网络上发表言论要客观,有理有据,以真实数据说话,不携带主观偏见。

不要对编程语言或操作系统等抱有偏执。