大学之前:一个偏科生的自述
我出生自鄂东(湖北省东部的黄冈市)的一个农村,我们镇位于湖北与安徽的交界,刚好在大别山主峰之一的天堂寨脚下。我们那山比较多也都比较高,小时候记忆里那里交通相当不发达,整个县城没有火车站也没有高速公路,直到我上大一时还要坐三四个小时的大巴走省道、县道一路颠簸去相隔不到100公里的武汉乘火车。
我小学初中是在村里的学校度过的,现在想想那时候的条件真的是惨不忍睹。那时候正赶上读书人多的年代,一个教室全部都坐满了,大概有七八十人。我初中就过上了寄宿生活,一个不到二十平米的宿舍硬是放满了五六张上下铺,一张上下铺睡五个人(上铺两个,下铺三个),一到夏天根本睡不着。中考后上了县城的一所私立高中,我爸当时说一年多交两三千块钱换个条件好的学校很值得,后来发现情况完全不是我们想的那样,那所私立学校刚开办两年,存在基础设施差、教学模式不好以及老师流动性太大等等问题。在我的记忆中,我学习成绩最好的时候是小学一二三年级,那时候总是班上前一二名,从那之后我的成绩再也没有突出过,初高中成绩一直处于中等水平。高考也不例外,最后理所应当地上了一所普通二本。后来我跟我大学同学说我之前成绩很菜,他们都一脸愕然,都认为黄冈搞得出像《黄冈兵法》、《黄冈密卷》这样牛哄哄的参考书籍,怎么从那里走出来的学生成绩会很差呢?多年之后,我总结了我初高中成绩不好的原因,大概有两个,一是因为我严重偏科,我比较喜欢英语和化学,高中的模拟考试中,我英语几乎都能考到140分,化学则时常是满分。这两门考得好是有原因的,那时候我对这两门课有强烈的求知欲望,上其他课时经常看英语杂志书籍,也因此挨过多位老师的批评。相反的,我语文跛脚严重,每次考试总是在90分左右徘徊。还记得那时候湖北省语文试卷的前六道题目专门考察汉语拼音、查找错别字以及成语使用的,每次考试我几乎只能蒙对一两道。我分不清汉语拼音中的N和L(其实到现在我还经常读错),也不太喜欢文言文(虽然现在我偶尔会在网上搜搜以前学过的一些文言文,觉得古人写的文章很有意思),总之,那时候对大家来讲最好学的语文在我看来,是一种莫大的恐惧。除了偏科外,我对当时被迫接受的那种高压式的教育方式有些反感,我觉得这也是导致我偏科的原因之一。学生平时在学校里除了考高分再没有别的追求,初三和高三时,学校停止了一切与初高考无关的课,学生每天都坐在教室里做试卷做习题,那种连上厕所都要赶着去的场面到现在我都记忆犹新。在农村学校这种现象尤其严重,不知道这么多年过去了,情况会不会好一些。其实这里我并没有刻意想去吐槽教育制度,我觉得吐槽它的人已经够多了,凡是上过大学的人都懂。只是我也经历了那段时光,一想起这次主题是“写自己的故事,谈自己这些年的感想”,我就不由自主地写到了这些。
2007年高考,英语化学即使考的再好总分加起来也太少(事实上那年英语发挥一般,刚过红分线),其他科目一如既往的考得菜,最终我“顺利地”读了天津的一所二本院校。那时候对专业也没什么概念,觉得上了大学什么专业都一样,于是就稀里糊涂地填报了“软件工程”专业。后来才发现,正是我当年的稀里糊涂,才让我能够进入IT行业,并让我能够使用自己感兴趣并且擅长的东西来养家糊口。今年距离我高考已经有快8年的时间了,现在谈起“高考”我早就习以为常。我有时感叹,高考前后我接触到的东西真的是天壤之别,以前从来都不知道编程是什么,几年后,我居然要靠它来吃饭。像我这种出生在偏僻的山村,大学前没摸过几次电脑的想必大有人在,长大后却要进入洪水猛兽般的信息时代,这多多少少让我们有些手足无措。但不得不说的是,影响过几代人的高考确实也改变了我的人生,虽然我曾经把最珍贵的青春时光都用在了“要努力考好它”上面,完全彻底地。
本科四年:最珍贵的四年学习时光
(1)大一:找到了正确的学习方法
2007年9月,我乘坐了18个小时的硬座,一路北上来到了日后在这里学习工作的天津。刚到学校很是兴奋,暗暗告诉自己一定要好好学习,因为大学就学一个专业,没有什么可以偏科的。那时候我们学校刚好扩建完工,新校区跟旧校区加起来有我们高中七八个那么大,感觉大得离谱(后来才发现这个面积在大学里面算小的)。十天军训完后,我们就进入了正常的上课时间,那时候最不适应的就是找教室,每堂课的上课地点居然都不一样,上午如果有两节课,上完一节课后得赶忙去下一个教室。有时候第一节课在学校最北边上,但是第二节却在学校最南边上,两节课之间休息的半个小时都不够用来走路。那时候我们宿舍有一个很爱学习、做什么事都非常认真的人(就是以前上学时的乖娃仔),我们都叫他“彬哥”。彬哥每天总会起得非常早,吃完饭先去图书馆占座位用于当天自习(学校图书馆每天都会清理座位,所以每天都必须重新找座位),我受彬哥影响,每天也会让他帮我留一个座位,一有空我就会去图书馆看书自习做课后习题。(彬哥是我在大学里印象最深的一个同学,大学四年我们之间结交了非常好的友谊,毕业后他去了百度的云计算部门。)
到大一下学期,我还每天一有时间就坚持去图书馆上自习看书。直到有一天,我在《程序员》杂志上看到了一篇“计算机专业学生怎样学好计算机?”的文章,文章中强调最多的四个字是“注重实践”。虽然这四个字说明的意思在我现在看来,已经是理所当然的了,但是在当时,我们班几乎没有人意识到学习编程时,理论与实践相结合有多重要。大一上学期,我们就开了C++的课,用的是谭浩强的那本红色封面的《C++程序设计》。虽然现在看来,那时候给我们上课的老师讲得不太好,但是我当时却对这门课非常感兴趣。自从意识到了实践的重要性后,大一下学期我就很少去图书馆自习了,相反一有空余时间,我就去机房电脑前将《C++程序设计》那本书后面的例子一个个的上机试一遍(那时候大一学生还不准带电脑),除此之外,我还学会上网问问题。到最后大一快结束时,C++这门课的大作业是让上机实现一个图书管理系统,没错,那时候我们还没学图形界面编程,更不懂什么叫GUI,老师要求我们用C++控制台程序去做,要实现图书信息的录入,查询,删除,统计等功能。那时候很多学生还不知道怎么在程序中保存“图书信息”,而我那时候已经有了一些“数据结构”的知识,最后我的大作业很轻松得了优。
现在回过头来想想,有些事情觉得特别好笑。当时我们用的是《C++程序设计》这本书,这本书前面几章讲的基本上都是C++语法,并没有涉及到“面向对象”的概念。有一段时间我上网查资料,大概是查到了C程序设计相关的内容,发现不对劲,怎么有些代码中的写法跟上课时学到的不一样,后来去论坛问别人,被别人训一顿,说我没搞清楚什么是C++语言什么是C语言。说实话,那时候我根本就没C语言的概念,老师上课也没讲。直到大一结束了,《C++程序设计》这本书都还没有上完,好像就学到了前10章,大概就是把“基于对象程序设计”这部分学完,而书中有关“面向对象程序设计”的内容则完全没提。不知道学校的教学计划有误还是怎么的,如果是故意不讲完,我觉得完全可以让我们学习《C语言程序设计》这本书。
大一一年,我最大的收获就是找到了正确的学习方法,那便是“多实践,多上网看资料”。这种方法后来被证明完全是对的。
(2)大二、大三:专注地学习专业知识
虽然我大学前不曾接触过编程,对电脑也不熟悉,但是经过大一一年的时间,我就对编程产生了浓厚的兴趣,并且自己也慢慢领悟到了好的学习方法。由于我一开始就没打算考研,所以平时可以花更多的时间去阅读计算机编程相关的书籍、杂志,以此来弥补我之前对计算机知识的缺失。记得大一开的一门《计算机导论》课程,上课时老师照本宣科地阅读PPT课件,当时我的理解速度完全跟不上老师的上课速度,因此到后来的大二时,我还常将此书拿出来翻翻。现在想想,那时候对计算机的求知欲望完全超出了其它所有。直到现在,我还完好无缺地保留着本科时期的两本书,一本是谭浩强的《C++程序设计》,一本便是《计算机导论》,我觉得这两本书对我的意义非同一般。
大二上学期时,我们开了《数据结构》的课程,我记得当时用的是王红梅的《数据结构C++版》这本书。由于我大一就知道一些数据结构的知识(虽然那时候并不知道“链表”、“hashu.html" target="_blank">二叉树”、“图”等这些专业概念,只知道一些程序中应该怎样组织数据),再加上我当时C++知识可以说相当扎实了,所以我上这门课可以说相当轻松。我记得那时候老师才上到前面两三章,大概才讲到“栈和队列”时,我已经看到了书本最后讲“排序、查找技术”的这几章,并且书本中的示例以及练习题都要在自己电脑上运行一遍,然后理解其中的原理(08年大二时我买了人生中第一台电脑,联想天逸F41,这台电脑我用到了现在,除了给它增加了一块内存外,居然一次故障都没出过)。现在想来,“前因决定后果”这句话真的非常对。我记得那时候老师在讲“链表”时,要用到指针,链表中的每个节点中都会包含一个指针指向下一个节点,我觉得这个很好理解,但是当时很多人理解不了。究其原因,就是基本功不扎实,在大一时没有掌握好指针的原理,不明白内存与变量的关系,导致后来的一些知识理解起来相当困难。我觉得当时《数据结构》这门课程进一步加深了我对计算机编程的兴趣,数据结构让我能够将很抽象的程序具体化,让我明白了程序在存储数据、处理数据时的一些具体逻辑。同时我也喜欢上了C++这门语言(虽然大二下学期学校不知道什么原因又开了VB课程,但是我对C++的喜爱远远超出了VB),之后一段时间,我又自学了MFC、STL等与C++有关的库,这个后面会有介绍(很遗憾,毕业后由于工作需要,我并没有从事与C++有关的工作)。
到大二下学期,我们已经学完了(当时以为)很多专业课程,但是很少接触一些实际的项目开发。就连上课时运行的所有示例代码都是通过“黑屏”(控制台程序)输出,我当时就有疑问:难道在黑屏上不断地输入、输出这就叫“软件开发”吗?当时我很渴望能够做出有界面、普通人一看就会在上面敲键盘、点鼠标的软件程序。大二下学期,我为这个问题困惑了很长一段时间,后来经过我多方面查找资料终于知道了另外一个新概念:框架开发(我努力回忆了一下,那时候老师们真的没有跟学生沟通过这方面的东西,我当时性格内向,也没有主动询问过老师这方面的问题)。大二一整个下学期,我通过图书馆借书、网上看别人的博客教程、上论坛问问题等多种方式,陆陆续续地“学会了”MFC开发、ASP.NET开发,顺带着“学会了”HTML、CSS以及JavaScript等(现在看来当时学得比较肤浅,但那时候确实让我能够摆脱控制台程序的局限)。记得那时候在图书馆刚看到侯捷先生的《深入浅出MFC》这本书时,我非常兴奋,马上借出来仔细翻阅。虽然那时候我C++基本功还比较扎实,但是当我看到书中第六章时就觉得相当费力,第六章之后的内容大概就是开始剖析MFC程序内部结构,很多东西对于那时候的我来讲很难理解。不过最后我还是硬着头皮将这本书看完了,虽然当时并没有完全掌握书中的内容,但那本书至少让我明白了框架在软件开发过程中的重要性,我也知道了Windows桌面应用程序的基本结构,比如UI线程、消息队列、消息循环以及窗口过程等等,同时掌握了大部分Win32 API的用法。多年之后,我得知有很多大牛批评MFC的设计,但是每当我想起那段学习MFC的日子,心里还是非常激动。到大二暑假,我又陆陆续续地看完了《Windows程序设计》、《Windows网络编程》以及《Windows核心编程》这几本书,虽然以我当时的知识储备,对这些书中的内容理解起来可能不是很深入,但是当时这些书确实让我更全面地了解了计算机编程。
由于我平时的时间几乎都用在了与专业相关的事情上,其他诸如“大学化学”、“大学物理”、“马克思”、“Mao泽东、“近代史”等与专业无关的课程我则很少花时间,但是我会在期末考试前一两个礼拜抓紧时间狠狠补习一下,所以这些课期末考试虽然成绩不是非常高,但也过得去。至于“大学英语”这门课程,我当时发现期末考试前不突击补习,照样能考90+分。平时上英语课时看看课本文章、阅读一些英文杂志,多记一些单词,期末考试就不用担心了。四六级虽然分数不是很高,但也在大二那年一次过了,后来也没想着像其他同学一样过了还要刷高分。这样以来,大一到大三我每年都能拿个二或者三等奖学金,后来想想,大学考试不太正规,考试范围都是平时作业,就连我那种平时几乎不听课考试前恶补一下作业习题的人都能考得差不多。
到大三后,我还是沿着大二时的自学方式,不断地扩充自己的知识体系。大三一年,我还参加了各种各样的天津市、学校组织的计算机竞赛,都取得了不错成绩。大三暑假还去过外面公司实习。除此之外,大三我还考了各种各样的专业证书,比如“程序员”(软考初级)、“软件设计师”(软考中级)。现在想想,考下了这些证书也不能代表你工作中有这些实力,但是对于当时来讲,考下这些证书需要掌握非常全面的计算机知识体系,大到计算机组成原理、操作系统、数据库,小到C++语法、冒泡排序以及栈和队列的应用等,虽然掌握程度不要求很深,但是知识面广,这对当时的我来讲,是非常值得的。
(3)大四:跷课北上帝都实习,惹毛了老师
进入大四后,学校安排的课程比较少了。我看了一下课程表,每个星期也就一两节课,感觉呆在学校很浪费时间(那时候毕业设计要到下学期才开始做)。后来我一个人去系里申请外出实习,我给出的理由是:大四上学期才上一门课(另一门六个礼拜就结课了),大部分时间在学校没事干,我想离校找实习,并且我当时还保证两门课考试不挂科。结果很明显,系主任不答应,说不能开这样的先例(其实系里有老师支持外出实习的,只是担心有一个人带头了,大家都找理由不来上课)。就这样,我在学校憋了快六个礼拜,那时候校园招聘已经开始了,我在网上投了位于北京的一个叫“青牛软件”的公司,然后去天津大学进行笔试和面试,最后收到了实习通知。那时候刚好有一门课结课了,我想了想,就离开了学校,一个人去了北京。记得那时虽然才十月底,但是天津的天气已经很凉了,我一个人拉着一个大行李箱坐了一个半小时的火车才到达北京(那时候没什么钱,所以舍不得坐55块钱的城际,城际大概半小时就能到北京)。那时候公司对实习生还比较好,每个月除了实习补助外,还每天给10块钱的餐补,另外还帮外地实习生免费租房子住,这对当时的我来讲,公司相当慷概了。
在公司,我被分配到了“托管呼叫中心业务部”,做的具体工作是linux平台上的C++开发。以前几乎没有接触过linux操作系统,刚开始不太熟悉使用,我们组组长让我先学会linux上的数据库安装、C++开发环境的搭建等。我在北京的实习工作一直持续到了大四下学期,也就是2011年的4月份,后来由于要做毕业设计的缘故,我就从北京回到了学校。在北京五个多月的实习经历,我第一次接触到了一线的项目开发。我虽然是实习生,但我们组长也让我参与实际的项目开发,只是我负责的部分尤其简单,而且工作量很小,每天干完后剩余时间不知道干什么。我想我来实习就是为了多学一些东西,这样哪能行呢?当时我感觉公司氛围也不太好,每天坐半小时公交来公司,一整天都不见员工间说几句话,我当时以为我是实习生,所以没多少人跟我交流,后来仔细观察了一下,发现老员工间交流也不多,都是默默敲键盘,到最后我都觉得有些压抑。到大四下学期开学一个多月,学校毕业设计开题了,再加上我听同学说有老师对我外出实习不满,所以我不得不暂时告别实习了五个多月的公司,回到学校开始做毕业设计。
现在看来,我大四的一些做法很不明智。那时候有些困惑,班上很多人忙着考研,所以大四基本上都在图书馆上自习,而我们这些不考研的人则显得尤其烦躁,感觉毕业了找工作实力不够,没做过多少实际项目,没什么应聘资本。而我当初的一意孤行,为了所谓“实习经验”,惹怒了一些老师。多年以后,我才发现企业要的应届毕业生就是一张白纸,这些白纸吸墨能力的高低决定你能否找到好的工作,而吸墨能力高则主要是基本功扎实、自学能力强的体现,并非我一直以为的丰富的“实习经验”。
我一直认为,本科四年是我最值得回忆、最美好的学习时光。它为我后来的工作奠定了坚实基础,同时我也在四年中领悟到了一个IT技术人员正确的学习方法(这个后面会提到)。
创业之路:从社团到公司
其实本来我没打算写创业这部分内容的,它是我目前的工作,但又没有太大的成就,感觉没有什么可以拿出来说的。后来一想还是写写,算是对我毕业这三年的一个回顾。
大四从北京实习回来之后(在校做毕设期间),比我高一届的两个师兄邀我一起创业。他们之前是学校里的一个非常有名气的技术社团的成员,该社团主要负责学校里的一些社区网站(比如论坛、博客以及校内VOD系统之类的),平时还顺带着做做外面接的小项目。只是后来有人在他们负责的论坛上发布了一些不良信息(跟民族政治有关的内容),最后被市教育局和学校强制解散了。他们毕业后有一些创业的想法,所以两三个人、三五条枪就注册公司了。我毕业那会他们已经干了一年,当时正好缺做.NET方面的人,所以就找到了我(这里是通过我们宿舍的彬哥)。我那时候实习刚回来,本来对实习公司不是很满意,正准备投简历找下一家就业单位,听他们邀请,觉得何不尝试一下,于是就答应了(现在一干快四年了,时间很快。当时刚毕业,热血澎湃,希望做一份大事业)。创业公司主要做民航类模拟机的开发工作,大部分时候使用.NET开发平台,偶尔使用C++。公司也有少量PHP项目,后来增加了移动开发的业务,也做少量的Android和IOS开发。我大三时学了一年的.NET,再加上我基础可以,所以当时很快上手,并没过多久就成了公司的主要技术人员之一。我毕业到现在快4年,公司刚开始有4个人,现在已经有十五六个员工了。最近两年,公司已经完成了三套民航类模拟机的开发(模拟机属于公司核心业务)。
创业过程很幸苦,尤其对于我们这群刚从大学校门走出来的人,没有社会经验,没有经济背景,更没有人脉关系。这里要感谢母校对毕业生创业的大力支持,最初几年一直为我们免费提供办公场所。同时,也要感谢我们一起走过快4年的这5个人,感谢我们不抛弃、不放弃。有些事情,过了一定年纪你再也做不了。比如创业,如果不是当初我刚毕业时的那股冲劲儿,说不定我就找了个公司上班,那么也就没有这么多回忆了,以后更不会有,想想挺值的。
对计算机相关专业的学弟学妹们的一些建议
首先,我觉得从事IT开发工作的人必须具备一种素质,这种素质包括你对技术开发的兴趣、你的思维理解能力等。很难想象一个对计算机编程不感兴趣的人从事编程工作后会怎样,要不干几年之后就换行了,要不忍生吞气、碌碌无为地干一辈子?我更难以想象一个不理解为什么在立体几何中一个圆要画成椭圆的人从事编程工作后会怎样?(不要笑,我真的碰到过问我为什么在立体几何中,圆柱体上表面的圆形要画成椭圆,我当时无言以对)。如果你不具备这些素质,我劝你若有可能,赶快换专业,找你自己擅长的领域,不然是在浪费时间,因为计算机不适合你。如果你觉得你适合学习计算机,那么下面四条是我认为比较重要的,可以参考。
(1)自学
其实我前面一直在提自学的重要性,我本科四年大部分时候也都是靠自学过来的。如果你打算靠老师跟你讲“异步编程”、“如何解决TCP传输数据时的沾包问题”等等,那么你可能等到研究生毕业了,老师还没打算跟你讲,因为这些课本上根本就没有(大部分老师不会讲除了课本以外的知识)。事实上,我们日常储备的知识当中,90%是靠自学得来的,所以学习主要还是得靠自己。刘未鹏说过,如果说还有一个学科,并不需要传统的教育就可以成才,估计非程序员莫属了。这时候,各自的“自学能力”就相当重要了,在这个快速发展的信息时代,如何更高效率地获取自己想要的知识,主要取决你平时自学过程中的经验总结。
(2)英语
有一天你会发现,你使用中文关键字在Google、百度上再也搜不出来你想要解决问题的答案,这时候你就会意识到英语的重要性了。我很幸运,虽然我初高中时偏科,但是跟很多偏科生不一样的是,我英语学习还行。到后来工作学习过程中,很多问题在网上单单使用中文关键字进行搜索根本解决不了,这时候我不得不尝试使用英文关键字在Google上搜索答案(百度上也能搜到一些,但是没有Google全面)。不试不知道,一试吓一跳,很多难以解决的问题都能在国外一些技术社区、博客网站中找到解决的方法。我举这个例子的目的在于,向你们说明学好英语有多么重要,英语不好,你连怎样组织搜索关键字都不会,就更不用谈阅读英文网页内容了。当然这里需要明确一个事实,那就是:国外IT从业者(尤其美国)的平均技术水平、技术社区讨论问题的质量与深度以及国外程序员分享技术的力度均要高于国内。如果有一天,你能够使用英语在外国论坛中自由的交流、与别人分享你的技术心得,那么这时候你离高手就不远了。另外一点,很多高质量的技术书籍都是国外人写的,虽然一般都有对应的翻译版本,但是如果你英语能力足够好的话,阅读原汁原味的原版要好得多。
(3)重视基础
掌握好专业基础知识是你以后进一步学习的前提。个人感觉,学生时代不要刻意去追求项目经验。当然如果有机会,适当地进入一线企业做一些实际项目确实对你就业有帮助,但这样去做的前提是你已经掌握好了大学课本上的基础知识。不要瞧不起大学里开的一些课程,更不要觉得它们太偏于理论。计算机专业(或其他相关专业)虽然重视实践,但是实践是在掌握好理论的前提之上。中国计算机教育本来就比较落后,大学前懂计算机、懂编程的人少之又少,大部分人都是进入大学后才开始接触计算机的,对于这大部分人来讲更应该学好大学里开设的一些专业基础课。前面提到过,很多企业在招聘应届毕业生时,主要看的不是你有多少项目经验(因为大部分面试官都知道现在在校大学生做项目的实际水准,即使你在简历上写得天花乱坠),而是你基本功是否扎实。基本功扎实与否决定你以后进入企业后的成长速度,一般情况下,基础越好的学生,进入公司后,成长得越快。从毕业开始面试的第一天起,在面试官面前不要过分吹嘘自己的项目经验(因为在面试官看来,你就是一张崭新的白纸),相反地,应该多展示一些自己的基本功以及思维逻辑能力,这才是作为一个应届毕业生面试时要做的事情。
(4)眼界
眼界这东西放在任何地方都比较重要,计算机行业也不例外。在校期间,课本知识面有限,老师传授的东西也有限(碰上一个只会读PPT的老师就更惨),那么这时候该如何扩大自己眼界呢?我们很幸运,成长在一个高速发展的信息时代,生活中无时无刻、无论何地几乎都能够连上互联网。我们要做的仅仅是每天养成一种习惯,看看IT科技新闻,关注前沿技术动态,多泡技术社区,多写技术总结,勤分享多沟通。如果你养成了这样一种好的习惯,不要多久,不仅你的技术水平能够提升,你还会看到这个世界上别人在想什么,别人又在干什么。做技术、学技术不要把自己关起来,走出去多交流,多发现,你会有意想不到的收获。
以上是我这些年学习、工作过程中的一些感悟总结,如果你比较认同,可以作为参考。但我不保证每个人的性格、喜好跟我一样,所以可能不是对每个人都有效。
结语:未来很美好,我一直在路上
我一直觉得自己非常幸运,感觉过去的二十六年当中,总是有好运气。小学时虽然家里穷,但是我爸妈很开明,学习上该买的一定会买,也不会给我施加学习压力;初高中虽然偏科,但是英语却学得还好,让我现在工作学习时游刃有余;大学里因为看了某期《程序员》中的一篇文章,让我快速领悟到了正确的学习方法,因为用了谭浩强先生的那本《C++程序设计》作为教材,使我对计算机编程充满浓厚兴趣,还因为同一宿舍的彬哥,让我认识了现在一起创业的同伴;工作之余喜欢在网上写写博客,被人欣赏后建议我写了本书。所以,我总感觉上天在帮我,我又有什么理由不积极面对明天呢?未来很美好,我一直在路上。
-----------------
这篇文字是我之前给一个关于程序员成长故事书籍投的稿子,既然是故事,重在分享,先分享给大家吧。
末尾顺便做一个广告,新书出版,有需要的朋友可以看看:http://www.cnblogs.com/xiaozhi_5638/p/4123045.html 多谢支持!