2007年5月15日星期二

找到 Skype 的官方代理

前段时间用 Skype 3.1 版的时候发现在 Connection 选项卡里面多出来一个“CERNET Beta”,应该是TOM通过某种技术或者手段让教育网用户也能连上美国的服务器。这两天换了3.2版,发现CERNET Beta没有了,但代理设置里面是有值的,用密码显示器得到用户名和密码后一试,竟然可以直接在浏览器里面使用,看来是得到了一个极品的适合教育网使用的代理了。当然也不知道能坚持多久。需要的朋友可以试试:

IP:59.64.114.29
端口:2000
用户名:skype
密码:tomskype

2007年5月5日星期六

大学生在小学

一天做梦,梦见我和中学的几位同学不知道什么原因被要求去小学重读一年的书。可以选择任何一所小学,任何一个年级,任何一个班。当然,在现实中这样的事就太匪夷所思了,要求一个拥有大学生知识和经历的人像一个小学生那样生活一年。不过假如用小说来写出一部这个题材的作品,估计会是挺有趣的吧:

想想,首先,选哪一个年级?六年级会比较接近一点,不会像一年级那样无聊吧。平时上课干什么呢?总不能老打瞌睡吧,那不就白白浪费了一年的时间了。做自己的事,看自己的书?那要假设老师和学校强制要求认真听课。怎么和那些小学生交流呢?总不能一年时间都一个人太孤僻吧。既然那些老师都能和这些小孩打成一片,那我们也能做得到的。作业和考试?当然是轻松完成了。作息安排上,当然是不能迟到、早退的。星期一升国旗的时候肯定会比较醒目吧,这么一个个儿……

当然还有很多情况了,不过小说的结尾是什么呢?一句疑问:“不过,我干嘛要到这儿来上一年小学?”可能最大的好处就是能够有一年时间拥有良好的作息规律,对身体好吧:)

重读《穷人》

五一这几天又在重读陀氏的《穷人》,虽然是他的第一部小说,当也写得确实很真切。除了好奇为什么那个时代的俄罗斯,富人和穷人的差异有如此之大外,我想起了我妈妈。

和马卡尔·杰武什金一样,我妈妈也是一个在岗位上辛辛苦苦、勤勤恳恳了一辈子的人,虽然在机关里是出了名的好人,好心肠,品德高尚,但也从来没有过工作上的升迁。同马卡尔一样,每个月都还是按时拿到虽然不算微薄,但还能过得去的薪水。虽然不多,但她也从来不抱怨什么,总还是认为单位对她已经很不错了。当然,她的这种满足对她来说是好事,事实上,在这个竞争激烈的时代,她在工作方面拥有的能力也确实只配拿到那么多薪水。从我的角度来说,我一直纳闷,干嘛就不发发奋,好好学点技术含量高的知识,争取到金字塔的更高层去呢?依她的人缘,这并不是很难办得到的啊?

现在我逐渐想到,当一个人还年轻的时候,他总是可以对未来充满希望,认为即使现在的状况再差,他也有时间、有力量去改变。而当一个人在一个环境里面呆上了10年、20年以后,他就很难再有改变现状的希望和勇气了。应该改变的东西早就应该已经改变了,没有变化过的东西也基本上不可能在现在再来改变了。即使现状再怎么差,看来都是命运决定了的,自己的力量已不足以撼动它了。不管这种思想如何如何,在那种境况下的人应该是很容易产生这种想法的。君不见这位马卡尔·杰武什金,在他“年纪轻轻”的时候也是那么富有热情,发疯似的去追求女演员,现在老了,每天都用同样的衣装,走同样的路线,到同样的地方,做同样的工作,和同样的人打交道,得到同样的回应。我不清楚我妈妈年轻时具体是怎么想的,不过现在,她是肯定不会再去想怎么让自己升迁,获得更多的报酬。

当然,支撑杰武什金活下去的,是瓦尔瓦拉,支撑我妈妈活下去的,是我。正如瓦尔瓦拉写到的,“您倒想想看,您吃尽了苦头,直到现在,您还只是为我而活着,为我的欢乐而欢乐,悲伤而悲伤,为我的情意而活着。”因为瓦尔瓦拉还年轻,还有希望,所以瓦尔瓦拉很有可能改变她的现状,变得好起来,比他能够设想到的更好。既然他以她的欢乐而欢乐,那么瓦尔瓦拉的改变也就意味着他自己的改变,这是他活下去、极端无私地帮助瓦尔瓦拉的根本原因。同样,我妈妈也只能把希望寄托在我身上(这是她的一句口头禅),希望我的未来会比他的好,这样她也就能心满意足了。

当然,我们的处境比杰武什金他们好,我也比瓦尔瓦拉更有力量去改变自己的命运。

2007年4月24日星期二

毕业设计——BitTorrent客户端(一)

从苏州回来以后还是一直在写自己的毕业设计。题目是我自己选的,做一个BitTorrent客户端,并且在这个基本的客户端上加入我自己设想的独特功能,使这个客户端更加强大。从研究的角度讲,我认为这个题目还是比较合适的,对我个人来说,实现BitTorrent客户端绝对是一个合适的挑战;对计算机领域来说,如果我设想的独特功能被证明是有意义的,那也是有价值的。

当然,要实现“独特功能”,首先得把那个基本的、能够和现有别的客户端通讯的底层做出来,而这个才是难点所在。想一想,虽然一篇BitTorrent协议不算长(和IA-32、FAT这些比的话),但需要实现的东西还是挺多的:

按照协议的顺序,首先要实现bendcoding的解析器,这个在解析torrent文件和解析tracker服务器响应时都会用到。除了解析,还要提供接口,让外部访问者能获得结构化了的数据。

其次,要能和tracker服务器通讯。要充分考虑到tracker可能发生的各种情况,如连接失败,需要重定向,返回无效数据,返回错误,以及返回理想信息等。做到后面还要考虑多线程向多个tracker服务器发送请求,维持请求间隔时间,使用代理服务器访问等等。

再次,要能和各个peer通讯,传输数据。这部分其实就是在博弈,在你我都不知道对方规则的情况下各自制定一套规则,规则本身是由协议里面定义的消息元素来构造的,但是具体细节完全是由你我自己控制的。然后大家在一个对等的平台上,通过规则进行通讯,双方的目的都是在不违反对方规则的同时使自己获得最大的收益。比如,我可以一次向某个peer发送很多请求,但如果这个peer很忙,他就有可能choke我,一个可能更好的策略是,分散请求面,首先请求最稀少的数据块。自己获得最大利益并不意味着要损害对方,最好的结局是双赢,所有人都最终得到完整的数据。当然除了博弈这个算法的问题外,还有很多基础的网络问题要解决。

最后,还要把各个模块整合起来。比如在向tracker服务器发送请求时就要提供当前任务已经下载和上传了多少数据量。而这个数据量显然是要在和peer通讯时统计得到的。类与类之间肯定需要一个中间层来联系。像这种耦合在程序里实在不少,因此架构设计也是需要非常谨慎的。

原本打算还要把图形界面加上,做成一个完整的可发布软件,现在看起来一是时间不够,我实在是找不到能在短时间内实现像uTorrent那样界面的GUI解决方案,二是觉得作为毕业设计,界面确实不是最重要的,不能喧宾夺主嘛。所以界面的事可能得先缓一缓了。

下一篇里我会介绍一些我客户端的框架和一些实现细节,也算是为论文先打个草稿啦。

2007年4月15日星期日

Dvorak 键盘布局

突然对Dvorak键盘布局感兴趣了,想尝试一下这种比我们传统QWERTY布局更高效得多的打字方式。不管Dvorak是否对中文拼音输入有没有帮助,至少它应该可以提高我写代码、写注释的速度吧。



加上了这种布局后,刚开始确实很别扭,马上发现了两点问题:第一个,切换到搜狗拼音后,键位仍然是QWERTY的,这个应该是搜狗内置了键位的。不知道那种拼音输入法支持Dvorak。第二个,原来Ctrl+C, Ctrl+V的复制粘贴,现在变成了原来的Ctrl+I, Ctrl+.,这就不是习不习惯的问题了,因为一般都是右手握鼠标,左手进行这些键盘的快捷操作。用左手输Ctrl+I和Ctrl+.很痛苦啊。不知道Windows有没有机制可以保持这些快捷操作的键位不变。

下载了一个免费的打字练习软件KP Typing Tutor,开始慢慢练习。听说,原来的QWERTY打字者转到Dvorak键位后,一般能在一个月之内恢复原有打字速度,所有还是挺有信心学好Dvorak的 :)

另有一篇介绍Dvorak键位的文章,有兴趣的可以看看。

2007年4月1日星期日

我的留学美国申请经验(二)——Resume

准备材料。对于CS来说,申请材料一般就是个人陈述(Personal Statement,简称PS)和简历(Resume 或 CV)。这两个材料都非常重要,不是可以一蹴而就的,写的时候要多听取别人的意见,多修改。

先从简单一些的Resume开始吧。Resume之所以相对简单,是因为他的格式和内容相对固定,和PS相比,就像GRE的Argument和Issue一样。Resume的页面可以参考网上和同学之间关于求职简历的经验,但从内容上说毕竟还是会有不同。另外,并不是每个学校都要求提供Resume。

尽量把Resume控制在2页A4纸内。

以下是我的Resume的格式,大家参考吧:

1) 基本信息 (Personal Information)

包括姓名,性别,出生日期,e-Mail,国籍,联系地址和电话,最后还可以用一句话来简单描述一下自己打算申请的研究方向。

1. 关于姓名,一定要是名在前,姓在后。

2. e-Mail要写上以后会用来申请学校的邮箱,我用的是Gmail,很不错,从没有发生过寄丢邮件或者错误归到垃圾邮件的问题。

3. 联系地址当然是按地方的从小到大顺序写下来,包括国内邮编和国家。

4. 关于电话,固定电话的话可以使用 “+国码-地区码-电话号码” 的格式:对于中国,国码是86;地区码前面的0省略,如010只写10。举个例子,+86-10-12345678。移动电话可以使用 “+国码-4-3-4” 的格式,如 +86-1301-234-5678 。当然,这些格式只是我的推荐,不是硬性规定。

2) 教育背景 (Education and Qualification)

1. 本科信息包括就读学校和主修专业,开始和结束时间,所获学位,相关GPA和Ranking。对于一般还未毕业的申请者来说,应该在本科结束时间和所获学位前加上 Expected。GPA可以包括综合GPA和专业GPA,可以写上4.0分制和100分制。关于GPA我后面还会在Online Application里解释。原则是,如果某个不是必需的分数、排名对自己不利,情愿忽略掉也不要强求。

2. 中学信息可以写上去,注意学历信息要按就读的先后顺序从后往前写。不过中学以前的学历就不要写了。

3. TOEFL,TWE,GRE成绩及考试时间。可以注明TOEFL和GRE的类型,是iBT还是PBT,General还是Subject,后面写上分数。TOEFL可以只写总分,GRE最好写明每一类的分数,百分比。

4. 如果自己有业余爱好,或者在校的辅修等等和申请专业比较相关,也可以简单提及,格式和本科主修专业类似。

3) 奖项,荣誉 (Reward and Honor)

按照获得时间从后往前写。太小、太久的奖项都不要写,那些不重要。相反,和申请专业相关的奖项则很重要。一般来说,就写上大学时期的和专业比较相关的就行了。获奖证书不要寄到学校去,他们不认识中文的。

4) 专业能力 (Professional Skill)

简单描述一下自己在欲申请专业的相关能力。比如我是申请计算机的,所以就写上自己熟悉的语言,曾参与过项目中自己独立编写的代码行数等等。

5) 项目经验,研究经验 (Major Projects and Research Experience)

对每一个值得提及的、和申请专业相关的项目、实际经验进行简要描述。仍然是按照发生时间的先后顺序从后往前排。这部分一般是Resume的主要部分,能体现申请者的竞争力。

拿计算机来说,我的每一个项目有以下几个大点:
1. 概述该项目,主要能解决什么问题;2. 基于什么技术,一些出彩的技术细节;3. 有什么前瞻性的意义,自己的哪方面能力在项目中有所体现。

我认为,介绍项目最重要的不是项目本身怎么样,而是你自己怎么样。老美们当然不大会对你的项目感兴趣,他们更感兴趣的是你这个人怎么样,因此,如何通过介绍项目间接地来介绍自己才是这部分最需要考虑的。因为各个专业、项目细节都不一样,所以请各位自己仔细斟酌如何写好这部分吧。

6) 课外活动,社会实践 (Extracurricular Activities)

介绍一些和申请方向相关的课外活动,让教授们更全面地了解你。美国人都还是非常看重每个人的社会经验、人际关系这些的,这个地方就是展示自己一个小舞台。当然,不要写得太琐碎,捡重要的写,扼要地写,关键还是突出这些事情对自己在申请方向上的影响。对了,还是建议按事件发生的时间从后往前写。

大家可以参考一下我写的Resume。写得不算好,但大家去其糟粕,取其精华吧。:)

相关链接:

GPA 计算器 "GPA Wizard": http://offer.go3.icpcn.com/main/main.htm

My Resume: http://www.puzatech.com/kerenjin/

一些免费下载乐谱的网站

2008.12.19 更新:有些网站死掉了,更新一下列表。
2007.4.1 更新:偶然的机会找到了一个乐谱网站,竟提供 J.S. Bach 几乎所有乐谱的免费下载,不敢私藏,拿出来和广大巴赫爱好者共享。此网站除提供巴赫乐谱下载外,还提供 Mozart 部分的乐谱下载。
http://www.tobis-notenarchiv.de/ : Tobi's Notenarchiv。极好。提供 J.S. Bach 几乎所有乐谱的免费下载。midi 和 cap。cap 文件需用 capella 系列的软件打开。capella 的相关信息可以在 http://www.capella.de/ 找到。


昨天无意间找到一片帖子,上面列举了很多免费乐谱下载的网站,我把其中比较适合喜欢古典音乐的和有乐器特长的人的选了出来,写在下面,供爱乐者们借鉴。midi 格式的文件请用 Cakewalk 等软件打开。

格式:URL : 网站名。我的评价。介绍。乐谱格式。(备注。)

1) http://www.classicalarchives.com/main/ : Classical Music Archives。极好。提供几乎所有著名音乐家的著名作品,数量极多。midi。需免费注册或支付注册。

2) http://www.lysator.liu.se/~tuben/scores/ : Free Sheetmusic from Johan Tufvesson。好。主要提供早期音乐家的作品。pdf。

3) http://www.dlib.indiana.edu/variations/scores/ : VARIATIONS Prototype: Online Musical Scores。好。美国印第安纳大学图书馆提供的乐谱下载。网上浏览,当然你也可以下载到本地。

4) http://imslp.org/wiki/Main_Page:International Music Score Library Project。最好。这是一个收集了几乎你能想到的所有古典音乐家的乐谱的维基式网站,非赢利性质。这应该是目前最正规、最全、最稳定的乐谱资源网站了。它的维基介绍:http://en.wikipedia.org/wiki/International_Music_Score_Library_Project。pdf。

5) http://www.piano.ru/inter-e.html : Piano.ru。极好。一个俄国网站,提供了非常多音乐家的钢琴作品乐谱,只不过作品名都是俄文,看起来比较费劲。pdf。

6) http://www.sheetmusicarchive.net/ : Sheet Music Archive。好。收录了很多音乐家的著名作品,只是作品数量稍嫌少。pdf。

7) http://www.recmusic.org/lieder/:The Lied and Art Song Texts Page。很好。这里提供了非常多的歌词资料,康塔塔,歌剧,晚祷等等都有,有原文,也有各种翻译。不过此网站似乎很注重作曲家的数量,每个作曲家的作品都不是很全。不过考虑到其非赢利性质,已经很不错了。html。

8) http://www.tobis-notenarchiv.de/:Tobi´s Notenarchiv。极好。上文已有介绍。midi 和 cap。

9) http://icking-music-archive.org/scores/ : Werner Icking Music Archive。好。Werner Icking Music Archive 网站作品列表,音乐家数量多,作品也多,比较推荐。格式杂。

另外再介绍两个下载 SoundFont 的网站。这里提供的都是 SF2 格式,没有创新声卡的朋友可能需要自己转换一下。

1) http://hammersound.net/cgi-bin/soundlink.pl

2) http://www.homemusician.net/soundfonts.php

如果大家有什么好的音乐资源,欢迎大家一起交流分享。

2007年3月14日星期三

我的留学美国申请经验(一)——选校

年初的时候一直在忙计算机研究生留美的申请,现在学校也在陆陆续续地发回结果了。虽然我了解计算机科学(Computer Science,以下简称CS)的申请细节,但是因为申请完全是我自己操作的,所以自认为还是在这方面可能有一些经验感想可以拿出来分享一下,希望也能对其他专业打算出国留学的朋友有用。

因为是留学美国,申请CS研究生,所以TOEFL和GRE这两个考试是基本上都必需的。GRE Subject很麻烦,虽然所有大学的网站上都是说不是必须,强烈推荐,我还是没有去考。我建议有条件有时间的朋友可以考,没条件的不必勉强。我的TOEFL是2005年11月考的,GRE是2006年6月,考的都是旧试。新试我不太了解,不敢乱说。G、T的复习方法我就不班门弄斧了,希望大家都能考出理想的成绩。

在开始准备申请材料前,首先得把我们希望申请的学校选出来。如果很多论坛、资料上所说的,选学校确实是最花时间的一步,即使是把学校排名定在前150,没有1、2个月也是很难得到满意的结果的。我选学校的方法是,按照USNews统计的最新综合排名和CS专业排名,在前150名内安排名先后将每一个学校CS专业的每一个导师情况看一次,将该导师的情况简单地记录在一个文档内,方便以后回顾。按该导师的研究方向、兴趣和我自己的研究兴趣的相关程度为该导师评一个分,这样,每审阅完一个学校,这个学校的总分也就基本出来了,自己对每个学校也就有了一个自己的评价。同时,因为一般CS专业都会有很多不同的研究小组,我也会看看有没有适合自己的研究组,如果有,当然这个学校更适合选择。(可以发现,一般的规律是,排名越靠前的学校,其研究领域和研究小组的多样性越大,当然申请的难度也越大)

大致看完每个学校后,我筛选出30-40个学校,在参考了这些学校奖学金发放情况、招收国际学生比例和它们的申请难度、公私立、学费、所处地域、甚至学校网站的人性化设计(^_^)等等因素后留下了10多个打算申请的学校名单。由于考虑到CS申请人数多,竞争大,我建议学校数量最好不要少于10个。关于奖学金等方面的排名,可以去太傻和寄托上搜帖。

因为我是通过网络申请的(现在很多学校都不提供纸申了,网申更方便),所以我强烈建议现在用Excel做一张表,用来记录每个学校的信息和申请情况。表可以有以下内容:学校名(Institution Name),申请专业的页面(Department Page),申请截止日期(Application Deadline),网申页面(Online Application Page),网申帐号(Application ID)以及申请情况页面(Status Page)。当然也可以再加入综合排名、专业排名这些内容,让这个表一看就可以一目了然。然后按照申请截止日期先后将学校排序,找到我们最紧迫要申请的学校。接下来就要开始准备申请材料了。


相关链接

USNews: http://www.usnews.com/usnews/edu/college/rankings/brief/t1natudoc_brief.php

太傻论坛:http://bbs.taisha.org/index.php

寄托论坛:http://bbs.gter.net/bbs/index.php

心情很郁闷

很久没来写过东西了。本来那段时间忙申请学校,就有一段时间没来,越不来就越不想来。人就是这样……

今天晚上心情很不好,闷得慌。一来最近忙的毕业设计感觉进展比较困难。二来觉得自己还是很自闭,很少朋友,自己又不愿去结交。还是老问题,总觉得别人都认为我是一个怪人,和大家不是同类,自然而然是被大家排除在外面的。计算机和网络确实提供了绝缘的社交平台,可以让任何人在任何时候重塑自己。但是我知道网络不是生活的全部啊。我不希望自己是一个十足的“御宅族”。

我努力工作,努力学习,我能期望什么呢?我自认为自己懂得很多东西,但是没人知道这些,没人认同这些,这样连我自己都开始怀疑自己了。我猜我以后能有一天变得比周围的人更有地位,更有财富,我需要认同和尊敬,但是我只把个人能力考虑进去了。要获得我想要的,除了个人能力还需要很多其他的资本,人际关系,商业头脑,等等,更何况我的个人能力又能有多强呢?

我不相信有任何女人会喜欢我,我也不想去追求哪个女人,虽然我希望获得别人的爱,但是我还是认为所有的女人都会认为我是一个异类,一个不值得信赖的人。是的,因为我总认为自己是一个没有任何地位的人,连一般的普通人都不如。平时强装笑颜,其实内心里面是虚的。因此我非常强烈地希望证明我自己的价值。

当然,我知道,每个人并不是那样想的。每个人的处事方式都不一样,只是我的这种在我的周围比较少罢了。就像一个围城,里面的人想出来,外面的人想进去。有男女朋友的人当然也有他们的苦衷,有很多朋友和人际关系的人当然也有他们的麻烦。但是社会就是这样,它会自动地同化异类,消除异类,而这些异类要不就妥协,要不就只有发疯了。

对于我来说,这种异类的生活何时才能结束呢?人都是可塑的,我并不认为我没有作为一个正常人资格。是我改变自己去妥协呢,还是等着自己的环境改变呢?我不知道。

每个人都是人,都具有人的情感,也有最为人都存在的缺陷。很多时候感到恼怒,感到嫉妒,虽然知道产生了这些感情证明自己小气,窝囊,也不想承认,但现在慢慢觉得,是一个正常人都不可避免会有不愉快的感情的,也就不再像小时候那样强烈地看不起自己。我可以原谅自己,可是如果别人知道了我的想法,不可避免地会引起别人的反感,我不想发生这样的事。很多时候也感到后悔,对不起那些关心着和关心过我的人,也为那些曾经误会过我的人感到遗憾,但是一切都过去了,道歉又能补救什么呢?我是害怕自己的道歉会引来白眼,还是真的认为没有必要呢?我不知道。我内心深处的有一面是胆小的,极怕受到伤害的,但我不认为我是胆小鬼,这是人人都有的,虽然大家一般都不会说出来。

EVA 第三话里的律子的一段话很好:“豪猪虽然想将自己的温暖传给对方,但身体靠得越近全身的刺越会使彼此受伤”,美里的回答“所谓长大成人就是不断散了又聚,聚了又散,为了让彼此不会受伤害而保持一个适当距离。”如果真的像庵野秀明所想的,人与人不再有“距离”了,这个世界会不会更好些呢?

2006年12月2日星期六

Bach: Organ Works

每次听Helmut Walcha演奏的巴赫管风琴作品时都会不由自主地想,如果我能有巴赫百分之一的音乐天才加上Walcha十分之一的演奏天才,那该有多好啊,多么希望自己能够亲手体会巴赫的世界啊……