文档那些事儿

还记得在2008年我做毕业设计的时候,自己心里有一个朦朦胧胧的概念,大概是说,要规范,制度上有标准,流程上有遵循。于是噼里啪啦整了软件工程十项文档,再加上一些辅助性文档就有了下面这个清单。我以为那样的全面会带来更好的评价,但是老师说,“太多了”,我很困惑,难道文档全面、综合,而且完备,这不好么?

文档那些事儿

在Amazon有一个大家都知道和反复自黑的事情。所有team都用wiki来记录和维护项目、产品有关

[......]阅读全文

分享到:

游戏中的货币和通货膨胀

游戏中的货币和通货膨胀忽然想谈谈这个话题,是因为最近开始接触一款游戏《Path of Exile》。它可以说是市面上最接近暗黑II的游戏,甚至比暗黑III还要接近。作为一个暗黑II的十多年的爱好者,它自然引起了我的兴趣。我渐渐发现它有许多吸引我的地方,而其中关于游戏中货币的设计和对通货膨胀的压制都很值得玩味。

不可否认《暗黑破坏神II》影响了一代人,也影响了无数后续的游戏设计制作人,其中不少独创性的设计都让人印象深刻。

[......]阅读全文

分享到:

写在孩子出生以后

写在孩子出生以后 最近这一年可谓五味陈杂,各种起伏波动陆陆续续袭来,有时候感到生活艰辛,身心疲惫。就在一周前,也就是11月8号的时候,我们的孩子Lucas诞生了。整个降临过程持续了一昼夜,也折磨了他妈妈24个小时。好在最后母子平安健康。古人说,三十而立,而在30岁这一年同时也做了爸爸,这对我来说是一个巨大的变化。以往总在说成长,现在要说成熟,有了孩子以后,有许多生活上的琐事需要去做,而教育更是一个无比重要神圣的事

[......]阅读全文

分享到:

从工具使用的痛苦说开去

从工具使用的痛苦说开去

是因为最近团队里的数据分析师(data analyst)向我抱怨,为了分析数据,要跑job,要执行pipeline,要用Spark来算结果,但是期间遇到各种问题,虽然我们一起研究问题的解决方法,但是依然非常耗时而且令人沮丧。这些问题大多并非数据本身的问题,而是工程问题。换言之,我认为数据分析师的价值在于数据思维,他们有我们软件工程师不具备的数据敏感性,他们能从海量的数据中获得有价值的信息——但是

[......]阅读全文

分享到:

谈谈月饼事件

谈谈月饼事件

最近在程序员圈子内引起热烈讨论的月饼事件的详情在此,阿里巴巴也给出了官方回应,事件本身的大致内容是:

阿里巴巴有一些低于市场价的月饼供员工抢购,算是公司福利的一种体现。但是安全相关部门的5位员工写了脚本,利用内部抢购系统漏洞,抢到了超过限制数量的133盒月饼。

于是看到了各种各样的声音,有表示公司做得对;有表示公司的处理方式简直不可理喻;也有质疑公司HR的权力之大的。于是讨论就上升到了公司的

[......]阅读全文

分享到:

关于奥运会,一点印象和看法

关于奥运会,一点印象和看法

关于禁药风波

事实上,在我看来,禁药只是奥运发展到如今畸形生长的一个典型表现而已。如今的奥运,早已偏离了最纯粹的主旨。只有“更快、更高、更强”,但是其他那些好的初衷都已经丢失。禁药的使用永远也不会休止。禁药本身,永远只会是一个比拼科技实力的过程——区别仅仅是因为科技和运气被抓到和不被抓到。从根本上,如果奥运会的规则体制,以及在诸多人心中的地位,在政坛上的价值,这些都无法改变的话,这个问题就是无法

[......]阅读全文

分享到:

工作流系统的设计

工作流系统的设计

几年前曾经写过一点点对于缓存框架设计的体会,这大半年和工作流系统打交道颇为丰富,因此想总结一点关于工作流系统的设计。

首先,明确工作流(workflow)系统的定义。维基百科上有极其简单的介绍。我记得以前在文章里面说过,作为大公司里面的小team,为了做一些有趣的东西,从而更好的招人,通常有几个众人皆知的突破口:比如一个更符合业务需求的storage,再比如一个自定义的工作流系统。在Amaz

[......]阅读全文

分享到:

又到一年引援时

又到一年引援时

去年暑期我曾经评价了一番当时范加尔在任的引援,如今可谓物是人非,从这个冬季没有任何实质意义的引援行动,就估计到范加尔的帅位不稳。事实上,14赛季结束以后,主媒体报端对于范加尔的评价还是不错的。和莫耶斯不同,直到上任两年后,再度丢掉欧冠席位,拿了足总杯草草收场,我依然对于范加尔持有相当程度的支持态度。只可惜这样的成绩显然是难以令多数俱乐部内外人士满意,而其本人“死鸭子嘴硬”,不断要求球迷降低期望的

[......]阅读全文

分享到:

写给实习生的第一天

写给实习生的第一天

实习生(intern)和新员工有所区别。实习生仿佛一个长达12周(三个月)的面试,一起工作,一起解决问题。在最后有答辩和debrief meeting讨论结果。可能通过了,最后公司给offer;也可能没有通过。即便给了offer,还要面临双向选择,有可能实习生不理offer,继续求学或者去别的公司,当然也可能选择到别的团队。

我的习惯是,见面的第一天,这些内容是必须要交代清楚的:

1. 近视和远

[......]阅读全文

分享到:

保卫萝卜

保卫萝卜是我特别喜欢的一款塔防游戏,其实第一代最好,第二代没那么有吸引力,但是也能玩,前两天保卫萝卜3上线,我彻底失望了。

喜欢保卫萝卜1的原因我觉得至少有这么几个:

  • 策略型的游戏,可以暂停以后来布置防守,这样就不会把游戏的平衡点放到操作上(要是论操作,那核心游戏性就彻底不同了);
  • 有好多关卡都是设计精妙的,需要思考以后才能过去,有一步策略错误就挂了;
  • 收集各种怪物,然后才能解锁各种地图,这个是

[......]阅读全文

分享到:

亲历美国医疗

亲历美国医疗

一直想写稍微写一点关于美国医疗的体验,因为看到过不少报道,也包括很多鸡汤文,都是失实的。

医生有家庭医生和专科医生之分。家庭医生(primary care)又叫全科医生,会更密切地跟进你的身体健康状况,什么健康问题都可以寻求他们的帮助,也包括一年一度的体检。一般病人或选择和固定的一个满意的家庭医生,这样熟悉以后双方都对彼此有印象,了解情况会帮助沟通。通常,他们也只是直接解决比较小的问题,大的问题

[......]阅读全文

分享到:

Spark性能优化——和shuffle搏斗

Spark性能优化——和shuffle搏斗

Spark的性能分析和调优很有意思,今天再写一篇。主要话题是shuffle,当然也牵涉一些其他代码上的小把戏。

以前写过一篇文章,比较了几种不同场景的性能优化,包括portal的性能优化,web service的性能优化,还有Spark job的性能优化。Spark的性能优化有一些特殊的地方,比如实时性一般不在考虑范围之内,通常我们用Spark来处理的数据,都是要求异步得到结果的数据;再比如数据

[......]阅读全文

分享到:

一种工作流心跳机制的设计

最近工作中一直和SWF(Amazon的Simple Work Flow)打交道,在一个基于SWF的工作流框架上面开发和修bug。SWF的activity超时时间是5分钟,在activity task开始执行以后,activity worker需要主动发送心跳请求告知service端:“我还活着,我还在干活”,如果出现超过5分钟(可以配置)没有心跳,SWF的service端就认为,你已经挂了,我需要

[......]阅读全文

分享到:

副业?副业才有趣,才精彩

副业?副业才有趣,才精彩

搞副业是要花时间精力的。但是副业的好处在于,不用担心饭碗的问题,不用担心赚钱的问题,一心一意把爱好实践好就好了。开心就多做,不开心了就少做。我觉得只有拥有足够的选择权,人生才能称得上“自由”。我计划今年继续把文章写好,把琴谈好,尽量多去短途旅行,继续追曼联的比赛,争取一场不落。对于这些纷繁复杂的“副业”,只要身体健康,我一点都不觉得疲倦。

听到过这样一种说法,你不是xx领域内的专家/权威,就不要

[......]阅读全文

分享到:

生活不止眼前的苟且,还有诗和远方

生活不止眼前的苟且,

还有诗和远方的田野。

你赤手空拳来到人世间,

为找到那片海不顾一切。

这就是高晓松写的歌,许巍唱的歌。没有漂亮的修饰,没有华丽效果,始终偏执地保持风格,简单、安静、述说,触动心弦。我记得在十多年前,写过一些文字,祭奠民谣、诗歌和九十年代。如今听到高晓松的歌,如今回忆起故事、欢笑和逝去的时光,在旧有的感怀和失落的同时,还有一丝快慰。九十年代有那么多有理想的音乐人,那些音乐伴

[......]阅读全文

分享到:

从淘汰Oracle数据库的事情说起

从淘汰Oracle数据库的事情说起

公司搞淘汰Oracle数据库的事情已经搞了好久了,这个事情其实和国内淘宝系搞的去IOE(IBM、Oracle和EMC)是类似的,基本上也是迫不得已,Oracle的维护成本太高,而公司内部基于Oracle数据库的数据仓库,也是问题频出;另一个原因则是scalability。我相信这两个原因许多人都非常清楚。而这个淘汰,也不是简简单单换一个关系数据库,比如把Oracle换成MySQL,或者换到云上(

[......]阅读全文

分享到:

Notes: Spark metrics

Below are some notes taken for future reference based on the brainstorm meeting last week, with company confidential information removed.

Background

The team use a home made workflow to manage the com

[......]阅读全文

分享到:

三次性能优化经历

三次性能优化经历

最近在做一些性能优化工作,回想起工作这些年来,参与过的三次集中性能优化,每次都得折腾少则一个月,多则半年。这些内容既是不同视角、不同思路的比较,也是挺有趣的工作经历。

Portal的性能优化

这已经是大概五年前了,搞了接近半年的Portal性能优化,后来某些内容总结在这篇文章里面。既然是Portal,性能优化上就有它的特点。比如说:

Portal的性能优化需要从前端和后端两个角度去思考问题,先考

[......]阅读全文

分享到:

研发团队的角色和构成

研发团队的角色和构成

以下都来自我的经历,带有主观评价,但是尽量保持平直的论述。

在我工作的第一家公司的时候,一个典型的研发团队是这样组成的。我的经验也只是到4年前,现在也许早就不一样了呢。

项目经理,这个角色是不断在换的。项目经理当然是只跟着项目走,这和团队经理(Team Leader)是不一样的。当然,Team Leader也往往在不同的项目里面兼任项目经理。基层的项目经理也可能会编码,但是不管参与不参与编码,工

[......]阅读全文

分享到:

历史,科学,还有艺术

历史,科学,还有艺术

学理的人要读一读历史。

遗憾的是,每当我这么说的时候,几乎所有的人都狭义地认为我在讲政治的历史,世界史或者中国史,就如同历史课本里那样。关于这一点,也是时常让我觉得悲哀的地方。我们看到的那么多纪念馆和青铜像,大多是那些因为在政治舞台历史烙印深刻的人物,其次就是久远以前的大文豪们。看看近现代的科学领域、艺术领域、文学领域,这些科学家、艺术家和文人,不知道在年轻人心中有多少分量。仿佛一定要有这样一个

[......]阅读全文

分享到:

Preview on Feedage: