Berkeley Memory

随着《编译原理》考试的结束,我在伯克利(UC Berkeley)一学期的交换留学也结束了。8.22-12.14的这四个月,伯克利这所大学的风格也在我的心中日渐鲜明。它顶着计算机学科顶级学术重镇的光环,同时却是一个踏实稳重、严谨治学、友好和善的学术天堂。从学校的行政设置,到每一位教授的为师风尚,再到学生们的性格品质,都让人赞叹留念。

校园风光

landscape

学生活动

activity

图书馆自习区

library

我选的三门专业课都属于计算机学科的范畴,对应于国内高校的课程内容,分别是编译原理、人工智能导论和操作系统。这三门课兼具广度与深度,在同一个学期上负担还是有些重的。

编译原理的人数不到100,有一名教授和三名助教共同负责课程的教学。每周有两次课,一次课的时间是1小时20分钟,中间没有休息时间。一个学期我们总共有七次书面作业,三次项目(编程作业),两次期中考试,一次期末考试。其中,负担最重,但同时也让我最有收获的,是三次项目。项目的任务是一步一步实现一个编程语言的编译器,这次我们是要实现ChocoPy的编译器,这个语言是每过一段时间就会换一次,而今年是ChocoPy被使用的元年(所以我们做项目的时候总会遇到一些bug,会增加我们做项目的难度,不过报告一处bug会获得加分)。ChocoPy是伯克利的教学团队自己创造的一门编程语言,专门用于编译原理的项目作业,为了详尽描述这个语言,老师和助教写了这个语言的38页的参考指南,并且随着课程的进行,会一直更新参考指南的版本,由此可见伯克利对课程作业的设置是非常用心的。项目是组队进行,可以自由选择队友,两人一队逐步完成三个项目。回想起第一个项目我调试bug调试到凌晨三点,却仍然找不到bug而在自己的房间里抹泪,第二天早上仍然早早起来继续做项目,因为当天晚上十二点就要截止;第二个项目因为连续几天凌晨两三点睡,且不得不在白天整日坐在电脑前编程而腰酸背痛,甚至有些发烧;而第三个项目,我们吸取了前几次的教训,从而使得我们的工作效率大大提高,提交的时候并没有像前两次那样,赶在ddl之前的几分钟才交,反而提前了一两天就做完了,并且通过了所有的潜在测试,拿到了满分。

老师编写的指南

reference0
reference0

在学习的过程中,如果遇到各种问题,都可以在一个叫piazza的平台上进行提问,那里有同学、助教、老师的密切互动,可以互助解决疑惑。老师、助教,还有同学们会非常细致地回答你的问题,即使那个问题很简单,甚至老师在课上已经讲过。

课程论坛

piazza0
piazza1

我的编译原理的队友是一名伯克利的本科生,他有着褐色的皮肤,微卷的黑发,一米九几的个头,说话很柔和、淡定。在做项目的时候,他很注重效率,不会一开始就上手,而是细致地阅读ChocoPy的参考指南和项目的实现指南,并在文档中做一些笔记,此外,他还会自己阅读其他的线上资料。在做项目的过程中,他会把我们讨论的一些有难度的点和一些易错点记录在本子上,这样下次见面的时候就能很快回想起我们上次见面所讨论的内容,从而能够继续我们的进程。遇到一些瓶颈,我们更倾向于自己寻找解决的办法,有时候我们一下午的见面仅仅讨论出了项目中的一个小小的问题的解决方法,但是我们依然很开心,觉得很有收获。

伯克利的教授非常和蔼可亲,学术水平极高,且很负责任,这是我和我的同学的共识。上课的时候他们会以一种非常尊重学生、非常重视互动的态度进行授课,同学们在课堂上可以随意举手问问题,而老师们也会和他们共同探讨,并且会时不时停下来问同学们刚刚的内容是否有问题。操作系统的教授 Ion Stoica是业界的著名学者,也是Apache的联合创始人。这一个学期,他在上课的时候衣着十分朴素,我注意到他这一学期都穿的是同一双鞋子,并且是一双球鞋。下课的时候,有同学请教他问题,他会与学生亲切地讨论,有时候甚至会与男生“勾肩搭背”。

伯克利的校园充满了人文气息,在这里,你会感受到如家人般的温暖。有各种各样的组织关爱你的身心健康,在日常学习中,会有”peer advising”,也就是同学之间互相诉苦,互相提供建议;在复习周,很多地方都贴上了复习的锦囊妙计,比如:想知道如何才能在期末考试中取得A吗?充足的睡眠!复习周的图书馆里,会有一些学生组织发放免费的零食、水果;甚至在两天前考人工智能导论的时候,由于是8点就开考,考虑到很多人来不及吃早饭,有一个学生组织在早上七点半到达考场,送来了一箱面包。由于加州山火的肆虐,有好几天伯克利校园内的空气质量都不是很好(PM2.5指数200左右),于是学校取消那三天的所有课程和考试,人工智能导论的一次期中考试就因此取消。

伯克利的学生们有个性、有自己的思想。这不仅体现在学术上,还体现在其他方面,比如操作系统课的ppt上有一个动漫插图,上面是两个女生穿着有些暴露的女仆装,抱在一起。这幅漫画是为了形象地说明“死锁”的概念,但是却在piazza上引发了一系列激烈的讨论。一个学生匿名发表评论,认为这幅图有轻视女性的嫌疑,并不适合放在课件里,而一些学生发表声明说并没有这样觉得,且认为漫画让课间变得更有趣,并解释说在漫画中这样的形象很常见,可能只是那位举报的学生不喜欢动漫罢了。而那位举报的学生却说,他正是在观看动漫的过程中才发现了自己男同性恋的倾向。在复习周中,有一些学生自发组织“裸奔”活动,以释放压力,今年我的一些同学们就亲眼目睹了盛况。

伯克利让我感受到美式幽默。在伯克利学习,是不会感受到枯燥的。在可以讲话的自习区,会有非常激烈的讨论声,整个学习氛围十分热烈。如果遇到不懂的问题,会有同学、助教非常乐意与你一起讨论。同时,你会发现一些美式幽默。比如在考试中,当你做完一道问你如何纠正一个错误设计的题目后,突然出现一道问你会不会裁掉造成这个错误设计的员工(虽然是0分),而参考答案是:想想他的家人,还是仁慈一点,不要裁掉他。再比如,试卷上会让你画“笑脸”或者“哭脸”来反映你考试前和考试后的心理状态。还有就是会在试卷的最后让你画一下你的助教。

paper0
paper1

另外,在伯克利最宝贵的回忆,还包括认识了一些好朋友,比如操作系统项目的3个队友、编译原理的队友和人工智能导论项目的队友,以及我优秀的室友们,从他们身上我都学到了很多东西。在一起奋战项目的过程中,也发生了许多欢乐的事情。除了学习,我们还会互赠家乡的小礼物,还会一起去看NBA、一起去买自己做饭的食材。

如果有学弟学妹也想去交换的话,我是非常赞同的,因为不仅能学习到专业的知识,还能在多方面提升自我,是很值得的。有一些学弟学妹担心美国的安全问题,我个人觉得不需要过度担心,但也不能放松警惕。在校园内是很安全的,在上学、放学的路上,可能会遇到一些流浪汉,大概十几米就可以遇到一个,他们一般不会故意伤害你,当你路过的时候可能会向你乞讨,你可以给他一些硬币或者什么也不做。美国总体来说是一个自由、包容的国家,允许各种各样的人存在。在校园里,你会看到在路边弹钢琴的人,会看到边走边弹吉他的人,会看到好几个人聚在一起唱歌跳舞,也会看到一些人自发的举行抗议各种制度的演讲,我在交换期间就曾目睹伯克利后勤人员因不满待遇低而罢工。

还有一些学弟学妹会关心住宿、出行方式等。伯克利校园内没有学生公寓,所以大家都是在外面租房子住,一般是四五个人一个套间,有客厅、厨房、卧室等。平常吃饭的话可以选择自己做,也可以去学校周围吃,实名推荐“古月飘香”,一份午餐7刀左右,很美味,性价比很高。然后我住在伯克利南边两个街区的位置,一般上学是先走一段,然后坐公交车。晚上的话有shuttle,相当于校车,安全又舒适,又由于固定时间段到达,所以很方便。一般上/放学在路上花费的时间大约20分钟。(补充:每月住房租金约1000刀,每月食物花费约500刀)

总之,与伯克利的相遇,给了我非常美好的一段回忆,这些回忆,会陪伴着我、影响着我,走向之后的道路。