星期三, 十一月 21, 2007

华盛顿大学生活纪事(四)

数学和计算机科学的本科项目

华盛顿大学的计算机科学系在美国名列前茅;数学系也培养出很多出色的毕业生。在前面(华盛顿大学生活纪事(一)至(三))提到过,在这里学生可以大三再选择科系,以避免学到自己不真正喜欢的科系。在这篇文章里我将介绍我对计算机科学和工程系(Computer Science and Engineering)以及我们学校提供的许多数学和计算项目的了解。感兴趣来读本科和对计算机科学或数学感兴趣的同学们可以参考。所有内容只代表我的个人见解,而这些内容也有可能随时改变,我会在文末提供官方的网站和联系人信息,而我更多地会介绍一下我的经历和感觉。

选择专业

由于入学以前的计算机和IT经验,我的目标一直是计算机和IT相关的学科。在华盛顿大学,这些学科包括计算机科学(Computer Science)、计算机工程学(Computer Engineering)、数学(Mathematics)、应用数学(Applied Mathematics)、统计(Statistics)、物理(Physics)、应用和计算数学(Applied and Computational Math Sciences)、信息科学(Informatics / Information Science)、商学院信息系统选项(Business School Information System Option)等等。

在这些专业里面,计算机科学、计算机工程学、应用和计算数学*、信息科学以及商学院是属于相对比较难进的科系(competitive admission);数学、统计是需要上一些固定要求的课,通过了就可以进的专业(minimum admission requirements);物理是开放专业,随时都可以申请成为物理系的学生(open admission)。

在我考虑去学习这些专业里面任何一个之前,我先调查了这些专业都需要什么要求进入,最后得出结论,除了物理系之外(open admission),其他基本都需要完成微积分和工程物理。因此前几个学期我就安排上这些课。同时,继续去查资料和断定那个学科最适合自己。

作为一个微软最有价值专家,信息科学和商学院信息系统专业所学的内容一定很容易理解。但这些学科的着重点是应用程序设计和一些人文的科学,和我的目标并不在一条线上--我想学系一门纯技术的学科。因此我放弃了这两个学科。如果对应用程序设计与开发、科技对人类的影响感兴趣,这两个学科不免是很好的选择。他们之间的不同是商学院信息系统专业的学生可以接触到更多的商学院的科目,比如选择会计、市场或管理销售链等等的课;而信息科学的学生有更多的机会学习应用程序开发的技术科目、这些应用程序对人们的影响的研究以及如何改进等等的内容。

在排除了这两种选择之后,很快我又排除了去物理系的可能性,因为我并不对计算机硬件、游戏和动画编程或其他物理相关的科目感兴趣。而且上了第一学期的物理课之后我对它并没有多大的好奇心和兴趣。如果对计算机硬件、机械工程、电机工程等科目感兴趣的同学,同时学习物理会有一些帮助。

而统计,由于以前没有上过它的专业课,也没有过多的兴趣。学习统计对计算机科学有一定的作用。然而我的未来目标并不是做研究(不会走读博士和做科研的道路),而是做产品,所以我不想让自己专门去学统计。如果对精算感兴趣,学习统计会有帮助。

最后剩下计算机科学和工程学、数学、应用数学以及应用和计算数学可以选择。要注意的是,在我的理解中,华盛顿大学没有应用数学的本科项目。应用数学科系只提供更高等的教育。而应用数学的本科项目,则是由计算机科学、数学系、统计系和应用数学系共同提供的应用和计算数学专业。

面对计算机科学和工程学、数学和应用和计算数学这三种选择,我想了两种方案:一个是攻读计算机科学和工程学、数学双学位;另一个是读应用和计算数学(或许和计算机科学和工程学一起双学位)。

但由于学费昂贵,我的原则是上最少的课毕业而学到有可能限度之内的最大量的知识。所以我发现如果读双学位,我可能需要5年来完成整个本科;而如果只读一个在我的情况下只需要3年。但如果只读一个,读哪个呢?

我想了一下,计算机科学和工程学会充满着科学、技术内容。数学会是计算机科学的基础。而计算和应用数学正好包含一些计算机科学的课程,一些统计的课程,一些应用数学的课程,和一些数学的课程。这正是我想要的。通过学习这个专业,我可以得到充足的数学、统计基础以及足够的计算机科学知识,而且还能(在我的情况下)3年毕业,何乐而不为。

因此我提交了申请,最终进入了这个专业。

专业学习

进入专业后的几个学期里(我们使用季度制,每季度作为一个学期,一年4个学期),我上了一系列的计算机科学课程,感觉学到自己想学的知识。应用和计算数学专业提供许多选项,我选择了和计算机科学以及数学关系最紧密的“离散数学和算法设计”方向。因此下文提到的应用和计算数学专业都暗指这个方向。

说到计算机科学的课程,华盛顿大学提供3种类别的课程:入门课程、非专业课程和计算机专业课程。

入门课程包括很多工科科系录取都需要的CSE 142 Computer Programming for Engineers and Scientists I 和CSE 143 Computer Programming for Engineers and Scientists II。入门课程还包括一些当下流行的技术的课程,比如有时候会提供Ajax编程、网站编程的课程,但并不是经常有。一般来讲,CSE 142和CSE 143是每个学期都会提供的。

非专业课程是计算机系提供,为非计算机专业的学生设计的课程。这些课程和计算机专业课程基本一样,只是减少了其中数学的包含量。某些课程例如计算机系统,降低了难度。

计算机系专业课程是只有计算机科学和工程系的学生以及得到特殊许可的其他学生才能选择的课程。这些课程有较高的技术含量和数学含量。

应用和计算数学系的学生既可以通过上非专业计算机课程,也可以通过上计算机系专业的课程来满足毕业需求,相对比较灵活。但如果没有同时进入计算机科学和工程系,那么要想上计算机系专业的课程则需要特殊申请。除非成绩很好或有特殊经历,否则能申请到的几率不大。然而非专业计算机课程事实上提供了足够的信息和知识;缺少的那些数学内容对一个数学相关专业的学生来讲并不一定需要。

应用和计算数学专业的学生需要上的计算机科学课程包括:数据结构和算法(Data Structures and Algorithms)、编译器原理(Compiler Constructions)、操作系统(Operating System Concepts)、算法和计算分析(Algorithms and Computational Complexity)、人工智能(Artificial Intelligence)。

除了计算机系的课程,应用和计算数学专业的学生还需要上指定的数学课程、应用数学课程、物理课程和统计课程。其中一些比较有趣的数学和应用数学课包括离散模型(Discrete Models),线性代数(Linear Algebra),数值分析(Numerical Analysis),数学论证(Mathematical Thinking)、线性编程(Linear Programming),非线性编程(Non-linear Programming)。

必须要上的物理课包括初级力学(Mechanics)、电磁学(Electromagnetic)和光学(Optics)。要上的统计课包括第一学期的统计(Probability I)和工程和科学的几率和统计(Probability and Statistics in Engineering and Science)。

相信上了这么多课,一定很充实。每想到这里的时候自己就充满干劲。因此我认为,大学一定要选择自己感兴趣的科目,这样才会效率倍增,学得更好。

非专业的相关课程

应用和计算数学专业还需要学生上一定数量的非数学、计算机类课程。我相信选择信息科学里面的一些课程一定会有帮助。其他可系也有一些很经典的课程,就像如下所举出的。
  • TC 310 Introduction to Communication Design: 专注于内容设计、网站设计、以用户为中心的设计(User Centered Design)和可用性(Usability)。历史上工程师设计的用户交互界面总是令专业设计师摸不着头脑。通过学习这门课可以提高设计能力。同时,这么课的项目会使用Word, Powerpoint, Visio, Photoshop, Illustrator, Flash和Dreamweaver (为了做CSS而使用)。很实用。
  • TC 319 Surveys of Concepts in Human Computer Interaction: 这个课主要以一个讨论的形式进行,讨论内容是用户计算机交互(HCI)的研究。收获颇大。学生会被分成小组。我们小组的项目是一个手机插件让手机在会议的时候自动变成静音,在结束后自动变回原有设置。这个功能在很多现在的手机里面已经存在,然而我们分析了目前这些功能的可用性缺陷和设计缺陷,从这个基础上进行新的设计。
  • TC 455 User Interface Design: 这是我在华盛顿大学最喜欢的一个课程。教授是一个非常著名的发明家,有许多自己的专利,在华盛顿大学同时是好几个科系的教授。这个课专注于用户界面设计,学生会被分组,每个组会实际地去设计一个产品,在学期末审核prototype。教授总是强调重要的是过程。通过上这个课之后,不但拥有了专业用户界面设计师的思路、头脑和懂了这些流程,还真正实践了整个过程,从实践和错误中学到了真理。此外,完成的作品也可以展示给公司,证明自己的设计能力。我的小组在这个课程里面设计的是一个家庭远程控制系统。

相关的课程还有许多,学校网站是一个很好的寻找这些信息的地方。寻求导师(advisor)的帮助也是一个好的方法。导师总是可以告诉我一些我不知道的信息。

总结

总的来说,在这篇文章里我概述了选择专业的思想过程和华盛顿大学的计算机、数学相关科系的信息。希望本文能为对相关科系感兴趣的同学们提供帮助。事实上,在美国其他学校里一般都会提供类似的课程,因此即使你去了其他的学校,而你想去上本文提供的一些课程组合,只要不影响你的毕业要求,都是可以去注册的。在那种情况下,请咨询您的本科导师,来寻找合适的对应的课程。

附录

华盛顿大学计算机系:http://www.cs.washington.edu/

华盛顿大学应用和计算数学系:http://www.math.washington.edu/acms

华盛顿大学数学系:http://www.math.washington.edu/

华盛顿大学应用数学系:http://www.amath.washington.edu/

华盛顿大学统计系:http://www.stat.washington.edu/

华盛顿大学物理系:http://www.phys.washington.edu/

华盛顿大学信息学院:http://www.ischool.washington.edu/

华盛顿大学商学院:http://www.bschool.washington.edu/

华盛顿大学Technical Communication: http://www.uwtc.washington.edu/

------------------------
*应用和计算数学专业在2007年春季开始从competitive admission改变成了minimum admission requirements的科系。

2 Comments:

Blogger malie said...

终于更新了,看来你这一年的确很忙活啊!
看到你有进步,为你高兴!

9:46 下午  
Blogger Nuo Yan said...

谢谢!我会争取更加频繁地更新,近期再写一篇。

9:28 上午  

发表评论

<< Home