瑞典挪威留学申请总结

这是一篇迟到的文章,而且迟到的非常厉害。从2008年决定申请到现在,已经过去了一年零4个月,从拿到AD,也已经过去了4个多月。一直想写点什么,但总是因为种种原因耽搁下来。

回首历时一年的申请过程,有些事情已渐渐模糊,趁着还有一些记忆,赶快写下来吧。北欧是个好地方,但是遗憾是我和宝贝没能申请到同一所学校。好在挪威和瑞典相隔并不遥远。首先说说结果吧,我们最终拿到了挪威NTNU瑞典KTH的AD。

话说2008年初,动了出国读书的念头,由于我们都在工作,时间非常紧张,没有考Toefl GRE的可能,在这种前提下,我们限定了目标范围:接收IELTS的地区。这包括欧洲、新加坡、澳大利亚和加拿大。那时我们有很现实的目标,拿学历、少花钱、出去玩玩。在这个大背景下,我们选择了北欧,因为北欧的学校免学费,生活费也不算很高。在这里要提两位好朋友,Maple和Mounttai,他们帮我们推荐学校、修改申请材料、推荐新加坡管理大学(SMU),虽然最终没能去成新加坡,还是要好好谢谢你们!

  • 2008年6月:决定出国读书
  • 2008年9月:考雅思
  • 2008年11月30日:挪威NTNU预申截止
  • 2009年1月15日:瑞典网申截止
  • 2009年2月1日:挪威NTNU正式申请截止
  • 2009年2月15日:瑞典材料寄送截止
  • 2009年5月1日:挪威NTNU出结果
  • 2009年5月9日:瑞典第一轮出结果
  • 2009年8月:启程

 

  • 瑞典:KTH(皇家理工), CTH(查尔摩斯), LIU(林雪平), UU(乌普萨拉)
  • 挪威:NTNU(挪威科技大学)
  • 新加坡:SMU(新加坡管理大学)

这就是我们这一路走来的时间表以及投递过材料的学校。我们所有的材料寄送,几乎都是卡在截止日期前几天的时间,可谓如履薄冰。申请过程也极其不易,每天下班回家就要8点了,准备材料的时间被压缩到不能再压缩,还好Mounttai和Hari帮我们修改了几次CV和Personal Statement,要不真的搞不定。

关于选校,或者选专业,我真的说不出什么,因为瑞典的学校是走统一申请,寄送一次材料可以选择4个学校/专业,说实话,这四所学校是比较热门的,而我根本没有时间研究所有的学校,这4所,就是我所知道的4所了。挪威的NTNU,完全是因为临近截止前2天,Maple告诉我有这么一个学校,我想都没想就申请了,因为可以在网上预申请。SMU,因为Maple和Mounttai都在那里。至于专业,我学计算机的,工作中有项目管理经验,所有的专业除了计算机,就是项目管理了。北欧读书转专业是不太可能的。

其实关于选校,我的建议是如果你有时间,还是要好好做做功课,找到你最喜欢的学校、最想学的专业,这很重要。因为它很有可能会决定你的职业生涯。

关于寄送材料,其实可以通过航空挂号信寄,丢失的概率并不大,完全可以接受。只是比较慢,2~3周才能到。但是便宜啊,应该只要30块钱左右就能寄到了。而我们因为总是赶最后的截止日期,因此全部使用的是TNT全球快递,每次寄送都是260块钱左右,最后算算下来,光邮寄费用,我一个人就花掉了1500多,相当奢侈。因此强烈建议想省钱的同学,尽早准备,提前1个月的话便可以使用航空挂号。

关于考雅思,雅思不难,背背机经,练几次作文,背背范文(除非你想拿到6.5以上的作文),突击下口语,6.5应该没问题,我当时因为听力和口语运气很好,最后拿到了7分的好成绩。单词还是要背的,毕竟雅思阅读还是很有难度的,量大,而且全凭识别单词的能力了。考雅思要提前不少时间报名,1、2周之内的报名基本没戏,要提前安排。雅思出成绩要2周左右的时间,寄送成绩单还有2周左右,因此最晚最晚也要在材料截止前1个半月考雅思了,否则就太紧张,风险太大了。

关于等待,今年2月份,我们把材料都寄出去了,总算可以清闲下来,等待是非常煎熬的一件事,以至于后来慢慢麻木了,从一开始天天从网上查状态,都后来半个月都懒得看一下。这段时间心态要放平稳,该干啥干啥,否则难熬,还伤神。

AD,我好像是2009年5月1日拿到的,一封Congratulations的邮件带给了我一份生日大礼,反复读了很多次,虽然天天盼,真到这一刻,反而有点不相信自己的眼睛,因为说实话,在等待的过程中,我蹭无数次告诉自己,如果失败了,生活还要继续,现实还要面对。然而令人郁闷的是,宝贝并没有收到NTNU的AD。随后的一周,我们一起等待瑞典的结果。

其实早在4月中旬,宝贝就受到LIU的非正式通知,只是因为LIU在第二志愿,因此还要看KTH的结果。后来和晓伟聊过,幸亏没去林雪平,那个城市太小了,太压抑了,还是斯德哥尔摩好,人多,也热闹。5月9日,好像是这一天,瑞典的申请结果下来了,我还记得那天我是下午下班前,大概5点半多一点的样子,我看到了结果,高兴地不得了。但是因为当时在单位还没有跟大家讲要走,只能匆匆忙忙收拾了东西,除了门就打电话给宝贝~~ 我们可以一起去周游世界了!

幸运的是我们都拿到了AD,但是美中不足的是我们在不同的城市——挪威的特隆赫姆和瑞典的斯德哥尔摩。前段时间我去了一次,火车15个小时,往返1400多块钱。过几天宝贝也要过来玩了,飞机还是挺快的。

我们的申请就这样稀里糊涂的结束了,这其中心情的变化难以言表,如果你没有申请过,你不可能知道那种等待的煎熬和艰辛。但是走过来,回头看,我想告诉你们的是,其实并不难,只要你坚持下去,不要放弃,一定会雨过天晴的。

特隆赫姆的彩虹可以从地平线这端延伸到那一端;斯德哥尔摩的老城非常有古老的味道。2009年8月3日,2009年8月17日,我们分别踏上旅途,降落在一个陌生的城市,开始新的征途。

此时此刻的窗外,阳光明媚,然而却是一个星期连阴雨后的第一缕阳光。我并不因为这里的天气而感到郁闷,因为我知道,即使是一个月都在下雨,也总有阳光普照的那一天。

IMG_8756

IMG_8581

连续44天支出后的第一笔收入

话说8月3日离开熟悉的北京,踏上一片陌生的土地——挪威。从8月4日算起,创下了自毕业之日起连续44天仅有支出,没有收入的日子。现在的我和上大学时不同了,知道了赚钱的辛苦,自然会省着点花。 但是在这个大葱都要卖到39克朗一公斤的挪威,似乎吃肉还要划算一些。因此虽然已经缩减了一切不必要开支,每个月的7000多克朗的生活费仍然像流水一样悄无声息的飘过。

scallion-small

终于有一天,我决定不能再这样下去了,每周只有20小时的课,如果不创造点价值,还是我Alex吗?那天好像是8月底的一天。可能是源于y2找到了工作,虽然很辛苦,但是毕竟每月有了1800克朗的收入。我决定的第一件事是继续炒我的股票。后来事实证明,炒股票虽然能赚钱,但是比刷盘子洗完还要辛苦,因为国内股市开盘的时间是这里的凌晨3点半~9点,而且还有风险。本文重点不在于此,就此略过。

ElanceLogo 真正得到第一笔收入的工作,是在Elance上找的,这是一个全球外包平台,提供编程、写作、咨询等多种项目机会。其实早在国内,而且早在两年前就已经注册了账号,曾经也象征性的投过标,但是全部石沉大海,杳无音信。再次打开Elance的主页,我决定再试一次。功夫不负有心人,就在免费会员每月最后一次投标之际,我成功接到了第一个项目:Data Analysis。

简单来说,这是一个对大量数据进行分析的项目。项目不大,代码也不多。前前后后我用了不超过9小时的时间完成全部工作,包括投标、沟通、开发、测试、文档、培训用户。所谓麻雀虽小,五脏俱全。如果不是最初在思路上有些偏颇,还可以节约3个小时的时间。这个项目的得来真的不容易。

那是一个漆黑的半夜3点半,半夜起床看股票,行情不好,闲暇之余浏览了一下Elance,赫然看到这样一个数据分析的项目,并且提供了详细的说明和数据文件,因为以前也写过一些算法程序,开始我只是认为这是一个算法问题,但事实证明,这是一个非常重要的关联关系挖掘,后面再说。

起初并没有意识到45000行,每行51列的数据在进行运算的时候有多巨大,我才用了最愚蠢的办法,声明了一个45000*51的数组用来存储数据,由于最终的结果是基于个个数字之间组合关系的统计数据,因此将会产生超过100w的新数据。因此,我遇到的第一个问题就是内存不足。在这个问题上我被困扰了很久,甚至一度放弃,躺下睡觉。但是每次醒来都心有不甘。苍天有眼,第二次醒来的时候想到了办法。问题最终解决,而一天之内为客户提供了正确的数据,也让我赢得了这第一个项目机会。

us-dollars 随后的6天内,应客户的要求,我用了总共大约3个小时的时间将简单的程序改造为一个有用户界面及交互操作的软件,并编写了使用手册。今天,我拿到了70美元的付款,扣除税款和手续费等,总共到手64美元。粗略计算我的这个项目能达到8美元/小时。考虑到灵活的工作时间(随时),良好的工作环境(宿舍),暂且忍了。毕竟y2每周日晚上要去一个遥远的中餐馆刷盘子洗碗5个小时,风雨无阻,也才90克朗一小时。

在我写下本文的时候,我已经在Elance上成功接到3个项目,其中一个因为客户总是不上线,我打算放弃,另外一个正在开发中,价值300美元,希望能在30小时内完成。

上周给Bassam老师发邮件问有没有活干,顺便递了简历,这周虽然错过了面谈时间,但是仍然可以在下周谈一下,或许能得到一份给老板打工的工作。

此时此刻,一切似乎步入正轨,就在前几天也扫清了下学期申请去ESC-LILLE交换的系内障碍,同时订好了10月初宝贝来特隆赫姆玩的机票,我似乎正在慢慢的进入状态。

宝贝,笨笨在努力,不久的将来,我们一定可以周游世界!

going-around-the-world-small

我在特隆赫姆的生活(二)——物价

想了很久,第二篇写什么呢?有些东西体会不深,不敢贸然下笔。最后终于决定写写这里的物价吧,毕竟真金白银花出去了,还是有些体会的。我在这里的第一个月已经过去,算下来一共花掉了将近7000挪威克朗(kr),相当于将近8000民币,与国内2000~3000的生活费相比,实在是相当昂贵。

注:以下内容中如无特殊说明,金额是按照挪威克朗计算的。关于在特隆赫姆生活的基本信息,请参考上一篇文章《我在特隆赫姆的生活(一)——开篇》。

高价消费1——打车:时速70公里时,每2秒1块钱,约25块钱/公里

与国内2~3元人民币的打车价相比,25块钱实在是有些高,虽说挪威人平均薪水相当高,但是对于来自中国的我们来说,绝对算是高消费,奢侈至极。好在我们从机场打车到住处碰到一辆要空返的出租车,于是司机师傅在半路将表卡在了500块的位置,不再计数了。话说这里打车昂贵,这里的出租车也绝对高级,本田、奥迪属于入门级出租车,通常情况下是奔驰配置。

这里的汽车大致有两种类型,柴油和95号汽油,柴油的价格大约11kr/升,95号汽油是12kr/升,不同的加油站价格会有变化,油价也是一天一变,不像国内,要发改委宣布才能调价。我想出租车价格这么高的原因是一个车得有一个司机吧,司机的薪水应该是如此高价的主要原因了。

高价消费2——手续费:在邮局柜台付账单,每笔75kr起

下飞机后的第一件事是住宿,分到房子的第一件事是付钱,由于没有银行账号,我们只能通过柜台付款,而在柜台付款则会缴纳一笔高昂的手续费,与国内2~10元起价,1%或千分之5的手续费相比,则高出了数倍。尤其是当你的金额小的时候。开学后由于要付Semester Fee,虽然只有450kr,仍然缴纳了75的手续费。好在今天已经去银行办了银行卡以后就可以用网上银行付钱了。这个月光这种手续费就花掉了225,总共3笔账单。

高价消费3——蔬菜:黄瓜、姜、葱、西红柿、肉

民以食为天,要想活下去,就要吃东西。这一个月,超市没少逛,就为了找打折和特价,因为正价商品实在是消费不起。简单举几个例子,黄瓜,国内一斤1、2块钱的东西,这里要15块钱一根,一根充其量只有4两吧。再有,姜,中国进口的啊,这东西估计挪威也没有的种,130/公斤;葱,40/公斤;西红柿,36/公斤;猪肉,80左右/公斤,牛肉,150~200/公斤。碰到打折的时候,能在这些价格上打个4折左右,不过并不是所有的蔬菜都打折,而且品质还会下降不少。

在这种艰苦的条件下,粗略算算,一个月填饱肚子要1500左右,还是顿顿都要自己做才行。

高价消费4——交通:公交1小时票:30,1天:70,1月:410,火车卧铺,绝对的奢侈消费

虽说北京的公交价格低的离谱,但是就算是和上海深圳比,这个价格也绝对算得上高价了。不过这里的飞机、火车票价与国内相仿,但是我这里也仅仅只打折票价。比如说火车,从特隆赫姆到奥斯陆,大约7小时车程,最低折扣票价199,但是要提前1个月左右才能订到。如果想坐卧铺,则要再另附800多,因此要想舒服一点,可得付出高昂的代价了。如果不是时间问题,坐卧铺还不如坐飞机了。

高价消费5——自行车:1500起,我买了一辆2800的…

我承认这是我比较失败的消费,但是真的没办法。

刚到这里的第一周,我就决定要买一辆自行车,听说有1500的车子,便欣然前往。其实1500已经着实把我打击到了,在国内,200块钱就能买一辆能骑的车了,虽说这里的自行车质量会更好些吧,但也不至于这么大的差距。但是在买车的时候,残酷的现实横在了我的面前:1500的车子早就卖完了,只剩下1900的。我们在city三家店徘徊了n个小时之后,发现1900的车子只剩最小码得了,骑上去连弯都拐不过来了。于是不得不选下一个档位:2490的了。残酷的事情再次发生,我们3个人去的,另两哥们先决定了买2490的,而这个车子只剩下2辆…于是我不得不接受了这个事实,2790的吧。

插播一个更郁闷的事情,3天之后,我回店里调整车子,发现这款车降价了,降到2490了,残酷啊。

还有很多昂贵的消费,比如可口可乐,500ml的要15块钱,纯净水也差不多要这个价格,酒店,最便宜的也要300~500一晚,200以下的只有上下铺的那种。

说了这么多高价的东西,其实这里也有一些便宜的商品或省钱的方法。

  1. 要经常性扫荡各大超市,一旦遇到物美价廉的蔬菜水果,千万要多多囤货。
  2. 看品牌,这里有个叫First Prise的品牌,绝对全场最低价,看到了就不要想别的了。
  3. 自己做饭吃,餐馆不多,而且很昂贵,估计还吃不惯。
  4. 打工吧,开源节流,才能收支平衡。遗憾的是,特隆赫姆有16w人,但是却有3w学生。
  5. 疯狂节,据说每年有两次疯狂节,价格都会非常的低,但是往往限量,必须彻夜排队。

这样的总体物价水平其实对于挪威人来说并不算高,因为这里的本科或硕士毕业生年薪就差不多在35w以上了,虽然个税占到30%以上,但是如果是买房买车,是可以在消费后计税的。最关键的一个消费刚才没说,就是住房,因为与以上的高消费以及挪威人收入相比,确实不高。举个例子,有个挪威朋友在这里买了套房子,每平米28000kr,但是人家除了自己住,还要出租一个房间,那个出租的房间就能租到5000以上。另外从这里的房产信息上看,70~150w的房子也有不少,如果按照中国的收入水平算,也就是6000人民币的水平。特隆赫姆虽然小,但是与国内的城市相比,市政、基础设施等的建设绝对相当于百万人级别的城市。

这里的衣服鞋子并不贵,尤其是品牌,有些反而是更便宜,比如今天在city里一家north face店看到的gore-tex的登山鞋,打折后才799,在这个档次上相当划算。

其实挪威这个国家在40年前还是很弱的,虽然历史上挪威曾一度成为北欧最强大的国家,但是在近代却有些没落。直到上个世纪70年代,挪威在海面发现了室友,伴随着原油价格的一路上涨,这个只有460w人的国家快速发展起来,一举成为北欧最发达的国家。

这就是特隆赫姆的物价,上周在去斯德哥尔摩的路上顺便考察了奥斯陆的几个超市,价格相仿,但据说应该是消费还要更高,宗旨,以上信息具有一定的代表性了。

从概率的角度分析程序出错的可能性

今年终于完成了风险管理这门课程前两周的练习,总算赶上一门课程的进度,当初学概率用英文还一知半解的东西,现在竟要用英文学习。好在现在所学的概率只是一些简单理论的应用,而计算则大部分由已经编好的程序完成。

在正式开始本文重点内容之前,先简单总结一下所学的内容。

本文导读:

  1. 关于概率
  2. 关于计划分析(Schedule analysis)
  3. 想法:从概率的角度分析程序出错的可能性
  4. 理论联系实际:应用构想
  5. 附录:相关资料

关于概率

  1. 概率的基本概念:随机事件、样本空间、概率定义、随机变量
  2. 贝叶斯法则(Bayes rule)
  3. 概率分布:函数、期望值、中值、标准差、双期望值定理(Double Expectation)
  4. 常用概率分布曲线:Normal、Exponential、Triangular、PERT Distribution
  5. 概率分布的运算:Sum, Product, Maximum

关于计划分析(Schedule analysis):

  1. 网络图:起点、终点、活动、里程碑、不确定性、虚拟节点、顺序
  2. 目的:为整个项目过程、部分活动或里程碑建立累计的概率分布函数;衡量项目中某个活动导致整个项目延迟的可能性;
  3. Critical Path Method(CPM):利用Most likely value找出网络中的关键路径(最长),但是此方法缺陷是只能用于处理确定的活动,无法处理过程中的不确定性因素。
  4. Program Evaluation and Review Technique(PERT):用于将不确定性因素考虑在内的关键路径上的衡量,但是此方法的缺陷在于,如果存在多条期望时间重叠的路径,此方法无法处理。
  5. Successive Schedule Planning(SSP):将项目过程中所有活动纳入分析范围,考虑到各个节点、路径的不确定因素,可以完整的分析和衡量整个项目过程消耗时间的方法,最终建立一个累积的概率分布曲线。
  6. Monte Carlo Simulatoin:通过大量随机实验,获得数据绘制分布曲线,从曲线上读数。

这门课程头两张的内容比较抽象,练习也都是概念上的计算题。从这两周的课程中我认识到一点,从不确定性以及概率的角度看待工作活动似乎更加合理。倒不是说一定要用这些公式或模型去套用,只是因为工作中不确定性的因素太多,你要接受它们,并充分估计不确定性因素所带来的负面影响。

想法:从概率的角度分析程序出错的可能性

工作的时候,一直有个想法。想法的背景是这样的:因为几乎每个新写的程序都是独特的,相当大数目的程序从开发到传输的生命周期不超过40人时,甚至不超过10人时。在如此短促的开发过程中,几乎没有可能应用所谓的软件工程或质量保证什么的,因为那样会极大的增加成本。

我的想法是,能否用一种自动化的方法,衡量程序的质量或复杂程度?我曾经在工作中通过对程序文法分析获得程序中的IF、LOOP、CHECK、SUBROUTINE等代码块的数量,为每一种代码块设定一个参数,将各方面数据做累加,用于衡量程序的复杂度。当时遇到了一些问题,就是无法将各种代码块有效、合理的组合在一起,并且没能设定合理的参数。

应用构想

这个想法现在看来仍然值得继续尝试,在这两周学习的背景知识下,作出如下调整:

  • 分析历史数据(变更、版本),获取一部分数量的样本数据,50~100个程序,其中包含各类以及小、中、大规模的程序,按如下方式记录,此表格中的缺陷概率(M)将作为特征代码缺陷概率的中值(MEAN),其中 缺陷概率= 缺陷次数/出现次数,缺陷比重=缺陷次数/缺陷总次数
    特征代码 出现次数 缺陷次数 缺陷概率(M) 缺陷比重
    IF…ELSE… 150 9 6% 20.9%
    WHILE 50 2 4% 4.7%
    CHECK 15 4 26.6% 9.3%
    SELECT… 300 25 8.3% 58%
    DELETE… 40 3 7.5% 6.9%
           
    TOTAL/AVG 555/111 43/8.6 10.48% 100%

  • 假定我们有一个程序:Program A,其中包含各种特征代码,相关数据如下表所列:
    特征代码 正确概率 出现次数 正确概率的n次方,n=出现次数
    IF…ELSE… 94% 2 0.8836
    WHILE 96% 3 0.884736
    CHECK 73.4% 1 0.734
    SELECT… 91.7% 5 0.648405
    DELETE… 92.5% 4 0.732094
        概率乘积 P(A)=27%(整个程序的正确概率)

    事实上,在本例中,我们将本程序分解为15个相互独立的随机事件,那么所有缺陷事件均不发生的概率就是每个事件正确概率的乘积。

  • 根据工作需要,设定P(A)的临界值,如当P(A)<=40%时,需经过非程序员本人的质量测试方可传输。

这其中的参数(主要是缺陷概率)可通过对历史数据的观察获得初始值,并随项目进展更新,缺陷概率随开发人员水平不同而变化,随开发时间不同而变化,本构想尚未对其他参数进行设定,但增加相应参数则可以扩展模型的适用范围及准确度。

此工具在工作中的应用,可以自动、快速的分析程序结构,依据历史数据计算程序出错的概率,开发人员可直观判断一个程序的风险,并增加相应的质量保证活动。对于短周期、小规模开发、频繁变更的项目尤其有效。若能在应用的同时增加数据的收集,可用于矫正模型参数以及评估质量改进的效果。

目前,这还只是一个构想,写到这里,我想我又犯了一个错误:在写下这些构想之前,没有翻阅资料,也许这些想法早有人实现甚至有成熟的工具,也有可能这根本就是没有意义的胡言乱语,总之下次,我会在构想一件事之前,看看别人是怎么想的。

附录:一些相关资料