三日骑(zuo)行(si)碎碎念

清明三天假期,也基本实现了骑(zuo)行(si)三天的想法,有很多话(cao)想说(tu)一说(tu)。

双日拉练本来很想去白河组的,不作不死嘛。但是分组名单一出来就傻眼了,尝试过找大黄蜂、老蒋、马丁argue能不能换组,但是都被以不同的方式谢绝了我的请求。虽然我后来知道名单有过第一版第二版,虽然马丁跟我说愿意以个人身份对于考虑了别人的需求但是没有考虑我的需求道歉,虽然马丁后来在执委会上又说分组过程没有任何人为的参与,虽然大家一看名单就知道哪个组是分配到白河的。当然这些都是文体部的老槽了,没啥吐的新意,我只是表达一下对可以把一个随机问题搞得如此复杂的困惑。

官厅以前去过,当时只是路过,虽然走的不是一条路,但是知道官厅水库并不远,所以一开始的反应是不给力。于是就跟队长魔方先打了个招呼,说我可能不去先不要给我安排职务。第一次碰面(非正式准备会)时因为没啥事就去了,魔方队长可能因为太忙了忘了我跟他说的,竟然告诉我安排我扛旗。我没有货架,上次八达岭回程前旗也是临时借了五洋的快拆,所以当场就推辞了,说我只能当前助或者前站,心想要是安排不了正好就可以顺理成章的不去了。后来开准备会,本来准备是想办法当面跟队长说我不想去了的,可是魔方宣布要让我跟可爱的队医GG夏天一起打第二天的午饭前站,当时我有点犹豫了,还在想能不能找个好一点的理由推脱。结果晚上队长又群发短信说还让我当第一天的前助。这两个职位我都没刷过,然后又得知熊熊是第一天的前旗,第二天午饭前站的另一组,这样就可以大部分路程一起骑车聊天了,这么一来就想干脆就把双日当郊游好了,这才真正决定去了。

第一天强度不大,听着熊熊的车载音响,跟着前旗很悠闲,整个队伍也基本分成前旗和后旗两个小分队,大队行进速度也还行。除了午饭点遇到了一个奇葩老板,一切有条不紊,顺利到达了目的地。住宿前站非常给力,晚饭还吃到了鱼,还有在路边桃花林和水库边日落下的各种有节操无节操摆拍,和预想的郊游节奏差不多。晚上去商店的时候正好还剩下17瓶AD钙奶,正好一人一瓶,队长魔方就全买下来了。我想想也应该表示一下,看到有一箱18袋的牛奶就顺手买下来分给了大家(我自己偷偷多喝了一袋……)

第二天穿越了一下水库边的土石路,在铁路桥附近摆拍了很久,午饭前站终于出发了。由于第一天的午饭不是很给力,晚饭又太好,压力还挺大的。骑行基本还是第一天的队形,熊熊当前旗,我跟着或者并排,后面跟着另外两位前站夏天和黛樱。由于得知白河组的进度比预计快很多,白河前站可能比我们还早到永宁,所以一路马不停蹄的在赶路。后来拐上昌赤路,又得知白河前站出了点bug,当时嘻嘻哈哈的直接原地停车休息了将近20分钟。上了两个小坡,一路下坡放到大庄科,先问的两家农家院价格直接是餐标的两倍遂作罢。问了一个好心的商店阿姨,得知周围基本没啥别的吃饭地方了,必须再走一截才有比较多的农家院。当时有点郁闷,也没办法,只好继续放坡。可是还没放到50米就发现右手边还有一家农家院,老板很热情,价格也谈得很顺利,环境也很赞。想到老蒋第一天在群里说到了餐后水果的事,买水的时候就顺便买了一个西瓜和17根香蕉,然后就心满意足的坐等大队了。

大队来了,终于吃到了午饭,大家很开心,还有餐后水果作为动力。白河组后来也在我们的午饭点休息了一会,气氛还挺融洽的,两个组有说有笑,然后白河组先出发了,我们继续解决午饭并且又休息了一会,还干掉了所有的水果~

终于又踏上了返程的路,可能是水果买多了,大家都表示吃的略饱(我也有点撑)。虽然反爬解字石的难度比正着小不少,但还是有点担心有人(包括自己)掉队,想了想干脆带着大家一起爬上去好了。踩了两脚蹬到了抹茶前面,按照她的节奏在前面带队,一路上时不时的喊喊加油提醒大家跟上,耍了几把再过两个弯就到了的把戏,一组17个人就这样一起到顶了。得知跟白河后旗之间的时间差距还缩短了,心里还是挺有成就感的。

后来得知白河组去十三陵水库了,而整体平均实力稍欠的我们早些时候就决定放弃十三陵水库的叠加包直接从西关环岛切到G6辅路回学校了,心想正好也可以避开。不过后来还是被追上了,还发生了我和抹茶在未经队长许可的情况下换前旗和我带着大家狂飙G6辅路的事。幸好后来被熊熊追上并且吼了一顿,我才反应过来自己刚刚荷尔蒙分泌过剩干了坏事,及时收队停止了荒谬的行为。

在最后一个休息点又和前旗抹茶把车换回来了,终于不用摆着内八字骑15寸的小车了,心里还开心了一阵。不过感觉抹茶并不这么轻松,因为大家都知道白河组在后面,作为前旗压力还是挺大的。后来抹茶摔车了,就在队医给抹茶清创的时候恰好与友组的成员进行了不是太愉快的对话。一方面不知道白河组在后面发生了什么,不知道他们其实是被我们压了心情也不好,一方面由于对对方的路线不是很清楚,接收了一些错误的信息,加剧了误解。应该说不愉快的情绪就是在此刻开始的,但当时并没有想太多,而是想暂时停止了可能的争吵,跟抹茶说了一句,“什么都别想了,先安全回家。”

作为一路上照顾着大家的“大师兄”,看到抹茶摔车着实让我心疼了。而且是那么低级的摔车,衣服摔破了出血了,抹茶还一度拒绝让队医清创,想早点赶回学校。这一切都让我越想越郁闷,骑车也变成了留口-狂飙-带前旗的循环节奏,在刷了几乎所有的留口之后,终于回到学校了。但是心中的怨气并没有停止,于是发生了执委会上的争吵,是我起得头,幸好被马丁及时制止了,我也当场反省表示了道歉,还试图求同存异提出一些合理化的建议避免此类事情再次发生,虽然这些在别人看来可能并不是这样的。

执委会后是组聚,因为支持了马丁解散微信群的号召,当时就想先别管那些烦心事,抓住难得的机会和大家好好聚聚。但是没想到执委会的插曲很快引发了次生灾害,一开始只是想避免不必要的进一步争吵,没想到后来事情的发展要比我预计的糟糕很多。打了一通挺长的电话,让其他人先吃。电话的过程中核桃和熊熊出来找我,都被我赶回去了,面罩买来了雪糕还没进门就先给我了一个。最后回去的时候大家都没有动筷子,还把对着门的正席留给了我,那一刻我很感动,只是第二天还要带穿越的队伍,加上刚刚发生的事情,让我觉得好累。

晚上回去的时候已经很晚了,骑行服也没洗,直接冲了一把冷水澡就上床了。心里还是有惦记的事情,结果发微信消息的时候打了一半还没等到舍友回来连灯都没关就睡着了。幸好第二天早上5点的时候自然醒了,醒来时还发现手机是静音,吓了一身冷汗。出发的东西还没收拾,于是在宿舍里又是一顿叮铃咣铛,着实委屈了宿舍的好基友。匆匆忙忙的出了宿舍,很庆幸比较早的到了办公室不至于让大家到了等我这个队长。

其实说实话,这次拉练我挺没底的,一方面上次前站过于郊游,很多地方对正式拉练没能起到很好地模拟效果,以至于我一开始一直担心天黑之前是否能进城区的问题。另一方面上次前站也过于作死,一路跟着小s也没太注意记路线,在手机信号都不好的山路上又不像大马路还可以打开手机查查地图,加上正好赶上双日,感觉很多东西都准备的不是很充分,而我又是第一次当队长,虽然只是小队伍,但是由于地形特殊,在山上出了什么问题都会非常麻烦,所以心里一直很紧张甚至有些焦虑。有队员反应我一路上有些严肃,可能就是这个原因吧。

一路上精神都不是很集中,一直翻来覆去着心事,又担心着前面带错路,后面有人掉队,或者出了什么别的差错之类的。到了穿越最后的终点雷达站才反应过来解锁了下坡无推行的成就,好几个前站时认怂推下来的陡坡也都迷迷糊糊的冲下来了,幸好作死没出什么问题。只记得在前往山顶雷达站的最后一个岔路口,我站在路口留口,最前面的暮潮、109还有杨柳沿着路出发了,小液滴的车在后面扎胎了,老蒋和南墙在补胎押后。这时候我愣是没想起来小风和黛樱有没有从身边经过,第一反应就是两个大活人没了,然后立马打电话给小风和黛樱,结果一个无法接通一个关机。接着就喊话让押后和小液滴先换车,让小液滴先走,主要目的之一就是让她往前赶如果看到小风和黛樱立刻报告,接着又打电话给109让他原地停下收队,同样如果见到小风和黛樱就立刻报告。最后在小风和黛樱看到109的时候打通了小风的电话,终于一切以虚惊一场结束了,可是这前后短短几分钟时间着实让我吓出了一身冷汗。

很庆幸一路上大家都非常给力,靠着老蒋和暮潮两位理事的光环,还有南墙和杨柳两位负责的押后&后旗,以及QS级别却作为全程队医的109,还有靠谱的去程前旗&前助小风和活泼的黛樱,还有可爱的一开始就“坚持”推车的小液滴,我们终于比较顺利的回来了。在我“要求”大家单列一一档“爬”南门大坡的时候,我想你们可能很难体会到我那时前所未有的解脱感。

三天的作死终于结束了,本来想着可以解决一下历史遗留问题,但是事情并没有向想象的方向发展。试图找小s开导,在办公室门口扯到天黑又走一路扯一路,直到他宿舍楼下还扯了好久。回到自己宿舍之后整个人一下子就瘫了,穿着骑行服就躺在宿舍的水泥地上。打了一通最后被挂断的电话,看了一句现在回想起来火药味也并不是很大的消息,突然间心中的那股愤怒就被激化了。在微信/短信里说了很多气话,发泄一通之后冲了一把热水澡就上床了。还问了一下之前托人买音乐会票的事,结果没等人家回复就睡着了。

第二天的早晨又是6点不到醒了,一开始还以为是连续三天早起导致了时差,后来才想起来是前一天晚饭没吃饿醒的。实在不好意思再影响室友休息就在床上玩手机磨叽到大家都起床,匆匆洗漱就到小博实买了一袋牛奶一根火腿肠两个面包外加一桶薯片。在去实验室的路上一边走一边吃,成功的在到达之前解决了除薯片以外的所有食物,这才心满意足的坐在实验室里,开始写这篇不知道算是什么的文字。

中午拜托小s解决了最后的难题,事已至此,别无他法。滚回宿舍躺在床上给奶奶打了个电话问候平安,顺便简单汇报了一下三天骑行的正面经历,说着说着就困了,挂了电话没想到一睡就过了晚饭点,只记得醒来的时候眼角莫名其妙的湿了。在小白房买了简单的晚饭就去实验室继续码字,脑子里回放了很多这几天的场景,脑子里很乱,不知道该说什么,也不知道该怎么说,更不知道怎么说比较好。

我这人吧,想法简单,说话直接,脾气急躁,争强好胜,还死要面子,虽然自己都知道也一直叫嚣着要改,但是在不经意的时候有些属性就被激活了,纵使事后万般后悔也无力回天,以至于有些麻木了。典型的巨蟹座性格?好吧,其实我不太懂那些……

很抱歉这几天来由于我导致的各种麻烦。虽然曾经当过熊熊的计概助教,但一直没少让他费心。有时候略显强势,难免让队长魔方有些为难。尤其是执委会上的不冷静,让友组的主要成员果粒橙和秋霜尤其是队长南方很难堪,还有为此受了不少委屈,费了不少心的人。希望不要因为我,影响协会内部的团结。白河组和官厅组都很棒,白河组的整体实力也确实比官厅组要强,但是问题的关键不在于谁杀谁,谁干扰谁,而是我们以后怎么避免特别是你追我赶直接或者间接导致没必要的摔车这类事情的再次发生,这些话我在执委会上也说了,希望不要因为当时的气氛而被误解。

很感谢大家给我“大师兄”这个称号(所以我抢注了这个id),让我这个在实验室一直叫别人大师兄的人也过了一把瘾。感谢所有曾经一起玩耍过的小伙伴们,认识了你们才让我感受到了另一种骑行的乐趣。很感谢车协这个大家庭,虽然有很多是我现在依然看不惯的地方,但是作为一个有悠久历史和如此规模的学生团体,很多不合理的地方也在所难免,希望车协越办越好。

差不多是时候说再见了,嗯,就这样吧,再见。

对不起不能再问候你是否还好了
对不起不能再早起叫你吃早饭了
对不起不能带着你去听音乐会了
对不起不能兑现明信片的承诺了
对不起,再见

离别随想

要走了,终于还是不得不面对这个残酷的事实,这是在家的最后一个夜晚。

独自一人以看门的名义呆在干洗店里,趴在单人床上,裹着两层被子,伸出双手敲击着键盘。金属质感的笔记本透着冰凉,一阵阵寒意也从莫名的方向袭来。网络和暖气是程序猿过冬的必需品,而在这里,一切都像是奢侈品,这就是家。

今晚和一位亲密的好友相聚,算是为我送行,醉翁之意不在酒,简单的饭菜,重要的是饭后的交谈。很多一直试图隐匿在心底的话题又被挖了出来,很多一直希望埋藏在记忆深处的回忆又浮现于脑海。言者无心,听者有意,本来只是普通的闲聊,却变成了我多愁善感的借口。人,真是一种可笑的动物。

小学毕业上初中,我便开始了异地求学的生涯。那一年是马年,我12岁,一转眼又到了马年,我24了。

曾经熟悉的家,如今早已被各种不适应所取代,曾经一起玩耍的小伙伴,如今也各自飞散,谈得来的更是屈指可数。

在国人的价值观里,稳定扮演着很重要的角色。拼搏了一生,最后追求的却是,稳定的工作和稳定的生活。我们总是在追求更好的生活,为了在社会中的立足之地不断充实自己,可一旦处在了社会的某一个层次,又突然养成了拒绝改变的习惯。我一直很好奇,这个量变到质变是在什么时候发生的呢?

在人类的文明史里,有一个永恒的话题,那就是“永恒”本身。从追求长生不老到哀叹时光流逝,从“到此一游”到著书立说,人类最终似乎放弃了追寻,创造出了“时间是永恒的”这个经典答案。如果真的就像爱因斯坦的广义相对论里说的那样,那我们一开始想追求的又究竟是什么呢?

一眼万年,多么美好,又多么不切实际。有些东西,正因为太美好才让人心向往之,也正因为太理想才成为对现实赤裸裸的嘲笑。人太贪婪了,得不到的,才是最好的。

我想我为什么没有口吃,是因为脑子还不够聪明,据说口吃都是因为脑子转得比说话快,而我不太会说话也不口吃,所以只能是脑子的问题了。

这随想完全是冲着高考零分作文去的,不过可能火候还有些不够,那就再补上一句好了:

如果可以,我希望遇见的是那个懂我的你。

农码精神

本来想的标题是《码到成功》,比较适合给IT界的小伙伴们加油鼓劲,后来从一个朋友的评论里看到了这个词,感觉更契合想表达的意思,故借用之。

马年到了,按照惯例应该有一篇年度总结,最好还是抒情散文神马的,但鄙人着实不才,还是罗列一下近来的生活好了。

好久没写什么稍微有点营养的日志了,继上一篇还算有点意义的生活记录之后,陈列的全是骑行记录和GSoC的report,这段时间的生活节奏太快,快到完全没有心情放缓脚步,更没有机会记录一下所经历的林林总总。

暑假期间在米国转悠了一个多星期,辗转东京、达拉斯、印第安纳波利斯、芝加哥。太多的第一次已不愿再重复罗列,太多视觉和思想上的冲击已无法用语言表达。很多事情都有着神奇的相似,就像我小学时一个偶然的机会去一百多公里外的淮外参加活动,冥冥中有一股力量,我感觉的到。

开会回来以后心境开阔了许多,面对不见起色的实习,我也鼓起勇气跟mentor提出了换项目的想法。事实证明这是一个非常正确的决定,虽然在那之后忙得焦头烂额,但是再回头看时,一切都是值得的,否则可能我都不知道怎样把这半年多的实习经历写到简历里。

那段时间很疲乏,我甚至能感觉出来自己的精神状态不佳,因为一直处于多线程并行的状态。除了实验室的日常事务,包括出国开会的准备和总结,还有实习的各种deadline,此外还在进行GSoC的项目。虽然和原定的计划相比,最后的进度显得有些匆忙,但总算磕磕绊绊的完成了,而且更重要的是,我的身体也扛住了。

GSoC完成了,半年多的实习也check out了,但是一直没有停止的是生活。和小伙伴们一起去听古典音乐会,还算充裕的收入让我有了足够的资本买那些以前舍不得买的音乐会门票,还入了以前舍不得买的耳机。除了古典,我还买了从小就梦寐以求的山地车,开启了骑行者的人生篇章。除了骑行,我还在教学视频和小伙伴们的指导下基本学会了游泳。还有foosball、乒乓球、台球、篮球、羽毛球,能够熬过那段岁月,它们功不可没。

农历新年前的paper deadline,总算让我有动力全身心的做一些实验室的事,当然这不算繁重的活也带来了一些不好的影响。有很多因为之前疯狂工作被抛在脑后的问题时不时的成为了脑海里的主角。

其实在之前就有一些小插曲,邂逅了、相处了也遇见了一些人,我甚至喜欢上了pub,还玩起了一些提不上台面的聊天工具,接触了一些这样或者那样的人。但这些插曲终究被主旋律淹没,基本都无果而终。这其中有一个更深层次的原因,是面对现实的无力感,甚至可以说,我在经历有生以来第一次对命运的妥协。我从小就不是认命的人,我坚信通过努力,只要不放弃,就一定可以成功。这个想法引领着我走上了一个又一个更高的平台,但是这一次我犹豫了。

我一直都不擅长处理人与人之间的关系,因为太复杂,而我又太容易抓住其中黑暗的一面,所以我很多时候的态度是逃避甚至是不屑。从过去的经历中,我也明白了最重要的一点:无论何时何地,让自己变得更优秀,肯定不是错误的选择。所以呢,短期内还是保持这个节奏吧。

吐槽了这么多,似乎差不多快吐完了,过年了,也终于有机会抛下一切安心的陪陪家人。昨天晚饭前后,也终于解锁成就完成了Google EMEA暑期实习生的host match interview。回到奶奶家的时候,其实已经有点过了饭点,但是一大家人都在等我一起吃饭,让我很感动。这下也没有什么揪心的事了,可以放开来享受剩余的假期了。

新的一年里,有很多想法和计划等着去实现。希望正如标题说的,我们有着独特的农码精神,这是码农们的幸运年。希望每一位码农都能通过努力达成目标,实现人生的理想和价值。

作为一个属马的码农,我没有理由停下脚步。

记国庆京北绕圈骑行

2013年10月2日至2013年10月5日,历时将近4天,总骑行时间(不计停歇时间)超过24小时,总路程超过500km,总海拔增益超过5000m,最高时海拔超过了1500m,平均每天至少爬了两个坡,一串串数字都刷新了以前的骑行记录,很高兴能有duyue和wencheng的一路同行。具体行程请见最后的控件或此链接

可能是天气转凉的缘故,两位小伙伴的状态都不是很好,当然是相对于他们的正常水平而言,我本来完全是拖后腿的节奏,这次反而依靠脂肪圈的优势,不显得那么丢人。

一路上发生了很多事情,印象最深的是第二天和第三天的夜路。果然已经到了秋天,天黑的很早,由于实际行程比原计划稍微慢一些,恰好都是在天黑时遇到了一个大坡。

第二天是横穿燕山大峡谷后上G112赶往白草镇的路上,这一天几乎都是上坡,海拔从开始最低不到300m一直到1500+m。尤其是在爬了很长一阵坡之后,发现路边竖了一个标志牌,大意是前方4km都是陡坡和急转弯,当时两条腿就软了,这时天色已经暗了下来了。刚开始还坚持以龟速骑行,最后还是节操掉尽开始了推车之旅,等我最后一个达到山顶时天已经黑透了,水也喝完了,没吃上晚饭,风还很大很冷。这时在山顶的平台上先到的小伙伴正和一辆面包车里的两位路人聊天,他们是国庆开车出来旅游的,刚刚上山时就注意到了我们,到达山顶后就一直在等。一番寒暄之后,很慷慨的给了我们每人一块士力架和一瓶农夫果园,当吃的喝的握在手里时,内心的温暖真不是简单的感动就可以形容的。两位好心的路人很热心的与我们聊天,还约定跟我们一起下山,一起找地方吃住。放坡的时候跟在我们后面义务充当保姆车,一会打远灯照明,一会告知离目的地的距离来鼓励我们,我们也像打了鸡血一样,一路35+km/h的速度,不到40分钟狂奔了20+km,顺利找到了吃住的农家院。吃饭时人生第一次喝了白酒,虽然不是很多,但是很开心,还聊了很多徒步、骑行和自驾游的话题。我们都在彼此的路上,机缘巧合的相遇相识,虽然素未平生但还是可以像朋友一样亲切,这或者正是骑行吸引我的原因之一。

第三天是从河北回到北京境内,绕行白河堡水库,翻越燕山天池赶往永宁镇。在缩短了一开始计划的行程之后,这一天的计划是至少到达白河堡水库,如果有精力再赶到永宁,这中间需要翻越燕山天池。白河堡水库沿线是蜿蜒曲折、高低起伏的地形,很消耗人的意志。在快要离开水库时天色已经暗下来了,但是周围并不像我们之前想象的那样有很多可以吃住的农家院,所以只好硬着头皮向前赶。翻越燕山天池的时候已经完全黑了,当时很后悔之前否决了同行的小伙伴在水库旁边随便找个饭店解决晚饭的决定。这次也没有好心人再出现解救我们了,所以只好靠自己了。wencheng的手电比较亮,负责照明和带路,我的手电稍弱一些,就开成闪烁模式警示对面可能的车辆。放坡的时候捏刹车一直捏到手疼,嗖嗖的风也显得更加寒冷。终于到达了山下,悬着的心也放了下来,虽然时间还不是很晚,但是在乡村里周围已经看不到人影和灯光,只有偶尔几盏不是很明亮的路灯。就在这时突然发现了一家还亮着灯的小卖部,当时心中的那份喜悦和激动真的很难用语言来表达,虽然商品很少,最后只是买了几包干脆面和几根火腿肠还有饮料和水,但是吃起来觉得非常香,连店里的那位MM都显得更漂亮了几分。在小卖部一番狼吞虎咽之后,问了一下接下来要走的路,很顺利的到达了永宁镇的城区并且找到了不错的住宿之地。小镇上的饭店关门都很早,最后只找到了一家卖烧烤的,除了烤串还点了炒饭,就这样圆满的结束了有一天的征程。

路上还看到了很多美丽的风景,除了上面提到的景点,还有雁栖湖、琉璃庙、喇叭沟门、解字石,不仅风景好,而且空气清新,和帝都的雾霾形成了鲜明的对比,以后有机会要多出来走走。暂时就先扯这么多好了。



记国庆夜游——第一次参与北大车协活动

国庆假期之前一直在赶Deadline,这篇日志也拖到了现在。这学期终于如愿以偿的加入了北大车协,希望在这里能认识更多志同道合的朋友。

之前中秋的凤凰岭宿营因为之前班级秋游的时候恰好顺道骑过去玩了,所以就不想再走一遍重复的路。这次正好是夜晚的活动,白天忙成狗了正好晚上去兜兜风,所以就果断报名去了。感谢队长乱舞,前前后后麻烦了队长很多事情,刚开始是因为白天没时间去检车然后问能不能晚上出发之前补检,后来一路还打扰了很多,最后散伙的时候还把外套落在了别人的扯上,也是队长保管并且联系转交给我的。

所谓国庆夜游,就是国庆节之前骑车逛逛北京城的主要景观,由于是带新人活动,所以全程速度很慢,加上红绿灯和车流人流的影响,队伍也拖的比较长,很多时间都花费在了收队上。先后经过的主要景点有后海、南锣鼓巷、北大红楼、故宫、长安街、天安门、天坛,有两个比较有趣的活动,一个是在北大红楼门口合唱燕园情,还有一个是最后从成府路回来时顺便夜袭了隔壁的土豪大学,具体行程请见最后的控件或此链接

很高兴能加入到这个新的团队中,希望以后在这里能结识更多的新朋友,尤其是PPMM神马的!好吧,还是不乱扯了……



Report #3 about Porting GTG – Final Report

Finally comes the end of GSoC 2013. After submitting the final evaluation, I am glad to have a chance to look back to what I have done in this summer.

During the last period of GSoC, I am working on two major tasks. One is to make current porting code get rid of deprecated objects [1] , the other is to set up coverage to test the porting code as much as possible.

For deprecated objects, it’s not a hard task as most deprecated objects can be replaced by other alternative ones easily. With the help of tool like grep [2] or ack [3], it’s easy to find them and everything can be done with little modification. The only one needs more attention is `Resource Files` [4]. Different from simply changing `GtkVBox` to `GtkBox` with the “orientation” property set to `GTK_ORIENTATION_VERTICAL`, `Resource Files` do not follow the pattern. We need to check each methods like `gtk_rc_get_style()` [5] whether exists in previous code. Then it will comes to the problem how GTK C documentation [6] “convert” to `PyGObject` [7]. As C doesn’t support objects so each method is named specifically with `gtk_` prefix followed by object name like `rc_` and the rest is the `real` method name. So we need to grep or ack `get_style` and do the same thing for others.

The `coverage` [8] part is another big harvest I learned in this summer. After discussion with mentor, Izidor Matušov [9], I finally came up the usage of coverage and how to apply it to current codebase to make sure most porting work especially the gtk part works fine. As it is hard to write unit test for interactive GUI applications, we can use coverage to run GTG GUI program and use it just like common user. And then generate the coverage report to see which part has been tested or not. At the same time, we can come up a list of actions for future testing. So I listed the actions for testing in a shared evernote [10] also with the coverage report. It shows that the gtk part of GTG works almost fine with 86% coverage after fixing serveral bugs.

It’s really amazing to have the porting work almost done, I am going to propose a merge request to make all the code into trunk branch. Though it really comes to the end of GSoC 2013, I will continue to work on the project. This is only a beginning for my open source experience. :-)

[1] https://developer.gnome.org/gtk3/stable/DeprecatedObjects.html
[2] http://www.gnu.org/software/grep/
[3] http://beyondgrep.com/
[4] https://developer.gnome.org/gtk3/stable/gtk3-Resource-Files.html
[5] https://developer.gnome.org/gtk3/stable/gtk3-Resource-Files.html#gtk-rc-get-style
[6] https://developer.gnome.org/gtk3/stable/index.html
[7] https://wiki.gnome.org/PyGObject
[8] http://nedbatchelder.com/code/coverage/
[9] http://izidor.matusov.sk/
[10] https://www.evernote.com/shard/s43/sh/8e6e0ce8-227e-4c7a-b1e4-1e4e13e2728a/3b9d652d1303c5418292963b9483155c

记京津往返

乘着中秋的假期,虽然有一堆Deadline追着,尽管之前在BBS上约了一起骑去天津的童鞋爽约了,尽管我一没有备胎二没有打气筒,还是单枪匹马一个人骑着我的小车车就朝着天津的方向触发了。

19日早上6点半不到出发,下午3点半左右达到南开西校门,修整至晚饭时间然后玩了一晚上加上第二天一上午,次日下午2点返程,夜里11点多返回学校,单程150+km,往返全程300+km,主要走的是G104,具体路线请见最后的两个空间或者此两个链接:链接1链接2

解锁成就:
- 单日单程 150+km
- 总行程 300+km
- 第一次骑没有路灯的夜路
- 第一次单飞(去程是单飞,返程是跟遇到的同行者一起返回的)

除了解锁了很多成就以外,可以说这次骑行某种程度上也刷新了我的一些世界观。首先是骑行归来之后的后怕,不仅是单飞,而且几乎没有带任何意外处理设备如备胎和气筒,如果真的半路出事真的很难想象。当初去程时是一腔热血,虽然也提前准备了额外的护具,但是还是略显不足。另外就是精神意志的重要性,去程由于是单飞,而且一开始自信满满的以为6点出发应该可以赶上午饭,至少下午一点之前可以到,结果可能就是因为这个目标导致了途中精神的紧张,特别是在快到12点,骑行了大约120km,还剩下30多公里路程时,再加上所有补给水全部喝完的打击,精神意志一度处于被击溃的边缘。幸好遇到了一位卖水果的村姑,果断买了一个香瓜补充水分和糖分,当时吃的差点就流泪了。最后还是长途骑行的经验不是很充足,刚开始档位调的略低,想保持较快的踏频,只是将速度保持在25左右的位置,可能还是跟单飞有关系,导致体力消耗的较快。返程的时候遇到了两个同行的人,果断选择了跟队,在天亮的时候速度几乎一直保持在30上下反倒觉得比较轻松。

路上虽然路况挺不错,但是说实话感觉略脏,遇到了好几个整个弥漫着臭味或者奇怪味道的村庄。遇到了好多个同骑G104国道的人,返程的时候还遇到了一个单飞去杭州旅行的人(真心佩服!)。在天津玩的时间比较短,所以只去了海河坐船顺便看了天津之眼,第二天上午主要就去了意式风情街,也算比较超值的行程了。感谢诗昭同学的全程款待和导游,还破费请我吃了牛排羊排和著名的大饼鸡蛋和狗不理包子,还很辛苦的带着我去买了正宗的十八街麻花。

仍然很清楚的记得,在返程的时候,走在没有路灯的国道上,只是靠一个手电筒和来往的车灯照明,当看到北京界的标示牌,看到离北京城区的距离越来越小,最后达到南二环永定门、前门、长安街、天安门,看到毛主席的头像,第一次前所未有的激动。真的很难想象,如果没有遇到两位素不相识的同伴,我可能真的就回不来了,半路发生事故和危险的概率也大大增加,真的感谢你们。

以后可能再也不会单飞了,至少很长一段时间内不会再单飞这么长的距离。另外就是还要再补充一些维修的设备,之前买的手电筒不知道是不给力还是没电了,可能的夜路问题也要解决。这几天得老老实实的赶deadline了,骑行的路才刚刚开始!