累并快乐着——一个开发者的2016年总结

开发 开发工具
在自己的专栏里,借用“三十而立”这个标准,我想用心回顾自己这一年的收获与感悟。

日月如梭,还有10天左右2017年就要和我们say hello了。子曰:“吾十有五,而志于学,三十而立,四十而不惑,五十而知天命,六十而耳顺,七十而从心所欲,不逾矩。”在孔夫子的眼里,“三十而立”是指他在这个时候懂得了礼,言行都很得当;而在现代社会,“三十而立”更多的是指一个人成家立业,有了稳定的工作,有了自己的家庭。这一年,活泼可爱的小公主降临到了我们这个家庭里、属于我们一家三口的新房已装修完毕待入住、家庭和事业的努力兼顾,这么想来,我貌似达到了“三十而立”的标准。

在自己的专栏里,借用“三十而立”这个标准,我想用心回顾自己这一年的收获与感悟。

[[179470]]

第一部分:工作

在这一年里,因为家里添丁,我难免会花一些时间在家庭上,因此放在工作上的时间没有2015年多,这也直接导致失去了争夺部门年度之星的机会。不过,凡事有得必有失,看到家里的小公主那么可爱,在工作上失去一点荣誉也是值得的。

花在工作上的时间少了,但并不表示我没有干多少活,也不表示工作的质量降低了。我大致统计了一下,我在2016年一共开发了大大小小将近20个版本,有全新开发的,也有在已有版本之上修改的。由于部门面临产品的转型,因此有很多人员被抽调去做一些新产品去了,维护之前产品的人手实际上是很紧张的。在这种情况下,我主动承担起了其他几位同事所负责的版本的开发,并且很快上手,保质保量地完成了任务。这块的总体表现,我对自己还是很满意的。

下面,重点想和大家共享下今年开发工作中的几个心得:

首先,不要太过于迷信前人的代码

很多时候,我们开发一个产品的时候,并不是从零开始地编写代码,而是在前人的代码的基础上进行修改,也就是有了一个参照。如果自己所参照的代码已经商用了,也就是已经获得了市场上的成功,那么,我们就更加有理由相信这些代码是完全正确的了。这也就会导致很多人(包括我)会将代码拿过来直接用,而不考虑代码的逻辑是否正确。

例如,我今年开发了一个版本,其中涉及到向另一个模块发消息的功能,而这个功能的代码是之前的版本就有了的,这次我是直接拿来就用。但是,当所有的代码都编写好并开始集成测试之后,我发现不管怎么设置参数,发消息的地方始终有问题。经过不断地调试,并认真阅读每一行代码,我才发现之前的代码所调用的发消息函数是错误的。可能是之前对这个功能没有进行严格的测试,所以没发现这个问题。修改代码之后,发消息的功能才正常。

因此,对于一个合格的程序员来说,他们不会盲目地对代码采取“拿来主义”的政策,不会太过于迷信前人的代码(即使这些代码是大牛写的),而是会仔细阅读代码,看代码在逻辑及功能上是否有问题,是否能够满足自己的需求。所谓的“尽信书不如无书”就是这个道理。

其次,不要盲目相信架构师(需求工程师)的需求

在很多软件公司,用户需求是由一批被称之为架构师或需求工程师的人写的,而程序员只需要实现这些功能即可。这样做的好处是开发人员只需要专心编码即可,免去了大量和客户打交道的时间,提高了开发效率;当然,这样做的坏处也是很明显的,那就是开发人员并不了解客户的真正需求,而一味地按照(架构师或需求工程师)对需求的了解来做,就可能和客户的需求脱节。

例如,今年上半年我新开发了一个版本,用于和客户现有的系统进行对接。在开发之前,需求工程师拿出了一份需求文档,让我按照上面的需求条目来开发,并且说客户要得很急。在评审需求的时候,我明显发现协议中有几个字段的值有问题,并当场提了出来。需求工程师说这是按照客户的要求写的需求,没有问题,让我完全按照需求文档来做。

开发得倒是很快,但和客户系统调试花了很多的时间,原因就是我认为有问题的字段真的是有问题,并非需求文档所描述的那样。最后,通过临时修改了几个版本,终于对接成功了。

对于一个有责任感的程序员来说,他们不会盲目地相信需求描述中的所有条目,而是会根据自己的经验、常识、原有程序功能等提出一些合理的实现方案,最终开发出满足客户需求的产品。

最后,凡事尽自己的最大努力,对于结果不要太过于苛求

在工作中,我们所能够把控的实际上是很小的部分,大部分的环节是我们无法把控的。具体而言,作为一位开发人员,我们只能够确保程序版本的质量,让代码中的bug尽量少,但是我们无法控制产品规划、需求、现场部署、版本升级等很多环节。也就是说,我们要尽最大的努力来开发产品,但是对于最终的结果就只能抱着“尽人事,听天命”的态度。

例如,今年我通宵支持了好几个局点的版本升级及系统割接。在升级或割接之前,我们都在测试环境上进行了严格的测试验证,并且为现场的操作人员提供了详尽的操作流程文档,只要他们按照文档的描述来操作,就不会出现问题。但是,“理想很丰满,现实很骨感”,现场人员总会在某些步骤出现操作上的错误,从而引发一连串的问题。这个时候,我们就要通过各种方式指导他们如何修复已经出现的问题。当现场操作出问题的时候,我总是在心里默默地想着:“要是我来操作,肯定不会出现问题。”但是,现实就是这样,我们也不能对他人要求太高,不要对结果太过于苛求。

BTW,虽然我在某一个月里连续通宵支持了好几次割接,也开发了好几个版本,但当月仍然没有被评为优秀员工,而做的事情比我少,没我做的事重要的人却被评为了优秀员工。在这种情况下,虽然有点蓝瘦,香菇,我也只能对自己说“呵呵”了,这也正说明了我们做事情要尽最大的努力,并做最坏的打算。当然,和大家一样,还是渴望以后自己做的事情能得到部门的认可,这是我们每个人追求的价值认可。

第二部分 有关学习

今年虽然在工作上和家庭中的事情都比较多,但我还是利用空余时间阅读了数十本书。现在我读书的方式有三种:第一种,读传统的纸质书;第二种,读在kindle上买的书;第三种,在罗辑思维的得到APP上付费阅读。大多数的书都是我在上下班的地铁上读完的。

读书的重要性我就不说了,读书的方法也因人而异,在这里,我向大家推荐5本个人觉得读后很有收获的书。

第一本:《智能时代》

这本书的作者是大名鼎鼎的吴军老师,这也是他继《数学之美》、《浪潮之巅》、《文明之光》、《大学之路》和《硅谷之谜》之后的第六本书,全书依然延续了他通俗流畅的写作风格,将大数据和智能革命的浪潮清晰地展现在了读者的面前,读后让人热血澎湃。

不管你学习的是什么专业,也不管你是否准备创业,我都推荐你仔细阅读一下这本书。

第二本:《浪潮之巅》(第三版)

这本书的作者仍然是吴军老师。自从《浪潮之巅》第一版于2011年出版之后,深受广大读者,尤其是IT从业者的喜爱,我也是通过此书了解到吴军老师的。鉴于IT行业的快速变化,吴军老师每隔两到三年就会对全书的内容进行更新,以适应IT行业的现状,今年出了第三版。

吴军老师就像是一个文字“魔术师”,总是能够把一个问题或者是一个事情用他独有的方式讲述清楚,让即使是非IT行业的读者也能够从阅读中收益。在叙事的过程中,吴军老师也会穿插一些小故事或者是个人的一些亲身经历,让读者阅读起来津津有味,丝毫不会有阅读很多IT类或历史类书籍所带来的厌倦感。

我写了一篇有关本书的书评《To be or not to be–读<浪潮之巅>第三版有感》,大家可以阅读参考。

第三本:《小岛经济学》

这本书是一本有关经济学的通俗读物,是罗辑思维推荐的,据说是下至九岁的儿童,上至七八十岁的老人都能够读懂。我读后,感觉写得确实通俗易懂,通过本书也能够看出现在全球出现各种各样的经济问题的原因。

如果大家不想阅读像《经济学原理》那样的大部头书籍,本书就是一个不错的替代品。

第四本:《人类简史》

在网上,有人称这本书为“奇书”,作者是牛津大学的历史学博士。在这本书中,作者按照人类发展的时间顺序,将整个人类的文明进程以风趣幽默的方式展现了出来,读后让人感慨万千。

人类并不是什么很神奇的物种,那么他们为什么会发展到现在而成为了地球的主宰呢?本书给出了答案。

第五本:《非洲三万里》

这本书是我在kindle上阅读的,它是毕淑敏老师根据她在非洲的游记而写成的,全书将非洲的很多具有代表性的景点、建筑、人物、历史事件以生动活泼的语言描述了出来。本书的主要篇幅虽然在描述作者的所见所闻,但我认为重点还是在展现作者的人文关怀及对人生的思考。

在当今这样一个浮躁的社会,多读读像《非洲三万里》这类好书,对于安抚内心、提升个人修养很有好处。

第三部分 有关家庭

如我前面所说的,今年我们家最大的变化就是女儿的降临。古语云:“十年修得同船渡,百年修得共枕眠”,那么,也不知道是哪辈子或哪几辈子修来的福分,让我成了女儿的父亲。

当然,升级之后,也意味着我这个做父亲的多了一份责任,多了一丝牵挂。当女儿哭闹或生病的时候,我也经常会坐立不安。以前,我会花相当多的时间在工作上,但现在,每到下班时间,我自然地就会想到该回家带娃了,虽然很多时候仍然要加班,仍然要在大部分时间里一周工作六天。

小宝贝马上就九个月了,来一张可爱的照片吧。

[[179471]]

另外,通过这四五年的奋斗,我们一家三口终于拥有了一套属于自己的房子,目前已装修好,明年即可搬入。虽然在二三线城市工作的工资远没有一线城市高,但还是有一个优势就是房价相对来说比较便宜。对于在小地方工作的人来说,这也算是“失之东隅,收之桑榆”吧。

写在最后

相比2015年,2016年的我还是之前的我,工作积极、主动、认真负责,且不乏灵活性和创造性;而不同的是,今年的我已步入“三十而立”的年龄,我已成为了一位可爱的小公主的父亲,站在了新的人生的起点上。

对于即将到来的2017年,我想奉上自己的三个愿望:第一,希望自己的家人身体健康、平平安安;第二,希望自己及家人工作顺利、如意吉祥;第三,希望每位正在奋斗中的人都能够实现自己的理想!

【本文是51CTO专栏作者周兆熊的原创文章,作者微信公众号:周氏逻辑(logiczhou)】

责任编辑:赵宁宁 来源: 51CTO
相关推荐

2012-09-06 09:53:02

2012-09-05 10:20:51

创业习惯管理

2015-12-10 09:57:22

网络虚拟化NFV

2011-02-22 10:36:40

云计算思科

2015-10-28 09:56:47

云计算Windows10Windows应用

2016-11-09 16:55:01

2016-01-21 10:58:41

Node.js开发者

2009-03-05 09:48:06

软件测试测试工程师工作场景

2015-06-05 09:15:37

移动开发者

2014-04-17 10:42:50

DevOps

2014-06-18 09:55:29

iOS开发者学习Android

2013-05-15 13:14:30

游戏开发

2013-07-29 14:15:07

职场痛并快乐团队协作

2016-02-17 09:58:29

云之家,云之家开发者大金蝶云之家

2016-02-16 14:10:59

云之家,云之家开发者大

2012-10-23 14:01:21

Yibo 客户端已经停

2015-08-06 17:15:28

2013-02-20 15:10:56

2010-08-24 08:58:42

开发者

2016-08-12 10:03:57

游戏行业移动开发移动游戏
点赞
收藏

51CTO技术栈公众号