第一次在Rails应用里用到了 MySQL 5的视图 ,留个纪念。

Rails创建大概50,000个ActiveRecord对象就会很慢(大概50~60秒,在我的双核Mac Mini上),为了对付一个报表,就搞了一个视图。整体时间从70秒降到7秒。

Rails预先定义的rake任务中有db:test:prepare(里面调用db:test:clone_structure),但这个任务只把development库的所有表复制到test,不会复制视图,所以要自己在Rakefile里准备test库。

以上。

在JavaEye看到一个 颇不靠谱的帖子 讨论这个,正好和我不靠谱的胡思乱想有点像。

IT是工业化的自然顺延。工业化的特征是自动化,一切可以被自动化的工作都将被自动化,并且自动化的成本不断降低。由此产能将被日用品化而不再构成竞争力,信息处理和决策才是。IT是信息的自动化,或者说是工业化时代在信息领域的延伸。一切重复的信息转换都应该被自动化,是谓信息产业。

另一个不靠谱的帖子 引用我的胡思乱想。然则我原话不是这么说的。程序员不必要是价值链上最重要或者附加价值最多的部分,但一定是价值流图上的关键路径。不过,资本家应该让程序员尽可能的把全部时间用来做编程这件事,结论是对的。

摘自某人的邮件:
余震就像打麻将,如果半天没的啥子动静,就绝对是在做大的
成都是麻将之城,现在成都麻将的最新规定是
  • 不准打512
  • 不准打血战到底
  • 不准打刮风下雨
  • 不准胡推倒胡

灾区人民无房可住,在余震中等待吃喝;
成都人民有房不住,在吃喝中等待余震。

上联:小震不用跑
下联:大震跑不了
横批:就不用跑了

重构?重写?

May 23rd, 2008

InfoQ: 争论:是否应该避免架构重写?

Joel认为在许多案例中做出需要重写软件的判断带有一定的主观性,其往往是由重用代码时遇到困难造成的。…即使旧的代码集就架构而言真的很糟糕,也应该努力清理代码、重构、修改接口,而不是进行全面的重写。

一种常见的担心是重构需要的成本不比重写来得小。第一,这是真的。基于一些真实的大规模重构得到的经验,重构遗留系统和重写需要的开发工作量基本上正好相等。不过第二,如果选择重构而不重写,可以确保原来的功能不被破坏。其实真实的担心往往并不是成本,而是效果:如果重构做到一半做不下去了再开始重写,那才是最坏的情况。所以真正解决这个问题需要切实可行的重构策略和手段,例如我在 这篇文章 里介绍的方法。

有很多这样的案例:面对着一堆遗留代码,人们说“那就既往不咎从头来过吧”。但事实证明从头设计一个优雅的架构于是软件就可以在将来的五年十年中保持良好的扩展性这样美好的愿望从来就没有实现过。因为,软件技术的发展是很快的,代码质量的腐化是很快的。良好的扩展性只有靠持续不断强力有效的质量保证才能做到。至于起点,重构还是重写,影响并不大──如果不介意重写的大风险的话。

场上核心

May 12th, 2008

昨天去打球…确实老了,要活动好一阵才能找回感觉。不过热身好以后还是足够欺负一帮本科生小弟弟的。现在打球越来越平和了,把球吊给中锋,看着他坐吃内线就好了。就算自己一球也不投进,传传球,只要自己这队能赢就行。

InfoQ: 老资格、尊重、威信和敏捷团队

两个讨论组的其他大部分成员都同意:一个人多年的经验并不一定能为他带来威信和尊重。威信和尊重来自于他的行动表现。Ajay Danait补充说 ,真正的领导者不会因为没有赋予权威而退缩,他们会通过建立共识来建立自己的威信。

其实没有威信又如何呢,如果这支队伍一直在赢?

而且不会有那么轻松的事。本科生小弟弟们慌乱的时候,我还得投进几个球─很高兴我还有体力连续投进4球。不过说实话,如果这是一种“建立威信”的行动,我宁可不要威信─一边叉腰喘着大气一边这样的想着。

无利不起早

May 6th, 2008

早说过 ,王洋同志突然那么热心的要 解读精益 ,一定是为了混口饭吃。果然吧,不幸而言中。挂个好羊头,卖的是这块 狗肉

CSDP 英文为Certified Software Development Professional,即“被认证的软件开发人员”。CSDP认证体系由IEEE-CS于2002年创建,是对全世界范围的软件工程师在知识领域、工作经验及职业道德等方面的资质认证程序。它不仅是一个对软件从业人员的专业评测体系,而且还蕴涵了软件开发与管理的诸多标准,熟悉和掌握这些软件工程国际标准对于我国软件企业走向国际市场具有重要意义。

我这个人偏偏记性比较好。IEEE-CS的SWBOK无疾而终这才几年呢?现在又改头换面来认证软件开发人员了。真是把戏人人会变各有奥妙不同啊。(刚才坐在旁边的销售总监扫了一眼我的标题说:“谁不是无利不起早呢?”嗯嗯,这话说得很对。)

新闻两则

May 6th, 2008

第一件,ThoughtWorks中国公司 被评为 2007年度最受程序员欢迎雇主

1、聪明(Smart)是第一要素:公司的HR对猎头寻访候选人的最根本要求就是Smart。ThoughtWorks是聪明人聚集的地方,即使工作经验再丰富、背景再好,如果不聪明,也不是他们所要的。聪明人在一起才会碰撞火花产生智慧。

2、平等沟通:ThoughtWorks管理扁平,每位员工都能充分发挥积极性。平等的沟通氛围是难得一求的。没有高管独立办公室就很能说明问题。

另一件是关于几个“聪明人”(嘿嘿…)去年做的事情:CruiseControl.rb的下载量达到10,000次 。Alexey说:

Once upon a time (around version 0.1) I said that building CC.rb will be worth the hassle if it ever gets over 10k downloads. Just an arbitrary big number, yes. But yay! We are there now. :)

最新的数字 是10174次下载。看见自己做的东西有人用,感觉也挺不错的。