我的美本经历

我的美本经历
来地里几个月了,感觉这个论坛比较靠谱,感谢Ed同学的推荐。

我不喜欢发帖,主要是觉得自己真没啥好说的。来美国快四年了,经历我也有点,可感想和总结我真是搞不出来;最实在的感想就是家里父母老人年纪越来越大,不知啥时候能回去尽孝。本来不想发这种没什么信息量的帖子,但是我发现一个严重问题:在地里,没有积分你就相当于残废-很多有意思的帖子看不了。我非常不理解设积分限制的原因,既然你愿意分享,让所有人看到不好么?难道你还指着这帖子赚钱?w大呀,适当给我这样的菜鸟点活路吧!没办法,发个水帖,八一八我在美国的经历,赚点积分。大家有空看看解解闷就好了,别较真,就是给大家打发时间用的。

先说下个人背景吧,本人07年高中毕业,本来压根没想本科出国,人老实,英语又不好。但是高考考的不太好,去了本省一家没什么名气的一本,读数学专业。当时觉得学的东西很少(第一年真正有用的课就是上学期数分解几,下学期才开了高代)就有点呆不住,从父母那听到了留学的风声,就开始边读边DIY整留学的事儿,国内读了快一年,来了美国录取后退学。08fall来美,在美国中西部一所ECE排10多名的学校读CompE。11年12月毕业,12 Fall读CS的phd。

下面尽量详细说说。

当年我什么都不懂,自己弄得比正常人慢好几拍,2月中旬才考的T,3月初才寄的材料,一共申了三所学校,我读的这所是其中唯一录取我的,也是其中排名最好的(当然也只是相对好)。当年还是有点戏剧性的,我记得5月10号看到的录取邮件,当时还有点不大相信。其实我自己都快放弃DIY了,当时已经开始和中介接头了。

当初申请出国的时候,我父母想让我读商科,我坚决反对;我的想法是读数学,因为的确是对数学感兴趣。后来双方争执好久,各自做了让步,父母希望我能学工程,这样找工作能容易一点。因为该校算是工程名校,我仔细看了他工程的课程,觉得学工程能学到很多实用的知识,也可以顺便学点数学,便同意了,第二选择填的数学。后来录取信上说因为我T达不到工程院的要求,就录到数学了,自己还曾暗自庆幸了下。插播:话说英语一直都是我的短板,初中还有过期末考69分的经历(满分120)。高中有些进步,又为了考T抱了好长一段时间的佛脚,还上了新东方,但还是不行。

虽然学校数学系排名还可以(美国20名左右),但到了学校研究了下课程与教材之后,我觉得前一两年也学不到什么东西。插播:我在国内大学一年还是学了些数学的,所以觉得学校里大一大二的数学系专业课都比较简单。(其实我数学绝对算不上好的,国内数学比我强的多了去了。现在想想,凭我这个智商要真学了数学还真混不出来,当年还是真不知天高地厚。)我对于国内我读的那个大学的不满,除了对于他行政的极度不满外,就是不满课少,没课上。所以来美国就想借着他自由的选课制度多上点课。哦,对了,我们学校学费与学分没有直接关系(当然part time学费还是和学分有关的)。

所以第一学期就想就想先上点数学系以外的课,有机会还是转到工程去,另外家人也希望我能转到工程去。至于数学,因为数学系的人也就每学期上两三门数学课,所以我觉得我转到工程系马马虎虎也差不多能上下来(当时我年轻没见识啊,同学们不要骂我)。于是第一学期的时候选了个Java,是CS的编程第一门必修课。记得当时adviser发邮件问我有没有programming experience,我说没有。adviser建议我上简单一点的programming课(记得是Javascript)培养下感情,我当时还有点不知天高地厚的劲儿,就坚持上了Java。好在那个学期别的课程都比较水(微积分二,物理,化学,数学新生seminar),有惊无险的上下来了。记得第一次做Java作业,完全搞不懂如何在windows安装Java SDK和eclipse(老师还提供了步骤呀,不要嘲笑我),好在CS有人超级nice的免费tutor,给我示范,给我详细的讲每一步是干什么的。当时感觉CS真好玩儿啊,记得当时几乎每周五晚上都自己熬夜做project,一方面是害怕做不出来交不上,另一方面是觉得真有意思。刚来还没买自己的电脑,用宿舍楼下的机房,最喜欢周五周六晚上大家都出去玩了,我能有个安安静静的环境。当时自己编程好慢(当然现在也快不到哪里去),Java lab是周五早晨7点半,我几乎从来不敢迟到-迟到了就写不完了(高中初中熟悉我的人都知道我是多懒散,几乎没有哪天不迟到-我大三大四的课几乎都是下午的,因为上午起不来)。记得当时section有个ABC,总是lab开始半个多小时了才到,去了1个多小时就搞定了(每次lab三个小时),然后到处给别人讲怎么弄怎么弄。插播:当时的Java课还是比较简单一点,现在那门课最后的project都是安卓的app了,系里提供硬件供测试用,羡慕嫉妒恨呀。

第二个学期就转到了工程院,认准了要学CompE了,话说我来美国前打算学的工程专业可是ME呢。有人要问了,你怎么不学CS呢?我心思ECE既能学计算机软件,编程,又能学硬件,学电路,学半导体,学信号处理,多好玩儿啊。第二个学期我的积极性就比较高涨了,不知天高地厚的毛病也越来越重。觉得虽然是CompE不允许minor CS,我觉得我也要尽量多上CS和数学的课,还计划每学期上至少一门数学或CS。记得第一学期我还在数学新生seminar上问一个数学系的资深教授,如果我转到别的系了,还能不能申数学的PHD,他说会比较难,但也不是没可能,关键看上了什么课,然后他建议我上analysis和algebra的两个honor课,说是比较能体现做数学research的潜力,后来我也上了,的确非常好玩。第二个学期要上English composition和communication了,虽然我很反感-因为这不是ECE/CS/Math的课,但也必须上,为了让我的学期不至于太浪费,我开始over credit。这学期学了C,感觉C的lab更难,经常不能在规定时间完成,多亏了TA人很好,经常等我10几20分钟的,让我把最后的弄完。

为了搞点零花钱,第一个学期开始2个月后开始在dining court打工。每周大概工作10小时,一个月能赚小300刀。dining court打工一直干到大二结束。干活有点累,但其实是个放松的好方式,边干活边扯淡,或者听别人扯淡,也放松放松脑子。

大一的第二个学期很多同学都开始找实习了,我没动。原因有三个,一是还没学到多少专业知识;二是我对自己的口语还没信心,虽然听力已经没问题了,说还是不大行;三是我没有正装,没衣服去面试。我自己不会买,也不舍得买。记得上communication课做presentation,几乎就我自己是衬衣+牛仔裤。现在虽然有了正装了,还是觉得穿上去不舒服,不自信。于是第一个暑假在学校上课。第一年在dining court打工,认识了几个很好的朋友,正好他们合租的房子里有个人要搬走,暑假我就搬过去了,一住就是3年。

我的舍友有一个是ME的,暑假里他收到ME的一个教授的邮件说想找个research的programmer,他就跟我说了。我一直有读研究生院的想法,但是还不大确定,想先读MS然后看清况工作两年在考虑是否读PHD。我觉得这是个让我了解研究生做research的机会,所以就去见那个教授了。跟那个教授聊了下,项目我还挺感兴趣。他们在写一个程序做simulation,就是模拟大量particle在bounded或unbounded的空间运动,碰撞等等的情况。他们已经写了一个single thread的版本,但是运行的太慢,因为模拟中的粒子数量很大,要运行一次至少要2个月,黄花菜都凉了。所以他们想让我parallelize这个程序在cluster上运行以加快速度。他说要用C++和MPI,当时C++我还不会,MPI也没听过,他说不要紧,C++和C与Java很像,MPI也很容易学(入门不难)。然后他说没有钱给我,我说也行,因为也不是为了赚钱去的。然后这个东西搞了两个学期。第二个学期那个教授问我要钱还是要学分,我当时为了让成绩单好看点(有个research的课在上面),就说要学分了,当然这3个学分的确没什么大用。做这个东西虽然不是什么research,但是很有意思,也学到了很多东西,我觉得我编程的能力有了很大进步。也经常参加他们每周的周会,和他们组里的聚餐,感觉PHD的生活也挺欢乐的。

大一的时候上了一个工程的一个introductory式必修课,成绩还可以,从大二开始做UTA,做了三个学期,然后做了一个学期的grader。其实还挺享受当TA的过程的,基本上把这个当成social activity了,有几个ta后来都成了不错的朋友。

大二的时候对嵌入式比较感兴趣,但是也不是很懂,就是觉得嵌入式可以用在很多东西上做出很有意思的东西来。大二上学期上算法课,教授有一部分研究就是关于嵌入式的,而且教授人很nice。所以大二第二个学期我就去问他可不可以暑假跟他做,他大概讲了下他做的projects,然后建议我做wireless sensor network的project,因为他觉得他当时的嵌入式的project比较难,而我有没有嵌入式的经验,比较难上手。我觉得WSN也挺有意思的。然后暑假通过这位教授的推荐申请了学校暑假的undergrad research的fellowship。这个research做的过程比较曲折,走了好多弯路。

到了大三就基本上决定要读PHD了,然后就是要考虑做什么方向。embedded systems做应用挺有意思但是做这方面的research我还是兴趣不强;WSN学一下挺有意思,做一两年弄个小问题也挺好,但是花5年6年在这方面做research我还是觉得不值得-如果是cellular network相关的我还有点兴趣。大二的时候也对security的东西比较感兴趣,还上了一个security的课,在课上学network security的时候也学到了些TCP/IP的东西,也玩儿一些tcpdump之类,觉得networking是个很好的做研究的方向,有很多问题可以做,和实际结合的比较多,而且Internet的重要性也不用我多说了。大三上学期就继续上了个networking的课,完全被吸引了,觉得PHD应该做这个。大三的暑假就跟教networking课的教授做research,话说我刚开始是想做P2P的,但那个教授做P2P好多年了,说P2P在研究上已经很难再出大的breakthrough,建议我做别的,然后我就做了enterprise network management。说实话,我很感激能有这次机会。

大三寒假,有一个做machine learning的教授要赶一个demo的deadline,就发邮件要我去帮他们写code,主要是用matlab,需要比较多概率的知识。一起去的还有另外4,5个本科生。1个小时pay 20刀,算是我本科期间pay的最高的工作了,这样做了3个星期,大三第二个学期的生活费一多半就搞定了。最大的收获就是知道了machine learning的research大概是怎么回事,做机器人只是其中一小部分,还有很多数学,概率,模型的东西--当然我知道的很浅,连scheme,lisp都不会,说错了请轻拍。

大二的时候认识了一个美国孩子,K同学-这是一个奇葩(无贬义,因为我也奇葩),他邀请我大三下学期参加他们组做senior design,四个人商量了之后决定做wireless-controlled biped robot。K同学算是我遇到的少有有的几个靠谱的teammate之一,teamwork我再也不用事事操心。K同学动手能力很强,设计电路一把好手,还有一手solder的好本事。我们两人无数次一起熬夜赶进度。那个学期前K同学交了新的女朋友,每周三下午都开车一个小时去别的城市看女友,然后晚上10点多回来还要到实验室跟我一起熬进度。每次回来都兴高采烈的给我讲女朋友的好处,还三番五次劝我也交个女友。囧啊。到了11年下半年k毕业了他们就结婚了,我还应邀参加了婚礼,当然这就是后话了。

大三的暑假快结束的时候收到给一个ECE的大二实验课做TA的邀请,其实以前也想给自己专业的课当当TA,也收到过邀请,但是由于太忙,把交申请的日期都错过了,或者学期中间太忙没有时间给TA的课。这次心想大四上学期不会很忙,就多上了点心,把它搞定了。

由于以前上的课都是ECE/CS/math,大四上学期为了毕业上了四门humanity的课,只上了一个ECE的compiler,一个数学(complex analysis),那个学期为了申grad school花了很多时间纠结,没怎么好好学习,成绩也不很好。然后就毕业了,爹娘来了在美国逛了一圈。话说我个人不喜欢旅游,来美国四年几乎哪里都没去过,这次为了陪父母把东岸西岸大城市差不多走马观花了一遍,当然也还有好多有名的地方没去。再然后就是纠结去什么学校PHD和颓废,再然后就没有然后了。

好了,我也学着总结下吧。

我上undergrad其实没什么目标,回想起来就是走一步看一步。唯一一个比较明确的目标就是多上点课,多学点东西,让眼界开阔一点,多学点自己感兴趣的东西,让自己快乐点-说实话,我觉得如果一个人觉得追求一个目标的过程是痛苦的,那么这个目标就不值得去追求。我也承认很多上课学的东西以后都不会用到,甚至很多我现在就已经忘了,但是我个人还是很享受那个过程的。找工作什么的我没有太着急,总是觉得像ECE/CS这样的专业,只要你有真本事还怕找不着工作?

但是说归说,最大的遗憾就是没能去公司实习,除了实力有限,主要还是因为没有明确计划导致的。其实本来想大三的暑假找个实习的,但是大三下学期太忙,就顾不上申请实习了。现在毕业了本来很懒想回国吃喝玩乐两个月,很凑巧运气好有个实习的机会。虽然不是什么大公司,但是他们做的东西也挺有意思,公司里有不少牛人,对我也是个很好的机会,就去弥补下自己的遗憾吧。

另一个遗憾就是本科做了好多project,但没有任何觉得能拿得出手的,读博的时候弥补下吧。

总而言之,这四年我自己过的相当快乐,只是尽不了孝道,想起来总是发愁。 对现在在国内读书,就要出国的同学,我想说有空多陪陪你们的父母,爷爷奶奶,姥姥姥爷,别像我一样出来了再纠结。

好了,完了。我没很多时间,上面的是一点点凑起来的,写得很乱,没什么中心思想也是可以理解的吧,请看完了的同学抬抬手加点分,多谢!



149个回复 举报 回复

Sign In to reply

149个回复