有道是“赤日炎炎似火烧,又是一年暑假到”。话说这日我正在公司里一边盯着屏幕一边拿两个指头敲代码,突然间斜刺里杀出一名彪汉,定睛一看,只 见他:身长八尺,腰大十围,河目海口,燕颔虎头。侧撇两道胡髭,翩翩有若陆小凤;横陈一双虎目,威风好似吕温侯。原来是DHL的快递大哥。只见他看了看我 座位号,又对了对我的名牌,然后叫着我的名字塞给了我一份快递,还没等我反应过来就一个闪身,消失不见了。空留我坐在那里拿着快递的包裹发着呆,直到自己 成功地从编程态切换到日常态,看着纸包上“清华大学”的印章,才反应过来原来是BYVoid的书送来了。
回想起来,当年我和BYVoid在河南省实验中学的逸夫楼机房(江湖上戏称为“逸夫网吧”的地方)里聊天的情景仿佛还在昨日,那时他听说我报了上海 交通大学的软件工程专业,对我说他听说软件工程专业遇到的编程问题和OI的完全不一样。那时的我还完全无法想象OI以外的一个编程世界,如今虽然仍然未能 窥得编程的宏伟世界之全象,却也已经有海阔天空的感觉了。当年我们还都是在OI界打拼的小P孩,如今我却坐在微软的办公楼里接收BYVoid送来的他自己 编著的书籍《Node.js开发指南》。
这本书我曾经在人人网上推荐过,在此不妨再推荐一次。在此书出版之前,我曾有幸成为了此书的审稿人之一,得以提前阅读了这部佳作。虽然BYVoid 同学写作这本书的时候才大二,这本书是他的处女作,然而此书语言上字斟句酌,又不失形象,讲解时深入浅出,理论扎实,结构严谨,所有例子中的程序也都堪称 优雅。一言以蔽之,质量上乘,不但在中国技术类书籍市场中鹤立鸡群,在全世界的同类书籍中也绝对称得上上乘之作。想要了解这只蛋请猛击这里,想要了解下蛋的鸡请猛击这里。
好,花开两朵,各表一枝,如今且按下BYVoid童鞋之事不表。却说弹指之间几个月的时光飞逝而过,我才恍然发现自己的这学期竟然已经消失殆尽。而 自己这学期的书读得少得可怜。于是难免地写文章都写不利索,文思枯竭,以至于遣词造句时有若病恹恹的冬蛇,疲软且无力;想用典时却又好像丢了五色笔的江 淹,墨尽而词穷;偶尔想诌两句古诗拽一拽,也只是“欲说还休,欲说还休”,最后只好“却道天凉好个秋”。说书人有句常用语叫“有话则长,无话则短”,如果 我们从这句话的反方向来看,我这学期几乎没什么文字,在《我的大学》系列中的篇幅如此之短,是否说明这学期无话可说呢?
据说林语堂当年写《京华烟云》的时候,写到红玉之死时,曾取帕擦泪曰:“古今至文皆血泪所写成。今流泪,必至文也。”林语堂先生的这番话被广泛传 颂,但是窃以为……林语堂先生其实是没有搞清楚充分条件和必要条件,他的前半句只能表明“血泪”是写成“至文”的必要条件,而非充分条件,所以推理不成 立……所以,从前文“无话则短”的论述也是没有办法推出“短则无话”的。也就是说,(绕了这么半天,)我这学期可以吐槽的事情并不比恒河沙数要少;换一种 通俗的说法,这学期依然很蛋疼……
上回说到我一时头脑发热选了数字媒体与艺术方向,结果陷入了水深火热的渲染真实感世界的计算机图形学战争之中。于是这一学期学习下来的成果是,计算 机图形学课程让我从此再也不想碰OpenGL,游戏程序设计课程让我从此再也不想碰UDK,神奇的是,细数下来没让对什么工具感到恶心的竟然是数字图像处 理课程(因为除了Qt其实没用什么工具?)。数字图像处理这门课还是让我收获很大的,因为它极大地刷新了我的世界观,让我意识到原来对于一个老师来说上课 还可以这么轻松,讲课可以除了这门课程涉及到的重要算法什么都讲(比如花半节课时间讨论怎么检查作业),检查作业还可以临时空降场外人士来帮忙检查……不 过鉴于我猛然想起下学期还有这位老师的课,此处还是戛然而止,避免失言吧。
上回还说到我游走在上海,参加了几家公司的笔试和面试的事情。前面我也数次不小心地提到,我现在在微软实习。在接到微软的offer之前曾经面过腾 讯、eBay。回想起自己面试腾讯的时候因为是处女面(也许你不理解我上一篇《我的大学》中突然出现的神旺大酒店,嗯,现神旺大酒店就是腾讯面试的地 方),说话挺没逻辑的;到eBay面试的时候说话就显得游刃有余了。话说eBay面试我的第一个面试官一开始问了我不少Java的问题,结果我只回答出了 一个其他全是斩钉截铁地“不会”(不过我还会提到,比如说,如果这道题用C的话我就会了),然后面试官看着我的简历问我做过那么多项目都是用的什么语言, 于是我高兴地说C++啊,然后开始问我C++的问题我就开始心里暗爽了啊,这是在刷分啊;然后又问我做一个购物网站大致是什么流程,于是我又暗爽了啊,你 知不知道我每次学习一个Web框架的方法都是先自己实现个购物车的demo啊!后来第二个面试官上来的问题也让我心里暗爽,他让我比较Java和C++的 区别,这个我简直可以写一篇上万字的文章出来啊,让我再把C、Python、Ruby、Clojure什么的一堆东西扯进来来一锅大乱斗都没问题的,可惜 那时候没说多少面试官问了另一个问题结果我蛋疼地忘了接下去扯了……但这还不是最蛋疼的,最蛋疼的是面试快结束的时候面试官冷不丁问了一句:“面向对象的 三要素是什么?”然后我第一遍竟然答错了……那一刻我深深地觉得自己对不起软件学院……
后来我果断被腾讯和eBay默拒了,再后来去参加了微软的面试,微软的面试是让我觉得最对口味的面试,因为面试的大部分时间都用在现场写代码上,这 比许多空谈要实在多了。后来在某个周一的某门选修课上接了一个电话,得知拿到了微软的offer,尘埃落定。然而一周过去以后的那个周一的同一门选修课 上,我又接到了一个电话,通知我去Google面试。后来思考再三,尽管Google也是自己很想去的公司,但因为自己已经接受了微软的offer,还是 拒掉了这次面试。虽然这种事情在不正经的时候可以拿来当作吹嘘的资本,但我内心里是觉得挺可惜的,也对不住现在在Google实习的然师兄的推荐了。
现在我在微软实习了已经将近一个月了。话说微软这边的环境还真是好,平时休息区冰柜里有免费的饮料、牛奶、咖啡、茶和各种零食(甚至还有泡面!)不 说,每天某个时间段阿姨还会端上来一盘子水果。由于我的位子具有得天独厚的地理优势,几乎每次水果都不会落下来。在公司的每层还有一个专门的game room,里面有桌上足球、乒乓球、台球和XBox 360,以及三国杀和按摩椅,于是最近总是习惯下班后在公司食堂吃了晚饭再到game room玩上一会儿再回寝室。啊,难免感到生活还是很惬意的啊……
话说我觉得自己去微软实习真是一件很神奇的事情,因为我在这之前的一年我几乎都是在Linux下编程,已经很少使用Windows;我胡乱学习了许 多种编程语言,还有很多种编程语言虽然我不会但也能够扯上一堆话(也许可以写一篇《如何和别人讨论你不会的编程语言》了),却偏偏C#是我一点点点点都不 了解的;我碰过JSP,PHP,3P里却唯独没碰过ASP。幸好之前在学习不少别的语言和框架时的经验能帮上忙,虽然现在对C#和ASP.NET我还有很 多东西压根不认识,但一边google或msdn一边写程序还是比较轻松的(有多年程序经验的人都知道,写程序总会碰到各种各样无比蛋疼的问题,所以请务 必理解我这里“轻松”绝不是“轻轻松松”,或者“不蛋疼”之类的意思……)。顺便说一句,C#这门语言还是很有意思的,不过限于篇幅,和自己目前的理解都 十分有限,这里还是不过多讲述了。
有位哲人曾经说过:“生命不息,蛋疼不已。”在我的上一篇文章中描述的失于雾的楼台而今已然展现,只是前方还有许多未卜的道路,等待着一个个入刺辉煌的绳命走过。所以本篇的终结语还是脱不出说书人的智慧:“欲知后事如何,且听下回分解。”