Monthly Archives: August 2009
竞技总是残酷的–WCG中国区总决赛
前几天处长提醒说今年WCG中国区总决赛就在这个周末的上海,还免票,有这等好事当然要去啦,哈哈。
下面直接进入正题讲讲看的几场比赛吧。
1. StarCraft, Super vs LX: 刚到现场时副舞台正好在放这场比赛,我本人很希望有人族选手进军WCG总决赛的,只是人族现在普遍不行,Super输给LX也没太大悬念,稍有点遗憾…
2. Warcraft, TH000 vs TED: 之后副舞台上进行了这场比赛,令我意外地超级精彩——Ted是DK的常规开局,TH000开矿被很快侦查到,于是Ted带着火领直接压制,把分矿打退同时杀了不少农民,这时感觉TH000就快不行了,没钱没兵没矿… 不过三蛋选择了一种让人称绝的方式开始慢慢地逆转:先是MK在不死基地外面扔锤子杀农民,一波过后又让步兵走进不死矿区然后单传MK进来屠农,由于建筑学的关系不死的英雄、兵只能在外围看热闹,这一波之后局势又均衡了;再之后是龙鹰的骚扰,打得Ted没时间出去练级;接下来是精华地出了血法,用虚无+MK的锤子造成的巨大伤害秒杀Ted的蜘蛛……当MK有了三级的锤子的时候那威力真是,几乎可以秒英雄了;虽然Ted后来出了女妖用反魔盾作保护,可是女妖也是被秒的命,没有女妖没有反魔盾,在后期6级MK的锤子下,Ted无奈地打出了gg
3. StarCraft, PJ vs F91: 这是在主舞台上进行的重头戏,相比起来我绝对更支持91这个“货色”,场边竞猜我也支持了一下91哥。当比赛开始时有人举起“F91你赢定了”的单子,这一下让我想起了二龙的“xx加油”,心想这下不妙啊… 比赛的进程倒比我想像中好,F91开局双基地暴狗进行很成功的压制,但被PJ“勉强”地防下来了,相比较起来F91消耗更多,PJ损失的就是少量的农民和采矿时间,结果被PJ憋了一波zealot冲了出来,后续还有很多高科技的白球,91的飞龙骚扰又被PJ很好地防住了,于是只好打出了gg。可怜的91在输掉比赛之后郁闷地连PJ过来的安慰都不睬了。。。 而PJ赢了这场之后直接进军WCG全球总决赛~
4. Toodming vs F91: 这是在场边进行地一场比赛,谁赢谁进WCG全球总决赛,可惜没有直播,我只能远远地看着Toodming的显示器。ZvZ的比赛F91本来就不是强,从Toodming的显示上看感觉91不妙,最后结果确实很遗憾,F91这个“货色”遗憾地与WCG总决赛无缘… 输了这场之后这个大男人趴在桌子上哭了起来… 确实够残酷的,我心目中的中国第一z,套餐男,在WCG这种BO1的赛制下不容易出成绩啊。
除了比赛之外,我还跟不少人合了影,这是我此行的最大收获了,哈哈。尤其要赞一下PJ,作为SC俱乐部的老板,没有一点派头,甚至在准备场边比赛时外面有个人喊“PJ,PJ,跟我合个影吧,我刚刚从天津飞过来”,PJ很爽快地走出来就跟他合影了~ LX除了比赛就是在休息区很少出来,所以一开始没机会合影,最后看完Toodming和F91的比赛,大家散伙的时候才和另外一个不认识的人走出来,我上去合完影,安慰LX说“这回真是遗憾,接下来好好打PLU6吧”,这时一旁的人对我说:“你也是PLU的啊?我是PLU6星际海盗俱乐部的老板。”哇,居然还遇到PLU6资深人士了,呵呵。 唯一的遗憾是没机会跟F91这个“货色”合影啊,看他那么郁闷,也不好意思去打扰了…
由于数据线还在处长那儿这家伙又每天都忘了寄快递,照片只好以后再补啦~
09上海书展
主题为“我爱读书,我爱生活”的2009上海书展前几天开幕了,我也饶有兴趣地去凑了一下热闹。
> 如果是想好好逛逛书市,对电子产品、外文书不怎么感兴趣的话,建议从东馆进入,然后按中馆、西馆的方向逛完一圈。因为大概的布局,东馆是几个大书店的按主题排列的书市,中间有一些小型活动的场地;中馆主要是江苏出版社联合起来的展位,以及主要大型活动的展区;西馆是一些小型出版社、高校出版社、外文书、电子产品的展区(基本上是南京军俱的格局)。真正逛书展的时候很容易被各种活动分心,所以先在东馆好好逛完,把中意的书都买了,接下来就可以随意地看看其它不会买的书,看看新书发布、签售,拿拿纪念品了,呵呵。
> 因为时间关系,我凑上热闹的主要活动是贝拉《魔咒钢琴》英文版(《A JEWISH PIANO Shanghai Love》)新书的发表、签售会。说实话之前对这本书没什么了解,听了介绍之后才知道这是一本讲述二战时流亡的犹太人在上海找到他们的“诺亚方舟”的故事,体现着不同种族、不同文化的包容。想起了以前看过的《追风筝的人》,似乎有种历史的感觉。发布会由胖胖的曹可凡主持,以色列副领事上台发了言,倒是有点气场的。第一次参与这样的活动,感觉比较新鲜,呵呵。
> 《我是麦莉》——一个我没听说过的东东在书展里还蛮热门的,正好有机会去了解一下——ICS频道刚开始播放的青春剧《双面孟汉娜》主演Miley的自传。年轻的fans还挺多了,现场还有“我是麦莉”模仿秀很热闹。不知道是不是我out了哎…
《红海洋》,这是央视新剧“沧海”的原著小说,据说是海军版“亮剑”,这方面题材我爸妈倒是蛮感兴趣的。现场有剧组人员见面会,剧组成员都穿着海军制服过来的,现场周围还站着一些穿着海军装的20岁左右的男生,看着蛮像是真的海军的。其中一个高个的胖胖的因为“领导”来晚了嘴里在咒骂着,我逮着一个旁边看上去比较小的问了句“你们是真的海军伐”,结果伊很腼腆地转过头去不理我了,我囧…
> 逛西馆的时候有两个大大的外文书展台,一开始我很感兴趣地去翻翻,然后越翻越没信心——那些外文小说似乎都不是原版,书很小(比32开小但比64开大一点的那种)字也小但很厚,想起以前尝试着看原版Harry Potter但几小节之后就发现自己词汇量太寒酸——我还是算了。
现场还有蓝光的体验,有一个小黑屋,一拨拨地放人进去体验蓝光的清晰度。排队人多我就没高兴进去,就在外面看了一下40寸液晶上1080p的效果,想起TGFC上经常有人说的可以“数毛”了,呵呵。
> 除了自己买东西,展览会一般都有免费的东西送,我也拿了一些。一把扇子,一本关于星座英语的书,几本《第一财经周刊》,书城的9折优惠卡(大众点评联名卡)到最后一个袋子还蛮重的,比起门票来,这算是收获颇丰吧,至少我自己满意了~
得发泄一下
在我前面有两个人。第一个,材料一项项看过之后——
“你们公司的注册地是在黄浦区吗?”
“是的。”
“公司的组织机构代码是多少?”
“我不知道啊…”
“你确定公司的注册地是在黄浦区?有了组织机构代码就能查到。”
“我打电话问一下。” 打完电话——
“对了,你还缺公司营业执照,这边还缺一个人事的章。”
“啊?那今天办不了了?”
“是的”。
第二个,一边翻材料一边问——
“你的学历学位证明没有。”
“我的学位证带了。”
“我说的是学位证明。”
“可是我学位证都带了啊?”
“我们这里要的是学位证明。”
“那这个可以在哪边开吗?或者可以代办吗?”
“我们这里可以代办,要三个星期;自己办要两个星期。”
“啊?可是我的体检报告下周就要过期了。”
这时我插了一句,“你们公司有外服吗?外服办得还比较快的,一个半星期就弄好了。”
“没有,我们都是自己办的,而且体检报告还是来不及… 另外,我的劳动合同上的地址和这个地址不一致,有关系吗?” (我也不清楚她说的哪个地址)
“当然有关系。”
“可是这个地址是我税单的地址,因为住得比较远,所以要寄过去的。”
“不行,这两个地址不一样怎么行。”
“那怎么办。”
“你看着办吧。”
“难道只能重新签一份劳动合同了?公司会同意重签吗?今天又办不了了… ”
这个姑娘委屈得眼泪都快出来了,悻悻地走了。
轮到我了,我觉得我的材料准备得算很充分了,外服也帮我check过了,大概没问题吧。
(他抽出一张常住人口登记表)“这个户籍证明不对,这哪是户籍证明啊?”
“这个就是我的户口本,南京的就是这样的。”
“我们这里不一样的,我们要的是户籍证明,这上面哪里有户籍证明这四个字样?”
“但南京只有这样的户口本,我之前办护照什么的都是用这个的。”
“我们这里要的不是这样的东西,你找公安局去开户籍证明。另外,这个劳动合同复印件才这两张?这怎么行”
(拜托,我原件都给你了,复印件是两张有签字的页面)“哦,好吧,这个我复印一下就是了。”
因为还是缺了一样东西,我回去了,打电话问过了南京的人才中心和公安局,公安局说户籍证明就是那张纸的复印件加上公安局的印章。于是我又打电话到居住证办理中心,一个小姑娘接的电话——
“你好,我今天来办过居住证不过缺了个户籍证明,但是我打电话问过了,南京的户籍证明就是那张常住人口登记表,盖了章就行,我的原件上就盖过章了。”
“那不行,我们要的是户籍证明,你那个不是。”
“你没明白我的意思,南京公安局说了,那个就是户籍证明。”
“那你要让他们写上一行字,‘以此作为户籍证明’,再盖上章就行。”
“这有什么区别,反正我上面盖过章了,我自己写上一行字不也一样?你们也看不出来。”
“那你是说你要公然作假了?”
“所以我说这个有什么意义?本来就是户籍证明,你们非要再写上那么一行字…”
“你等一下。” 小姑娘觉得没话说,把电话给了旁边的早上给我办证的那个男的。我又重复了一遍南京公安局说的话。他说,
“那这样吧,你让公安局写上这么一行字,再在上面盖上红章,这个才算户籍证明。”
(我很无语,想想也没什么其他办法)
“好我知道了。”
一大早在我之前的都没办成居住证,我后面的大概也“凶多吉少”。办个证要这么多材料干嘛!人家有学历学位证了,你还要学历学位证明(办这么个东西还要160元),还要两三个星期;人家的户籍证明就是那东西你偏不认,搞什么啊!
上海Moto工作一个月随笔
来上海Moto工作一个多月了,有些感想随便写写,当然某些“敏感”的东西就不放在这边了,呵呵。
首先,最大的不同,是Scrum——近些年流行起来的敏捷软件开发模型。以前在南摩,基本是按照Requirement, Design, Code, Test这个流程走下来的,很清楚,对项目进程也比较好把握。Scrum的理念不一样,它假设项目的需求是会随着时间而变化的,于是它被设计得很有弹性很自由。它的模式大概是这样:
1) 将整个产品要实现的功能写成backlog,假设按一个Sprint(周期)21天算,把这些backlog分成在这个周期内可以完成的sprint backlog;
2) 召开sprint planning meeting,划分,确定这个Sprint内需要完成的任务,标注任务的优先级;每个Scrum team自己选择感兴趣的story并分配给每个成员;
3) 进入sprint开发周期,在这个周期内,召开Daily Scrum meeting,看每一天完成Story的进度;
4) 整个sprint周期结束,召开Sprint review meeting,将成果演示给Product Owner;
5) 团队成员最后召开Sprint retrospective meeting,总结问题和经验;
6) 这样周而复始,按照同样的步骤进行下一次Sprint。
因为每个Sprint周期很短,所以可以按照需求的变化及时地把这些变化做进项目里。据说这个模型在很多公司实施得很好——
然而,我觉得在Moto,我看不到Scrum的那么多优点,反而体会到了一些缺点。
1) 对于scrum team的成员,他只是接触一个个的story,却并不知道这个项目的总体进度,有很多要从整体考虑的东西会被忽略;
2) backlog里的story需要有非常详细的描述和正确的优先级、effort的预估,可是描述经常不清楚,优先级/effort在真正做事情前很难估计正确;
3) 缺乏一个CM team支持,加上没有很好的版本控制工具(这跟Scrum没啥关系…),导致需要做release的那段时间会很混乱;
4) 对于需求的变化,往往是在做一个个story中途发生的,同样会导致这个story白做或者需要改变story要做的事情,浪费effort。
其实不管什么软件开发模型,对于需求的变化都是非常头疼的,有的变化甚至需要带来架构上的变化,很让人无语。在MDB时感觉还好,一般都是运营商定制好了一个手机的各种需求,然后我们再开发,变化不会太大;而现在做STB,有的东西说变就变了,很无语的。。。
不过,这些缺点里有的是可以通过老板的工作弥补的,比如说他可以把项目的总体进度share给我们,可以专门找人做CM,可以用更好的版本控制工具,虽然都需要投入,但我觉得是值得的;有些缺点可能真没办法…
第二,我想说说SVN,这是我们现在用的版本控制工具。以前在MDB我们用Clearcase,很强大的东东,但据说很贵,每年都要charge一大笔钱。而SVN是开源、免费的。以前用SVN、CVS,都是用来在网上下开源的代码,跟昊子合作的那段时间也只是用来在trunk上check in代码的工具而已,体会不到它版本控制的功能。而在真正的大项目里用上SVN之后,我的一大感受是,便宜没好货。相比起clearcase,SVN的差距确实太大了,没有dynamic view只能checkout到working copy;建branch也必须整个项目的东西一起建;merge需要queue而且也是整个项目的code一起搞;某些属性(比如externals)很容易被忽略导致错误地在某个branch上做了本该在另一个branch上做的事… 就我已经经历过的一个多sprint来说,粗略估计花在SVN上建branch、check out、最后merge的时间,可能要占到一个story的20%时间。
我的想法是,对于一个小项目,或者各个部分比较容易分得开的项目,用SVN还行,如果需要很多人在某一个模块里经常做改动,用SVN的效率会很低。我知道网络上的开源软件都是用SVN的,也许对SVN的了解还不深所以不清楚它的好处,但我觉得在大公司里做的大型项目,还是应该用更好的版本控制、项目管理软件吧。
第三,关于code review和merge。其实这和前两点都有点关系,不过我还是想特别说一下。在scrum模型里,code review并不是一件很重要的事情,它关注的是及时地把feature deliver给客户。然而在实际操作中,如果缺乏code review会导致很严重的问题。说实话在MDB我对此没有特别的体会,因为在那边有很严格的流程,所有的code都需要inspection才能进main line。而在这里相对随意,code review只是在review board上提一下,然后大家看看、有comments就在上面提就行了,最后有没有改也不知道。就上一个sprint里,我就见过一同事随便改的code也提了review,我看了一下发现里面有了不少bug,过了一天却发现code又被整体改了一遍,跟一开始完全不一样了,bug也没了,我汗… 这样的review有什么效率和效果啊。
想想还是MDB那么严格的机制比较好,提inspection的时候自己都会保证code质量已经到了一定程度了,不会随便提的,大家一起开会看code有时候是会觉得浪费时间,但长远地看这还是能保证code质量、减少将来的effort的。Merge的话因为在MDB用clearcase,可以对单个文件一个个地改最后用view看一下就可以了,而且经常会请同事帮忙看看merge得对不对,所以较少出错。而现在SVN的merge是件头疼事儿,因为一般merge都是sprint快结束时做的事情,大家一起上,所以只能乖乖排队,而这一排队,等上一两天也是正常的——也就是说要等一两天你的code才能merge到main line里去;有时候也会遇到“没品”的同事一声不吭在merge queue里插队,他是快了,可自己等的时间就更长了….
关于review,我觉得我们可以做得更严格,即使浪费现在一点时间也是值得的;关于merge,我真是不想用SVN啊~