作为栋哥实验室里的学生,自然对我们学校的软工实践课有所关注。最近布置了第一篇作业,三个班里的博文我也看了起码有百分之七八十。自己对作业中提出的一些问题也自己有一点思索,故有此记录。


  • 当初你是如何做出选择计算机专业的决定的?

我以前的总结中也写过,我是转专业来计算机的。首先我与大多数人相同,高三毕业的时候,面临志愿填报,十分地迷茫。但我又与大多数人不同,做出选择计算机专业的决定的时候我是大一下,那会儿对于心中想要的大学生活有了一个更加清晰的概念吧。

刚进大学的新鲜感过去之后,我大一扑在学习上的心思是占很大比重的。我一开始的专业是电子系,大一上学习的科目有高数、线代、英语和一些历史之类的基础课,专业课有一门导论,以及一些基础的电工实训。说实话学习体验与我所想相差甚远,基本上还是跟高中没什么两样。我个人倒是没有许多同学抱着的“学高数、线代有什么用”这类想法,因为我这个人还是蛮喜欢在搜索引擎上搜东西来看的。有一次就将“线性代数”作为关键字搜索了一番,了解了这是一门在工科中非常重要的基础数学课。上课的时候我非常认真听,不过我总感觉老师好像没什么时间似的总是讲的很急,课后还要拖堂,也经常说“这个东西我们没有时间讲了”这类的话。不过,到了期末考试前,我的心思也人云亦云地停留在了刷历年卷子,把每个题目的模板、解法牢牢记住,然后上考场。虽然最后考得不错,但我始终觉得我的线性代数学的不好、不深。这个学习过程岂不是和高中没什么两样?

再说说英语课吧,大一时我上了两位国内英语老师的课(之后我都选择选外教的课了)。第一位老师的课我觉得很不错,每节课都听的津津有味,上课做笔记、课前预习、复习、做题目,整个课程下来我都觉得非常轻松而且主动性很强,说实话这里面有百分之八十的功劳是老师的,期末考也考得不错,82。之后的第二位上课上的巨烂,我一点听的兴趣都没有,只是在期末考前把那些考试范围里的题做了,倒是考了86。这方面(教学、成绩)倒让我觉得大学是很个奇怪的地方。我觉得,掌握了考试方法就行,成绩不会差,倒是真的能学到什么是个疑问。

经过十几年应试教育的磨难,进入大学的我是十分渴求一种新的学习状态的。然而,在寒假里我思考大一上过去的半年时光,心里只有失望。于是我就寻思着寒假要利用一下,不能再像以前那样假期只是用来吃喝玩乐。这里引用 B.刘帅:在失望中寻找希望 中的一句话:

计算机这种奇妙的东西,相信没有哪个学理工科的男孩子不热爱吧……

我正是对 IT、互联网、计算机感兴趣,便选择了电子系(因为觉得沾边而且分数也适合)(为什么不选择计算机系……)家里在我很小的时候就买了电脑,但可惜的是我以前都没接触过程序设计。电子系大一下就有 C 语言的课程,因此在大一上的寒假,我从图书馆借了一本书回家,搭配着网络上的各种 C 语言教程,开启了自学之旅。不得不说这次寒假的自学经历极大程度地改变了我,在学习 C 语言有关知识的时候,我非常地享受那种探索的过程,以及成功运行出结果时的快感。同样的,我依旧在网络上搜索着一些关于计算机、编程、C 语言、ACM 这种话题的内容,在知乎上关注了“温赵伦”,了解到了“谭浩强”,后来为了更加深入的学习 C 语言,我买了《K&R》看了一遍,并把里面的示例代码和一些习题实现并运行起来。而且经过大一上的摸爬打滚,对于培养计划里面的课程也大概略知一二了,经过这次自学,更加坚定了我选择计算机专业的决心——想到计算机专业中去了解更多计算机科学的知识。更重要的是,去拥抱一种跟高中不一样的学习状态。

  • 你认为过去两年中接触到的课程是否符合你对计算机专业的期待,为什么?

到目前为止,已经在计算机系呆了一年了,对这个问题也是有点感触。我的答案是,目前为止学校提供的课程没有给我这方面的东西,感觉很遗憾。但我在网络上搜索的一些国外大学的计算机科学教科书,例如 csapp、sicp、clrs ,对这些书的学习,符合了我对计算机专业的期待。

B.刘帅:在失望中寻找希望是所有文章中我最有感触的一篇,因为他提到了大学中学习过程的迷茫:

我像高中阶段一样,只学习那一点点可怜的上课讲的知识,几乎不看教材、不怎么看课外资料,课后的作业基本是独立完成,却从来不是主动地思考、从各个可能的角度出发寻找到解决问题的方法,而是沿着老师讲过的固定的模式,或者寻找类似的解答方法,然后稍微变换,从而完成解答。我总是认真听老师讲课,每次上课从来不预习,从来不会计划这学期我要干什么、这堂课我要干什么,我机械地听着每一节课,机械地在迷糊中重复着作业、考试,我几乎每一个学期都会拿到奖学金,可那又怎么样呢?

这位作者在后面记录了一次让他震撼的蹭课,清华大学朱仲涛老师的 DS 课:

当时的感觉只能用两个字来形容:震撼。…… 他的讲课风格非常独特,他只用1/5的时间简述一下要讲的内容,剩下的时间都是当场写程序。……每遇到一个算法,一边写程序,一边讲解,不懂就将程序的运行结构拿出来分析,并不时地穿插离散数学、概率论、内存管理、C语言、汇编语言等知识,几乎将我们学到的东西非常恰到好处地拿出来,让我们从心里面觉得原来所有的知识是连贯的,我们之前的积累都是有用的,并且富有成就感。

很可惜的是,我在课堂上的学习过程中完全没有这种体会,真是一件很可惜的事情。拿算法和数据结构来说吧,这是一门对于计算机学生十分重要的课。课堂上基本上只有坐在前排的少数人在专心致志地听,而且越到学期末,来听课的人就越少。教材在我看来就是完完全全的一本烂书,那 AVL 树是我见过最烂的代码,全程一个字母的变量,逻辑用了极其反人类的写法。同学上课听不懂的,回去翻书看到这代码也只能吐了。我一直认为书这么烂是不是应试什么的,不过栋哥给了我一番解答:这书十多年来没有经过更新换代,十几年前也许算不错的书,然而到了现在,别人都在进步,没有更新换代,只能逆水行舟不进则退。我在看博客的时候,很多人(可能有三分之一到一半)提到“要重新学习算法和数据结构的知识”,是不是反应了教学存在一定的问题。

刘帅对自己的大学生涯做总结时提到:

我的老师没有给我必要的关键性指导,但,不可否认有一些同学,他们总是先知先觉,他们总是会问“为什么这门课程要这么上”,他们总是会思考自己是不是走在正确的路上,于是他们大量丰富自己的实践,从而也优雅地完成了本科学业。但遗憾的是,我和大部分我的同学们,就这样,因为缺乏必要的指导,迷迷糊糊、庸庸碌碌地过完了本科。

我觉得许多现在感到迷茫的同学,如果能接触到更好的教学——比如前面提到的朱仲涛老师那样子的高质量教学——就能好似任督二脉被打开一样,不会到了大三还像什么东西都没学一样。很可惜的是,好的教学不是到处都有的。因此很感谢邹老师带来的软件工程的教学方法,改变了一门原来是只念PPT的课。

这位作者说西电被誉为“中国的 MIT”实在是太过,同样,福州大学是不是福建计算机最强我不知道,但被誉为“南方清华”什么的,在我看来实在是过誉得太严重。

虽然我没在福大的课堂里获得这些东西,不过我在顶尖大学里的人写的教科书中得到了这种感受。计算机“科学”的很多方方面面的知识点让我着迷的,看书经常有醍醐灌顶的感觉。许多同学非常喜欢做出实际的东西来吧,比方说或网页、APP、UI这种东西,我觉得很不错。但我个人倒是更注重大学里的一种学习过程,要与高中做到不同。毕竟,这个专业的名字叫做“计算机科学与技术了”,包含了科学两个字。科学啊!science!science 是有很多东西可以细嚼慢咽的。看 csapp、sicp、clrs 简直是一种享受,我喜欢那种学习的过程,追求的也是这种过程。因为经历了应试教育之后,本身就对真正的学习有一种渴求。


读了K.大佬给出的职业规划建议中主人公的经历,只能说两个字:佩服!非常敬佩主动走出舒适圈为更美好的未来奋斗的人,这种敬佩是从内心油然而生的。

E.是否对大学的基础学科存在的必要性有疑问?:“勿在浮沙筑高台”,这一直是我内心的追求,不过一直没有找到一个好的说法,看来就是这七个字了。虽然我不是特别注重打代码做项目,但我前面统计了我大一就打了大概有一万行代码。我觉得以后有的是时间打代码,首先要的是好好打基础。有的人打完基础觉得自己有一个idea很cool就跑去创业了,有的人就选择了读研继续学术生涯,都可以。但如果没好好打基础,真不知道以后要花多少时间来还债,本来可以好好把握的时光浪费了真是很可惜。

 
http://www.cnblogs.com/ZCplayground/p/7455254.html