赖勇浩(http://laiyonghao.com)
2011 年的最后一个晚上,有点困意,但是仍然决定要为自己写一篇年终总结。在动手之前,先看了一下去年的总结《2010,只有感恩。》(http://blog.csdn.net/lanphaday/article/details/6106501),我才回忆起这一年里经历了这么多事,也才确定下了标题。
2011 年,终于完成一个项目:《天下盛境》(http://www.0505u.com/);而在去年总结时还不能公开的项目,也发布了:《斩魂》(http://zh.163.com/)。就像去年的总结那样,我们团队从无到有开发了一个 webgame,并在 7 月初开始放号限测,然后在 10 月份开始商业运营。公司和项目有许多说不清道不明的纠结,但就技术方面来说,我很满足。在项目中我们终于把 Trac 用了起来,虽然每一个里程碑都有小小的延期,但是最后我们居然比计划上没晚上 20% 的时间,而且还完成了不少完全没有预计的内容,适宜的项目管理策略应该有不可没之功。在团队的建设过程中,reviewboard 对提升团队代码质量非常有帮助,感谢团队成员,支持我们的强制 code review 政策。在年底,因为对项目未来的定位跟管理层有较大分歧,我决定离开这个公司,在我离开后,制作人也很快离开了,现在我刚在新的公司入职 10 天。
在技术上,《天下盛境》应该是一个比较独特的网页游戏。作为一个实时性要较强的横版卷轴动作类闯关游戏,它的服务器端完全使用 python 开发,并且没有使用多线程,而是使用协程加进程的方式。在去年的总结中,我们提到使用的是 gevent,现在我们可以说,我们坚持了下来,并且对它很熟悉,很满意。感谢 gevent,我们未来的新项目仍然会选择它,而我也第一次给开源项目进行了捐赠,虽然数目很小,但从无到有的意义很大,在未来我会再次向他捐赠。google protobuf 经过一个项目的使用,现在我们能够做到更好了,我总结了之前的一些没有做好的地方,但因为兼容性的问题,不能把改进方案应用到项目中去。后来我根据经验和教训,写了一个开源项目,abu.rpc,是基于 gevent 的 protobuf 的 RPC 实现,现在只写了 python 部分,接下来会很快完成 ActionScript 的部分,项目页面放在这里:http://pypi.python.org/pypi/abu.rpc。
2011 年没有达成学习一门新的编程语言的愿望,但是接触了一下 falcon、scala 和 ruby 等先进的语言,并在 falcon 的启发下,为 python 编写了一个面向消息编程的小程序库,称为 message,经过在项目中一年的应用,我推荐给大家。它是一个进程内的发布和订阅模式实现,能够有效地实现模块之间的解耦,在《天下盛境》项目中广泛应用于战斗、任务等多个子系统中。比如在战斗系统中杀死了一个怪,只需要发布相应的事件,那么订阅了这个事件的任务模块等就能够获取到信息,比如判定是否完成了“杀死XX怪YY只”的任务,而战斗系统完全无需知道任务系统的存在。message 的项目在:http://pypi.python.org/pypi/message。
珠三角技术沙龙在 2011 年进一步发展,顺应大家的要求,组委们开放了 QQ 群,创建了招聘区和讨论区,把 2010 年架设的官网进一步完善了起来。沙龙吸收了新的组委,在深圳、珠海都有了稳定地组织活动的志愿者,这实在是太难得了。因为有给力的组委和超强执行力的组委主席 jeff,我已经卸下了组织工作的大部分任务,非常感谢你们给我的理解和支持,整一年里,我只组织了一个月的活动,让我有更多的时间为项目和理想奋斗。在 12 月份,还作为讲师参与了一下 China Python Conference(http://cn.pycon.org/2011/),第一次参加这种级别的会议,感到非常荣幸,而且认识了一堆新朋友,收获得大。
2010 年曾经提过的工程硕士学位在这个冬天终结了,感谢指导老师,感谢华南理工大学,除了一张学位证书我还收获了很多。还有就是关于家庭,我们这个大家庭在 2010 年收获不错,各个成员基本上都获得了大家彼此想要的结果或者正在获得中,完成了很多人生的“任务”,这让我感到非常开心。
在新的一年马上就要到来之际,我有两个愿望:一是我们新的项目能够顺利地研发完成,并收获比较好的市场效果;二是即将到来的家庭新成员健健康康,茁壮成长。