一位Java业界领袖的法国式回忆录

原创 2003年06月27日 14:54:00

刘天北
Marc Fleury, Blue—"Why I Love EJBs", JBoss.org, 2002.12

这个标题更多地是玩笑。“Java业界领袖”不是指麦克尼利先生或Java规范的作者,而是对“JBoss”这个词的望文生义的翻译。所谓“法国式回忆录”,说的是JBoss的创始人和CEO Marc Fleury前些时候写的一篇自白性的随想“Blue: Why I love EJBs”。Marcf(这是Marc Fleury在JBoss源码中的署名)原籍法国,称这篇文章“法国式”,不会有大错。

对广大编程爱好者来说,似乎已经无需再过多介绍“JBoss是什么”。开放源码的,免费的,(因而)最受欢迎的应用服务器,J2EE战士们的圣地福音,Marf更喜欢听到的说法可能是“BEA killer”,不祥地暗示着JBoss在市场份额上对业界老大BEA Weblogic的致命威胁。2002年一年内,JBoss就被下载超过两百万次。这样的软件创造者,我们当然愿意听听他的想法,哪怕是思路怪诞或是语无伦次。
说到“思路怪诞、语无伦次”,可能多数程序员给常人留下的都是这个印象——想想你的女友最近对你的评论。Computer nerd几乎已经成了一个固定表达方式,用以形容这些坐在屏幕前,时而沉思冥想时而狂击键盘的狂人。可Marcf在“狂人”里也算是特殊的(哈姆雷特的准岳父和敌人Polonius会说,“疯得不同一般,颇有条理”)。在一次鼓吹开放源码的访谈中,他用了《黑客帝国》中的意象比喻自己:你可以选择吃蓝药丸还是红药丸。“专职做open source”就是那粒红的。吃了仙药,心明眼亮,看到的世界自然不同,那意思,就跟电影里Neo那种disillusioned的感觉差不多。
这段关于药丸的话已经成了不少opensourcer的座右铭。不过我们也可以读读《理想国》,苏格拉底的那一番“洞穴学说”同样精彩:常人好比是昏暗的洞穴里的奴隶,看不到外面的十方世界,只能从洞壁上模糊的影子胡乱猜测实情,但是要是有一个奴隶突然觉悟,扭过头来看到了青天白日,再回来搭救难友,告诉他们世界的真相,奴隶们多半不会感激,反而会认他疯了,或者老拳打死也不一定。换句话说,在西方的观念体系中,狂人、天才,仅隔一间;疯人的呓语,往往就是天机,反之亦然。

这回的呓语是法国味儿的。题目中的蓝色,固然暗示了刚才提到的非凡药物,更源自一套著名的法国电影(Trois Couleurs par K. Kielowski。Marcf也提到他的文章同样会有三部曲)。是的,你提醒得对,那还是他们国旗的颜色。
法国和美国,更广泛地说,老欧洲和新大陆的关系,一直是我乐意暗自玩味的一个话题。请想想英语里以“French”开头的那些词组:French kiss, French leave... 从中你可以得到一整套“法国想象”。
据说在哲学、社会学理论里,有一种从德国到法国/英国,再到美国的“理论旅行(traveling theory)” ,对于软件业来说,虽然计算机是正宗美国货,但若是缺了从莱布尼茨到冯诺伊曼的理论铺垫,缺了Bjarne Stroustup、Ivar Jacobson、Martin Fowler等人的工作和创见(谁能告诉我设计模式四人帮中欧洲人的比例?),程序员们的生活肯定会和现在不同。那么,法国人的位置呢?不要忘记,这个盛产文学、时尚用品和浪漫生活方式的国家目前正把开源J2EE领域作为一块最新的殖民地。JBoss和(半政府投资的)ObjectWeb已经成为点亮J2EE发烧友们双眼(和心灵)的著名品牌。
但法国人就是法国人。他们的狂热、“会玩儿”与他们对简洁、逻辑的钟爱一样出名。很难想象美国政府会有心思资助一个开源项目,同样很难想象BillG或是LarryE能写出Marcf这样的文章。略作铺垫、给“Why I love EJBs”破题之后,这位名副其实的JBoss就通过一连串的“I remember”,沉入了繁复、诡谲的往事:他的理论物理专业(似乎是在MIT作访问学者时拿的博士),他最早在Sun的工作,他在BEA面试职位时说的那句广为传诵的话(文中甚至暗示,这句话影响了BEA收购Weblogic),他怎样与Rickard Oberg(另一位天才,JBoss2和以前版本的设计者)相遇,怎样收到BEA的拒绝,BEA又怎样力邀Oberg加盟,他怎样创立了这个开源项目,JBoss的名称怎样从EJBoss变成现在这样(他这次没有因此责怪Sun)... 都是非常好玩儿的话题。熟悉软件业的朋友,不一定要懂编程,都会发现这是一份好读物。我个人则从中看到了罗布-格里耶(Alain Robbe-Grillet)晚期那些传奇风格的回忆录,特别是《重现的镜子》(Le Mirror Qui Revient)的影响——甚至那句“我回想起...”的语气都一模一样。读到这些“业界”的往事和时事,我不由得像Marcf本人一样,觉得这些都值得手握一杯好酒仔细揣摩,直至头脑进入一种递归循环般的恍惚(“...my brain goes in recursive loops at this point, I find it spooky, something to ponder over a good glass of wine. ”)

但无论如何,不该把它仅仅当成文学读物——说正经的,这首先是一份技术白皮书,一声宣战和招募友军的号角,一次商业宣传。文中的很多论断,在技术上更为有趣,更值得细细品味,不少行家都说这是最近读到的最好的EJB文章。从标题而言,Marcf的主旨是辩护性的:在大多数人抱怨EJB的陡峭的学习曲线和简陋的开发模式的时候,在不少人都转而拥抱轻量级的POJO和JDO的时候,在一些人预言EJB技术将于2003年底消亡,EJB是另一个CORBA的时候,解释“Why I love EJBs”是困难的,并需要挑衅性的勇气。凭借以往的了解,我认为Marcf不缺乏这个。这个法国人有央视体育解说员常说的“高卢雄鸡”(后面经常跟着的是“日耳曼战车”和“亚平宁什么什么”)的好战气质。挑衅是他的专长。比如这次,为了争辩EJB自身不一定性能低下,他举出了若干自己心目中的“性能杀手(performance killer,注意他们对killer这个词的爱好)”,杀手家族中罪孽最深的就是当今最流行的SOAP/Web Services(“In that family, the worst of all is possibly SOAP, the Web Services”)。为了避免刺伤,我就不往下列了,你可以自己去看看,被他判决的还有哪些是你的最爱。
接下去的段落中,Marcf谈到了应用服务器设计的最优实践和EJB开发的最优实践(你能区别这两者,对吧?)对于服务器设计,读之前我就能想到他要说什么:Dynamic Proxies/AOP/Interceptors/JMX。这些JBoss特色确实能给人深刻的印象,同时也逐渐被其他主流厂商所采用。对于EJB开发,他谈得最多的是高速缓存(caching)和避免串行化,好的实践包括将Web Container和EJB Container并置(collocation)、尽量使用具备cache的CMP2而不是BMP等等(我们听见了Monsieur JBoss的一句法国情话“CMP20 persistence, mon amour”)。当然,Marcf也没有忘记攻击J2EE规范(specifications)的作者们(“Real tech not spec" is our new war cry.)。其他的警句包括“缓存为王(cache is king)”、“EJB天生就要缓存(EJB's are natural caches)”、“谁掌握了带事务处理的Web应用谁就拥有了Web(He who owns the transactional Web owns the Web)”等。所有这些都是用不容置疑的语调给出的。如果这些碰巧也是你自己的实践方式——就像我的情况——你会感到妙不可言。但是,我也能设想EJB和JBoss的敌人那种被激怒和沮丧的感受。
 
在技术方面最出乎我意料的是Marcf对JBoss4勾画的蓝图。原本是J2EE独有的很多功能和服务,比如数据持久性、事务等等,都能被普通Java对象享用。为实现这个目的,它将提供一整套AOP的开发框架。换言之,JBoss 4将大大超越J2EE,达到一个全新的开发模式,当然原有的J2EE,JMX/EJB/component的模式还将被继续支持。无怪乎Marcf大力推行AOP(注意,JBoss自己的AOP框架与AspectJ完全不同,区别在于运行时实现还是编译时实现),甚至大有把它当成“银弹”之意。是否,像前一次对J2EE的预见一样,Marcf又在呓语中泄露了天机呢?是否我们都应该check out JBoss AOP模块的源码一读究竟呢?从Marcf对EJB本身的认识来看,我个人觉得其中洞见与盲目紧密地纠缠在一起。也许红药丸的服用者都倾向极端?也许其极端既是优势,又是代价?我回想起(对,这次是我本人的回想)Paul de Man的《盲目与洞见(Blindness and Insight)》,也许正如de Man所说,天才的盲目与洞见总是不可分割的,二者事实上是一回事。
即使相信Marcf的预言,我预料大多数开发者也不一定需要如此紧跟超前的技术。有个血淋淋的词儿叫bleeding edge,形容的就是这些与一般的前沿cutting edge相对的、刚刚萌芽、极不稳定的技术领域。风险是明显的:如果你搭对了车,你在灯下为了掌握这些不成熟的技术渡过的那些不眠之夜,你在应付一个又一个beta版的戏剧性差异时的头痛就会终获回报,但谁能说得准呢?软件业的这些趋势,除了技术方面之外,“商业”因素似乎更重要。Marcf选择了Open Source和J2EE固然是他成功的基石(他——拿着那杯用于沉思的酒——说,要是当时BEA雇了他,可能Weblogic用的就是现在的JBoss的代码了),但是从传统的“商业头脑”角度考虑,他的种种言行倒不见得一定合格(据说JBoss曾在Java ONE大会上卖过T恤衫)。不过最近见到他的同行都认为他的商业素质渐趋完善——这对J2EE这个行业来说显属幸事。JBoss的logo是“May the source be with you——愿源码与你同在”,在此我也愿意祝“好运与JBoss同在”。

最后说点儿题外话——当然,你也可以把整篇文章都当作编程领域之外的话。Marcf的文章去年12月初就出现在了JBoss网站上,但由于前两个月工作繁忙,直到昨天才看到该文——甚至首先是通过中译。这个中译,怎么讲呢,只能说是一个大意介绍:所有的句子都在那儿,但是微妙的、细节上的东西很多(我甚至想说,尽可能地)都错了。Persistence是持久性,不是“一致性”。Local interface是本地接口,不是“端口”。Interceptor是拦截器,不是“解释器”。Web Collocation是指Web Container(比如Tomcat/Jetty)和EJB Container(比如JBoss)放在一起,在同一个虚拟机中运行,而不是“Web程序的协作”。术语上的错误还在其次,很多句子的意思都没有领会出来。
 我没有苛责译者的意思。只想说我的一点感慨:我们究竟为什么翻译?读者和译者又到底能从翻译中获得多少?像这篇中译,我也是听了不少人的赞许才去读的,那么赞许者是否就已经满足于这样一种“粗线条”的理解了呢?无论如何,我偏爱原文中那些细节胜过“速读”式的含混翻译。举最后一个例子:译文的最后一句话是:“你们也将能超越的任何巨大障碍,不只是我,每个人都能。”意思上似乎没问题。但原文却是“...soon, you will all be walking through walls, not just me, everyone.”。请体会这里的魔术隐喻:walking through walls,而不是“超越、任何、巨大的、障碍”。我也很难说出这句究竟怎么翻译合适,但就是因为这些肤浅的、有时别扭的、看上去没有积极意义的细节,我永远站在原文一边。

我的大学回忆录

我是今年刚从学校毕业的一名软件工程专业的学生,过去的美好时光一直在眼前浮现,我感觉自己的大学生活很美好,生活上有好室友好同学,在以后的规划上又有一位好的人生导师,虽然现在他们在全国各地,有可能这辈子再...
  • lanuage
  • lanuage
  • 2016年10月23日 01:03
  • 797

《李宗仁回忆录》完整版在线及电子书下载

原文地址:http://www.hilishi.com/post/1510/ 《李宗仁回忆录》广西师大版封面 PS:该书完整版word文档下载地址http://pan.baidu.co...
  • fowse
  • fowse
  • 2012年06月28日 15:14
  • 15138

以运营事故处理为切入点,浅谈意见领袖运营

--代言人and意见领袖 注:之前写以阴阳师为引子写的,应该也适用在RO上面。 最近,网易的卡牌游戏《阴阳师》异常火爆,在这个mmo、moba游戏盛行的时代,这已经可以称得上是业内奇迹了,...
  • just_do_it2009
  • just_do_it2009
  • 2017年03月16日 15:08
  • 245

《艺妓回忆录》附百度云盘链接

Every step I have taken, since I was that child on the bridge,has been to bring myself closer to you...
  • apple_wheat
  • apple_wheat
  • 2017年03月29日 16:43
  • 13453

回忆录:30岁那年,你成长了吗?(上篇)

前言:距离上一篇文章,又八九个月过去了,随着在园子露脸的次数越来越少,正如我淡忘上一波大神那样,我也正被下一波所淡忘。 本来是想写一篇纯技术文章,后来忽然觉的周末,就写一篇总结领悟文了。很多人写总结,...
  • cyq1162
  • cyq1162
  • 2016年11月23日 12:17
  • 307

(我决定发N个在线播放的电影出来,当然是免费以稳定,速度又快的)□ 影片名:《艺妓回忆录-新片》(3099)

□ 影片名:《艺妓回忆录-新片》(3099) 在线播放注意 1,2,3,4,5均为ftp下载 6,7,8,9,10为在线观看  影片《艺妓回忆录》根据美国作家阿瑟-高顿的同名小说改编。故事以第一人称展...
  • metababy
  • metababy
  • 2006年01月11日 13:49
  • 1022

《编程回忆录》之 Unity3D 视频教程

第一讲 Unity3D来袭 http://www.tudou.com/programs/view/Yio90imcs9g/ 第二讲 从布局起步 http://www.tudou.com/prog...
  • kepoon
  • kepoon
  • 2013年03月15日 08:58
  • 7031

回忆录-----小学 一年级

一年的幼儿园时光匆匆过去,转眼我就背着一个大大的书包进入了小学时代。。。。我的母校叫--------灵江镇小学校大部分被一个湖绕着的,里面有很多树很多草,还有很多小石头。很不幸,小学一年级的时候,我智...
  • flyxiaoye
  • flyxiaoye
  • 2007年11月23日 13:05
  • 197

看伟大的领袖如何激励行动有感

中午翻看TED网站的时候,发现一个排行——最受欢迎的TED视频。在里面看到(How great leaders inspire action),于是便点进去。这个视频本科的时候就看过,那时图样图森破,...
  • Earl211
  • Earl211
  • 2016年05月26日 12:52
  • 850

2008.05.25 读华为前执行副总裁李玉琢的《我与商业领袖的合作与冲突》有感(一)

  读华为前执行副总裁李玉琢的《我与商业领袖的合作与冲突》有感(一)       -------关于四通的衰败 ­     四通,曾经作为中国改革开放以来民营企业最早的一面旗帜,在当时是全国最有名的民...
  • dadunan
  • dadunan
  • 2008年05月25日 13:13
  • 1633
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:一位Java业界领袖的法国式回忆录
举报原因:
原因补充:

(最多只允许输入30个字)