“想做程序员”,这是我打开尘封两年多的博客看到about页面上写的一句话。

当初开始写博客是2017年,写代码还只是兴趣,在2018年5月跳出体制内,跑到深圳成为一个正式的程序员,如今已经三年多了。距离研究生毕业正式开始工作已经5年有余。

趁此机会回顾一下初心。

起始

在接触到linux之前,我基本是计算机门外汉。记得大一的时候有个计算机基础课,一个简单的access(office套件的一部分)实践都很难理解,需要同学的帮助才能完成。而在大二可以自己带电脑后,接触到了linux,新世界的大门打开了。原来还有linux这种操作系统,原来还有Solaris,还有FreeBSD,开始使劲鼓捣重装系统,试用各种发行版、各种linux桌面环境。我的github的用户名是linuxhenhao,“linux很好”的意思,虽然很二,却也不必改掉。要是没有接触到linux,现在可能完全是另一种人生吧。

后面慢慢就脱离了换发行版、换桌面环境、编译内核,甚至是试图弄个LFS(linux from scratch)这种尝试。乏了,折腾来折腾去也就那样,觉得得搞点更有意思的东西。开始学习操作系统、数据结构与算法、计算机网络、网络安全等课程,这里也要感谢一下五道口职业技术学院丰富的课程以及开放的选课制度,虽然不是计算机学院的同学,却有很多相关的专业课可以选择。中间也折腾过PHP的wordpress定制化网站、Python写个爬虫爬一下大学期间所有课件这种小事。一直到研究生期间进入国企研究所,在开始工作之前,编程也好、对计算机世界的了解也罢,纯粹基于兴趣,完全没有想过以此为职业。但确实也算是初窥计算机世界的美,为其中各种巧妙设计所折服。

无忧无虑的学生生涯没有什么意外的结束了,就这样开始了正式的工作,虽然身份由学生转变成了员工,但是由于仍然在导师的组里干活,最开始还没反应过来。这就么继续做做实验、下班锻炼锻炼身体,过去了半年。2017年初,有感于实验室设备的控制软件不够好用,想要改进一下。和导师沟通之后,在导师的支持下申请了一个所级项目,开始了我的程序员生涯——第一个正儿八经的软件项目。这个项目的代码现在还跑在设备上,作为第一个投入生产使用的项目,现在回头来看,当然有可改进之处,却也无伤大雅,可以骄傲一下:)。

离开体制

秉着要么不做要么就做专业的,想去有研发团队的公司去看看。在设备控制的项目做完之后,对于以后的道路有了更明确的想法。国企虽然安稳,我的心却不甘于安稳,希望人生有更多的可能。通过做这个软件项目,我发现对我来说相比于做实验发文章而言,写代码是更让我沉浸其中找到乐趣的事情。于是在翻来覆去甚至一度失眠的多天思考之后,终于做出决定,去有研发团队的公司,成为一名程序员,去看看业界真正的研发团队是怎么工作的。这并不是一个随意的决定,而是一个改变人生的方向的重大转折点。要感谢导师和组里的同事们,也要感谢父母,对我的支持,没有人在这件事情上劝退,相反还提供了各种支持。

之后就来到了深圳,开始了“体制外”的生涯,到现在已经是第四个年头。私企的工作方式和体验和国企自然是很不一样,而不同的企业之前的工作体验也有很大的差别。有一个听过很多遍的道理,那就是喜欢的事情成为工作,就喜欢不起来了。实际体验下来,算是说对一半,工作中很多事情本身是事务性的、不一定有创造性或者好玩有挑战的事情,这些事情也需要做,有创造性的需要思考和设计的事情才能让人有热情和成就感,而这种事可遇而不可求。做得久了确实让人麻木。

初心尚在

这个时候就要回头审视自己的初心,我的初心可以概括为:想要有更丰富的人生体验,喜欢写有意思的代码,喜欢计算机体系下面的种种精妙的设计。希望自己能勿忘初心,起码到今天,初心尚在。