您的位置 首页 编程

我在南大的七年

父亲是个对新事物有强烈兴趣的人,村里第一台电视机是他自己组装的,当时全村人都跑过去看,电视机只能收到一个台,CCTV。座机电话是第一个装的。大哥大刚出现的时候,他也是第一个买来用的,那个时候的移动

  父亲是个对新事物有激烈爱好的人,村里第一台电视机是他自己拼装的,其时全村人都跑曩昔看,电视机只能收到一个台,CCTV。座机电话是第一个装的。大哥大刚呈现的时分,他也是第一个买来用的,那个时分的移动电话真是贵得离谱。

  父亲告知我的第二件最重要的作业是:遇到任何问题,找书去就行。他在自己的专业中彻底是自学的。在不属于自己的专业中(后来买了电脑之后需求学习怎样架起公司网站,怎样网上营销,怎样进行电子财务管理,怎样运用各种作图软件制图等等)也全都是靠买书自学。

  为什么说到这两件作业,因为这是对我终身影响最严重的两个习气。第一个习气给了我学习新东西的激烈动机,有了热忱和爱好,做作业就不觉得累,就自得其乐。第二个习气则给了我学习任何新东西的办法——不会么?查书去。(当然,学习一门专业并不彻底经过看书就行,但这毫无疑问是至关重要的一个途径。)

  高三的时分,父亲买了电脑,我立时对这个奇特的事物产生了激烈的爱好,每期的《电脑爱好者》和《电脑报》都会买来细细看,有时看到各种小东西、技巧还会摘录下来,回去在自己家里的机器上捣鼓。那个时分我并不知道这样单纯的爱好会把我引向一条专业的程序员路途。

  高三时刻变得越来越紧,分配给爱好的时刻越来越少,但爱好的火花一向都没有平息。

  迈进南大校门的第一天,我知道,我自在了。

  这个自在并不是说我能够做任何作业了,而是我得到了一个重要的决议计划的自在权,即关于怎样运用我的时刻。

  高考的时分我报了核算机系,但分数差了几分,坐失良机,被调到第二自愿专业——信息与核算科学。其时认为这个专业跟核算机相关的,成果发现是数学系,后来听不少同学说到都上了相同的当。

  这儿呈现了一个歪打正着的作业:我原意并不是上数学系,假如其时知道这个专业是数学系,我或许就不会填报了。但正是因为这个过错,我在数学系好歹也受了一些数学底子功的练习(虽然这个练习的根底是大一上的不多的几节数学剖析课,以及每次临考前宿舍哥们例行的“包夜”看书),回过头来看这个底子功在后来仍是帮了不少的忙,甚至有一阵子我对数学自身到了很感爱好的程度。不得不说,这段学习的阅历是很练习笼统和逻辑思想的。另一方面,困难如数学都学了,对其他学科就不觉得难,不会望而生畏。

  这是我生长过程中的走运之一。后边还会说到,还有好几次更大的走运。

  大一上学期很快曩昔,应该是在大一下学期的时分,校园要开一门C++课程。我运用假日先把讲义底子啃掉了,其时动机也很简略,先啃掉,就不必上课了嘛。

  另一件作业是我常常喜爱去逛书店,看到侯捷的《浅显易懂MFC》上面许多人说这本书好,我其时也对C++有一些根底知道和好感,所以就买下来啃了。一方面侯捷先生写的书确实图文并茂,浅显易懂,有意思,另一方面了解相同杂乱的东西是个智力应战。所以看着看着却是觉得兴致盎然。却不知就这么和C++结下了不解之缘。

  这是另一个歪打正着:为什么说是“歪打”呢?因为MFC的规划也并不能说便是C++的Best Practice,另一方面若是以用为本的话也未必就要把MFC的原理摸个透。所以搞欠好现在看来我就不会细看这本书。为什么说是“正着”呢?因为了解一个隐晦的东西自身需求长时刻投入注意力,无形中练了了解能力和思想膂力(专心),另一方面虽然MFC不是最佳规划,但了解里边的代码却加强了对C++自身的知道,这是底子功;也加强了对C++的爱好,这是动力,后来这个动力唆使了我去看了许多的系统底层常识,从操作系统代码一向看到硬件系统结构。

  大二产生了几件重要的作业:一是我在程序员上宣布了第一篇技能文章,是剖析Boost源码的。我现已不记住什么时分、经过什么途径知道Boost这个库的了,总归是知道了,然后也是因为遭到侯捷先生源码剖析的影响,也去看源代码,发现很难,越是难就越是觉得风趣,盯梢代码光临晨四点竟然越看越精力了,后来火速写了一篇源码剖析。发给《程序员》杂志的技能主编孟岩先生,孟岩先生给了很大的鼓舞,所以我很来劲。后来趁热打铁剖析了N个库,写了一系列的Boost源码剖析的文章,在网上到处能够搜到这个系列。

  这是第二个歪打正着,按理来说,研讨言语技巧并不是程序员最佳的时刻投入办法。所以现在我或许不会去做这件作业,会认为有更好的时刻投入途径。但其时就一头扎了进去。为什么说也是正着呢?因为虽然这或许不是最佳的投入时刻的办法,但总归比什么都不专心要强得多,至少这么一深化,对言语的缺点和圈套有了更深化的知道、也练习了对代码的亲切感、盯梢调试的耐性(是的,耐性,而不是技巧)。

  所今后来我在博客上总结自己学习编程中走过的弯路,孟岩先生说到,是不是弯路,不是那么简略界定的。

  确实,或许真的有更好的路,但事前真的很难判别哪条路是最优的,咱们能做到的,是把一条路走透了、走深了,只需不是一条太不靠谱的路,深化的过程中总会有许多的收成。只需不是太固执,长于检讨,总有一天也会逐步知道到越来越靠谱的路。

  除了宣布第一篇技能文章之外,大二我还用业余时刻做了一些技能翻译,寒假里我坐在家里每天晚上翻译半章《Effective C++》,当然,后来我把译稿提交给出版社的修改时被奉告文笔还显僵硬。

  同一时刻,我持续啃N多C++以及底层常识的书,一段时刻我的书架上满是这类书,底子不像数学系的学生。非典那阵子,把饭钱都拿来买了书,为什么买得这么疯,也是因为受父亲的一个影响,他告知我买书不必疼爱,由所以久远出资,收益远远大于这点金钱投入。那段时刻我边看边写一些代码玩,有仿照Windows中心编程的小程序,也有测验并失利的小游戏,也有拿来对宿舍玩的游戏文件剖析的东西,还有为上机考试写的库,总归玩得不亦乐乎;不像许多闻名的程序员在校园里边就写了被广为运用的东西,那个时分我彻底没有这个知道,也不知道什么是开源,自己自娱自乐罢了,所以没有系统练习编码量和编码素质,比较盲目。

  大二下半年还产生了一件重要的作业,我在CSDN上开了一个博客,开端写学习C++和编程的过程中的一些总结。这个博客我一向写到今日,随同了我整个7年的学习和生长,回过头去看就像韶光机相同,能够看到一路过来我都重视了些什么东西,是怎样想的,以及对一些作业的观点是怎样改动的。这些东西假如不记载下来,就会逐步遗忘,也就无法参照曩昔的自己,对未来供给更好的学习了。所以我一向把记载作为一个很重要的东西。别的我也经过这个博客知道了许多朋友,得到了许多的协助。

  后来,校园供给了转系到软件学院的时机,我当即报名了。后来的两年在软件学院度过。但其实横竖我也是自己安排时刻,所以无甚差异。

  大三大四产生了几件重要的作业:一是荣耀先生邀我合译《Imperfect C++》,我很愿意的接了下来,可没想到这本书比我幻想得要密度大得多,六百页,并且排版也很密,我给自己安排了每天6、7页纸的量,大约花了半年多译完。中心有一段时刻阻滞,荣耀先生给我打气,告知我一个重要的办法:假如觉得做不下去了,就硬着头皮坚持做,然后就类似于麻痹了,习气了,那种望而生畏的感觉会逐步自动退去。惊人的简略,但现实便是如此,硬着头皮,过了那个心情上最困难的时分,也就习气了。这本书译完之后,仍是有不少的收成,但我总觉得对性情上的锻炼才是最有价值的收成。

  二是我开端看英文版的书。之前,因为高中不靠谱的英语教育的原因,我恨死了英语,大二的校内四级课程还挂了科,直到大四才补考。但对技能自身的酷爱压过了对英语的恶感,我仍是硬把一整本影印版啃下来了,并且津津乐道,这本书便是Jeffrey Richter的《Applied .NET Framework Programming》。这个作业的重要性在于,后来我就不再恶感和惊骇英语了,这是其一,其二是我开端知道到英文国际的技能材料有多么丰厚,所以虽然自身看上去不是一个太起眼的作业,但却是我获取信息办法的一个Tipping Point,一旦熟练把握了言语这个渠道,背面便是一扇大门,通向一个海量的信息源,后来我的信息获取绝大多数便来自于英文,其间尤数wikipedia和英文版的书为多。别的还有一个收益后边会说到。

  大四快结业的时分又产生了一件作业,微软的Eric Jiang经过我的博客找到我,引荐我去微软面试,我马马虎虎就把粗糙的简历给发曩昔了,差点因为简历太粗糙被HR直接过滤掉。长途电话面了两轮,长途Coding一轮,然后记住便是飞到北京面试,住在北航招待所。北京的面试又面了好几轮,有调查底层常识的、有调查C/C++的、.Net的,还有调查算法的,编码素质的。总归便是公认的底子功调查。终究我仍是没能经过面试。个人自己后来总结的结论是算法底子功太差,连什么是动态规划都不知道,编码素质也不行。这部分也是因为本科的学习办法太业余,什么好玩干什么,倒不是说爱好驱动欠好,仅仅缺少系统的规划,不清楚也不关心这个范畴的蓝图,也弄不清什么是要点。后来在读研的时分恶补了一把算法,好歹弄清了一些底子的概念和考虑办法。编码素质的问题也是到了读研的时分才开端考虑和学习,现在仍在学习。

  别的,在本科阶段,其实我也糟蹋了许多时刻,现实上,是只花了很小一部分时刻来学习。之所以还多少学了点东西,彻底是仰赖了专心的习气。而这个专心的习气其实又是从小受父亲潜移默化的,父亲会花一整天揣摩一个问题,父亲跟我说过他曾经拼装电视机时的故事——一切都好像拼装正确,但电视机便是不作业。他苦思冥想,不得其解,当晚,深夜从睡梦中醒来,想到了问题的症结所在。所以,我在啃一些底层常识时假如弄不理解,也会一遍遍读,然后用走路吃饭坐车的时刻在脑子里一遍遍去揣摩。我有许多重要的习气遭到父亲的影响,这些习气自己一般察觉不到,但却静静影响了往常的一点一滴的时刻分配和学习轨道,这些习气从纸上很难学到,但潜移默化却会自然而然地学会。

  每逢有人觉得我本科就做了不少作业的时分,我就会说其实我本科真的糟蹋了许多时刻,而另一方面,这也阐明,要把握一门专业常识,其实每天一点时刻,专心、堆集和锲而不舍也就够了。后来研讨生阶段才算真实开端惜时了,所以阅历了两年密度很高的学习和考虑,心智才成熟了不少。

  大四的时分,和许多人相同,我也考研,因为一来也很茫然,二来也期望能够持续有一个宽松的环境持续沉浸在自己的爱好中。但四年来我都是自己安排时刻,逃掉了许多的课,现已对模式化的做题考试产生了冲突,所以考研的温习也没怎样仔细预备,那年考研的数学题又偏难,一下慌了神,成果竟然把一整页题压在稿纸下忘了做了,心思预备有多不充沛可见一斑。考完数学我很懊丧,那么大分值的标题没做,数学必定过不了了,接下来的专业课就没去考了。后来想想其实仍是应该去考一考,多少能为下一年积累经历。

  后来就作业了,没去成微软,经同学张振引荐,就去了南京西门子。心里的计划仍是边作业边考研,为什么考研,动机也简略,我心思还没预备好,本科只顾着静心学好玩的,也不看路,不知道自己想要什么样的作业,想做什么样的作业。去西门子之后愈加觉得如此,觉得功率很低,做的作业也并不是我愿意的,每天还要在班车上糟蹋两个小时,所以没过多久就辞掉了作业。计划温习考研。那个时分大约还有半年多的时刻才到考研,所以我半途不紧不慢地又翻译了《Exceptional C++ Style》,占用了不少时刻,到最终时刻很紧了,就剩两三个月,我才开端认起真来,回想起来这是糟糕的时刻管理。成果我不得不作了最坏的计划:顶多调剂去软件学院读研(我报的是核算机系),考虑到我横竖是自己安排时刻,不同应该不大。走运的是,终究一分不差地过了线,算是蹭到了核算机系里。虽然如此,仍是觉得这种惊险不要产生的好,今后或许其他作业上就不会有这么走运了,及早预备总是很重要的。

  读研期间的两年半,是我自己觉得心智年纪生长最敏捷的一段时刻。这儿也有几个很走运的作业。一个作业是我的导师陈家骏先生给了我很大的自主,所以我得以有时刻安排一些重要的学习,这段时刻对我来说很重要,我学习和考虑了许多东西,为个人今后的开展作了许多预备,却是没帮导师做什么作业。所以,硕士结业脱离的时分是既感谢也内疚。

  另一个作业是知道同实验室的师兄陈怀兴,严格来说是他先来找我谈天,可见那个时分我依然仍是没有知道到与人沟通的重要性的,后来,建立了TopLanguage评论组之后越发知道到与他人沟通的重要性,也开端自动寻觅和参与沟通,期望今后自己也能安排沟通。陈怀兴对算法很有造就,也是TopCoder上的常客和牛人,那个时分我也正在为今后的作业面试预备一些算法根底,所以常常找他评论,获益许多。有一句话说:看一个人,只需看他读的书和见的人。仍是很有道理的,这两者是一个人生长中最有价值的信息来历。

  研一下半年,女朋友找作业的时分需求用到营销方面的常识,所以我去替她找书,偶遇《影响力》这本书,这本书打开了我的视界,让我开端重视一个很有价值的范畴:咱们怎样考虑,怎样正确地考虑。这个范畴有许多有意思和有价值的书,我运用近一年的时刻,陆陆续续看了近40本相关的书(我把这些书整理了之后以豆列的方式放在豆瓣上),对思想的特色和缺点,以及怎样考虑有了许多的了解,这些常识后来很大程度上使我更明晰地知道自己,和自己在学习和日子中面对的各种问题。

  也是研一下半年,我建立了一个Google Groups,起名TopLanguage,一开端的时分是因为往常没人评论问题,憋得难过,期望有人能够说两句,无心插柳柳成荫,后来这个评论组的沟通越来越多,现在现已近两年,组内成员超过了4,000人,两年里我也从中收益颇多,其间最大的收益有两个:一是和人评论能够激起自己进一步的考虑,也促进自己更明晰地表述自己的观点或问题。倒不是说他人就必定告知你什么新东西,而是评论对你自己的思想的影响。二是沟通中知道了不少朋友,后来快结业的时分也受协助颇多。我一向把TopLanguage的创立看作研讨生阶段做得最有含义的作业之一。

  此外,我有知道地提前预备了英语,因为我信任假如想要去好的外企,白话不过关很或许成为一块短板(当然,英语作为承载最多技能常识的渠道言语还有更大的价值),包含阅览、书写和白话。我想了一个计划,能够不必额定花时刻来学习英语:阅览的练习蕴含在往常的英文技能材料的阅览中,尽量读英文的,一来英文材料更一手和全面,二来也趁便练阅览。书写的练习蕴含在去国外邮件列表发技能贴和自己写的英文博客文章中。白话的练习则蕴含在往常的文娱中——美剧,有一个暑假我简直天天开着Friends睡觉,别的校园有国外过来的团队讲演我不再错失,而是自动参与,有一次还带他们出去逛南京,说了一天英语,回头在路上听中文都像英文。虽然和外国友人沟通的次数不多,但好像对白话感觉的进步还挺大。后来在微软亚洲研讨院的面试最终一轮便是英语的,并且是偏技能的,好在提前预备了,所以究竟仍是顺畅地表达出了想表达的意思。

  去微软亚洲研讨院面试,是因为走运地知道了微软亚洲研讨院技能创新组项目主管邹欣先生。邹欣先生和他安排的团队在那段时刻写了《编程之美》,书中有许多很有意思的标题,而我那段时刻恰和陈怀兴评论算法,在评论组上也安排了专题的评论,有了一点浅显的考虑,所以和邹欣先生邮件沟通,因为对邹欣先生的技能创新组做的作业很有爱好,所以找作业的时分便向他自告奋勇。

  承蒙邹欣先生引荐,时隔三年,我再次获得了去微软面试的时机。这一次,因为研讨生期间作了一些久远预备,所以心里有底了许多,也就比较镇定了,因为当年常识系统的缝隙被我花功夫补了补,所以面试比较顺畅。面试的时分邹欣先生更为具体地介绍了技能创新组的作业,我愈加感爱好了,所以虽然现已有别的几个也不错的挑选,但心里仍是敏捷地做了决议。大约一周后,HR告诉Offer,我坚决果断就接受了。

  我想,虽然有许多人本科就理解自己想做什么,我多花了两年多,总还不算太晚。

声明:本文内容来自网络转载或用户投稿,文章版权归原作者和原出处所有。文中观点,不代表本站立场。若有侵权请联系本站删除(kf@86ic.com)https://www.86ic.net/fangan/biancheng/114863.html

为您推荐

联系我们

联系我们

在线咨询: QQ交谈

邮箱: kf@86ic.com

关注微信
微信扫一扫关注我们

微信扫一扫关注我们

返回顶部