[2004.CSDN.04.10][特别策划]昨天,我的大学学习

昨天,我的大学学习
引言

2000年9月5日迷茫中的我开始了大学生活,2004年7月7日我结束了4年的本科生活。时光如流水,人常说大学四 年光阴是人生中最重要的四年,对于我来说这四年如此的漫长,但又如此短暂,似乎是一个结束,却又意味着一段更 为令人激动的生活的开始。按照惯例,总要记些文字下来的。总结过去,给自己一个交待。展望未来,给自己一点希 望。同时也希望这些文字能够对刚刚步入大学学习的师弟师妹们有一个参考作用,需要提醒大家的是,我的大学生活 并非仅仅属于我自己,他可能代表了包括你在内的一些人即将的经历,人常说“尽量吸取别人的教训,因为你没有时 间将世界上所有的错误都犯一遍”。取其精华,弃其糟粕。倘若在你的大学学习中能够有些许帮助,也就不枉一记 了?? 文章分为若干节完成,分别记载我的大学一年级到四年级学习和生活。最后给出一个对初学者的建议和对我自己 未来学习的期望。由于学业繁忙,每篇文章仅记录了部分大学学习体会,文字零散不成规律,还望读者海涵。

作者简介
曾毅:
2004年保送升入北京工业大学计算机学院软件理论专业就读硕士研究生, 2003年至2005年连任微软最有价值专家(MVP),计算机科学技术网站长。本科阶段 曾经在杂志上发表过多篇文章,两本计算机书籍的译者,微软创新杯全国总决赛 技术支持,《程序员》杂志社外聘编辑。

撰文/曾毅
一张白纸,一个彻底的初学者

(大学一年级)

高考的失利使我在人生转折点上摔了一大跤,站在 岔路口上的我从梦想破灭到犹豫不前,最终重新树立信 心走上人生新的战场?? 开学的经历所有新生都大同小异,经过了开学初期 的忙碌,终于了开始正式的课程,第一学期主要的专业 课程集中在计算机文化基础和C程序设计语言之上,数 学课很多,在这年打下了较为坚实的数学基础,然而对 于专业课??真是越学越没兴趣。计算机文化课上老师 要求练习打字,我打得实在太慢了,我的一位好友对我 说,“我给你装一个软件,你和我一起练习吧”。他给 我装了一个QQ,虽然当时我还不知道是用来做什么的。 开始练习了,他在聊天窗口中对我说话,我就尽快的回 答他,真是太逊了,过了五分钟,我一句话都没打完。 “太次了”,他对我说“你要赶快提高你的专业能力, 连打字都打不快,学别的恐怕更不好学了”,我慌 了??C语言的课程更是麻烦,我当时读程序的时候居 然将他看作英语课文来读,偶尔看懂个程序的大概,写 程序是绝对写不出来的。一次上机课程老师要我们编写 一个水仙花数程序,结果大家几乎都编出来了,只有我一个人没做出来??打击实在太大了,我近乎绝望,对专业失去了最后的兴趣?? 上大学对我影响最大的几个人之一便是王爱萍教 授,她是我的程序设计语言启蒙老师,更是专业学习的 领航人。王老师很喜欢我,源于我的英语成绩不错,学 习比较踏实。我和王老师走的很近,经常去她家问问 题,谈心。一次在去她家问C语言问题的时候,我一如 既往的听不懂她在说什么,实在忍不住了,我哭了?? 王老师很诧异,便问我为什么要哭。我对她讲述了我的 高考失利,对计算机专业的选择过程,以及对自己的专 业失去了最基本的信心,倾诉了内心的真实感受,并且 对她表达了我想尽快的退学重新高考或者转专业的打 算。王老师放下手中的笔,对我说:“曾毅,你个大男孩 子一点志向都没有,太没出息了!”我愣住了,目瞪口 呆,还以为老师会安慰我??她说:“计算机科学和任何 一个科学领域一样,需要你艰苦卓绝的奋斗。你选择了 一个让你能够为之骄傲的专业,但你却要退缩!在你选 择了计算机这个行业,就意味着你要为之终身奋斗,你 的身后是悬崖,只能往前走,不能往后退。总有一天, 你的专业会因为你而骄傲!”?? 我这位导师的成长经历是惊人的,她原来是淮北煤 炭师范学院的本科毕业生,毕业那年她选择了考研。本 科学的是数学系,想转计算机首先是很有困难,不是因 为她觉得考不上,而是因为一旦考上了她和计算机系的 学生如何缩小差距。不过最终她还是这样走了下去。付 出的辛苦是无法让人忍受的,在考研期间,她把非常经 典的那本同济大学的高等数学习题集做了N遍,一道道 挨着做,不放过任何一个难题。一个量化的比喻是:做 的习题纸满满一个书柜。最终她坚持下来了,考研时她 们学校只有一个学生考上了研究生,就是她,而且录取 她的是国防科技大学计算机系,从一个这么小的学校。 别的还用再说吗,当年考国防科大比考清华还要难,但 是她做到了。上学后她面临的问题接踵而至,计算机基 础几乎为零,专业课除了考研的课程什么都不会,没办 法,一课一课的补。她说当年学得最痛苦的一门就是离 散数学,离散数学我想大家学起来也不会太轻松吧。至 于其他的奋斗我不多说,我只告诉你当她教我课时,已 经是淮北煤炭师范学院计算机系的系主任,主教课程: C程序设计语言、数据结构、离散数学、编译原理、操 作系统、数字逻辑??。这些课程虽然都是非常基础的 课程,但是试问现在全国各大院校有几个教授能够将这 些课程都一肩挑起? 听了王老师的故事我为自己以前的学习态度感到十 分的愧疚,当时我在她的宿舍这样跟她说:“王老师:我 不能向您保证现在我对计算机科学就能产生多大的兴 趣,也不能保证我能不能坚持这个方向一辈子,但是有 一条我可以做到,就是不管在什么情况下,在四年的本 科学习阶段我会把计算机科学作为自己的事业去作,做 一个好学生,努力做好每一件事情”。 计算机科学入门学习根本是在受煎熬。为什么?因 为不了解。但是就是在这种不了解的情况下坚持着,跟 着王老师走,只要是她讲到的我都记下来自己再回去 学,就是在这种情况下,我进行了将近半年的学习。学 C语言应当是我最痛苦的时期,不是因为C语言难,而是 找不到思路。正如上面提到的,我看C语言的代码就像 是初中生在看英语阅读一样,从没有结构上的把握,一 个符号一个符号的读。我不能简单的说高级语言和自然 语言之间有着质的差别,但是描述的思路确实有着本质 的区别。可是当时就是看不懂,怎么办?当时也不会上 网,更不知道网上还有很多的学习资料,就在这种情况 下,我把课本谭浩强老师的《C语言程序设计教程》的 习题集上每题都挨着做下来,不会的就去问老师,然后 再把做完的程序和书本上的答案对照,找差距,调整自 己的思路。再到机器上把每个程序都调通。后来的几年 学习中我们学校的同学以及学弟学妹喜欢让我给他们改 程序,不是因为别人改不出来,而是因为在我给他们改 程序时首先为他们解决他们的问题。然后会帮助他们调 整思维模式和对待具体问题的入手点,并帮助他们总结 某种代表性程序时经常犯的错误。后来他们有人问我为 什么这些问题你都一看就知道,我告诉他们,首先不是 因为我有多深的知识和程序设计技能,只是因为你们犯 的错误在我大一时基本上犯了个遍,因为我的基础比你 们差得太多,所以你们不犯的错误我都会犯,你们犯的 错误我一般情况下肯定会犯,可是每个问题的解决都不 会是一眼看出来的,有的是过了一个学期才会的,所以 记忆就尤为深刻。到最后我把C语言的书上的每道题都 写到了一个大本子上,王老师和我说:“怎么写了这么 多啊,可以出书了!”我当然知道这是老师在肯定学生 的努力,在和我开玩笑,但是我不得不说当时老师给我 的肯定是我努力了这么久才换来的,所以我这辈子也忘 不了这件事。慢慢的,随着程序设计这个学科基础能力 一天天打牢,我对计算机科学的学习也不断的扩展。认识也不断的加深.

理论计算科学的学习——从数学开始
我的数学成绩平平,都是80多分,大学数学没有在 90分以上的。但是我对数学的兴趣是十分浓厚的。大一 下学期和大二上学期我几乎每天除了上课时间都在图书 馆看各种各样的数学书。我们学院有一点是现在各所高 校都无法比拟的,就是图书馆了,倒不是因为藏书量的 问题,而是因为学院经费有限,不可能买很多书。但是 却从清华大学和北京大学以及首都图书馆拿来了很多淘 汰掉的书,其实这些书远远没有失去他们的价值,数学 书有的是越老越值钱。我看的影响最大的有这么几本, 首先从最老地说起。华罗庚在数学上的造诣自不必多 说,但是他这光辉的一生做得我认为很重要的几件事 情:首先是他筹建了中国科学院计算技术研究所,这是 我们国家计算机科学的摇篮。再有就是他把很多的高等 数学理论都教给了做工业生产的技术人员,推动了中国 工业的进步。第三件就是他一生写过很多书,但是对高 校师生价值更大的就是他养病期间在病床上和他的爱徒 王元合著的《高等数学引论》(王元与其说是他的爱徒 不如说是他的同事,是中科院数学所的老一辈研究员, 对歌德巴赫猜想的贡献全世界仅次于陈景润)。这书在我 们的图书馆里居然找得到,说实话,当时那个书上已经 长了虫子,别人走到那里都会闪开,但我却格外感兴 趣,上下两册看了个遍,我的最大收获并不在于理论的 阐述,而是在于他将高等数学的理论完全的实例化,在 生活中去找模型。理论脱离了实践就失去了它存在的意 义。正因为理论是从实践当中抽象出来的,所以理论的 研究才能够更好的指导实践,不用于指导实践的理论可 以说是毫无价值的。 后来还读过北大张筑生先生的《数学分析新讲》。 张筑生先生一生写的书并不太多,但是只要是写出来的 每一本都是本领域内的杰作,这本当然更显突出。这种 老书看起来不是在传授你知识,而是让你体会科学的方 法与对事物的认识方法。微积分学科与其他很多理论性 学科不一样,并不是先有坚实的理论推导,后来发展起 应用,经得起推敲的严格理论基础是在以后的发展中逐 渐由后继者完成的,走的是一个从上到下的过程。而这 就决定了一般的微积分书东一榔头西一棒棰的乱打一 气,最后给我们的印象就是微积分是一盘散沙。张先生 的书立足于他在北京大学多年的讲学稿,给这个学科赋 予了一个完整的艺术形象。 至于后来也无意中发现北大居然把现今在市面上很 难找到的那些经典的数学书也给了我们,对他们来说看 似没用的书对我来说却十分有帮助。印象比较深刻的有 那本《组合数学》,《空间解析几何》还有《拓扑学》, 看这三本书的时候是极其费事的,原因有几点,首先是 这三本书无一例外,和华罗庚先生的著作一样,都是用 繁体字写的,第二就是书真的实在是太脏了,我在图书 馆的座位上看,同学们都离我坐得很远。我十分不自 然,不愿意影响同学,但是学校不让向外借这种书(说 起也挺有意思,别人都不看这种书,只有我在看,老师 就特别的关注我,后来我和他讲了这些书的价值,他居 然把他们当作是镇馆之宝,老师都不许借,不过后来他 们看我真得很喜欢看,就把书借给了我,当然用的是馆 长的名义借出去的。)不过收获是非常大的,再后来学 习计算机理论时里面的很多东西都是常会用到的。如果 你没看过这些书是很难理解到那个层次的。拿拓扑学来 说,我们学校没有开设这门课程,但是这门课程的重要 性显而易见,没有想到的是在那本书的很多页中都夹着 一些读书笔记,而那个笔记的作者有些造诣,他的某些 想法完全可以用到现代网络设计当中。另外对我影响比 较大的书就是科学出版社的《数学史教程》。我自然不 是数学系的学生,但对于每一个学科来讲,不晓其历 史,很难将这个学科掌握足够好。自从看了这本书之 后,我对数学的兴趣便更加浓厚。 数学书在大学阶段是除了计算科学的书以外看的最 多的书。原因很简单,计算科学源于数学,是以一种全 新的视角来解决世界中的问题和改变世界。“数学为精 确处理是什么提供了一种方法,而计算则为精确处理怎 样做提供了一个手段”。数学之于计算科学的重要性不 言而喻。
关于计算机文化的学习及其地位
令人难以置信的是图书馆里还有一本据我调查应当 是我国最早的介绍计算机组成的书籍,大概是1964年出 版的,作者是祖冲肖,听这名字你可能就会想象得到这 人在历史上一定是大有来头的,那书对我的启发极大, 虽讲的都是一些现在看来是十分陈旧的知识,但是看得 出来这书在当时的地位。至今,在那本书里论述的东西 我在现在的书籍中都未曾见过了。当然,在学校新书还 是多一些,庆幸的是我们学院的图书馆几乎在2年级开始 后很多的书都是由我来推荐的,所以那段时期爽得很, 看到网上有什么好书和别的学校学长推荐的书我就记下 来让老师去买,我经常和那个图书馆的馆长神侃计算机 科学,她本是学企业管理的北大毕业生,但是现在在计 算机角度上,计算机文化底蕴早已超过了一般的老师。 关于计算机文化的学习,国内的书籍主要教授 “Windows98的使用”、“Office的基本操作”等基本技 能,而在我看来这些内容绝对不能做为本课程的重点,在 这门课程中我们更应当关注的是整个计算科学的发展史和 计算机科学的内涵与外延,只有基本搞清了这两个问题, 才会在今后的3年乃至更长久的时间内有的放矢地学习计 算科学。试想不了解学科领域的各个分支,又怎么可能权 衡利弊,找到自己的兴趣点所在呢?《计算机文化》(英 文名称:New Perspective on Computer Concepts) 一书 给我这样的初学者带来了一个春天。这本书是我的恩师李 小坚博士推荐给我们读的,然而在我们学校同级的学生里 只有我看完了这本书,或者这样说,真正摸过这书的书皮 的也就只有我们宿舍的几位同学。这书我现在偶尔也看 看,他们都费解,说我计算机基础就算是不好也不用恶补 三年呀!殊不知这书上的理论和介绍的一些思想是一辈子 都很难全部了解透彻的。也正是这本书使我奠定了极其深 厚的英语基础和专业词汇基础。
大学一年级的学习态度
关于大学一年级的学习态度,我想可以很负责任的 说我是非常认真的。首先是上课的问题,在大学四年的 学习中,除了四年级一段时间忙于办理出国留学(后来 因为经济原因决定硕士仍然留在国内读)手续耽误了几 次课程以外,几乎没有旷过课。原因有两条:首先是我 认为本科教学安排乃10至20余年甚至更长的时间锤炼出 来的课程,理论基础自然精炼,需要我们认真地研读和 学习,而老师研究此门学科的时间至少长于我们几年以 上,为了奠定坚实的理论基础,课程的学习绝对不能因 为任何其他因素所取代。第二个原因源自我没有太多的 基础,按照千锤百炼的理论学科顺序学习是我能想到实 现自己专业素养提高的唯一捷径。直至现在,我仍然认 为对于刚刚步入这个领域的初学者,至少需要在大学 一、二年级将主要的精力花在课程相关的学习之上。只 有这样才不会偏离方向。另外一个问题是每天,每周应 当花多少时间学习的问题。作为一个大学本科的学生, 我认为打好坚实的理论基础是今后学习与工作最重要的 问题。而本科的课程安排比较紧凑,不花足够的时间学 习和钻研是绝对不可能成功的。我的作息时间比较固 定,每天6点左右起床,6点半基本上就到学校了,然后便 是开始看一些专业书籍或者是看英语,朗读英语材料练 习口语。晚上一般是11点回宿舍,然后再继续看1-2小时 的书,有的时候很忙,就需要点蜡烛看了。大家可能说 对身体不好,但是为了自己的理想,不付出足够的努力 怎能成功呢。大学我的课余生活并不丰富多彩,比较集 中在专业学习上,然而我没有一丝后悔,因为在专业上 的进步比我在任何一个领域取得成功都要珍贵很多 。 谁能改变我的命运
(大学二年级)
如果说大学一年级的时候是一种被动学习状态,对 计算机科学不能揽其全貌,那么进入大学二年级以后的 学习便是比较有针对性的了,但这种转变并非偶然,同 样也是经过了艰苦的学习换来的...... 我不是一个聪明的人。可以这样说,我现在所获得 的每一滴收获都是通过近10倍以上的努力换来的,人说 智力是没有太大的差别的,我也坚信这一点,但是我做 任何事情总是证实了我实际上和一般的孩子确实有点差别,举个例子来说:很小的时候大家就用一根尺子用一 只手悬起来,垂直往下扔,用一只手接住,看反应的时 间长短来作为反应能力测试,我就从来没有抓住过尺 子,另外做任何的智力测试几乎就没有什么能做出来的 题目。就这样的状态,我一直持续学习着,每个公式别 人记忆1遍我可能至少要5遍以上,甚至是10遍才能比较 牢固的记住。然而我希望自己不落后于别人,所以一直 很努力,初中的时候学习不好,高中就特别努力,虽然 学校不是很好,但一直稳定在年级1至2名的位置。大学 的学习也不例外,大学一年级的假期照样形同虚设,看 书和程序设计的时间每天不少于12个小时。在那个假期 主要完成了计算机文化那本书的阅读以及深入学习C语 言程序设计。后来二年级的假期还阅读了《IEEE计算机 先驱奖》以及《ACM图灵奖》这两本书,再次阐明我的 一个观点,我直到现在一直认为作为计算机科学的学习 者,不了解计算机发展史,是不太可能在这个领域有什 么太深造诣的。登高望远,站在巨人的肩膀上能够让自 己纵揽全局,看待问题也清楚很多。 进入大学二年级的我还没有从假期的自学回过味 来,突然学校领导让在一年级搞个经验交流会,我那个 时候在学校做学习部的部长,顺理成章的去给计算机系 的学生做了一个入学讲座,(插叙:我们那个时候的入学 讲座是由恩师王爱萍教授做的,由于王老师已经离开了 学校,所以学校就安排了各个系的二年级学生去。也许 你会奇怪,怎么不让大四的学生去?这就是我们学校的 特殊情况。我在北京工业大学实验学院,实验学院在我 们这届以前的本科学生全部划归工业大学其他学院,我 们这届开始重新招生建校区,所以我是没有学长的,大 学四年里面,我们这届一直是最长的一届,万事开头 难,学校经过了艰苦卓绝的发展,我们也承受了很多的 考验......)这可把我给难为了,自己学习计算机不到一 年的时间,就要给别人介绍经验,实在太痛苦了,但是 这是自己责无旁贷的工作,唯有认真准备。仔细的想了 想自己的学习情况,询问了一些同学的学习经验,又看 了些书籍,硬着头皮就这么上了。 讲座那天是非常热闹的,最开始我进去的时候很 乱,因为我也是学生,大家有个想法:“老师上课讲课 我都不听,干什么听你胡侃乱侃啊”。换了我可能也 会这样想。可能由于那天大家都比较没事做,在我开 始发言不到半分钟的时间,会场就鸦雀无声了,“同 学们大家好,我来自咱们学校00级计算机3班,我是一 个计算机科学的初学者,和在座的大部分学生比可能 还属于十分初级的初学者,但是在北京工业大学学习 的这一年积累了一些学习的经验,很愿意与同学们一 起分享精彩的大学生活??”讲座中我着重说了大学 学习和中学学习的区别,专业课程的设置情况,核心 课程的总体介绍,英语的学习,以及如何利用大学的 学习资源等等内容。讲的时候有点紧张,因为头一次 面对一个系的学生公开讲座,但讲座的结果是令人满 意的,讲座整整进行了3个小时,但是学生一点倦意也 没有,可能是因为我们都是同龄人的缘故,交流是零 距离的,结束后我自己正在怀疑是否讲的内容不够实 用,足足3分钟的掌声说明了一切?? 讲座以后我发现虽然自己对计算科学的整个领域有 了一个概要性的了解,但是这确实不是很完整,而又没 有一个途径能够使我很全面的揽其全貌??机会来了, 我校著名的人工智能专家刘椿年教授来到实验学院做了 一场“计算机科学技术及其发展”的讲座,使我获益良 多,后来又阅读了《计算机科学技术百科全书》这本书 中的部分内容,整理成了一片文章《计算机科学的内涵 和外延》 。到这个时候,认为自己至少大概了解了到底 计算机科学都包括了哪些内容,也就可以开始有的放矢 的学习了?? 应当说专业课的学习在到了大学二年级的时候就进 入了一个集中、关键的学习阶段。计算科学的核心课程 会在这段时间在各个学校展开。这一阶段的主要课程 有:数据结构,离散数学,概率论与数理统计学等。都 是非常重要的专业基础课和专业课程。 倘若你去问一个木匠学徒:你需要什么样的工具进行 工作,他可能会回答你:“我只要一把锤子和一个锯”。 但是如果你去问一个老木工或者是大师级的建筑师,他 会告诉你“我需要一些精确的工具”。由于计算机所解 决的问题都是从生活中抽象出来的问题,其复杂性不言 而喻,所以我们需要这样精确有效的工具去解决现实生 活中的复杂问题。算法、数据结构都是程序设计中必不 可少的精确工具。算法的重要性是每一个计算机专业的 大学生都十分清楚的。 算法与计算理论是计算机程序设 计领域的灵魂所在,是发挥程序设计者严谨、敏锐思维 的有效工具。任何的程序设计语言都试图将之发挥得淋 漓尽致。作为计算机专业软件相关无可厚非的最重要基 础类核心课程。没有算法,程序就失去了灵魂。数据结 构与算法的学习是艰苦的,最开始的时候,我无法区分各种算法之间到底有什么关系,只能机械被动地接受, 但是随着课程学习的深入,开始可以比较深入地领会一 些算法,并比较各种算法的优劣,先是数据结构的学 习,进而展开了对算法的学习,在算法方面我读的书比 较多,但是有一些后来觉得不值得一读,书名不便公 开,但是《算法导论》这本是必须推荐的,计算机系的 学生鲜有不知道此书的,但如果你仍然还没有读过,我 认为你至少应该在大学4年级之前读完它。 离散数学被称为计算理论的灵魂,我认为一点也不 过分。我曾拜读过南京大学sir前辈的《胡侃理论计算科 学》一文,文中提到“从理想的状态来看,离散数学最 好分开六门课:集合,逻辑,图论,组合,代数,数 论。”我们那个时候学习课程主要集中在集合论与数理 逻辑,图论与代数系统。在数理逻辑领域,中科院软件 所陆钟万教授的《面向计算机科学的数理逻辑》是本领 域内的精品。图论和电路网络以及计算机网络等领域结 合得非常紧密,也是离散数学学科中相当有趣味的一个 分支。例如哥尼斯堡七桥等问题都可以使大家体会到实 际问题理论抽象的巨大价值。我目前的研究生方向具体 课题是空间数据库,一个重要的模型是地理信息系统, 其中离散数学理论在图的构建,查询等分支中都有很广 泛的应用。原先离散数学和数据结构归在一起称为离散 数学结构,后来由于数据结构的内容比较多,分出来 了,不过最近国外好像有些大学又把它们合并到了一 起,道理当然不用说,可能还是考虑到两者交叉的部分 比较多。比较经典的书我看过的应算是《Discrete Mathematical Structures》了,清华大学出版社有这本书的影 印版。 集合论与数理逻辑部分是由王爱萍教授执教的, 这部分理论性非常强,而王老师的数学背景使得其课程 中严密的推理几乎无懈可击,甚是精彩。图论部分是北 京科技大学的阎庆春老师教授的,趣味颇多,以至于现 在回想起来很容易就能根据他所讲的一些笑话将理论贯 穿于一线。 概率论与数理统计这门课我认为对于计算机系的学 生来说非常重要,但是却被传统的工程数学教学思路绕得 一塌糊涂。连续概率几乎是每一个学校的教学重点,至少 在我们学校是,但是对于计算机系的学生来说离散概率的 重要性是毋庸置疑的,例如在数字信号处理课程中我们就 经常使用离散概率的理论基础。计算机科学中概率论的主 要应用领域有分析网络和分布式系统,随机化算法和协 议,离散时间信号处理等。可惜我概率论学习不够深入, 以致在离散时间信号处理学习的过程中费了不少周折,但 对概率论本身的理解却因此深入了不少。 二年级时,在专业课程的学习上我对自己是比较满 意的。大部分课程的理论考试都在90分以上,而在这一年 中同时也取得了4个学科的100分。分别是面向对象技 术、面向对象程序设计课题实现、人工智能导论和英语 口语。大学期间总共取得了5个满分,其中4个是在大学二 年级。然而到现在为止,我仍然认为理论考试和程序设 计脱钩太严重,虽然面向对象技术理论掌握得比较牢, 但是在参与大课题的时候仍然有晕头转向的感觉。至于 人工智能学科,主要是拜中科院自动化所李小坚博士所 赐,在那半年中最有纪念意义的便是完成了一个用Lisp语 言开发的智能聊天系统。在多媒体技术课程中我完成了 “北京工业大学多媒体教学系统”课题,虽然很简单, 但这几乎是我在大学阶段第一个正式的项目,如果回顾 我实践上的积累,那么这应当算是正式的第一笔??相信你自己,你能行
(大学三年级)
三年级的课程学习比起二年级要来得轻松,更 多的业余时间应当用于为自己确定的专业发展道路 的知识技能学习上,而不能荒废。利用帮助别人的 方法来不断强化自己的技术水平和理论知识是一个 不错的选择?? 经由前面两篇文章的介绍,我认为已经将学习的方 法介绍清楚了。由于是回忆录,便没有必要完整地论述 整个计算机学科。在这篇文章中,除了一些理论和技术 学习之外,我将着重谈谈技术之外的东西。谈谈如何去 用自己学到的知识帮助别人进步??
三年级的学习
进入大学三年级的学习,基本上专业基础课程就结束了,大量的专业课程和专业选修课程成为了学习的重 点。其中包括,Java程序设计语言、计算机原理与汇 编、电子商务、计算机网络、模式识别、大规模可编程 逻辑与数字系统设计、微型计算机接口技术等课程。 模式识别这一学科可谓是计算理论的应用经典,其 中不乏深奥的数学推导,主要用到的数学理论是概率论 与数理统计。这个学科是计算机工程应用方向非常重要 的分支之一,人脸识别技术,球体轨迹问题等经典的应 用都以模式识别为理论基础。我的老师北京工业大学孙 亮教授经常这样戏称模式识别:“何谓模式识别?就是 帅哥美女论!帅哥有帅哥的特征,美女有美女的特色, 两者的分立点便是模式的不同。 关于计算机原理与汇编、微机接口等课程我也要澄 清一下:每一个人(包括非计算机专业),掌握简单的程序 设计理论与技术都比较容易,但计算机专业的优势是: 我们掌握许多其他专业并不“深究”的东西,计算机原 理、体系结构、接口技术等便是。而作为研究计算机科 学的人,不能够深入地理解计算机系统结构,在今后的 发展中也必将受制约。 计算机系学生学习的最大一个悲哀就是经过大学四 年的学习之后仍然不知道自己能做什么或者接下来要做 什么,最重要的原因便是在必要的时候没有给自己做一 个准确的定位。计算机科学分支多如牛毛,不必奢望自 己成为软硬件通吃的奇才。最晚在大学三年级要为自己 的专业发展做一个定位。应当说在大学二年级下学期开 始我的学习就比较有针对性了,主要考虑将计算机软件 理论作为终身的学习和工作方向,程序设计便成了随后 两年半里学习和实践的重点。
关于课余活动与实践
——如何去更好的帮助别人
在正常的课程学习之外,大学三年级做的比较有意 义的事情要算是参加了微软创新杯比赛和组建计算机科 学技术研究组 织了。 微软创新 杯是微软公司 举行的全球性 程序设计大 赛,每年全国 都有几百只队 伍参加比赛。去年我也凑了个热闹去参加比赛,收获颇 丰。首先我们选择的是基于.NET技术的支持二次开发的 网上交易平台,但是由于非典的原因,我们的项目最后 只剩下两个人实际操作。而且项目时间非常紧迫,从我 们排除万难仍然准备参加比赛之日开始,到项目提交, 仅仅8天的时间。而前期我们的主要任务是分别深入地学 习C#与ASP.NET。另一个人在湖南,我在北京,我们 每天就通过邮件和MSN联系,这大概也不能算是结对编 程方法了,毕竟两个人没有实际坐在一起??项目完成 了,8天之内我们不但完成了整个系统,更完成了中英文 对照文档24个。最后的比赛却在学校里面就被淘汰了, 不完全是技术的原因?? 然而我与微软创新杯的缘分远没有结束,在全国总 决赛的时候,我作为全国总决赛的总技术支持为参赛的 20支队伍进行了现场指导和协助调试,在那段时间又结 识了不少新朋友。更有幸见到了我在微软高校信息交流 中心的几个同事。在微软高校信息交流中心的工作主要 是基础科学方面的,最主要的是奉献精神。有些人认为 最好自己把时间集中自己学习,效果才最好。我恰恰认 为在帮助别人的同时,自己的学术理论水平和技术水平 才会更上一层楼,更为扎实地掌握。 一个人的力量是有限的,如果你觉得自己有能力帮 助别人,就应当把你的经验、体会通过各种方式介绍给 你相识与不相识的朋友,这样才让你掌握的知识发挥了 最大的价值。在交流中,你会发现自身的弱点,暴露在 公众场合下的弱点迫使你不断地提高自己。 本着这个想法,我连同几位好友一同创办了计算 机科学技术研究组织,立足于为国内的大学生提供一 些优秀的学习方法,学习体会和原创的学习文章,并 以各种方式帮助周围处在迷惑阶段的学习计算机科学 的同龄人。事实证明,效果是显著的,我不需要做任 何吹嘘, 就请大家到我们的技术社区做客吧! http://www.cstc.net.cn 。在这里不得不感谢一 同和我走过最困难时刻的每一位兄弟姐妹。是你们的 无私奉献造就了一个网上学习交流的天空。真诚地感 谢你们的贡献。 在创办了计算机科学技术社区后,每周可能要回几 百封邮件,回答的问题相对集中在计算机学习和英语学 习上。虽然确实花了我不少时间,但对于我自己来说也 是一个总结和再学习的方式,在帮助了别人的同时又取 得了进步??收获的季节
(大学四年级)
四年级的课程学习是理论与实践的一次升华,毕业 设计更是难得的锻炼机会。四年的努力不会白白付出, 坚持不懈的我们在这一时刻多多少少都会有些收获。面 对竞争激烈的社会我们应当做些什么? 四年级的课程学习 四年级的学习仍然是紧张的,大学四年级的我们和 其他很多学校不太一样,仍然有很多课程需要学习,而 这些课程往往是很重要的。主要有:计算机体系结构、 计算机控制、嵌入式系统技术等等。而在这里特别要提 醒很多同龄人注意的就是大学四年级的理论课学习。有 些人认为到了大学四年级赶快找一份工作就算了,考研 的忙着考研,都无暇顾及课程的学习。有些学校甚至从 大学四年级的第一个学期开始就像放风筝一样把学生放 出去,到处找工作。这完全是和大学本科四年的课程设 置目标不符的。包括我们学校在内的一些学校之所以在 大学四年级还安排很多课程学习并非没有道理,正是因 为我们在前三年的课程学习中打下了足够的基础,才有 能力继续学习后续的课程,所以学校才把一些难度比较 大的科目放在大学四年级,而如果这个时候不投入足够 的精力,就很可能浪费了本科学习最重要的一部分知 识。例如上面提到的三门课程,在整个计算机科学学科 建设中都有相当重要的地位与作用。 嵌入式技术是我最感兴趣的一块,在课程学习中, 我们分析了大量的嵌入式软件源代码,印象最深刻的是 u c / O S 实时嵌入式操作系统的源代码。另外就是 ucLinux。在看到老师拿着一个很灵巧的设备,上面跑着 他自己移植的Linux系统的时候,很多同学都表示出了无 限的兴趣。然而我更喜欢NetBSD嵌入式系统,它有优秀 的跨硬件平台性能,无须对核心代码做太多的改动就可 以从一个平台移植到另一个平台之上。看到小到手表, 大到服务器和专用计算机上都运行着NetBSD系统的时 候,你也会和我一样喜爱它,并立志在这个领域做出一 定的贡献......至于嵌入式技术的重要性我认为无需论 述,在未来的计算机技术发展中,嵌入式技术将是非常 重要的一个发展分支,主要表现在各种设备的嵌入式系 统与应用程序的开发与应用,例如洗衣机上的嵌入式固 件、飞机上的嵌入式操作系统等等。另外值得特别说明 的就是移动应用系统与其程序的开发,必将成为计算机 技术发展的主流之一。 关于计算机体系结构的学习我认为大家应当和计算 机原理、微机接口等课程结合在一起,构成一个完整的 计算机知识体系,即使你做程序员,对于计算机体系的 深入理解也会使你更好地操纵计算机,使你的程序设计 思想更上一层楼。 计算机控制是一个综合性的学科,每当你每次看到 计算机的时候,你都感觉自己能够比昨天控制它多一点 点。本着这种思想去学习计算机控制才会取得较好的效 果。在课程结束后,我们设计了一个简单的计算机控制 系统,主要是控制步进电机,通过实践,使我对理论的 学习有了更深入的理解。
收获的季节
9月份是一个收获的季节。2003年9月26日是一个值 得纪念的日子,源于我在微软技术上的一些技术储备, 协助微软高校关系部做了一些工作和热心帮助社区中的 同龄人进步,在这一天我被授予了微软.NET全球最有价 值专家[Microsoft MVP]的称号。是的,对于这个荣誉, 每一个被授予者都感到无尚的光荣。而对于我来说,我 认为它是对我不断帮助别人进步的肯定,所以便格外珍 惜。每当周围的人需要帮助的时候,我都多了一条理由 劝说自己应当帮助他,因为我是一位MVP。 也是在9月份,我发表了在杂志上的第一篇文章《计 算机科学数学 理论浅谈》, 随后又发表了 6篇左右的文 章。而到了大 学四年级第二 学期,在编辑 部a m o n e 和 myan先生的2 0 0 4 年5 月微软校园技术教育大会邀请下有幸加入了《程序员》杂志社。 2004年5月16日,由我和MVP闫诺组织的微软最有 价值专家校园技术教育大会在我的母校召开,也为我的 大学学习生活作了一个总结。这大会给我的感触很深, 中国区北京、广州、江苏等地的20多位MVP都义务地为 本次大会的举行做出了最大的努力,很多MVP为了准备 第二天的讲座彻夜未眠,目的只有一个,帮助更多的大 学生了解业界最新的发展技术,为他们的学习提供一些 有意义的建议。大会中同学们表现出来的对技术的渴望 和对前途的迷茫使我更加坚定了力所能及地帮助周围同 学的信心?? 临近毕业的日子大家都很清闲,看看电视,打打 牌。我却又给自己安排了一个很大的挑战,与国内一名 知名译者张晓坤先生一同开始翻译《Agile & Iterative Development》一书,据说这本书是敏捷开发领域一本非 常重要的著作,于是不敢怠慢,工作安排是每天14小时 的翻译,最后总算对读者有一个负责任的交待??
关于毕业设计
四年级下学期最重要的事情莫过于毕业设计,我 的课题是北京市自然科学基金的一个子课题“基于 ArcSDE的Web要素服务软件的设计与实现”,在导师 喻国宝先生和学科部主任廖湖声先生的教导下,对空 间数据库技术和面向对象理论有了深入的学习。我的 毕业设计课题在我目前所在的研究生课题组进行,过 程是艰苦的,每天早8点到晚11点,除了吃饭时间都泡 在了实验室,周末也很少休息,当然,这个阶段的收 获也是很多的?? 教训多产生在这个阶段的课题研究过程中,一定不 要三心二意,否则很可能不能按时完成课题。很多同学 在这个阶段都忙着工作,最后毕业设计就从网上买一份 现成的敷衍,实际上这半年的光阴是本科难得集中学习 和研究的时间,浪费了确实可惜??再谈谈我自己的经 历:2004年4月份,微软邀请全球的MVP到西雅图参加 MVP全球峰会,由于处在毕业设计课题研究的初始阶 段,很紧张,所以我毅然放弃了去美国3天学习交流的机 会。它保证了我在课题准备阶段投入足够的精力,现在 回想起来仍然认为是正确的选择。虽然组织微软MVP校 园技术教育大会对同学们来说是一个不错的学习机会, 对我自己也是一个提高,但是组织一个一整天,26场讲 座的会议需要做的工作不计其数,而正好赶上我的毕业 设计。如果这个会议在别的一个时间段,可能影响就不 是很大,但是不应当占用毕业设计紧张的学习时间,虽 然我抓紧了其他的几乎一切的时间,但是对毕业设计的 进度还是造成了很大的影响,以至于最后的工作没有能 够按照要求全部完成。得到的经验教训就是在研究生的 学习阶段要投入120%的精力刻苦地钻研。
未来的路,抉择
本科毕业,我有很多的路可以选择。可以得到一份 很好的工作,可以去丹麦技术大学留学,学习片上系统 设计,也同时被保送到母校北京工业大学计算机学院学 习计算机软件理论。工作对我来说并不是一个明智的选 择。现在看来,很客观地说我自己还处于一个很初级的 学习阶段,理论基础仍然不扎实,理论转化为实践的能 力也需要不断提高,仍然没有做到最好的自己,仍然需 要几年的深造与学习。最终,由于经济原因,我选择了 留在国内读研究生,并不是畏惧外面的世界,而是希望 在这几年有足够的理论学习积累和技术实践,并在这段 时间做一些经济上的积累,计划在硕士毕业后继续攻读 博士学位。然而路就在脚下,需要一步一步踏踏实实地 走下去。本科阶段的学习现在回想起来仍然荒废了大量 的时间,我给自己拟定了一个计划便是从本科毕业到研 究生毕业这段时间内将主要的精力全部集中在理论和技 术的学习上,争取不浪费任何时间?? 临近毕业了,同学们在一次聚会中都哭了,人生 有几个四年呢?大学本科生活的四年,就只有一次, 四年了,走过黎明前的黑暗,黎明在向我们招手。手 里拿着学士证书,再看看硕士生录取通知书,奋斗的 四年就这样结束了,新的起点又摆在了我们每一个人 的面前??。
主编点评
哲人说过,“当一个人开始回忆往事,表明他已经失去了前 行的勇气!”当作者们在我们的邀请下,开始回忆他们的青春故 事时,我们却看到他们对未来的希望依旧,继续前进的勇气依 旧。看到他们的故事,我也不禁想起自己的大学。 生活是你自己的,大学也是你自己的。 我们殷切希望年轻 的大学生朋友们,能够从他们的大学学习生活中得到些许启发, 寻找到自己的目标,不再迷惘! 最后,我还是想拿保尔的这段名言与大家共勉:“人最宝贵 的东西是生命,生命属于我们只有一次。人的一生应当这样度 过,当他回首往事的时候,不因虚度年华而悔恨,也不因碌碌无 为而羞愧??”

你可能感兴趣的:([2004.CSDN.04.10][特别策划]昨天,我的大学学习)