Ling Zhang Ling Zhang's Blog

JavaFX的愿景

JavaFX,最简单的理解(本人理解)就是用脚本语言开发swing应用,部署在网络上,通过JNLP加载,最后用客户计算机上的Consumer JRE运行该应用(或者是在移动设备上的JavaFX Mobile)。当然用JavaFX开发普通桌面应用也可以。

用脚本语言写UI早已不是新东西了,不过JavaFX的.fx文件到字节码的编译器似乎是给进阶人士的选配(除了可以脱离JavaFX runtime外,没有想到其他的value add)。在不使用JavaFX编译器的情况下,.fx文件在运行时被加载、解释、执行。

如果JavaFX利用网络发布的话,我希望有这样一个功能,即用户通过HTTP访问一个.fx文件,可以在服务器端生成一个可以执行的应用(applet, JNLP包裹的jar file, etc)并立即在客户端显示出来。这个功能在Openlaszlo里面有很好的实现,它可以在server端动态的编译.lzx文件并生成一个Flash文件(.swf格式),并且此flash可以离线播放。这个转变实际是以用户界面为中心的设计:窗体,而不是main class,将作为交互式应用程序的入口点。

把用户搞的很累的Java applet在浏览器兼容性、安全设置、签名、证书等问题上阻止了applet被广泛的采纳成为Web交互应用的标准。JavaFX能否打赢这个翻身仗,似乎不在JavaFX script language,而是那个consumer JRE。

</p>

Read more

工作餐

自打5月份正式成为“张江男”后,工作午餐比以前在城里的时候变化了很多。在瑞安上班,每天12点出来在淮海路觅食,基本就是巴士、醉美、大旺、干锅居、黑土地、2001、真功夫。。。一顿饭连吃带走路,差不多要一个小时。

在887号,午餐问题变得很简单:一共三个园区食堂,6、8、10块三种组合,一般11点半吃饭(12点后,有两个食堂基本上以及没什么菜了),20分钟后可以回到办公室。加班的同事,也可以很方便的吃到晚餐,不过要在6点前去食堂。

另外,887号还提供早餐,8点开门,9点半前基本还能吃到,有包子、馒头、花卷、鸡蛋、烧卖、稀饭和豆浆等,价格很便宜。我现在每天都在公司吃早餐,质量比在黄陂南路地铁黛玲特买羊角包改善了很多。

隆重一点,可以去张江地铁。开车的话可以凭在地铁商圈内的消费凭证免费停车(肯德基只能1个小时内有效,其他店3个小时)。

</p>

Read more

Redbooks: WebSphere Application Server V6.1: Classloader Problem Determination

这本昨天发布的红皮书在我最近的阅读列表中。Container环境下的classloading是无数诡异问题的根源。以Lotus Connections 1.0.1来说,我们用了icu4j来提供一个时区列表,icu4j本身自带了这些列表的翻译,比JRE自带的要全。但在测试的时候发现WAS 6.1.0.3下的时区列表繁体中文的显示有问题,混入了大量简体中文字符。其原因在于WAS自带了一份icu4j并且早于webapp下的lib被container加载,而这份icu4j自带的时区翻译存在问题。

对于长期从事WAS应用开发的IT工作者,这是本必读书。

Read more

标准的标准

有一段时间没“博“了,Lotus Connections 1.0.1正在冲刺阶段,所有精力都扑在上面了。不是因为看了新浪这篇文章,今天估计也不会”博"。

作为一个外企职工谈中国的标准化问题是个风险很大的事儿,这里仅谈个人观点。

稍微列举一些这两年的热门标准,数数这些高科技领域内的标准,无一不是吵得唾星四溅,火药十足:WiFi, RFID, 高清电视, XML文档, 3G, 手机充电器, 服务器, EVD...在这些新兴领域内拥有话语权无论对于企业还是国家都意义重大。然而凡是标准,就不能很多,一个领域内2-3个互相可以兼容的就差不多了(搞网页开发测试IE/Mozilla兼容性的苦孩子们请排队握手...)。企业或者国家搞自己的标准没有问题,在保证技术先进性的前提下,就是是解决保护现有投资和平衡各方利益的问题。

打个比方,比如美国乒乓球联合会提出修改国际乒联标准,增大台面、 球的直径、换胶皮等等要求,中国乒联的态度会是什么?很显然,一个对于现代乒乓球运动没有做出重大贡献的国家,试图利用另立标准改变自己的地位,对于大多数在这一领域做出过卓越贡献、投入大量人力物力的各方是不公正,也是不能接受的。其实标准的本质和专利制度一样,它们都有可能成为垄断的工具并阻碍社会进步,但大部分情况下是它们却可以刺激科研创新、激发生产力,是积极的。

要想在这些领域拥有强大的话语权,我认为最重要的还是踏踏实实的为标准的发展和进步做出自己的贡献,当一本1000页的标准草案提出来的时候,里面200页有我们的贡献,这个时候谈什么都不过分。

在一个没有人愿意埋头做事的年代,为了生存,大家都熟练掌握了抢蛋糕的本领,希望咱们在抹嘴的时候,能多想想那些腆着肚子活面、打蛋的大师傅们。

</p>

Read more

projectzero.org

projectzero.org是IBM在Radical Simplification驱动下最重要的一个项目,旨在提供一个简化、高效的运行时和Web开发框架。在过去的一、两年中一直处于内部开发状态,近日对外开放给公众。

曾经看过北京CDL开发的mashup zero的一个demo,使用Web IDE构建mashup  widget并生成XML fragment供runtime对多个数据源进行获取和内容整合。

</p>

Read more

Lotus Connections 1.0 eGA

注:今天(7/03)才发现此帖被置为private,现在更正为public。

今天IBM第一款企业社会软件包,Lotus Connections 1.0正式发布。Lotus Connections集成了企业员工名录、社区、博客、社会书签和活动管理,是IBM迈进social computing领域的第一个正式产品。

安装Lotus Connections需要WebSphere Application Server 6.1, DB2 9.2或者Oralce数据库,LDAP服务器和Tivoli Directory Integrator。

在过去的100天,我个人在Connections开发工作中的最直接的成果是修复了博客模块里的74个bug。

Lotus Connections 1.0.1目前正在开发中,主要是加入了多语言支持,包括英文、德文、法文、意大利文、西班牙文、葡萄牙文、简体中文、繁体中文、日文、韩文。

</p> </p>

Read more

关系

Greater IBM是IBM最新发布的(由xing.com提供服务),供现任IBM职员、已离职员工、退休员工、实习生等建立关系网的场所。关系是个好东西,尤其当我们需要的时候。

再过一天,Lotus Connections 1.0就要正式发布了,最近一周出台的Greater IBM和Web 2.0 Goes to Work为Lotus Connections的发布做足了铺垫。

</p>

Read more

Cross-compiling .NET to Java

Mainsoft,如果我没记错,就是几年前Windows源代码泄露事件的主角。它在6月份发表了叫做Mainsoft for J2EE 2.0的产品,该产品主要功能是支持用户使用.NET语言和工具进行开发,然后通过cross compiling技术把应用最终部署到IBM WebSphere平台之上。之前虽有MS已经提供了Java语言转换到C#的辅助工具,在正式的应用开发中把.NET平台进行整体的J2EE迁移,似乎还不多见。这件事的意义显然比Google Web Toolkit把用Java开发ajax的代码compile成JavaScript的意义更为重大,毕竟中间件是个利润丰厚的市场。

除报价$5000美元企业版外,Mainsoft还提供免费的developer edition供下载试用。

详细分析文章见6月份SDTimes

Read more

部落格

下午在对Blogs新收到的语言包进行压缩、编码转换并用CHKPII工具检测后(PII是IBM专用词汇,即Program Integration Information的缩写,意指需要和程序一起build的语言资源,不包括帮助文件等),放到local build里跑了一圈,验证一下Group 1里面9种语言的显示界面。在切换到繁体中文的时候,看到了“部落格”。

这是台湾对“blog”的翻译,挺生动,让我联想到了“四四格”。

从上面的截图看,Blogs多语言的支持除了语言包外,还有不少细节需要处理,如上面那个“18 5月”的格式化问题。

Read more