IBM工程师:我的程序员学习心路历程做书中的习题;大一的时候可以按照一些想法来编码,然后开始多看书,享受程序带来的一些小快乐;炸了,然后我也感叹计算机多么神奇,然后开始更加认真的看书,了解计算机;大二开始接触数据结构和算法、计算机组织结构等,然后觉得计算机和程序的世界很神奇,也开始更加认真地学习、思考和编程;大二暑假,我总结了两年来的所学所想,然后觉得自己“豁然开朗”了,编码能力和思维感受都和以前不一样了;大三的时候,开始接触操作系统等课程,然后开始尝试把操作系统和之前的知识,比如编程语言、数据结构和算法等结合起来,开始对程序有一定的了解。更深层次;掌握了所学的东西,开始觉得自己可以用更高层次的眼光看计算机和程序,对编码更有信心;并且在项目培训的第三年,我也做了一个类似的MMORPG游戏,震惊了同学和老师,给研究生讲课,讲解了我在这个游戏中应用的技术;因为专业方向没有编译原理课,所以去听了编译原理课,感觉编译原理让我对程序有了更深的理解。对语言的新理解;大三暑假,我报考了浙江大学CAD&CG国家重点实验室。申请的主管是包虎军,要求在两周内实现泊松融合。在我意识到之后的一周内,我就拿到了实验室的offer。但最终一不小心错过了,但还是被推荐到了浙大;大四的时候,我成为了学院的C++助教,希望能帮助学生少走弯路,用最通俗易懂的方式来教。他们的C++程序,这次体验我很开心;大四空闲时间看了很多计算机书籍,更加爱上了阅读的乐趣;我还决定为我的毕业设计做一个操作系统的小内核,这样可以让我对操作系统有更好的了解;从大四的寒假到大四,我全身心投入到毕业设计中。答题老师好像没听懂,但是给的很好;学习之余,也做了很多杂七杂八的事情,包括AndroidAPP,操作系统等等,最后觉得自己可能对编译和语言更感兴趣,于是开始重新审视原理编译并思考编译;读的时候,IBM来学院进行实习招聘,笔试和面试都拿了第一名,编译组的经理说有可能认识Bjarne这样的大佬(我天真地相信了)放弃了美国思科的国际实习生,来到了IBM编译组实习;2013年5月开始实习和后续工作的时候,看了很多汇编资料。像海绵一样,每天吸取很多知识,弄明白很多以前不懂的东西,对编译器和C++有了更深的理解,而且因为组里C++标准委员会的成员都是中国人,他们在中国特别照顾我们,所以我也参与了最新C++标准提案的讨论。能够在一旁慢慢地发表意见和分享,收获颇丰。因为这次经历,我确定研究生毕业题目是和编译器相关的;2014年6月,毕业答辩时,审稿人被我吓了一跳,觉得不可思议。其实我当时也很激动,说因为很多大牌帮了我,他们都比我厉害,我才意识到只有大牌才能带来。2014年年底,我还去一家公司给C++11技术演讲,并开始分享我学到的东西。反馈很好,我也很高兴自己的东西可以造福别人。参与编写新版C++11深入理解一书,负责C++标准库章节的编写和整体编辑润色。我想我可以把我学到的东西分享给更多的人。编程感悟:努力就会有收获,但是一路走来,感觉自己也很幸运,得到了很多大牛的帮助。路要走。所以现在我每天学习到很晚;而且建议前期可以看书,以自学为主(最好有大牛带),后期需要认识各种大牛,给自己带来各种装,各种飞,眼界可以有非常大的提升,可以抵消我N年自学的弯路,书也忘不掉,因为很多书的作者都是神牛。
