[zt]程序员的温情管理文化

January 10, 2008

作者:virushuo 发表于 2008-01-10 01:01 最后更新于 2008-01-10 01:01
版权声明:可以任意转载,转载时请务必以超链接形式标明文章原始出处和作者信息及本声明


今天戴飞和我聊起来为什么在一些公司会很闲但是很累,在另外一些公司工作量大但是很开心的话题。不由得勾起了我总结一下长久以来关于工作,尤其是对程序员的工作管理的一些话题。从我带第一个技术团队算起,已经有很多年了。我始终坚持的一件事就是温情。所谓温情,很简单,替别人多想一些。我在附中的时候,下班总要“轰”大家回家,不让团队成员加班。如果为了躲避晚高峰不想走,我就鼓动他们玩玩游戏,看看电影看看书,别太累。

这事情在所谓“管理者”眼里是个笑话,在他们那里几个参数是等同的,加班==工资==产能。事实上每个工作过几年的人都知道这不可能。程序员是这样 一群家伙,他们可以把1000行代码写成10行,当然也可以把10行代码写成1000行。他们可以让这1000行代码比那10行容易看懂效率更高,也可以 让那10行比这1000行容易看懂效率更高。

在这种情况下,我更愿意在质量和工作量中找一个平衡点。即,不让任何一个人累着,不要让他们早晨起来躺在床上懒得上班,不要让他们因为加班被家人抱怨甚至感情危机。人首先是生活的人,如果放弃了生活,工作也没意义。皮之不存,毛将焉附?

最终找到的这种平衡点很有趣。那就是,程序员很难在一天内完成超过4个小时的高效工作。我说的是要求质量,有能动性,要动脑子,有创意的那种工作,拼贴代码那种机械工作咱们就不讨论了。因此我尝试在我和tiny的新公司实行每天6小时,每周30小时工作制。同时我们在力所能及的情况下不主动压低任何人的工资。我们不用期权引诱人,我们首先保证所有人生活正常,无压力,虽然我们认为我们的期权很值钱。但值钱不值钱这件事不是自己吹牛吹出来的,是大家共同努力出来的。

事实证明,每天6个小时工作时间不但没有降低效率,反而比8个小时高很多。想想也不奇怪,早晚放弃了1个小时,所有人都可以躲过早晚交通高峰,路上花费更少的时间,不会被人挤,心情不会太差,到公司可以很快进入工作状态,且心情轻松。

我倾向于相信,如果生活稳定,家庭幸福,收入正常,且在做一份有未来的事业,所有人都愿意尽自己最大努力。反之,其实所有人都有去稳定的大公司的机会。没人愿意来创业。

说到这里,一定会有人反驳:软件工程就是用来降低程序员不稳定性,工作量不够,产品质量不高的问题的。是的,这种说法完全对,不过仅限于外包领域。 外包领域具有明确的需求和验收标准,产品相当稳定。他们追求的是重复性,可复用性。因此他们希望通过一种机制,让程序员变成机器。一个程序员“坏了”(不 开心了,辞职了,老了精力下降了),那就换一个,就好像换掉一个巨大机器上面的齿轮,咔的一声,拧好螺丝,继续运转,一切都跟没发生过一样。刚才那个被拧 下的齿轮呢?老天,谁关心那个。

在互联网,尤其是带有较高技术含量的领域,或是新鲜的领域,我们因为没有标准可循,所以并不需要这种机器。我力图把程序员重新还原成人。所以我更喜 欢创造一个有温情的环境。其实不仅仅我这个小创业者的胡思乱想,google给员工极度的自由,极好的待遇,我觉得也可以看做这种思路。google知道 无法管理技术人员,所以他们干脆选择了彻底的,全面的妥协。一切都交给你们,你们努力去做就好,我们不给你压力。事实上,在选好人的情况下,这种思路产生 的产能是惊人的。当然,在中国似乎没选好人,所以产生的浪费也是惊人的。

几乎所有武术都在讲,出拳的时候手臂要放松,接触目标的瞬间发力,这样才有力量。如果出拳即发力,则会导致肌肉紧张,动作变形,最终你使出了全身的力气,却只打出了软绵绵的一拳。这多么的悲哀。

[ZT]MMORPG Server Design

December 17, 2007

转载自 http://www.cppblog.com/Fox/archive/2007/12/16/38600.html

这篇文章转载自Fox的研究论文的开题报告,写的比较细致,和我目前所做得工作也比较相似。不过行文的水平比我高,把很多我说不明白的事情都表达了出来。很多具体的问题没还有深入,期待后续的文章


Author: Fox(yulefox@126.com)

一个
MMORPGMassively Multiplayer Online Role Playing Game)的架构包含客户端和服务器两部分。客户端主要涉及计算机图形学、物理学、多媒体技术等,服务器主要涉及网络通信技术、数据库技术,而人工智能、操作系统等计算机基础学科知识的应用体现在MMORPG开发过程中的方方面面。

Continue Reading »

Flex SecurityError 2148

December 8, 2007

Flex SecurityError: Error #2148 While Accessing local XML

So you’ve published your Flex application that accesses local XML, but when you try to run it outside of your Flex Builder folder, you might get a Flash Player Debugger error #2148. I ran into this problem while on a tight deadline, and am reposting here to get the word out.

To fix this, you need:

  1. to right/control click your Flex Project folder in the Navigator
  2. Select properties
  3. Choose Flex Compiler in the popup window
  4. Add “-use-network=false” under Additional compiler arguments

flexproperties.jpg

Hopefully, this’ll save someone some time…

Expose inside design

December 6, 2007

有些时候,UI的一个设计准则就是将程序内部的设计结构暴露出来给用户,比如Mac系统上很流行的一个tap-to-run的程序,Quicksilver,一个基于键盘的程序启动软件,它的基本界面如下:

Quicksilver

如上所见,左边是Quicksilver根据我让键入的字符在系统中寻找到的对象,右边就是针对这个对象所做的动作,用户可以使用默认动作或者是使用其他的动作。例如针对一个文本文件就有预览,打开等动作。

没有看过Quicksilver的代码,不过相信要我做一个这样的类似程序,我也一定会做这样的内部设计:

对象 — 动作

将对象和动作分别封装成两种最基础的类型,让他们之间有一定的属性可以互相交互从而形成关联。对于程序设计者来说,这个可能是最基础的想法。Quicksilver也忠实的将这个想法反应到UI上。程序设计师对于软件的理解肯定要比一般的使用者深入,如果我们能将一个好的设计暴露到UI上,往往可以给普通用户带来更好的体验。

 
Powered by Wordpress and MySQL. Theme by Shlomi Noach, openark.org