Category Archives: 科技评论

Google App Engine开放了

  好消息是,登录Google App Engine后,终于不再显示请等待审批的提示。开通帐号需要手机短信确认。

  坏消息是,兴冲冲建立第一个应用时,发现joyfire、我自己的姓名、pBuild和pLabel这些标识都已被抢了,我只抢回了pFind。哇啦哇啦。

  说到这个,感觉第二次网络创业热潮开始降温了。之前一两年,总有域名中介联系我,希望购买lehuo.comlehuo.net系列,单域名价格最高谈到三万。但是从今年春节以后,我就没有再接到这种电话了。看样子机会真来了,追求财务自由的虫子们,准备逢低吸纳

Google App Engine视频

  Google App Engine不顾俺三番五次申请,就是不给试用帐号。郁闷呀。

  这里有一段视频,演示了简单的Google App Engine开发步骤。尤其是用GQL调用传说中的MapReduce海量分布式存储,看得俺直掉口水。趋势不可逆转,很快多数软件都会以ASP(Application Service Provider)方式提供服务。我很想知道微软首席架构师Ray Ozzie看到这东西是什么感觉。

  按一般观点,类似俺们pFind这种计算密集型应用,核心模块必须使用C/C++ API,否则慢得难以忍受。然而,一旦基础架构的分布式规模达到Google所谓的“云计算”这种级别,就算有几十万张谱,也可以充分地分而治之,被分解到巨大的PC Farm里,让集群节点一对一PK,甚至进一步按蛋白数据库再细分任务。这种情况下,即使单个节点的线性效率稍差,也可以接受,可能用Python就够了(对比:按我们现在的经验,没经过精心优化的Matlab代码鉴定一张质谱大约5分钟,当然可以进一步采用各种优化加速手段,例如psyco)。到时候,最主要的速度限制也许就来自网络带宽,上传多少即时鉴定多少。

  未来某天的软件创业故事:逃课的小孩在大学宿舍里编写了一款网路游戏(比如,也许是跑在iPhone或Android上的多人联机MMORPG),上传到Google App Engine,再到常去的论坛发个帖子,邀请大家来试玩,结果这个游戏一炮而红,Google和中国电信作为基础服务提供商,对利润进行分成。这个故事不会很快变成现实,但是也不会很慢,技术演化总是被低估。

出色的软件工程师什么样?

  最近一期《程序员》开头有篇关于招聘的经验,第一条要求就是“对技术细节有激情”,赞同。其实也是老生常谈了。记得还看过一篇国外文章,提到很多网络创业失败的原因在于,发起者是不了解网络和软件技术的商人,没有接触过优秀的职业软件工程师,甚至根本不知道出色的程序员和架构师应该是什么样。他们仅仅想找人把自己的idea实现出来,这就注定招到的人没有判断和反馈能力。Google的招聘邮件说,“技术天才是喜欢扎堆的物种,别让哪怕一个二流货色混进你的团队”。

  类似的事,我们身边每天都在重复上演。作为老牌“人贩子”,我从大学二年级开始参与各种推荐、面试和考核。总见到招聘者出于各种原因(比如资金、关系、性格、印象、说辞)选择了不合适的人,给未来挖下大坑。

  《程序员》还有一篇MMORPG架构师的文章,里面提到“赞成某位同行的单线程多进程思路”,一看就知道说的是云风。文章提到“分布式对象系统VS自定义协议”的选择问题,不过他坚持认为,分布式对象系统是更好的选择,专门提到了ice。也许他参加了SDChina2.0,搞不好,我问云风为什么不考虑ice时,他也在场。

  一直感觉我和云风很像:年龄、经历、爱好和技术观点。云风刚发了一系列回忆职业生涯的BLOG,看了以后这种“相像感”更强了(这个,往牛人身上硬扯,实在有点傻)。“没有哪个程序员的代码一开始就能写的成熟稳健,我们都经过幼稚的年代”。选择太多,很多人无法坚持工程技术的积累,过早改变了职业生涯的方向。狐狸和刺猬最终谁会赢?

An Inconvenient Truth值得推荐

  一直听说那部获得奥斯卡最佳纪录片奖的An Inconvenient Truth很不错。据说戈尔实际上就是凭借这部片子获得诺贝尔和平奖的。今晚回家,发现中央电视台在播放这部片子,看过以后,果然很受震动。郑重推荐。这里是第一部分,我认为片子的开头和结尾是最出色的地方。

  BTW:有意思的是,刚刚发现老白也在他的BLOG上提到了这部纪录片,他也是昨晚从中央台的数字频道看到的。

昵称征集

  今天在家又养了一天病。正事不能干,躺在那里就想些无关紧要的点子。比如给新版本的pFind2.1各个模块起名字。

  不少科研团队都喜欢给产品和工作设备起昵称。微软Windows各版本的昵称都是加拿大滑雪胜地附近的景物;豆瓣用《指环王》里的角色命名服务器;我到过的一个生物学实验室里,每一台显微镜都用诺贝尔奖得主的名字来命名。

  pFind2.0时代,我就想用NEO来命名蛋白鉴定引擎。但是,当时刚好在反向工程分析Mascot(pFind的头号竞争对手),脚本代码的注释里有不少程序员相互的玩笑和批注,发现他们居然已经抢走了这个好名字。我猜对方的研发人员里一定有不少MATRIX迷,这下知道他们为什么给自己的公司起这种名字了

  又考虑GATTACA。这部科幻电影对生命科学家的影响,就像MATRIX给程序员的震撼一样。主题上符合俺们pFind的生物信息功能。GATTACA这个名字是一种暗喻:它同时就是一段DNA碱基序列片段(人类基因组计划完成以后,网上也有好事者在人的基因库里做过blast)。

  也想过用Made in China的东西。比如传统神话里的“孙悟空”就很酷,或者到中国科幻作家的作品里寻找灵感,例如刘慈欣的“三体”。不过已经有互联网公司用“孙悟空”来命名自己的搜索引擎了;后者又显得不吉利:不可解的十八阶积分方程,不可预测的动态体系,感觉好像BUG总也调不完一样。

  除肽鉴定引擎以外,pFind系统的其他模块都等着起名字。按以前的想法,它们也都是MATRIX里的角色:数据索引模块命名为“ORACLE”(那个先知老太太,她实际是一个拥有高级权限的内核进程,负责索引和检测MATRIX系统里的异常变量,协助系统升级);日志和异常抛出处理部分叫 “SUBWAY STATION“(NEO昏迷后,throw exception的地方,里头是个死循环,等待系统catch);授权和注册码部分叫“MR KEY”(中国匠人,其实就是盗版软件里常见的注册码生成器);肽到蛋白归并模块叫“ZION”(清醒人类的总部,所有飞船的基地,虽然,最后NEO发现,所谓真实世界,只不过是另一层Virtual machine,又一个MATRIX)……一旦引擎的昵称换了,它周围的模块都要跟着重命名。例如鉴定引擎叫孙悟空,其他模块就应该叫八戒、沙僧、白骨精什么的。

  征求意见中,欢迎贡献灵感。大伙儿也可以秀一秀自己系统的昵称。

  BTW:欧美科幻小说与理工研发领域的联系源远流长。科学家和工程师们都很喜欢借用科幻小说里的人和物。比如美军第一艘核动力潜水艇,就用凡尔纳小说《海底两万里》里的海底机器来命名。美国冷战高潮时期的太空军备竞赛计划,借用了电影《星球大战》的名字。反过来,小说家和电影人对科学的理解也非常到位。比如斯皮尔伯格的《AI》中,对人工智能、感情和灵魂的探讨。反观国内,影视编导往往把科学表达成了现代巫术,长生不老药和阿拉丁神灯的新版本。

Mondrian视频

  Google Tech Talks上的好东西很多。

  TopLanguage上有人推荐B.S.的C++0x Initialization Lists视频,本打算上来写点观后感的。可又被Python的东西吸引过去,最终还是强烈推荐Guido Van Rossum的这个讲座,这是他被Google挖去后负责的项目。

 

  此外还要推荐这段BayPIGgies: Developing A Product In Python

  BTW:一个冷笑话,“UC Berkeley的工程师管Stanford的工程师叫什么?”,正确的答案是:“老板”

程序员日快乐,哈哈

  云风在BLOG上说了一个冷笑话,好寒啊,果然deepcold

  说点严肃的。云风提到的ENIAC,《程序员》杂志上专门澄清过,它不是第一台电子计算机:美国法院对于计算机发明权的归属展开了多年法庭调查,在1973年作出最终宣判:第一台电子计算机是由依阿华州立大学的物理学家约翰·文森特·阿坦那索夫于1939年发明的ABC,而不是ENIAC,后者对ABC有明显的抄袭。ENIAC的发明人虽然因抢注专利获得了暴利,但此前由所谓“计算机之父”而得来的各种荣誉大多被陆续取消。

Tango Tina文档翻译完了

  Tina文档的翻译完成了初稿,Tango的网站管理员刚刚在文档类表wiki上添加了这篇BLOG的链接。当然这还只是粗坯,不少地方需要进一步修饰甚至推倒重来。

  尽量保证每晚都抽出一小段时间,先校对前一天的内容,再翻译下一段,蚂蚁搬家。不算太长的文档,总共用了两个月,比原计划久一些。到底是第一次,年底这段时间工作压力也比较大,又碰到骨折受伤出差私事影响情绪,效率和质量都不算完美。不管怎样,能坚持下来挺有成就感。

  人家问我是否继续翻译手册的其他各章。我打算先休息一段,至少等到骨折完全恢复再说。还会继续踅摸D语言,希望与有兴趣的朋友互相交流,大家也可以分工合作进行翻译。

  BTW1:石膏已经拆了,经过这几天,机能基本恢复了,不用担心变成周总理那样,偶尔还会疼,腰椎扭伤也需要休养。谢谢大家的关心。

  BTW2:好吧俺承认,胳膊的确是滑单板摔断的:南山今年开了一条很长很好玩的新雪道,也许是傍晚周围的景色比较容易分散精力,呵呵。估计老板也猜出来了,没点破。话说回来了,我也没误事,吊着石膏就去出差了,差点让大雪留在上海过年。

2007年图灵奖颁发给Edmund M. Clarke,Allen Emerson和Joseph Sifakis

  ACM官方网站上刚刚发布了如下消息

  ACM, the Association for Computing Machinery, has named Edmund M. Clarke, E. Allen Emerson, and Joseph Sifakis the winners of the 2007 A.M. Turing Award, widely considered the most prestigious award in computing, for their original and continuing research in a quality assurance process known as Model Checking

  关于Model Checking的背景知识可以参考wikipedia。另外CSDN有牛人推荐这篇介绍。还有g9老大的博客