January 23, 2008
前段时间转载过程序员的温情管理文化在 这篇文章中提出:
程序员是这样 一群家伙,他们可以把1000行代码写成10行,当然也可以把10行代码写成1000行。他们可以让这1000行代码比那10行容易看懂效率更高,也可以 让那10行比这1000行容易看懂效率更高。
我非常同意这样的看法,一个程序员如果在脑袋糊涂,精神萎靡的情况下写出代码 ,往往是逻辑不清楚,只是想把事情糊弄过去,久而久之,众多的小问题就积累起来,让整个项目陷入泥潭,并进入不得不重构的境地。
一个程序员,如果一天可以集中精力,进行5个小时以上的高效工作,并在这段时间内保持思路清楚,编写出高质量的代码,我觉得他肯定已经是顶级的程序员了,精力过人并且技术扎实。对于我们这样的正常人来说,一天可以维持三到四小时这样的高效工作就已经是很了不起的事情了。对于这段高效高质时间,我们应该加以充分的利用。对于效率偏低的时间,我们应该换一个策略来进行工作,这就是我想要说的,对于程序员的工作安排,应该有Hard word和Soft work的区分。
Hard work是指,列在工作项目上的,必须要做完的东西。这些工作项目都是列在整个开发项目的日程表上,不可或缺的环节。
Soft work是指,并没有列在整个项目的开发日程表上,但是对于技术储备,思路拓展都很有帮助的任务。进行Soft work应该可以让程序员enjoy其中,毕竟如果你对学习新技术没有兴趣,估计程序员的职业也就不适合你了。
对于项目的管理人员,挑战的任务就是如何分派两种任务,如何引导程序员进行Soft work,并控制这两种工作所需消耗的时间,如何帮助程序员了解并提高自己的高效工作时间,并可以让他们在早上打开电脑之后就能很明确的知道:今天的工作是什么,哪些最重要,哪些优先级别最高。
posted in design by Louis | 1 Comment
January 21, 2008
你是否经常听到楼上有弹珠掉地上的声音?
近来在互联网上看到,有人在网上做了一个调查,发现有80%的人听到过,每次都是2-3声象弹珠球跌落在地上又弹起的声音…
每次都是2-4声….而且都是在半夜听到,声音好象还挺重的
现在的小朋友还玩弹珠吗?
并且有时还听到麻将骰子掉地的声音!
还有有时也可以听到好象一些家具搬动的声音,仿佛是人在拖一样!
以前还一直疑惑是什么原因,当时也并不怎么在意!没有深究其原因!但是通过互联网以后,发现很多朋友都似乎听到过这种来历不明的声音!!!这就奇怪了,全国各地难道都会出现这样的情形吗???这不是特别针对与个人的事情呀?
究竟是什么原因呢?是热膨冷缩吗?
实验一:真的跑去楼上打弹珠,发现声音根本几乎是听不到,其实地板比一般人想象中要厚得很多,顶多像文具、手表之类掉到地上的声音,如果这都听得到~那我看还得了,楼上一举一动你都听得到。
实验证明声音能否传到楼下和那个东西的重量有很大关系,也许这有声学或物理上的原因吧,在此就不探究了,总之就算刻意把弹珠很大力砸在地上~~也要夜深人静又很仔细听才听到一些(而且声音种类也不像)
实验二:一块1*1*0.17公尺的水泥块,内嵌钢筋网和两根水管
在实验室用压克力玻璃罩住里用热空气加热法;加到比室温高50度后持续90分钟,之后罩子打开浇冷水加吹风扇急速冷却,结果……啥事也没发生~什么鬼声也没有.
实验三:同样水泥块同样步骤,这次用半虎钳+铁板把前后左右抵住卡紧;结果……啥事又没发生~边缘有非常非常细的小小裂纹而已~什么鬼声也没有
那么~到底答案是什么??
原来元凶就是霉菌!!
是一种不完全菌纲的霉菌为主会腐蚀工业材料与水泥,好生于多细孔表面,以水泥中矿物质为食。
一般天花板是上下两层的细钢筋作支撑,在灌浆的时候其实钢筋不是笔直的被卡在水泥中,受到水泥浆的流动和重量可能会有向上或向左右的应力累积着,或着房子盖好数年后~受到地震或地基小位移等等因素,细钢筋又会产生新的应力。
在天花板的偏下层有电灯线路的管线出口,有温度与空气等等所以霉菌会沿着该孔开始逐步入侵水泥中缝细,细钢筋与水泥接触面是最理想缝细,霉菌多聚 生于此,菌丝向四周开始侵蚀成一个中空型管道。当某根有应力钢筋的周围水泥被侵蚀到一定程度后便会在中空管道中来回弹动,这就是弹珠声的来源。
所以实验下一步就刻意制作水泥块后;中间夹入比钢筋略粗的塑料棒形成中空道,水泥半干后拿出塑料管插入钢筋,再从另一端灌一些水泥固定。
事实证明,细钢筋在管道中弹动的声音和弹珠声是最像的。
这解释了以下几点
1.声音源不在墙内就在墙外,考虑许多人根本楼上无人住之类种种情形,且都是相似弹珠声;声音源必在墙内,墙内东西就是水泥、水管、钢筋、电线这四种,热帐冷缩已经排除,那这就是逻辑上唯一解释。
2. 既然多发生在下方钢筋网,所以都是听到从天花板传来,楼上要听到由地上传来可能当时要刚好耳贴近地板,这机率就小多了,因为事实证明厚水泥隔音效果比想象 中强,如果上方刚好放有大家具就更难听到了,且很少人天花板会贴东西,地板却常常贴有瓷砖或木头~更阻隔了声音传导。也许有人打地铺睡觉时运气好才会听到 吧。
3.这又解释了为什么几乎没人听过墙壁传出弹珠,因为隔间墙多半是砖墙根本没钢筋,机率就少太多,就算有;听到什么也会以为隔壁在钉东西。
posted in Diary by Louis | 1 Comment
January 10, 2008
作者:virushuo 发表于 2008-01-10 01:01 最后更新于 2008-01-10 01:01
版权声明:可以任意转载,转载时请务必以超链接形式标明文章原始出处和作者信息及本声明。
http://blog.devep.net/virushuo/2008/01/10/programmer-warmth-manage.html
今天
戴飞和我聊起来为什么在一些公司会很闲但是很累,在另外一些公司工作量大但是很开心的话题。不由得勾起了我总结一下长久以来关于工作,尤其是对程序员的工作管理的一些话题。从我带第一个技术团队算起,已经有很多年了。我始终坚持的一件事就是温情。所谓温情,很简单,替别人多想一些。我在附中的时候,下班总要“轰”大家回家,不让团队成员加班。如果为了躲避晚高峰不想走,我就鼓动他们玩玩游戏,看看电影看看书,别太累。
这事情在所谓“管理者”眼里是个笑话,在他们那里几个参数是等同的,加班==工资==产能。事实上每个工作过几年的人都知道这不可能。程序员是这样 一群家伙,他们可以把1000行代码写成10行,当然也可以把10行代码写成1000行。他们可以让这1000行代码比那10行容易看懂效率更高,也可以 让那10行比这1000行容易看懂效率更高。
在这种情况下,我更愿意在质量和工作量中找一个平衡点。即,不让任何一个人累着,不要让他们早晨起来躺在床上懒得上班,不要让他们因为加班被家人抱怨甚至感情危机。人首先是生活的人,如果放弃了生活,工作也没意义。皮之不存,毛将焉附?
最终找到的这种平衡点很有趣。那就是,程序员很难在一天内完成超过4个小时的高效工作。我说的是要求质量,有能动性,要动脑子,有创意的那种工作,拼贴代码那种机械工作咱们就不讨论了。因此我尝试在我和tiny的新公司实行每天6小时,每周30小时工作制。同时我们在力所能及的情况下不主动压低任何人的工资。我们不用期权引诱人,我们首先保证所有人生活正常,无压力,虽然我们认为我们的期权很值钱。但值钱不值钱这件事不是自己吹牛吹出来的,是大家共同努力出来的。
事实证明,每天6个小时工作时间不但没有降低效率,反而比8个小时高很多。想想也不奇怪,早晚放弃了1个小时,所有人都可以躲过早晚交通高峰,路上花费更少的时间,不会被人挤,心情不会太差,到公司可以很快进入工作状态,且心情轻松。
我倾向于相信,如果生活稳定,家庭幸福,收入正常,且在做一份有未来的事业,所有人都愿意尽自己最大努力。反之,其实所有人都有去稳定的大公司的机会。没人愿意来创业。
说到这里,一定会有人反驳:软件工程就是用来降低程序员不稳定性,工作量不够,产品质量不高的问题的。是的,这种说法完全对,不过仅限于外包领域。 外包领域具有明确的需求和验收标准,产品相当稳定。他们追求的是重复性,可复用性。因此他们希望通过一种机制,让程序员变成机器。一个程序员“坏了”(不 开心了,辞职了,老了精力下降了),那就换一个,就好像换掉一个巨大机器上面的齿轮,咔的一声,拧好螺丝,继续运转,一切都跟没发生过一样。刚才那个被拧 下的齿轮呢?老天,谁关心那个。
在互联网,尤其是带有较高技术含量的领域,或是新鲜的领域,我们因为没有标准可循,所以并不需要这种机器。我力图把程序员重新还原成人。所以我更喜 欢创造一个有温情的环境。其实不仅仅我这个小创业者的胡思乱想,google给员工极度的自由,极好的待遇,我觉得也可以看做这种思路。google知道 无法管理技术人员,所以他们干脆选择了彻底的,全面的妥协。一切都交给你们,你们努力去做就好,我们不给你压力。事实上,在选好人的情况下,这种思路产生 的产能是惊人的。当然,在中国似乎没选好人,所以产生的浪费也是惊人的。
几乎所有武术都在讲,出拳的时候手臂要放松,接触目标的瞬间发力,这样才有力量。如果出拳即发力,则会导致肌肉紧张,动作变形,最终你使出了全身的力气,却只打出了软绵绵的一拳。这多么的悲哀。
posted in Diary by Louis | 2 Comments
December 17, 2007
转载自 http://www.cppblog.com/Fox/archive/2007/12/16/38600.html
这篇文章转载自Fox的研究论文的开题报告,写的比较细致,和我目前所做得工作也比较相似。不过行文的水平比我高,把很多我说不明白的事情都表达了出来。很多具体的问题没还有深入,期待后续的文章
Author: Fox(yulefox@126.com)
一个MMORPG(Massively Multiplayer Online Role Playing Game)的架构包含客户端和服务器两部分。客户端主要涉及计算机图形学、物理学、多媒体技术等,服务器主要涉及网络通信技术、数据库技术,而人工智能、操作系统等计算机基础学科知识的应用体现在MMORPG开发过程中的方方面面。
Continue Reading »
posted in design by Louis | 2 Comments