导语:今年三月份,在CSDN博客和新浪微博上有一篇《从1.5K到18K,一个程序员的5年成长之路》被众人分享和传阅,这篇博文首先介绍了作者自学之初薄弱的基础,然后通过流水账形式分享了那个从当初“一窍不通”各种倒数且对前途迷茫的“我”,转变成如今好学上进月薪达18K的升华过程。虽然和众多大牛相比,他的事业并非最成功,但他的事迹却是最典型、经历最励志,通过这篇贯穿他整个学习过程以及心态、技术和认识上的分享,希望能给那些待毕业或已毕业但仍迷茫的朋友予以勉励、新的思考和指明前行的方向。
雷果国认为,乐于分享是促进程序员进步非常重要的一个关键点
雷果国(goosman.lei),2009年毕业于兰州商学院计算机科学专业,目前在百度任职PHP高级研发工程师。翻译有《extending and embedding php》一书,以及JQuery-UI-1.7.2官方文档、Pcntl、Pcre、Memcache和Memcached等PHP扩展的官方文档。录有《let’s python》视频教程。热衷分享,希望可以通过自己的努力,让国内的程序员入门及提升成本变低。
写在采访之前
在开始专访前,先和大家回顾下雷果国的《从1.5k到18k, 一个程序员的5年成长之路》博文内容(原文:点此进入):
背景:
- 2008年3月开始学习编程, 目前2013年3月。
- 2009年6月计算机专业本科毕业。
- 大学期间, 基本稳拿班级倒数第一, 高考英语49分, 大学英语除了补考没及格过。
总结:
- 5年间60%以上的时间, 每天凌晨2-4点睡觉。
- 为学习编程花费的总时间超过6000小时。
- 手写了超过50万行代码。
- 记录了超过100万字学习笔记。
- 录制了两份视频教程。
- 翻译了小型技术文档5份以上, 5个php扩展的官方文档, jqueryui官方文档一份, 书籍《PHP扩展和嵌入式》。
- 获得两次优秀员工。
雷果国先从2008年开始,讲述了自己在学校的生活状态和当时学习观念,他指出不要怕英文、出错信息和文档,它们都是学习英文的机会,同时也不要怕出错, 出错就是学习的机会。在随后做项目和找工作的小插曲中,雷果国认识到刚开始不要期望什么,放低身段,去做自己的积累就好。
毕业之后,雷果国的面试并非一帆风顺,在他人生的第一家公司中雷果国的工资也只有1千五,他和在学校学习时一样,依旧吃着泡面每天加班到9点,回家后继续学习到2点。而在这个屋里,冬天虽然有小电暖但屋里水龙头却已结冰,不过这并不妨碍他的学习和生活,因为他始终坚信:只要依然坚持学习,未来有一天他将不再这样。
2010年3月雷果国到了北京工作,他这一年始终为公司付出,从JavaScript进入,到后来页面制作、PHP和服务器等等,他没有觉得有多辛苦,相反认为这是种锻炼,是他最大的收获。在2011年到现在的时间里,他学会了团队协作、同事关系处理等等,并且仍然在继续学习着,继续每天学到凌晨2-3点才睡觉,完成了Unix环境高级编程、Unix网络编程和PHP内核等重要积累。
通过这五年的努力,雷果国如今已进入自己心仪的公司。此外还值得一提的是他此前网名是selfimpr,含义是自强不息,是从self-improvement简写而来,而如今他的新网名是goosman,是从Swan Goose演化而来,他期待自己五年的积累,能够在新环境中一展自己的鸿鹄之志。
以下为本次专访内容:
从开始到现在:我的学习历程
CSDN:为什么会写《从1.5k到18k,一个程序员的5年成长之路》博文分享这段成长经历?另外博文开头介绍了自己成绩倒数和英语不及格的背景,想给读者传递什么?
雷果国:我其实一直想写这样一篇文章,因为我看到身边多数人都不是很努力,我觉得如果写这样一篇文章做分享,哪怕能有一个人能够有跟我一样的变化,那也是非常值得的。
正好最近得到了百度的工作机会,我觉得这算是自己这几年一个比较大的收获,所以借此机会写了这篇文章。
至于我介绍的成绩倒数,英语不及格,有两方面的原因:
- 我希望那些看到这篇文章并且想要改变的人,不要因为自己没有基础而打退堂鼓。
- 如果我的背景不是这么差,现在取得的成绩就不值一提了。
CSDN:当初为什么会选择计算机专业?在大学起初几年,你都在干什么?为什么突然意识到要努力学习?有什么事情影响或起到决定作用吗?
雷果国:我当时第一志愿是物理学,对物理课本上关于爱因斯坦相对论的介绍很感兴趣,可是自己学习成绩不行,不能如愿。当时自己很爱玩游戏,调配志愿就写了计算机,结果就被这个专业录取了。
大学前2.5年就是整天玩游戏,通宵玩,玩到差不多被劝退的程度。
能够有所转变努力学习,是我老婆的功劳,有一次和老婆约会,聊我们的未来,我发现自己能给她的未来就是回家一起种地。所以我就开始学习,刚开始的半年也没有方向,去学习老师以前讲过的课本知识,没有效果,后来是当时尚学堂的免费视频教程,让我找到了方向,大概一周时间,我就进入了状态。
CSDN:开始学习后,对自己有信心吗?身边的人又是如何看你的?你又是如何调整心态,无视这一切?这中间有没有发生什么特别的故事?
雷果国:刚开始学习的时候,信心是十足的,问题出现在大概半年后,那些以前整天一起玩,一起疯的同学,就换了一种眼光看你,貌似在说“就你这样的,还学编程”。这段时间是很纠结的。
当时,我只是花更多的时间去学习,可能有一种要证明自己的心态。直到第二年学校Java课我基本没上,但考试得了90多分的时候,同学们的看法才逐渐转变。
CSDN:确定目标后,你是怎么开始学习的?比如确定学什么?从哪方面入手?都用哪些书或教程?按照什么步骤进行?等等……
雷果国:如前面所说,我前半年学课本知识没有效果。这并不是说课本知识没用,而是作为我当时的状态,我没有对整体知识脉络的了解,无从找到突破口,入不了门,建立不了兴趣。
后来是尚学堂的视频教程,给出了详细的学习路线,从Java的基本语法、到I/O、GUI、多线程、网络编程、网页编程和框架,到临毕业自己又看书学习了基本的数据结构与算法。至此,建立了在程序设计方面一个基本的知识体系,为以后独立自学打下了基础。
CSDN:在学习过程中,你还翻译了不少技术文档,为什么去翻译官方文档?这对你有什么作用?另外,大约是什么时候开始找到感觉和自信的?
雷果国:我自己是靠别人的免费分享找到方向的,包括刚开始的时候,在CSDN论坛里提各种问题,得到很多无私的帮助,所以我愿意把自己知道的东西分享出去。
翻译官方文档,其实只是我在学习过程中的副产品,并且这个副产品对我的学习本身也有促进作用(翻译时看不懂英文的,就得去看源代码帮助理解),所以只要时间不紧张,我就愿意做这种事情。
感觉是在接触到视频教程大概一周找到的,自信是在学完数据结构和算法后才找到。
CSDN:你录制了多套视频教程,有人觉得这是比较浪费时间的事情,为什么要录制视频?它有没有影响到你学习进度,同时对你有没有起到什么帮助?另外,你称乐于分享是促进程序员进步非常重要的一个关键点,为什么会这么认为?
雷果国:最初录制视频教程,是因为我当时要学python,但没找到python的视频教程,只能看书,而在之前我一直是看视频教程学习,所以只看书没视频很不习惯,这样学了3个月后,我突发奇想觉得自己也可以尝试录制一份教程。
想了后我就录了,我是边学边录制,大概是自己学第10章的时候,开始录制第一章内容,这份视频教程不仅没有浪费时间,反而对我的学习有促进作用,因为你一旦要把自己学到的东西,讲给别人的时候,你会发现很多自己学的时候根本没有发现的问题就出现了,所以这份视频的录制,让我对python的学习更加深入和全面。
我们知道完成功能的软件和可交付的软件是有差距的,分享也是这个道理,你学习完一个知识,只是完成了功能,当你要把这些知识打包分享出去的时候,就是交付。从完成功能,到可交付,你会发现有很多不足需要改进。此外,如果这个分享是被分享者和分享者可以互动的,那就更有意思了,被分享者就是分享者的QA,分享过程中会暴露更多的问题。因此,我说“乐于分享是促进程序员进步非常重要的一个关键点”。
CSDN:从你霸王面试开始,到进入心仪公司,能不能从你求职经历中分享一些面试经验?另外在面试中,你都有过什么挫折?如何面对的?
雷果国:关于面试,我主要是放低自己的心态,这有好处也有坏处,坏处是薪资通常比实际能力要低一些,好处是放低心态,可以让自己在技术这条路上走的更远。
面试过程中的挫折就是第一次到北京的时候,去用友面试一败涂地,会的不会的都说不出来。所幸还有一家创业游戏公司收了我,我就沉下心来继续修炼,后来基本就没有在面试上被PK的太惨。