Main

December 04, 2012

程序员的职业素养

今天收到了《程序员》杂志 2012 年 12 期的样刊。上面有我应邀写的一篇稿子,在这里为自己存个档。


程序员是可以当作一生的职业。但首先,你需要热爱编程,而不是把它作为完成其他人生目标的工具。

既然计划投入数十年的人生,那么一定会不断的反思自己在哪些方面的努力是更有效率的。换句话说,现在的你,和十年前的自己到底有哪些不同,十年后又怎样超越现在的自己?

我的职业生涯还远远没有过半,深深感觉沉淀不足。总会有新的理解迭代到旧有的想法上。这次应邀来用简短的文字探讨这个深刻的话题,只能尽力来表达一些现阶段的浅薄之见。

我认为,一个程序员,无论他在哪个子领域工作,都需要在三个方面提高自己。

首先,保持对未知领域的好奇心,尽力开阔视野。

如果你只精通一门编程语言,那么就赶快去学习另一门,最好和之前的那门语言亲缘关系越远越好。这可以让你从不同的视角去看待过去的问题。

如果你只专注于一个领域,那么深入研究一下其它领域会有很大的帮助。大多数人都喜欢在自己熟悉的知识结构下解决问题,因为全新的东西总有学习门槛,你需要去了解很多基础知识才能开始实际的工作。在大脑里把相关信息组织起来轻松调配,和借助外部资料是很不一样的。后者要经历一个相当痛苦的过程。但是,一旦你习惯经常学习,可以逐步掌握一套自己的方法减轻这种痛苦。大多数人实际会遇到的领域有限,看似没有价值的知识,学习起来更为困难。要做到这点,需要保持单纯的好奇心。

其次,把握各个层次上的细节。

尽可能向人解释清楚系统每个层面的运行。硬件如何调度机器指令;数据在硬盘、内存、缓存、CPU 间的流向;代码如何被编译链接,代码经历了何种过程被加载到内存,JIT 怎样加速字节码的运行;操作系统怎样管理线程、处理 IO ;软件用到的第三方模块和工具如何在处理数据;在网络环境中,数据流的通讯协议;你的代码中每个模块逐个层次中的相互关系……

对细节掌握的越多,思路会越清晰。在每个层次上,你会看到不同层次的设备对上一层业务逻辑的抽象方式,直到最终你直接面对的业务。对业务的抽象能力,不仅仅来自于你的业务的熟悉程度。这种能力是随同细节把握能力同时俱备的。了解的越多,就越能知道你经手工作的合理性。

第三,对代码的直觉。

优秀的程序员能很快的发现性能热点、找到系统崩溃的原因、找出不合理的代码…… 准确的估算能力非常重要,快速心算出每个模块的开销和输入的数据量之间的关系;在写下每行代码时能够判断其对性能的影响、以简洁去挑战各个层次模块间的耦合复杂度。

培养这种能力,以我个人浅见,除了不停不断的编写代码,别无良方。在写代码的同时,时刻保持着思考,对坏味道的地方零容忍。只要在最早的时刻动手,任何推倒重来的代价都不会太大;而放任它们在那里只会让局面演变到不可收拾。

保持自己总有代码可写,不断的去发掘自己新的兴趣点,拓展新领域。单纯一些,编程本身就是一件有趣的脑力活动,而不必仅仅为了解决一些问题而写程序。

云风,2012.11.6

September 05, 2011

离开,是为了新的开始

经过数个月的沟通,丁终于理解了我的决定。在杭州 7 楼尽头的 CEO 办公室里,我接过了老丁送给我的一盒月饼。我给他分享了我最近在野外攀岩的一些视频。老丁打趣说,今天,Jobs 退休了,你也退休了,我还得坐在这里。

2011 年 8 月 25 日,我的离职申请上签上了丁磊的名字。

在网易 10 年半了,和一帮网易的兄弟们相聚甚欢。2001 年 4 月 8 日,在广州 36 楼办公室办理入职手续的镜头仿佛就在眼前。我甚至还记得当时办公室的摆设。那一个个鲜活的人还坐在那个位置,我记得前台的金鱼缸,入门处的植物,办公室的落地窗,窗外环市中路上火柴盒般大的小汽车。

接待我的 mm 学艺,应该还在公司吧?她帮我租的房子住的很舒服。安静的旧楼藏在街道深处。房东两位老人很和蔼。清晨的阳光照进主卧,窗外是一片绿色。

公司的快餐是订的楼下的蓝与白,12 块的人均标准可以吃的很好。在休息室里财务部门的美女们热情的和我聊天。嗯,八卦新闻总是很多。那时,我在大家的眼中估计是个初入社会的大孩子吧。

人生就这几个十年,我珍惜这其中的点点滴滴的时光。和朋友们聚聚散散,不曾想过自己离开的情景。但天下无不散之宴席,能够这样开开心心的分手,也是相当难得之事。

我对身边的人充满感激。网易是家非常不错的公司。我们一起做成了一点事情。这和与之奋斗的所有人都分不开。丁磊,叮当,都给了我极大的信任和支持。私人交情上,我们也有相当的感情。我与网易的情谊难以割舍。不同的人,即使有一些理念差异,也能求同存异。我认为他们的不同时期的不同决策在特定角度都是正确的。我也感谢网易这个由大家共同建设起来的平台,虽说总有些不尽人意的地方,但我认为在各位的共同努力下,已经做到了能够做到的足够好了。

这次离开,是我个人最近一年的愿望,思考了很久,并非因为人。先前也担心被误解,全程都在很低调的推进。最近突然在网上传出各种消息,让我领略了信息传播中的失实。我们都知道一个游戏,让一队人排队口头传递一个故事,当传到最后一位时,已经完全不偏离了最初的事实。让我觉得有必要做一点点澄清:

March 31, 2011

废稿留档:Effective C++ 3rd 的评注版(序)

Effective C++ 3rd 的评注版要出版了。我在这本书上花了不少心血。编辑约我最后写一篇序。我新码了点文字,用了点以前 blog 上写的旧文

今天侠少同学说“现在全文看下来还是有些纠结,反对、支持、再反对,再支持,百转千回的小情绪,读者恐怕会犯晕”。嗯,的确很羞愧的。不应该在这本大牛的书前面发牢骚。打算晚上改稿子。旧稿就贴这里存档吧。


February 04, 2011

写在 0x20 岁之前

还有一天,我的人生就进入第三个 0x10 年。

第一个 0x10 年里我无忧无虑。

当我路还走不稳时,我就喜欢拿着彩色笔涂鸦。我妈盼望着我长大能当一名画家。理论上我应该能遗传点我爸这方面的基因的。可惜我不努力,最终辜负了母亲的殷切期望。

在我还小的时候,我坐在老爸的自行车后座上,父亲问,你长大了想做什么?那是我第一次考虑这个问题。我说,做个数学家吧。那时我参加小学生的数学奥赛,成绩还不错。他不是很满意这个答案,说再想想吧,那或许不是你真正的兴趣。我沉默了,好象我不是真的很喜欢数学。或许是因为比其他人学的好一点造成的错觉。

January 26, 2011

顿悟?

greader 上读了一篇 真正的学习 。里面有则小故事:

“美国伟大的催眠大师米尔顿•艾瑞克森有阅读障碍,他读书时的多数时间就是在翻字典,因为他不知道字典是怎样排序的,所以每次查找一个字时,他都是从头查起。

一直到16岁,一天他在家中地下室里,还是在查字典,突然间好像一道白光将整个地下室照亮,一个巨大的喜悦从心中涌出,他发现——原来字典是从A排到Z的。

原来,他自己发现了字典排序的奥秘。”

读到这则故事,十分感慨,因为我有同样的经历。

January 25, 2011

有关英语阅读

不知不觉,我最近两年居然读了许多英文读物。书、手册、论文、blog 等等。前段想翻一点资料原文,居然记错了,以为自己曾在中文版中读到的,后来才发现我以前读的是英文版。

昨天晚上在小店客厅的沙发里窝着,读 Dungeon Twister 2 Prison 的规则书。然后把游戏 setup 好自娱。里面包间几个阿里巴巴的 mm 出来看到我摆的满桌的小模型很好奇,顺手翻桌子上规则书。惊奇的说,这都是英文的怎么看啊?哎哟,不是经过 9 年制义务教育的同学,都能认几个字母的吗?慢慢读呗。其实,读多了也就那么点东西,况且还图文并茂的写的很清楚。文章嘛,关键是条理清晰,用什么语言写的并不重要。

September 26, 2010

新西兰南岛游

新西兰的南岛很美。我们从惠林顿飞基督城,下了飞机就去取了车,直接去 Lake Tekapo 。一个非常漂亮的小镇。一开始还特地看了一下传说中的强震过后的基督城,完全不象刚经历过灾难。

如果你到了这里,就绝对能理解为什么地震没有人丧生。地广人稀,房子都是木结构的小房子,单门独栋的。新西兰提供只有 400 多万人。除了奥克兰是个大城市,占了 140 万人外,别的地方人都不算多。而且在城市里,人也不喜欢聚居,人口密度非常之小。

这里自然风貌保留的非常好。在南岛开车逛了一个星期,就是雪山,青草,蓝天,白云,牛羊遍地,偶尔几座精致的小屋子点缀其间。很快都审美疲劳了。车道还是那么窄,但路况非常好。除了小镇(80/70/50),全是 100 km 限速。很窄的双车道,不少小桥都是单车道的,远远的看见了,需要减速让行。在这里开车,很有玩赛车游戏的感觉。连我这样不喜欢开车的人,都能感觉出一点驾驶的乐趣了。

February 17, 2010

虚杯以待

这次韩寒和刘谦各写了一篇 blog 而之后又隐掉的事情,我是在 greader 从和菜头那看来的

我喜欢韩寒的直爽,如果有机会认识,我会想去交这样一个朋友。

这次看了刘谦写得这篇 blog ,我发现他也是一个很不错的人呐。

有人问起,“先把杯子里的水倒掉才行” 这个禅宗典故是从哪里来的。我也懒得自己敲了,转一段

南隐是日本明治时代著名的禅师,他的一杯茶的故事常常为人所津津乐道并予以启发。有一天,一位大学教授特地来向南隐问禅,南隐以茶水招待,他将茶水注入这个访客的杯中,杯满之后他还继续注入,这位教授眼睁睁地看着茶水不停地溢出杯外,直到再也不能沉默下去了,终于说道:“已经满出来了,不要倒了。” "你的心就像这只杯子一样,时面装满了你自己的看法和主张,你不先把自己的杯子倒空,叫我如何对你说禅?"南隐意味深长地说。

February 15, 2010

缘分天注定

昨晚睡不着,随便找了本老片子看。 Serendipity

情节很假,但是假得让人喜欢。

结尾的时候那段讣告,我震惊了。看来做字幕的大哥对这部片子相当有爱啊。

  庄纳顿.卓加…… 
  有线体育台优秀监制 
  既失红颜,复破婚盟 
  肝肠寸断,遂于昨宵撒手尘寰 
  享年三十有五 
  庄君文质彬彬,公而忘私 
  平素言行,绝无痴态 
  孰料,阳寿将尽之际…… 
  流露鲜为人知的浪漫 
  刹那惊艳,化作萦回梦魂 
  遍觅芳踪,历尽一波三折 
  本性情怀,浮现无遗 
  呜呼,踏破铁鞋…… 
  方觉一番心事悉付东流 
  语云:匹夫可以夺其爱…… 
  不可夺其志 
  庄君依然坚信…… 
  人生际遇绝非偶然 
  冥冥中,上苍早已…… 
  安排周详,丝毫不爽 
  其友文坛巨擘…… 
  时报主笔甸恩谓…… 
  庄君晚年脱胎换骨 
  有所顿悟 
  一言以蔽之…… 
  欲臻天人合一…… 
  须坚信一字 
  此字古已有之 
  于今亦然,唯“缘”而已

被感动了。

January 18, 2010

好的设计

前几天说,想再写本书。许多朋友给了我支持。暂时我还写不了。因为:

  1. 工作真的很忙,很难脱开身。我觉得我在某种程度上陷进去了。需要花点时间整理规划一下。然后把工作的事情处理好。让它可以顺利做下去。不光是技术上要解决的问题,也不光是管理问题,也不光是团队合作的问题,也不光是项目开发运作的问题。反正很多很多,确实有很多麻烦。我要尽力做好。

  2. 觉得上一本没写好,是因为还是太仓促了。即使是已经写的那点东西,也积累不够。写书的经验也太少。我倒不怕有错误被人骂,是怕自己回头不满意。

  3. 如果再写,肯定只抓着很少的问题谈。但是具体写什么,还没全想好。积累是有了点,真能够拿出来写写的不多。毕竟,写书和写 blog 瞎扯还是不一样的。

孟岩建议我先在 blog 上列的大纲,然后随便写点。让同学们给意见,再逐步修改成书。我也有此想法,觉得不错。不过一开始,恐怕我连大纲都列不出来,就想到哪写到哪,随便写点东西吧。过段时间再把零碎想法串起来,作为正式列提纲的参考。

由于最近几年用的主要开发语言是 C 和 lua 。那么也打算以此为基础写。假定读者至少有不错的 C 语言基础了。我真正想谈的是,如何把一个软件很好的构建起来。到底需要做些什么。(从实现层面看)怎样才是好的软件。

那么有一个重点问题,也是老问题,怎样才是好的设计。

May 10, 2009

树结构的管理

要写过多少代码才能得到哪怕一点真谛?

多少年过来,我在潜意识的去追求复杂的东西。比如我自幼好玩游戏,从小到大,一直觉得玩过的游戏过于简单(无论是电子游戏还是桌面游戏),始终追寻更复杂规则的游戏,供我沉浸进去。或许是因为,有了更高的理解和控制复杂度的能力,就可以更为轻松的驾御复杂性。

这很好的解释了 2000 年到 2004 年我对 C++ 的痴迷。还有对设计模式的迷恋。

Eric S. Raymond 说:尽量不要去想一种语言或操作系统最多能做多少事情,而是尽量去想这种语言或操作系统最少能做的事情——不是带着假想行动,而是从零开始。禅称为“初心”(beginner's mind)或者叫“虚心”(empty mind) 。

代码写多了,问题见过了,甚至是同一问题解决多了。模式这种东西自在心底,不必拿出来。时时的从零去想,总能重新明白一些道理。

为什么说语言重要也不重要,算法和数据结构重要也不重要。对要解决的问题的领域的理解很重要(即明白真正要做什么)。理解了,我们才可以用面向对象,用模式去套问题;可理解了,我们又不真的需要这些繁杂的抽象。

闲话放一边,今天想谈谈树结构的管理。

May 06, 2009

回顾 Forth

第一件事就是没有钩子。不要留一个接口,想着未来的什么时候当问题变化时插入一些代码,因为问题会以你不能预见的方式变化。反正这个成本肯定是浪费了。不要预测,只解决你眼前的问题。by Charles Moore (Forth 之父)

今天也是机缘巧合,莫名其妙的翻出老资料温习 Forth 了。我想是个心结吧。19 年前,我痴迷于 Forth ,只看到了皮毛;13 年前,我进入大学的第一年,在校图书馆借出的第一本书,就是《Forth 语言》,读书笔记写了 20 多页。

只到今天,我才有机会,有能力,去仔细探究 Forth 的深层思想。当然,由于时间有限,几个小时的阅读,也只算是初窥门径。原本是想研究下 Forth 的系统实现,对同事正在设计的 3d 粒子系统,提供一些建议的。

碰巧又读到 Charles Moore 在 99 年的访谈稿 1x Forth ,颇多感慨。题头那段话,我在一周前刚好苦口婆心的对一同事说过,只差几个字而已。

February 07, 2009

再谈"平等"

在 google reader 上看到朋友 share 的一篇 "平等?" ,恰逢周末,可以接下来闲扯几句。

对于所谓民主、自由、平等这些话题,我从来都不愤青。所以在我的 blog 上也看不见此类文章,不是我不敢写、不愿写,而是我觉得那些问题过于复杂,尤其是在读了些许历史之后。上篇 blog 用了 ”平等“ 这个题目,其实不完全是想谈 "平等" 这个概念,是因为我不知道该用什么样的题目表达我的意思。

yeka 写了一篇"通向自由的必经之路——自律——平等" 引述了蒋纬国的一段话,”不论是谁,稍稍有权威后就开始耀武扬威了“ 。其实,未必是"耀武扬威"那么霸道而另人生厌。稍有涵养的人也不会如此。只是有些人表面上和颜悦色、骨子里的独断和自负却是不经意间流露的。这是我想说的:无论人站到了多高,都需要时刻自省,并理性的倾听。

February 04, 2009

平等

过年在武汉时,和博文 的朋友一起吃饭。周老师 问,你在网易那么多年,说说网易的文化吧。

一时间,我不知道从何说起。网易从来没有一本如职培训教材上条条款款写明所谓公司文化的。也没有什么人认真总结过。我想,每个网易人心中都有一份网易文化的定义。

如果让我说,第一反应是,网易重视技术人员。通常在 IT 的创业小公司中,这种现象比较常见。网易已经不算是小公司了,坚持这样比较难得。这倒不是因为丁磊有技术背景,我想更多的是,网易在几个关键时期,都是技术人员起了重要的作用。公司善待技术人员,算是投桃报李了。这是公司的一种发展偏好吧。

网易在做重要决策时,往往显得谨慎小心。不够大气。往往比别人慢一拍,且少有破釜沉舟的投入。这是几个公司高层性格的体现,物以类聚,人以群分,所以这也影响了许多员工。这似乎成了公司的性格,因此,也有性格不合的人离开。

能称之为文化的是什么呢?我拿不太准。或许,追求“平等”,勉强算的上吧。

December 15, 2008

离开工作的 12 月(五)

在北京时,余雪松在家里招待我吃了顿便饭。他是我认识的程序员当中,我最推崇的一位(加了最就没有之一)。

我们喝了一点点啤酒,平时我不喝酒的,大学毕业那会喝吐过。前段时间见了个老朋友,难得又喝了一点,不过居然被朋友灌了些许,有些伤了。缓了一整天才回过气来。

进门的时候,他的儿子在客厅里玩。客厅很大,一地的玩具。我知道他儿子虚岁八岁,我打算离开 kele8 的时候,听到了他儿子出生的喜讯。上次和小家伙在一起的时候,他还在娘肚子里。我和余雪松夫妻俩坐在南戴河的沙滩上,谈论着许多许多。

发现地毯上有许多卡片的时候,我有点诧异。我原以为,现在的小孩子,除了电脑和网络,不会有其它迷恋的玩具了。正好我随身带着 RFTG 的卡片,拿出来给小家伙看。等我们吃饭的时候,他还在那里一张张仔细的翻看上面的图案和文字说明。小家伙有点羞涩,不好意思直接问我,就问他妈妈,每张卡片上图案的含义。为什么有点左上角画了个圈,另一些则是菱形。我有点后悔没有把说明书带上,不然可以瞧瞧现在小孩的理解能力。

想到我们做的卡片游戏 ,由于公司不重视而几乎没有任何宣传,感到有点惋惜。其实这个游戏的玩家忠诚度还是满高的。我们有一千多注册用户,一周回访率居然高达 70% 。而且可以保持 100 多的同时在线。而玩这个游戏几乎是没有任何功利的,只是享受游戏的乐趣而已。现阶段必须找到人对战,而不能通过和机器玩增加用户黏度,我认为游戏本身还是展现了它的魅力。

对于门槛比较高的卡片类游戏,我们可能低估了它的市场。我没有精力做这个项目,它也不是我的主业。反而这个小项目已经消耗了我的不少精力。或许我应该交给一个合适的公司去宣传和运营它,这个公司不会是网易。


ps, 插播条广告 :) 我们现在有五个同事在这个卡片项目上,主策划对这个游戏非常有爱,致力于把它做到最好。技术上我们有很强的实力,可以保证项目的持续开发。开发人员都喜爱这个游戏,在适度引导用户,并找到合适的玩家群体之后,这个游戏能提供相当的深度和玩家忠诚度。比不上 MMO 那样可以大把的来钱,但是运营的好的话,我相信可以得到不错的经济回报。(不需要使用什么 BT 的收费手段克扣玩家,我们的开发人员也不希望因为赢利而影响游戏平衡,失去原本的游戏性)如果有公司想一起运营这款小游戏,可以和我联系。我已征得公司同意,有权利做出大部分相关决定。

离开工作的 12 月(四)

黄金时代是在我们的前面, 而不在我们的后面 —— 培根

在我可以被称呼为少年的时候,我经常想,如果可以早出生几年就好了。即使我早出生几年,我也绝对做不了马云,成不了丁磊;但是我有可能是求伯君,可能是马化腾,亦或是雷军。

但是,后面这些人在我现在的年龄已经逐渐不写程序了,我还在兴头上,所以,我还是我。事业会改变一个人的兴致,而兴致也会成就一个人的特质而不被改变,使得有些事情就该他去做,有些事情不该他做。这跟他所处的时代无关。

这次去北京多逗留了几天,我特地去见一个新朋友。说起来,我们真正在网上认识,又一次印证了六度理论。他是我的一个根本不会写程序的网友的同学的男友,而我正巧在读 他的 Blog ,如果不是他自己发的他女朋友的 Blog 链接,我压根不会想到这层有趣的关系,而主动去联系他。

June 02, 2008

你认识的每个人终将逝去

虽然很残忍,但是我们每个人都清楚一件事:你认识的每个人,有一天都会死去。

今天母亲打了个电话过来,说一位老人离去了,我唤他叫爷爷的那位。他和我们家没有任何血缘关系,岁数比我的外公大许多,是母亲刚参加工作时的师傅。退休后身体一直很好,鳏居,平日里无人拜访。七十多岁时,还自己骑车去郊外钓鱼。

他唯一的女儿的老公中风也需要人照顾,不能守在身边。我的母亲就时常去看望他。因为老人有气管炎,需要定期服药,母亲就每周帮他去医院开药(由于福利,药是免费的,但是每次不能多拿)。

想来,我的母亲于这位老人,那真算是一日为师,终生为父。几十年的感情,是比亲生女儿还亲的。

May 20, 2008

那些日子(终)

由于《仙履奇缘》这个名字已经被人使用过,公司决定给新产品换个更响亮一点的名称。内部征集了很多意见,大家决定使用《梦幻西游》。

《梦幻西游》这个项目比《大话西游二》更为稳健,策划有相当长的时间做调整。我依稀记得早期徐波在论坛上和玩家们的争执。哪些门派应该增强一些,哪些应该削弱一点。被逼急了,他也放过话,“谁说各个门派需要做成平衡的了?”。

游戏的各种玩法也是一样。徐波自己的角色慢慢练了上去,建立了服务器上第一个帮派。还不想让人知道帮主就是他,怕被人怀疑是作弊练出来的。我想设计人员能有机会耐心的把自己的游戏玩上一年,以一个普通玩家的身份去玩,各种细节自然就照顾的到了。大部分策划不是不想这么干,而是没有机会。有多少项目有如此长的测试期,在稳定的环境下,拥有这样多的玩家一同游戏呢。

May 19, 2008

那些日子(二十)

2003 年 3 月,网易最大的一家风险投资商,新闻集团,套现。短时间内,公司的股价从 15 块以上跌到了 11 块。我想公司那个时候是有许多人感到不安的,毕竟咬在嘴的肉一下子少了一块,多少有些不舒服。接下来的股票执行窗口(按美国法律,公司员工买卖自己公司的股票,必须在限定的时间段内进行,这个时间段被简称为交易窗口),许多人抛掉了自己手上的股票。但游戏部门的人对将来都充满信心。

这段时间,公司又为员工颁发了奖励性质的期权。我拿的比前一年少,dingdang 也是。而游戏部的人多了许多,每个人都有。我还记得那天,CEO Ted 亲自颁发的文件。他头发花白,看起来比实际年纪大许多。人很和善。读到我的名字,当我上去领文件时,特地与我握了下手。当时说了些什么不太记得了,但是他给我传递的那种感觉,影响非常深刻。这是我第一次见他,也是最后一次。

May 18, 2008

那些日子(十九)

不计算周边工具,我一共为《梦幻西游》贡献了引擎部分(包括图象、声音、网络和 UI 以及对象管理)三万多行 C++ 代码。这是今天用工具统计出来的数字。这些全部是在大话西游二完成后,从零开始写的,几经增删留到今天的部分。

对于梦幻的 client ,郭老的代码贡献量更大。除了保留修整少量我从大话二遗留下来的底层部分外,他写了个 python 的接口部分,和所有的游戏逻辑部分的 C++ 支持。再次设计,我们做的比以前好。代码很精简,而完成的功能要多的多。依稀记得总共 C++ 代码不会超过五万行吧(手头没有数据可供统计)。而对应的大话二的 client 代码量则是图象及声音的引擎部分二万七千行,逻辑和网络及 UI 部分三万一千行。

我想,合理的构架下,代码的体积应该是更为精巧,而不要过于膨胀。代码写的短小,是自然而然的结果,其成因是避免了重复。代码行数多少,则不是刻意去追求的。对于网游 client (也包括 server ),都不应是超过 10 万行 C++ 的规模。从程序角度上说,网络游戏是个小项目,不是吗?如果有人硬把一个小项目做成了大项目,不出问题才怪。

May 17, 2008

那些日子(十八)

大话二收费以后,因为我脱离了这个项目的开发组,也就没什么记忆了。不过也时常关心一下,记得十月刚回公司时,在游戏里的聊天频道中,经常有玩家哭述自己被骗。他们用游戏币和人交换点卡,却总有单方面失信的事情发生。

我们曾想过在玩家条款中加入禁止游戏虚拟物品和虚拟货币与现实货币交易的条款,正如暴雪今天在 wow 中做的那样。有一种直觉告诉我们,游戏牵扯进金钱交易,游戏本身会受到冲击,不是什么好事。

直觉不总是正确的。固然,我们可以利用程序规则限制虚拟物品的转移,但那也会极大的破坏游戏性。有如美国当年的禁酒令最终执行不下去一样,禁止不了的事情,不如提供更大的便利去疏通。开发团队决定给系统增加一个公正的点卡交易系统。

May 16, 2008

那些日子(十七)

2002 年 9 月底,再次回到广州,仿佛一个新的开始。我想我要长住下来了。这次打算住在办公室附近,越近越好。

头几天,我住在安宁住的小屋子里。原来小蓝租下的,现在他已经离开公司。屋子很小,晚上我就睡在地板上。安宁给我看他写的一些小玩意,一个汇编写的软件 3d 渲染器,挺有意思。还有一个使用 d3d 做的简单引擎。公司的 3d 项目已经做了大半年了,一直没有定下一个技术方案,可能还想多一些技术尝试吧。

我也去公司转转,没有正式复职,只是跟朋友们打个招呼,我回来了。顺便向周围一个个小区问值勤的保安打探情况,看看有没有房子出租。这比找中介要划算一些。工业园还不太繁华,房源很多。没多久就找到一家,步行到公司才几百步(以前数过的确切的数字,后来又忘了),中间会路过一个中国银行,挺方便的。

May 15, 2008

那些日子(十六)

《大话西游二》是在 2002 年 8 月 15 日正式收费 的。而就在之前几天, 02 年 8 月 7 日,网易宣布股票发行以来,第一次实现赢利。这次赢利,净利润仅 3.8 万人民币,我在网上看到这条消息时,感觉太搞笑了。根据财报,一个季度的运营费用有 2719万,结果恰恰就赚了不到 4 万。这个数字若不是精心做出来的,而仅仅是一个巧合的话,我觉得那实在是太幸运了。

事后,我给后进来公司的新同事讲这个段子时开玩笑说:当时我的第一反应是,前段时间公司暂停了我们大家的办公文具申报,连以前每月发到个人桌上的卷纸也没有了。感情公司这历史上的第一次赢利,是大家坚持三个月,集体节约下那些铅笔、记事本和卷纸给省出来的。每个网易员工都是功不可没呀。

不过不管怎么说,从五月里开始,一切都朝着好的方向在发展。

May 14, 2008

那些日子(十五)

大话西游 2.0 在 02 年五一封闭内测的时候,已经更名为大话二。因为丁觉得,反正是重新做的,就应该以新名字重新来推广。

由于先前的刘铁等几个策划离开,月心被调离大话组,转到 3d 项目中(这也一定程度的导致了这个 3d 项目最终被命名为天下二)。Micro 在他回加拿大前的一个月,开始重新为游戏策划招兵买马。

萝卜从大话西游的界面设计师改行做游戏策划,黄华被提升为大话西游的主策划。而丁丁(日后的《梦幻西游》产品经理)就是这个时候入职网易的。这是 2002 年四月间的事情。

May 13, 2008

那些日子(十四)

让网易在网络游戏上看到希望的是《精灵》。这是个从韩国代理来的游戏。当时我们也有可能去谈 MU ,即《奇迹》。为什么定了精灵而不是奇迹呢?我听到的不确切的说法是,奇迹要价太高。

现在看起来,今天几家大的网游运营公司真的是特点明显啊。代理奇迹的九城,几个产品都敢花大价钱下注,先是奇迹,而后是魔兽世界。我想它的成功也绝非偶然了。

至于当时我看到的 RO ,其实也是个相当不错的产品。要价也不低,不过更重要的是 RO 制作完成的时间稍微晚一些,而精灵已经声称可以运营了。公司等不及,也是一方面原因吧。

May 12, 2008

那些日子(十三)

这几天,许多同事 popo 上跟我聊天,谈及这段时间写的这个系列。老同事一刀(从大话一开始到现在一直在写游戏服务器),那是感慨万千,还帮我纠正了一处人名的错误;同样的有许多人,督促我修正一些小地方,我都一一改过了。有人聊起来,夸我记的好清楚,如同昨天才发生的一样。

真是不敢当,我的记性其实不好。记不清的人和事远比记下来的多,尤其容易忘记别人的名字,很惭愧啊。我只是写下那些能记住,可以理清前后因果脉络的故事;更多的人和事情,由于记忆残缺,分不清时间,不知道该放到故事的哪个角落。

我记得麻雀当年陪我选手机;记得美术部的一群长发帅哥集体去剃光头;记得给乌鸦夫妻参谋买房子;甚至记得牙牙来报道的那一天情景……

记得一刀他们在公司地板上过夜;记得 Mario 半夜里陪着 mm 在办公室里看流星花园;记得我们大家常去的大排档;记得凌晨两点干完活,一起打车去石牌东吃烤蚝,萝卜还一个劲的说没有他们家乡的好……

我只是记下自己的历程,但我不只是为自己写。我也为大家写,尽可能帮一起共事过的大家留下过去快乐的点点滴滴。美好的记忆不是什么可耻的事情 :) ,可耻的只是永远停留在回忆里的人,我想我们都不是这样的人。如果再有同行的朋友读过来,尽可以在留言中留下你的故事,或是提醒我一些被我遗漏的重大事件。

对于新加入网易的同事,据说有许多人是这个系列的读者,如果我写的能让迷茫的人看到一条模糊的路,那没有什么比这更能让我高兴的了。让我觉得在繁忙的工作之后,从每个晚上划出三个小时写这些很有价值。

网易之所以是一个好公司,正是因为不断的有同样信念的人聚集在一起。那些尚且不足的地方,需要大家一同努力。

以下是今天的正文:


说起国内自主研发的第一款商业上成功运营的 MMORPG,不应该算给《大话西游2》。

2000 年底,另一款网游悄然上线,并在 2001 年初成功收费,同时在线人数一度攀升到好几万,远超过当时失败的《大话西游》,它就是天晴数码的《幻灵游侠》。

我下载了一份《幻灵游侠》的 client ,发现居然是用 C++ Builder 做的,不由自主的想起了姚晓光。他 QQ 上的名字是 npc6 ,这个网名可能更多人熟悉一些。

May 11, 2008

那些日子(十二)

dingdang 上任不久,我们开车去珠三角转了一圈。拜访深圳,珠海的许多公司。有点新公司成立、四处拜山头的意思。

丁磊和雷军私交不错,据说还经常私设赌局,赌各自产品能做到多少人在线。嗯,有些遥远的故事,记忆模糊,还是不加详述。我们一行人自然也去了金山。当时他们在做《天王本生》,买的 LithTech 的 3d engine 。赵青是开发团队的 leader 。我和赵青颇有些交情。

事情源于 1998 年,一帮梦想在互联网上联合开发 RPG 的小子,成天泡在 irc 频道里 YY (也不完全是,我们还真做了不少东西)。其中,我是唯一的一名程序兼职小组网站制作。我们给开发小组定了个名字“风魂”。后来小组解散,为了纪念这段历史,我把这个名字延用在了后来那个引擎上。

今天为写这篇,还专门翻出了当年我们的策划 Gary 做的故事背景社定。更完整的版本在 irc 的聊天记录中,早已遗失。这个 Gary 半年后加盟珠海金山,担任《剑侠情缘2》的主策划。

99 年的暑假,我去珠海拜访 Gary ,他介绍了剑侠情缘2 的程序王炜、赵青,以及著名游戏音乐人罗晓音与我认识。还记得那天黄昏,我们几个人晚饭后步行来到海边,坐在草地上遥望对面的澳门。大家交流技术经验,畅谈着国产游戏的希望。王炜是个仙剑迷,把仙剑翻来覆去的研究了个透彻,还为此制作了专题个人网站;赵青则回忆着红警如何吸引着他进入游戏这一行。

2001 年金山的食堂里,很多朋友围坐在一起。Gary 和王炜已经离开,赵青平时话不多,但在老朋友面前依然健谈。还有许多新面孔。

网易和金山的这种友好关系一直延续了下去,之后,金山的同行也曾经率领大部队来广州回访交流经验。我们的程序员也曾有过合作(精灵的反外挂程序是由金山一名程序员常驻广州完成的)。再之后,赵青领着一队人,过来网易组建了新的方舟工作室,似乎也没太损坏公司之间的友谊。我们还保持着互访的传统,几年后,我个人就几次拜访过已迁往成都的罗晓音。

再往后,网游市场产品竞争激烈,对于一些影响到玩家群的公众事件的内幕,虽也有些耳闻。但那些就是市场营销方面的事情了,无损程序员之间的友谊,不提也罢。

May 10, 2008

那些日子(十一)

《大话西游》一边运营着,大家改着 bug ;另一边,2.0 版开始筹备了。

还记得深秋的那个夜里,已经很晚了。丁磊一通电话问我睡了没有,没睡的话去淘金路上一间小茶馆喝茶。聊天不去酒吧,不符合老丁的风格嘛。我依着短信上的提示,找到了那家别致的小店。包间里就两个人,丁磊和 dingdang 。dingdang 从不泡酒吧,他不喜欢喝酒,这我是知道的。

后来聊了什么完全不记得,我只是知道,以后的工作由 dingdang 来主持了。这次长谈,颇有些战事不利、临阵易帅的味道。

May 09, 2008

那些日子(十)

2001 年的国内网游市场上涌现了不少的游戏,有些昙花一现,现在估计都没什么人记得了,例如我依稀记得的一款三国题材的游戏,运营没持续多长时间。还有一些一度风靡全国,拥有不少玩家,如《千年》、《红月》、《龙族》等。

《传奇》就是在这个背景下横空出世的。

陈大年是我大学时期结交的网友,跟我一般年纪,我们时常在 icq 上聊天。在我还在读书的时候,他已经辍学闯荡江湖了。他也是个程序员,似乎写 delphi 的,我早年也玩这个。我们那时候共同的爱好是想做游戏。在我还没毕业的时候,他给我看过他的公司做的网站,记得叫归谷,主推一只可爱的漫画狗。小狗叫 stammy 还是 stame 我是记不太清了,投资方有中华网的背景。

大年告诉我他们转做网游的时候,我丝毫不奇怪,游戏这么火,做网络的不做游戏才是奇怪呢。(我想,即使在那个所谓网游起步的时候,看的到网络游戏有赚钱潜力的公司根本算不上有什么独到的眼光,看不出来的没眼光才是)他和他哥哥一起做的公司,据说去韩国找了个小公司谈了个游戏,这个游戏就叫做《传奇》。

May 08, 2008

那些日子(九)

在网络游戏还没有盖过单机游戏的风头之前,大家都认为网络游戏只是电脑游戏的一个小分支。制作、销售的流程也还停留在旧的思维上。

我们都觉得,费劲心力做了这么一套东西出来后,应该先收玩家一些费用。简单说,也就是卖客户端了。7 月里,《金庸群侠传 online》上市,卖出了 10 元的低价。这个游戏吸引了不少玩家,玩家后期的开销远远不只 10 RMB 这么一点。运营商其实也不在乎 client 的这点收入,网络游戏也不惧怕客户端盗版,巴不得多点人进来玩呢。

不过,一开始没人去做免费的客户端。我想有几个原因。其一是固定思维所限,其二是当时网络带宽不够,拨号上网依旧是主流。还是得依靠光盘发行。既然需要走传统的销售渠道,那么也总得设个价格。

May 07, 2008

那些日子(八)

今天工作上的事情弄的比较晚,没留出足够时间来继续写这个。本来打算直接回家睡觉的,想了想还是继续写点。凡事可以坚持做下去,往往靠的不是兴趣,不是责任,而是习惯。我不想让这些对过往的记录成为今天的负担,但也担心一旦放下就会拖上好久。反正腹稿都已经打好了,无论内容多少,还是保持着一天一更新的习惯吧。让我顺利把这件事情做完。


Dingdang 具体哪天加入的游戏开发组我已经记不清了。因为他做的是服务器那块,我不太关心。大约是在《大话西游》项目中后期吧,他说,服务器这边进度太慢,就过来了。他以前玩过 mud 挺有兴趣。但是其工作主要还是在底层。

大话的服务器最早是搭建在 mudOS 上的,一个开源的东东,用在各种文字 mud 上。做文字 mud 通常还会用一个中间层,叫做 mudlib 。早年传说中的方舟子一帮人等做《侠客行》,就是指做了一套 mudlib ,被后人用在各种中文文字 mud 上。听说大话的开发人员也自己做了套 mudlib (听说而已,micro 似乎跟我提过他们没用侠客行的代码,太久远的事情不想证实了),不过我对使用 mudOS 却不以为然。什么年代的东西啊,都 21 世纪了,还在用。也就那么点代码,就不能放弃掉自己写一个吗?而且原本为几十个人同时游戏设计的框架,用在这么多人同时在线的网游上合适么?

May 06, 2008

那些日子(七)

01 年的夏天到来的时候,《大话西游》跨过了一个里程碑。古越发了一个内部的 demo ,没有网络功能,只是一个主角在两个场景间转悠。一个长安城,一个化生寺。回想起来,整个 demo 就是被逼出来的,没什么太大意义。老板说,要有一个 demo ,那么就有了。

我的场景管理模块完成了,角色精灵的显示完成了,其实要做的工作只是粘合一下,没什么实质的东西。这种 demo 更像是无数国内开发小组忽悠投资用的玩意,秀几个人物,来两个场景转悠一下。只要美术做的足够漂亮,就足够可以蒙过那些不玩游戏的投资人了。这样的 demo 多如牛毛,相互之间不同的是,图象上能表现出来的技术含量高低:2d 的还是 3d 的,有多少特效,画面刷新率多少等等。其实离游戏还远着呢。图象表现上的技术,是游戏开发中最简单的技术了。倒不是技术含量低,而是一旦有人克服了技术点后,都是成熟的玩意。接口简单易用,也容易独立的更新换代。从工程角度上讲,可以正交分解的模块都是简单的东西。

不过话说回来,在上个世纪,国内就连这些简单的部分也做不好。随便发行个(单机)游戏,不在底层出点 bug 就可归为上成佳作了。多少好的游戏就毁在引擎的不稳定上。离开一个稳定的引擎支持,就不要奢谈游戏性的调整。妄图在一个不稳定的引擎基础上设计出一个好的游戏出来,那是空中楼阁。绝对不存在一个游戏,单单只是程序有太多 bug,而游戏设计却非常棒的。程序这块做坏了,不仅仅影响玩家的感觉,同样影响策划的工作。等到《梦幻西游》出现在这个故事中,我会展开来谈谈这些。

May 05, 2008

那些日子(六)

和大部分原创游戏一样,游戏定名总是晚于项目启动的。01 年 4 月我正式入职网易时,大家还并不知道这个游戏会和周星驰的著名影片《大话西游》同名。micro 他们只是想做一个以西游记为背景的网络游戏。这个想法来至于当时有名的 mud 《西游记》。我对国内 mud 的历史没有什么了解。大约知道有《西游记》的巫师(yesi)被招聘进来工作,大家对《西游记》情有独衷并不奇怪。

月心是 micro 的合伙人,也是最早天下的策划。理所当然的承担了新项目的设计任务。因为我对网络游戏本身没有兴趣,所以我对这个人也不太熟悉。倒是和另一个策划私交不错,大猫猫。严格意义上来说,他不是大话西游的策划,进入网易前,我想他的身份多半是一个资深玩家。他以前做什么的也不记得了。不过我倒是很早听过这个人,似乎混迹过 sina 的游民部落和后来的 mop 。他的朋友圈子里的人见过不少,salala 、commando 还有后来加入网易的 ali 等等,大多是做游戏媒体的人。

《大话西游》这个名字是大猫猫的主意,马上得到了大家的认同。一开始我们有点担心版权的问题,丁磊说网易有个董事认识周星驰,而后大猫猫就去香港找星爷去了。两年后,大猫猫离开网易,据说在跟星爷混,不知道现在咋样了。

May 04, 2008

那些日子(五)

今天已经开始上班了,最近很忙很忙。在调游戏的数值,很繁琐的事情,还要写程序去模拟。整个项目也需要人去照看。

这个系列,我想会坚持写下去。但是不想成为自己的负担,我想这样才能写的自然。因为都是写一些真实发生的事情,和身边的朋友,按记忆按自己的理解去写就好了。不像写小说,会担心有逻辑上的漏洞,会困扰于故事中每个人的结局该怎么安排。所以,挖了坑不知道该怎么填上这种事情多半不会发生的。

已经开始有朋友写 email 跟我聊这几天我写的这几篇东西了,有人抱怨为什么没写谁谁谁 :) 。这个问题其实上次解释过了,我是个不善于回忆和叙述的人,每次从记忆深处挖点东西出来,都会涌出一大堆的人和事。精力有限,只能挑选几个来写。

与其说这是我自己的故事,不如说是国内游戏圈中大家的故事。带着大家从我的眼睛,去看周遭的人。也有朋友抱怨,写的人太多太散,理不清头绪。其实,我也尽力去单独的一段一段描写那些熟悉的朋友,顾而不一定顺着时间的次序让他们入场。

关于国内游戏圈早年的一些事情,有兴趣的朋友可以 google 一下“北外隐形人”写的“中国游戏年代记”。是我读过的最全面的一个记录。从叙事角度看,猜想这个“北外隐形人”是游戏媒体圈子里的人。对于制作圈子来说,有一点点距离。有些东西写的有点偏差,比如 99 年时庞鑫大学还没毕业,不可能结婚的 :) 。同样,我的回忆也可能失实,尽量少写道听途说来的故事吧,呵呵。

一直以来写东西比较随性,有时候节奏慢点,有时候快点,跟心情有关。写这些基本不打稿子,想到哪写到哪。读的朋友得多加忍受了。记下这些往事,不是因为我喜欢缅怀过去,只是发现若再不总结一下,都快分不清好多事情的先后因果了。同时,也是帮身边的朋友们留下点滴,大家一起分享这小段美好的时光。

好了,以下是今天的正文,谢绝转载:

May 03, 2008

那些日子(四)

2001 年的春天,我用 C++ 把“风魂”重写完毕。这个工作在北京时开了个头。起初是和余雪松聊 kele8 的 engine 时,萌生的一些想法。老余告诉我,他做过一些评测,发现大部分 CPU 时间消耗在了 flip backbuffer 上,大约占 50% ,其次是字符串的处理。(后来这一块的优化,我离开北京后老余也做了,应该是和我的思路类似,做过以后,就能发现更多可优化的热点)

我考虑了几天,突然有了些灵感。我想我找到了方法解决这个问题。只是古老的脏矩形算法而已,好多人尝试过,可惜都没有用好。我想我可以换条思路解决的好一些。

再就是阅读了 MFC 中 CString 类的源代码。因为吴东黎说,好多人不用 MFC ,但是离不开这个 string类。他把这个类从整个 MFC 中剥离了出来用。我也不用 MFC ,不过还是想,有这么好用吗?随即读了一遍。因为正好在重新学习 C++ ,我就自己开始写一个 string 类。

这两块东西让我把“风魂”的代码用 C++ 翻新了一遍。如今回头来看,代码很混乱,没有章法。但是我想它们见证了自己的历史,至今仍放在主页上供人下载。

没有哪个程序员的代码一开始就能写的成熟稳健,我们都经过幼稚的年代。

May 02, 2008

那些日子(三)

2001 年新年过的很忙碌。我想从大学里毕业出来的学生,第一个新年都是如此。从学校迈入社会,什么都很新奇,想和人分享自己对这个世界新的看法。大多数老同学不会太快结婚,日后离开祖国的也大多没走。所以新年里,那些儿时的玩伴、少年的同学,都会回到老家。只需要有人说声,“我们聚聚吧”,那么一定是和声一片。那个时候,女生们还不够花枝招展,男生们也没人挺着啤酒肚。

狂欢之后,各自散去。在本地工作的,也开始忙忙碌碌,留下我一人。有时候可以去一下老同学读研的校园,跟他们吃吃食堂,打打台球,听他们聊一下自己的老板,还有一些八卦。我觉得我还存在于这个社会。

May 01, 2008

那些日子(二)

我在北京生活了半年。接触北京这个城市要更早一些。大约 85 年的时候去过,一周时间几乎玩遍了北京所有的景点。小时候的记忆特别美好,我在那个时候爱上了北京。记忆中,天安门广场是那么的大,紫禁城的宫殿如此雄伟…… 以至于回到学校时,不知道用怎样的形容词才能形容。

10 多年后,我在学校的机房上网,泡 bbs ,做个人主页,写一些关于游戏的自己的想法。交了许多的网友。大家都是业余的,年轻气盛,想自己做出好玩的游戏。王欣是第一个给我发 email 的职业游戏人。更早的 97 年,国内有两家大的游戏公司,前导和腾图,有如台湾的大宇和智冠。可惜生不逢时,前导做不了大陆的大宇,腾图也远不及智冠。

腾图命中注定的散掉,王欣的八爪鱼工作室从腾图分的出来。98 年,王欣邀请我在假期去北京玩,他把我带进游戏这个圈子。我又有机会站在天安门广场,原来并没有那么大。我想,如果毛泽东纪念馆挪一下地方的话,广场会更宽广一些,和我儿时记忆中的一样。小时候怎么就没这种感觉呢 :) 。

那个年代,我成月成月的逃课,去北京帮王欣做些兼职工作,并听他说些早年北京游戏圈子有趣的八卦,有如今天我给新人说起往事。回忆起来,自己其实什么也没做,似乎又做过点什么,反正最后一次,我拿了一小笔兼职工资。不过没有花掉,因为回到学校的时候,一个同班同学缺钱交学费,我全部借给了他,毕业那天他才凑起来还我。

当然,身在北京,我就有机会四处拜访网友同好。随即发现,其实许多网友都已经专职在做游戏了。有些人后来再没怎么联系,比如曾经在金洪恩做《自由与荣耀》的 3d engine 的 rick huang ,我还记得他在那个晚上,他抱怨他的后继者让代码从几万行膨胀到十几万;又比如做《独闯天涯》的郭巍,他念叨过来北京前没有钱吃饭,小组里每个人一个冷馒头就可以啃一天,脑子里只想着把游戏做出来 ……

两个很重要的朋友,也是在那段时间见的面 —— 余雪松和吴东黎。我们通过在网易个人空间(当时叫 N-SPACE)交换链接认识的。他们搭档了很多年(直到今天),经历很传奇。

April 30, 2008

那些日子(一)

明天就是五一假期了,同事都已放假。我不打算在假期加班,因为加班也无事可做,手头上的工作都需要与人合作。

前几天和新同事吃夜宵,大家聊的异常兴奋,我也忍不住开始想当年。当年那些美好的日子,记忆已经很模糊了。我想再过个两年,估计我都不能准确回忆起那些曾经对我影响深刻的日子准确的时间。是时候记下点什么,对自己是一种纪念。

我这人有个优点,选择性记忆,那些不快的回忆很容易随风而去。活在我记忆中的人们,对他们只留下感激。我也曾经爱写日记,很早我就写电子日记,记在自己的机器上,PDA 上,当我有一些不愿意再回忆的事情时,我会个将整个文件加上密码,长长的一次性密码,保证自己只能记住一小段日子。当这段日子过去,密码就消失在记忆中。然后再也打不开这些文字,等到下次更换硬盘,无论我多么的想再看一眼当年的自己,也无能为力,只好把加密过的文件删去。

我想我就是这么成长过来,没有什么挫折的感觉被反复咀嚼,都已经抛在脑后。生命中没有什么不可以失去的,这个道理很早就明白了。我曾经懊恼过丢失了大量的源代码、自以为写的不错的文章、早年的聊天记录、珍贵的日记、数年的电子邮件…… 最后我明白了,一切的一切不过是身外之物,我能拥有回忆中最美好的部分,那么已经是特别幸福了。

不过也正是如此,以下的记录也只能是我努力的回忆。或许因为时间久远,跟真实有所偏差,或许从我的角度只看到的事物的一面,但是、我可以保证,并没有故意在叙述中掺差虚假的东西。

是的,我想讲一个真实的故事,一个拥有数千万玩家的游戏诞生的故事。我并不喜欢这个游戏系列本身,但是我为这个产品自豪。我的代码曾运行在几千万用户的机器上,作为一个程序员,还有什么比这更让人满足的呢?也许有,比如让这个用户数量再扩大 10 倍。

November 14, 2007

路漫漫其修远兮

昨晚因为牙齿的原因做啥都集中不了精力,就那么懒散的挂在 google talk 上。老丁突然发了个消息过来:

“你们的东西,能否给我一个里程碑啊。都2年了,什么都没有看到。”

我知道终有一天,我会遇到这个提问。两年多以后才被问起已经很不错了,但是我还是没有答案。只是简单的回了一句:

“只是没有给玩家看的东西”

想了一下,又继续解释,“我们在抓紧做。现在有个可以看的 demo 是没有意义的, 那意味着以后肯定会废弃掉”

November 04, 2007

天气凉了

最近两年似乎气候变了。国庆在家的时候,父母笑称,如今一年只有两季。长假那几天,武汉的气温高达 34 度,丝毫没有入秋的迹象。这还没过几个周末,天气似乎在一夜之间转凉了,风吹过来,居然有些寒意。

前两天晚上睡下去觉得有点冷,从壁柜里抱出一床被子加上,似乎还觉得不太够,又垫了一床在底下,这才暖起来。

每天我大约两点从办公室离开,写字楼附近很安静,车也很少。路灯很亮,天上看不见星星。因为晚上正门关了,我每天从底下车库穿出来,然后会通过一楼靠外的走廊。这个走廊临街,白天是走行人的。周末也有人在这摆地摊。除了一面靠着楼,三面都是空的。不过走廊倒是很宽,大约有三米多,白日里人来人往。不知何时起,这里成了没有住所的人们深夜的栖息地。每根粗大的立柱的阴影中都睡着一个人。柱子不足以挡风,但可以遮蔽刺眼的灯光。他们都蜷缩在角落里,尽量不去影响像我这样的夜归人。

October 07, 2007

假期

国庆七天的假期,明天就要结束了。

独身一人的游子,最自然的选择度假方式就是回家。跟往年的不同,我提前一周订好了往返的机票。去年这个时候回程机票的紧张让我记忆犹新。

在家待了五天了,无所事事的上网、打游戏、看电视、陪父母聊天、还有看书。大多数事情我平常都不会去做,也没什么机会做。

自从两年多前出来独立带团队,我对“事业”这个词就有了新的感受。虽然它依旧是个游戏,但是个不同的游戏。不知该如何形容这种感受。或许我想说的是“责任”,但又觉得不应该用这么个略感沉重的词;把这个词换成“梦想”,又显得虚无飘渺,有点儿戏;谈到“压力”,一定是自欺欺人了,像我这样骨子里玩世不恭的人,谈压力是可笑的。

可是,我却不能不无时无刻的想着正在做的事,如何把路走下去,直达终点。假期这种无所事事的状态,总是让我觉得正在过于奢侈的挥洒时间。

September 15, 2007

生日

9 月 15 日,一个人的生日。

我还记得,从来没有忘记。

August 21, 2007

数学是一种思考方式

这几天有个读者来来去去给我写了几封 email ,问起我的观点:数学和编程是什么关系?学编程需要多深的数学基础?到底需要掌握哪些数学知识,对编程能力的提高有帮助。

这个还真不好说。

如果说起课堂上我们学到的知识。除了初等代数,在编程中我还真没碰到多少依赖数学技能来解决的问题。当年我学 C 语言的时候很小,甚至不知道数学中函数这个概念,还不一样把 C 语言学完了。虽然过了些年,我才把数学中的函数和程序中的函数联系起来。

做 3d 游戏编程,大学里的线性代数可能还用的到一点。至少得知道矩阵运算吧。但是大部分程序员并不需要接触这些东西。除此之外,如果说程序员必须精通微积分才能编程,那绝对是鬼扯。

如果对用编程的手段解决各种问题感兴趣,或许相关领域的数学知识有些用。比如我时常由于兴趣,做一些数据统计分析工作,这时概率统计的知识就少不了。但是解决问题,编程和数学一样,都只是工具。他们的地位是平等的,并非编程的技能依赖数学技能。

那么,学习数学有用吗?当然有必要。因为数学是一种思考方式,编程需要这样的思考方式。

July 28, 2007

十年圆梦

中午睡眼惺忪的时候,老丁打了个电话过来。说是南怀瑾南老师周末在江苏开堂讲课,问我有没有兴趣去听。我是很喜欢读南老师的书的,可惜的是,今天必须回武汉。真是遗憾!

小时候的玩伴 DSH 明天举行婚礼,他从法国回来办这桌酒席。相比之下,我飞回武汉就算是近的了。

还在 apple II 时代时,我们在一起学习 BASIC 语言。前些年混在北京时学了个名词叫做“发小”,应该指的就是我们这种关系。初中的暑假,一个人在家写程序没意思。或者几个人约好了跑去学校机房,或者大家去 DSH 家里泡上一天。他家最为宽敞,家长可亲,一堆人闹个天翻地覆也没关系。

那个时候,我们一起凑钱邮购软盘装的软件,订阅私人油印的计算机杂志。还比赛在苹果机上用 basic 写小游戏:俄罗斯方块、双截龙之类的,那是我玩计算机最快乐的一段时光。除了编程和游戏,我们还传看《时间简史》,讨论些关于六维空间的“高深”话题,把教室的黑板涂满,幻想时间旅行会是怎样的形式。

June 04, 2007

无欲则刚

最近洗澡的时候,发现了右额处多了一大缕白发。平时被表层的头发盖着看不出来, 掀起方能察觉。看到觉得有趣。我一直有少白头,小学时就有白发,应该是遗传。不过长出这么大一缕还是第一次。(我知道父亲大人也有看这里。不必担心, 妈妈知道我的, 一直很注意保养身体。)

我想这也不是累的, 可能是前段想的事情太多的缘故吧。

独立带团队已有两年了, 这里每个同事都是经过我招聘来的。甚至办公场所也是自己敲定的, 装修方案都亲自改过。两年还前兼过财会,前台,网管。好在不久就找到了得力的行政mm, 可以心无旁骛的做开发了。总之, 我对周遭的一切人与物都深有感情。

一直以来, 都有所谓猎头和我联系。我不是一个容易被人说服的人, 只因为相信自己在芸芸众生有自己独立的思想。一个问题在两年前就有了答案, 而这两年不断添加着注解。为什么选择一直留在网易,而没有自己创业?或是去谋求一个更好的发展空间。

May 03, 2007

悠长假期

五一长假,因为护照马上五年期满,出入境管理处假期不上班,我平时又没空回家办这事,所以提前一天回来了。请了一天年假,部门行政提醒我,到六月一日前,我还有六天年假没用掉。哈,这几年,似乎我还没有哪年把年假休满了。对我来说,无所谓工作,白天写写程序,就是件很快乐的事情了。每天能做让自己快乐的事情,又怎所谓假期呢。

到家三天了。归程原先订的是机票,中间因为提前回家的缘故还改签了一次。后来听说火车大提速了,正好碰上博文视点的朋友同行,在他们的怂恿下把机票退掉了。南航电子票这点就是方便,鼠标一点,什么都办好了。火车卧铺夕发朝至倒是方便,床上也好放行李,我便把琴带上。在家八天,不可荒废了功课 :D

可惜这火车还是不对我的生物钟,上车便睡不着,直到把 psp 打的快没电了,怪物猎人中杀了两条龙,终于睡去,早早醒来便到了站。我在想啊,如果这车可以凌晨发车,中午到就完美啦。武昌站正在修缮,门口堵车。不知道什么时候武汉的交通也这么不通畅了。硬是走了快一个小时才打到车,紧接着去办了护照的事情。劳累一天,到家倒在床上睡了一下午。

其实我这人也不是不能累着,就是不能乱了睡觉的时间。否则一天的没精神。

April 24, 2007

古琴和调音器

最近迷上了七弦琴。

一开始是被一个同事忽悠的,她弹了好几年了。只因为一句话,她说:“我喜欢曹子建的《高风亮节》,弹奏的时候,两千年前的人的心情仿佛穿越了时空,你可以在自己身上感受到。”

古琴是君子乐器,排在琴棋书画之首是很有道理的。笑傲江湖中那本被很多武林人士当作天书般武功秘籍的琴谱,其实就是用减字方法记录的琴曲的弹奏指法。琴谱上甚至没有标记节拍和每个音的长短,全凭演奏人的发挥。音乐往往可以比语言更能传达人的感情。心中有什么事情,一抚琴就能安静下来,声音从琴弦中弹出。旁人从琴声中听出弦外之音来,当不是什么难事。

琴谱上也没有标记音高,所以很适合我这种不识五线谱的人来学。而且键盘敲了二十多年,手指头还是满灵活的。琴的声音也极小,半夜练习,隔了堵墙,那幽幽的时断时续的声音就传不出去了。在家练习永远不会被邻居投诉到物业去。

前段时间跟老丁聊起这个,碰巧他认识一个朋友的朋友是制琴的。马上发短信跟人订了一把。因为价格不菲,所以我也算被逼上梁山了 :D 上周末去取了琴来,第一天就是调音。花了一晚上才调好,全靠耳朵听的,似乎还比较准。买的这把琴音色也真是不错,我那同事的说法是,跟她家的那把不可同日而语。

跟着我也就练了一个星期。

April 15, 2007

君子之交淡如水

年少的时候,觉得朋友是世间最重要的东西。与人相交当情同手足、肝胆相照。小学毕业后几年,我还组织过小学同学聚会,看望老师等等。一直到后来上大学了,以往的中学同学还经常聚会,很多次都是我来组织的。大学以前,朋友圈子几乎就是同学圈子,我在方圆十里的圈子里生活了十多年。

后来离开了家,有了互联网,朋友交际圈子大了许多。每到假期,就把足迹遍际全国,四处拜访网友。那时候感觉,交朋友只需要志趣相投。每每碰到知己,便知无不言,言无不尽。促膝长谈那是常有的事。近年来颇为流行人脉这个词,想必我在行业里的人脉,就是那时候起一点点积累下来的吧。

庄子说:“君子之交淡如水”。起初一直不理解。翻开大学毕业时的同学留言册,“性情中人”,这是室友对我的评价。在那时的我来看,好友知己当如美酒,年头越久就越醇香。朋友间自然不计较金钱、无所谓利益,但感情怎么可以用平淡如水来形容呢?

直到后来长大了,渐渐明白了一点道理。

April 13, 2007

张筑生教授的《数学分析新讲》

最近想重新补习一下高等数学,起因是这样的:我老觉得自己对这个世界的认识总是很肤浅,这几天晚上都在读爱因斯坦的《相对论的意义》。其实这本书已经在床头放了小半年了,反反复复的翻了几遍。每每觉得看懂了,第二天想跟人讲心得的时候又觉得自己没全弄明白。

高中时看老爸留下来的物理教材学相对论觉得很新鲜,记住了点概念;大学时听老师讲相对论,背了几个公式;毕业这么多年,挖出点兴趣来再看,觉得自己啥都没明白 :( 。小的时候读《时间简史》,号称全书只有一个数学公式 E=mc2 ,读起来就不枯燥;今天再读的时候,就是想弄清楚公式背后的含义,多一点公式也觉得必要了。只是发现自己的数学掌握的实在不好。那么补数学吧 :D

同事 soloist 推荐了张筑生教授的《数学分析新讲》。

January 04, 2007

十年

零七年来的这么快,让我措手不及。

十年了。九七年我刚刚接触互联网,做了自己的主页:以游戏制作为主题的第一个中文网站。

也是那一年,我用自己编写程序的技能赚到了平生第一笔钱。一个现在都不好意思拿出手的小共享软件,靠盗版光盘的传播,收到了来至祖国各地邮寄过来的注册费。

似乎还是在那一年,我决定做自己的游戏。结果岁月飞逝,今天仍旧是感觉一事无成。

十年前,网易这家小公司成立了。十年后的今天,我掰着手指数,居然已经为这家公司服务了六年。还真是难得啊。零零年的时候我可没想过自己会如此稳定。

December 10, 2006

通宵

本周总算破记录了,通宵了两次。主要是最近程序写的比较 high ,一下就得意忘形了。就这样,居然在一周里吃到了两次楼底下,热呼呼、香喷喷的肉包子。才五毛一个,好吃又实惠。

记得大话西游二发布后,这几年都不曾高频率的通宵了。需要的时候一周也就一次,总是在接下来的几天里要休息补回来的。

这么干上一次,仿佛回到了十八岁。那个时候有激情啊,把台破机器搬到学校后面九十块一个月的出租房里,动不动就通宵。第二天还干劲十足的。那时我的名言就是,睡着了还能写程序,哦,不是写代码,是为代码写注释。记得那个时候冬天连被子都没床厚的。拿个薄被裹起来在计算机前面冻的瑟瑟发抖。

后来条件好点,学校门口的网吧收留我。可以搬机器进去免费上网,我也就只是帮忙架了台 linux 的服务器而已。似乎冬天还比较暖和。朋友也多,一到半夜就被人教唆着打星际, 4vs4 。我就会玩 zerg ,直到今天还是没弄明白 terran 和 protoss 高级建筑的依赖关系。

这一下都快 10 年了。没想到当年网吧里的好友,现在到了我的项目组里做策划 :D 偶尔还打一把星际。

December 03, 2006

墨攻

昨天跟同事讨论我们游戏中的古代战争场面该如何表现时,产生了很多困惑。晚上 google 了一些资料,又从书架上取下能找到的书翻看了一番,还是没有结论。不巧发现近期有这样一部电影上映,正逢周末,决定去看看。

早就有周末往电影院钻的习惯。我对电影不太挑剔,想起来了就会买张票进影院。在广州前两年几乎每周都看,那个影院很偏僻,有时候偌大一个放映厅就我一个人,倒也享受。电影票也不贵,无论拍的再烂,我都企图从中找出亮点了。我想,作为导演总会想表达点什么吧,那么把这些找出来就是懂得享受了。当然,有些片子我是不看的;我觉得可看就看,看了就不会抱怨,只是如此。

那么这部片子能说的也多是赞许了。

November 05, 2006

三人成虎

周四的晚上,准确的说是周五凌晨。我被通知参加白天在广州的会议,乘早上第一班飞机。原本我还躺在床上计划周五的工作的,因为觉得这次会议更重要一些,就调好闹钟,把计划放在一边,睡了过去。五点起来赶去机场,下了飞机就直奔会场。会开到了周六的凌晨三点,吃完中饭就折返回来。精神和身体都很疲惫。

这次会议上偶然提到一件事情,跟会议的主题关系倒不太大。就是业内挺有名的“七七”事件。这件事情的热度远超我当初的想象,直接用 google 或 baidu 查 "七七事件" 就可以发现其排名居然在 70 年前那件事之上。

这件事情的起因在于所谓的玩家改名事件,梦幻西游中有一个玩家用了不雅的名字,“干死4小日本”。在被强制改名后引出的一系列争端。此中谁是谁非,这里无意评论。事实上,所谓七七事件之后,起源的那些事情已经不太被人提起,(帮派改名,太阳旗,狮子头等等)。最重要的一个谣言就是,梦幻西游被卖给了日本公司运营。当然还有别的一些版本,比如部分服务器交给日本公司运营。

这个谣言在接连的几个月中,直到最近一个星期,还有认识我的朋友问起。一开始,我认为这个谣言过于可笑。因为没有任何的依据,我们公司里面也没有任何的迹象可以引发这样的一个谣言。在我看来,这种谣言都有人相信,只能说是相信它的人太没有对事情的判断能力了。我这种想法似乎和公司大多数人相同,大家都不屑于做点什么解释。仿佛如果去解释什么,好象还真有点问题了。

但随着时间的流逝,询问我这个问题的人慢慢的变多,逐渐的有些我觉得应该有独立思考能力的人也开始向我确认这件事情的真伪,这让我发生的警惕。现在问我这个问题的人已经不再是确认真伪了,而是直接问我,为什么网易要把运营的好好的游戏卖给日本呢?我已经不能再用哭笑不得的心态来对待这类提问。

三人成虎的故事有它的道理,这道理说起来大家都懂,但没有切身体会还真感受不到那种真切。谣言止于智者,但由于信息不对等的关系,智者也会被蒙骗。慎重其事的澄清谣言不应该是一件不屑一故的事。

这里以我个人的身份,慎重的澄清以下事实:

梦幻西游从始至终都是网易自己在运营,从来没有卖给日本公司。从来没有产生过这种想法,也没有任何日本公司对此表示过兴趣。网易的运营团队没有接触过任何日本公司商谈这类事情。我可以得出这个结论,基于我对公司的了解,对公司游戏部门管理层的同事的了解,对丁磊的了解。而且梦幻西游到今天还是一款给公司带来很高收入的游戏,卖给任何公司(不限于日本公司)来运营都不会给公司带来更多的收益。

August 25, 2006

编程的门槛

大约在游戏制作行业里,大家都把设计工作分成三大类:程序,美术,策划;其重要性相互之间都无分上下。这算是跟其他 IT 行业极大的不同点吧。

但这里面,程序的门槛是公认的最高。很少有听说有专职的美术或者策划人员,从对编程一无所知转变成一个程序高手的。按道理来说,编程需要的基础知识并不复杂,只需要加以时日磨练,任何人都有成为优秀程序员的潜质。谁都明白,当团队中的成员互相了解各个领域的工作可以提高整体的效率。可是,为何,许多人却经过努力,没有迈入程序设计的大门呢?结果,大多数美术人员不会编写 max/maya 脚本;策划没有能力编写复杂结构的脚本。

那么,编程的门槛究竟在哪里?是什么阻止了非编程人员在简单的程序脚本上更上一层楼?作为多年的程序员,我似乎忘记了当年入门时的心境。面对这样的问题时,便得在记忆深处挖掘答案。

April 03, 2006

周末又打了一晚上桥牌

以前中学时虽然玩过一阵子,但是或许是搭档的原因,一直没找到感觉。而且那个时候小,叔叔家有一柜子牌书,我都只知道死读书,没体会真正的乐趣。

以前比较好围棋,因为很靠计算力和大局感。这次在桥牌中发现了新的乐趣,一样是需要逻辑推理和计算的。但是,对搭档的信任和模糊的推理更为重要。过于自信的人是打不好桥牌的,埋怨搭档更加没有用。

这个周末打了很不错,比前几天一次有了很大的进步。前几天一败涂地,唯一一盘可以翻盘的机会,搭档居然退缩了没有叫进局(事实上可能进贯的)。昨天还是同样的配合,但是多了许多信任。在经过仔细思考后做出正确的决策,并且相信搭档能理解自己的想法;以及相信搭档在做正确的事情,这两点相当重要。

March 25, 2006

没钱就别接受高等教育?

今天看到一则新闻:没钱就别接受高等教育?教育部发言人激怒网友

固然媒体在传播报道的时候总会有一定的失真,没有反映出"发言人"的真实态度。但若"教育部发言人"真是代表了"教育部"的官方的一种想法或是思路。那么真的是一个悲哀。

教育乃立国之本啊。大原则上,有多少困难都应该想办法克服。计较短期的经济利益,是一种短视。虽然应试教育有种种弊端,却也不失为是一种在高等教育有限的情况,对国家的下一代做出教优筛选的一种方案。这种方案比用学子家庭的经济收入来拦掉一部分人要合理的多。

March 10, 2006

有的源码是不值得现在再去读的

有做得到的事,也有做不得的事。例如通读 MudOS 的源码。

February 28, 2006

搞清楚“为什么”

前几天写了篇关于整数和浮点互相转换的blog,那个数字的确奇妙。我当时想,原理也不应该复杂,就没去管它。

今天程序里突然发现一个 bug,就是由这个技巧引起的。有的地方对,有的地方不对。转出来成了0。

百思不得其解,只好老老实实研究这个技巧是如何工作的。然后才明白是浮点精度控制问题。我们的项目使用 d3d 的 client 在 d3d 设备初始化后,由于 d3d 修改了double 运算的精度。

要想放心的用任何一个技巧,know why 永远是前提啊。

February 26, 2006

楼上的装修已经有些日子了

本来挺清净的写字楼,自从楼上装修开始敲敲打打后,我就没得到过宁静。跟物业投诉过一次,然后打电话过来说已经打过招呼了。没想到最近几天,一过晚上六点,头顶上的横梁就开始剧烈的震动起来,振耳欲聋,似乎连灰都飘落下来,恐怖得很。办公室里通讯基本靠吼,然后我们就欲发的觉得 popo 的重要性起来。已经有好些同事终于忍受不住,在八点之前回家了。我试了一次,早早的回家看看电视也不错。

这两天周末,楼上的更加变本加利,恃无忌惮。似乎每天都要进行到晚上十点。我试图从敲打声中找到一些节奏,这样就可以阿Q似的当打击乐听。当然在隔壁休息室内玩一下 PS2 ,把音箱开到最大也算是一种抗议。

天啊,最宝贵的傍晚和周末两个编程时间段就这样被无比的噪音劫持了。现在回想前两个月在会议室装抱石墙的那几天,隔壁的那家也怪可怜的。难道真是一报还一报,可我们失去人性的在墙上打洞的日子只有两天,怎么报应就这么久呢。

February 03, 2006

精彩的一盘棋

上学时喜欢下围棋,喜欢下棋甚至超过编程。不过我想我不是下棋的料,水平老是不见长。工作了后兴趣逐渐转移,生活节奏快了,偶尔在网上下两局快棋也是越下越臭。我原本就是长考型的选手,擅长屠龙之战,偶爱创造性思维,思考时间短了自然下不过人家。不过网络对围棋也不是坏事,比如打谱就方便了许多。

今天看了一盘棋,<a href="http://weiqi.sports.tom.com/php/dqipu.php?id=8441">第10届三星杯半决赛第三局:罗洗河执白7目半胜崔哲瀚</a>。不算新,都一个多月以前了。不过我才看到,实在精彩。

小猪真是天才,居然临场想到了这么大的一条龙都是可以弃掉的。

January 31, 2006

关于读研这个事

这两天过年在家陪父母,其他也没什么事,老同学大多有自己的小家不是每年都回武汉了。U 盘带回来的一些代码也不太想看,家里机器除了个 mingw 也没别的编译器,要说写程序还真没啥兴趣了。那么就只好上网到处逛逛了。

今天看到一个 blog ,跟主人在上海有一面之缘吧,看照片特眼熟。文章是这么一篇 http://www.blogcn.com/User5/omale/blog/28119593.html 里面写了好多东西,我印象深刻的是关于读研这一段。(注:这篇文章是转载,并非博主本人)

我是本科学历,还差点辍学没读完,当初学校的老师也流露过让我留下来读研的想法。不过看我学习太差,还在大四闹脾气,整出个退学那挡子事,也就没好明说。说了我也是打死不留在学校的。我现在的领导倒是硕士毕业,每每出去招聘前,都要叮嘱,不准歧视硕士,我们公司不能有学历歧视。结果呢,硕士博士,从结果看还是被我们“鄙视”了。

我这个背景应该没什么权利评价读研这件事吧?以为然也者不必点开看下面了。

January 24, 2006

不懂比懂更重要

今天看见一句话觉得很有道理:高手之所以为高手并不是比菜鸟们懂的多,而是不懂的比他们多。

December 06, 2005

新闻从业者的素质

写这篇 blog 可能还是会继续得罪人。不过还是想谈谈。
我不是新闻从业者,但是我想“新闻从业者应该是不偏不倚中立的观察者”这个应该在今天被达成共识。我个人是在泡 wiki 百科中,受到这个类似观点的熏陶的。

可惜 wiki 百科现在被封了,不然我可以列一个上面关于条款中立性的文章大家看。很遗憾的看到,在我认为应该在程序员这个高素质团体,在程序员自己的技术网站,其责任编辑却没有应具的基本素质。

December 05, 2005

民可使由之 不可使知之

这两天睡觉前翻翻论语,读到泰伯篇,“民可使由之,不可使知之”。传统的理解就是,可以让老百姓按照我们指引的道路走,不需要让他们知道为什么。这句话是孔老夫子说的,(前面写了“子曰”)

从现在的思想看,估计很多人都会抨击这个观点。然后有卫道者改句读,例如“民可,使由之;不可,使知之”或者是“民可使,由之;不可使,知之。”;还有“民可使,由之不可,知之。”什么的。我自己感觉啊,根本用不着替老夫子开脱。我自己是越来越感到很多情况下真的是“民可使由之,不可使知之”了。

很多事情去花时间跟当事人解释清楚未必是件好事。

December 03, 2005

网易求职被骗记?

今天白天有个朋友给我转了这个一个帖子,
网易求职被骗记
<a href="http://community.csdn.net/Expert/topic/4418/4418779.xml?temp=4.925174E-02">http://community.csdn.net/Expert/topic/4418/4418779.xml?temp=4.925174E-02</a>

大约讲的是一个 mm 到网易应聘游戏客服,干了 15 天被告之不符合要求没有录用。按照开始的约定,也没有支付这 15 天的工资。这个mm估计巨受打击,她的男朋友很不服气,在 csdn 论坛上贴了这篇慷慨激昂的帖子声讨网易,应者纷纷。

December 01, 2005

编译器实现有感

脚本虚拟机前段时间就已经做好,如果没有跑在上面的语言,光有虚拟机没太大意义。所以脚本编译器一早就开始做了。中间因为去上海参加 C++ 大会,又去了成都做招聘,弄的心力疲惫。这几天才回来,有那么几天去实现。

编译原理的课程大学本科就应该开过吧,我不是科班出身,反正是没正经上过。不过依稀记得自己是学过的,记得是上中学的时候,跑到一个大学上课,老师教的就是编译原理。那个时候 C 语言还没玩转,最熟的是 basic 和 6502 汇编。理解那些东西很有困难。囫囵吞枣的记了一点,算是有点印象,逢人也可以吹吹牛。

November 15, 2005

五福娃

今天才看到北京奥运的吉祥物。本人严重不喜欢。感觉最成功的就是超具娱乐性,网上已经有各种涂鸦版本出现了。满足了大量涂鸦爱好者和 Photoshop 扇子的表现欲。

November 02, 2005

实现一个虚拟机

在编程的世界中,只有你想不到的事情,懒的做的事情,没有做不到的事情。

曾经一度为使用哪种脚本嵌入游戏犯愁,lua 的源码过了几遍,python 的也看了点。lcc 也试过,还有 ch 什么的。真正用在项目里的就是 lua 和 python 了。我个人更偏好 lua 一点。越读它的 source code 越觉得它作为世界上最快的脚本语言,是名副其实。

很早以前,我觉得显示一个图片很难,好象发现很简单。曾经觉得汇编很难,结果发现很简单。曾经担心 C++ 太复杂学不会,现在已经感觉游刃有余了。还有学习 perl php 或者是 stl mfc 这样的库,不懂的时候都觉得难,懂了却是不过如此。

对于游戏,说什么掌握 3d ,网络编程,无非是些技术方向而已。肯花时间,一定没问题的。

这次是脚本虚拟机。已经想了很久了,怕太复杂需要投入过多时间和精力。可事实上,写起来却又一次发现不过如此。

October 18, 2005

保重身体

今天体检,起了个早床,六点就爬起来了,当然昨天还是按惯例两点睡的。不是很困,但是也没什么精神。检查结果,别的都一切正常,血压略微有点点偏高。

October 09, 2005

新的开始

一直想有个地方随便写点什么,以前用 javascript 做个人网站也是想简化网站维护的流程。虽然早就知道 BLOG 会比较适合自己的需要,但是因为懒,也就一直没有做。