Archive for November, 2005

webwork已死

Wednesday, November 30th, 2005

robbin: Java视线论坛 :: 阅读主题 – webwork并入struts团队了!

Web层方面我现在非常看好Struts Ti。Webwork从技术上是非常前卫的,即将发布的2.2版本提供了很不错的AJAX功能,并且易学易用,它的主要问题在于文档缺少,社区小,用户少。现在Struts Ti结合了Webwork的先进技术和Struts的庞大社区,再…

webwork 并入struts, 真的是好事吗?

从铺天盖地的评论看来,许多人对这起开源世界的合并看好,如果上市的话,说不定会吸引华尔街投资者的买入。

我不这么认为。robbin 更多从商业与社群的角度在考虑,认为技术+社区=成功。而我根本不这么认为。webwork社区不活跃是众所周知的事情,struts技术差劲也得到普遍认可。两者的合并前提是:webwork技术领先,struts社群成熟。然而,这个前提成立么?

鉴于我早早放弃了struts, 因此对其社区不熟悉,仅仅从webwork说起。webwork在早期,由于采用xwork command pattern内核,加上intercepter,成为当时设计的亮点。然而就是这些由Richard Oberg创建的东西的星光,照耀了足足N年,直到现在。各位使用webwork的同仁可以回忆一下,从webwork发展至今,它本身可曾有重大的变化?无论是从技术的领先性上,还是从对开发的支持上(如众多的tag),webwork所交出的答卷都不能让人满意。事实上,我对现在的webwork开发团队的能力充满了怀疑:Ajax出现了,这个让整个开发这世界疯狂的词,大名鼎鼎的webwork对它的态度简直让人诧异,对他的实现也是丑陋不堪:居然同时用两套独立的library来实现校验和所谓的ajax 标签。

与其说两者的结合,我情愿极端的看成,这是webwork自己的放弃。这其中也许存在不少的原因,个人能力上的,外部环境上的。但在我看来,webwork,这个象征着灵活,先进,优雅等等完全可以用一系列美好的形容词的框架,已死。用户能做出的选择将会更少,web框架之间的竞争开始重量级升级,那些小型的,美丽的框架将会由于没有商业公司或者社区的支持而死得无声无息。这个世界回归到了垄断的世界。

为什么我不公布buffalo roadmap

Friday, November 18th, 2005

江南白衣-拾豆豆 说:
恭喜恭喜,开源软件能坚持做下来的在中国不多阿
Michael – Buffalo 1.2alpha1发布 说:
是啊
江南白衣-拾豆豆 说:
下一站 Page Framework 的roadmap哪里能看到?
Michael – Buffalo 1.2alpha1发布 说:
不敢发布,怕伤害等待的人……

这是真的。毕竟国内做开源能坚持下来的,太少了。我们有很多的热情、创意与想法在一瞬间爆发,做成开源项目,在还没有来得及热起来的时候就迅速的冷却下去。scud:你今天框架了吗?描述了这样一种现状。管理课上,我学到了张瑞敏的一句话:把简单的事情做好就是不简单,把平凡的事情做好就是不平凡。显然,所有的项目刚出来的时候都是新的,随着进展,琐碎的事情越来越多,也就有越来越多的理由与借口来放弃这个项目。我看到很多的优秀的项目都不断的诞生与消亡,归根结底,我宁愿相信,这是一个态度问题,而并非技术问题。

我不知道buffalo最后会怎样,但是从目前得到的评价,基本上正面的居多:发给java.net,他们说very interesting, 并且随时欢迎加入他们的community, 然而由于不能提供svn服务,只得作罢;Shane也表示,当buffalo代码复杂度达到一定规模的时候可以帮助将项目放到codehaus。同时Buffalo论坛上也有一群热心的朋友帮助使用测试评估。这些都是莫大的鼓舞。从行业趋势来说,用户体验、Web2.0, Ajax无疑是今年最hot的词。有理由相信,buffalo能够在若干方面真正对用户与程序员都具备益处。

然而buffalo现在还很小,我很忙。buffalo现在的核心功能只是一个web远程调用并且java/javascript双向透明序列化的library, 谈不上framework. buffalo还缺少大量的文档来帮助开发者迅速起步。将来要添加的page module, component module, validation module, 等等,还有很多工作要做。然而我还要为付给我薪水的雇主工作,并且加班,甚至某些周末;每天回到家里我也会累,也会不想动。谁知道在这样一种状况下,发布一个roadmap, 然后引来若干期待,会不会最后因为承诺没有兑现而死得毫无尊严呢?Roadmap其实发布过,不过都是在小范围内:buffalo的论坛(后来被迅速的删掉),BJUG聚会的白板上,以及发给nemo的邮件。

不怕慢,只怕站,buffalo会一直走下去。

buffalo 1.2alpha1 released

Wednesday, November 16th, 2005

buffalo 1.2alpha1 发布,包含如下特性:

  • * integrate prototype
  • * refactor and rewrite whole code into prototype-like.
  • * split javascript source into 4 parts: core, call, reply, bind
  • * modify build.xml, concat the 4 parts into one js in the dist target.
  • * modify the event system, change to buffalo.events["onLoading"]…
  • * some bugfix
  • * 全部演示页面翻译为英文(以后发布版本的主要语言),多谢清风

下载地址:
http://www.amowa.net/buffalo/download/buffalo-1.2alpha1.zip

此次的发布比原来声明的时间大约晚了三周,主要原因是一直找不到支持subversion的代码仓库。跟dev.java.net邮件往来多次,最后得知无法获得svn服务,只好作罢。多亏了曹晓钢的鼎力帮忙,在生病的情况下依然帮助我搭建并调试svn. 祝愿他早日康复。现在代码放在了redsaga上。

本想将版本号定义为1.1.1alpha, 但是由于本次版本变更在javascript部分实在巨大,完全集成了prototype的基础设施,写法跟过去有了很大不同,因此更改为1.2. 在外部api调用上,最大程度的保证了跟以前遗留代码的兼容。如果发现有问题,请在buffalo论坛中提出。很多常见的问题已经在那里提出了。

之所以集成prototype, 是因为他的提供的语法级别的基础设施相当便利,并且在常见的HTML操作的处理上,提供了相当多的方便的封装,如$, $F, Form等,我相信这些便利的方法会给web开发者带来更高的工作效率。

自这个版本后,buffalo javascript部分将不再作重大更新。剩下的工作将专注于java部分的工作,包括效率,bug, 以及最主要的部分:页面框架。

建议,意见,欢迎发往buffalo 论坛http://groups.google.com/group/amowa。最后向那些久等的朋友们说一声:对不起,来迟了!

Don’t Lose Your Passion

Tuesday, November 1st, 2005

这句话写给自己,也写给我的朋友们。

前些天BJUG的maillist中,有好心人整理出了BJUG成员的Blog列表的opml. 马上有人导入。然后马上,江南白衣同志就感叹说:

“导入之后的感觉是,有太多兄弟太久没写技术blog了……….:(”

这是一个明显的信号。翻开Omea Reader, 那些熟悉的Blog很久都不再更新了。那些去年到今年初都很活跃的朋友们,现在居然都没有在更新过。比如,冰云同志,自从整理出RBAC的框架后,就再也没有写出过激动人心的文字;比如Vincent,自从扔出一颗EJB好的重磅炸弹后也变得默默无闻。是这个行业已经失去激情了,还是我们自己都失去激情了?

BJUG,这个去年五月成立的Java聚会组织,今年一岁半,刚学会走路的年龄,居然开始老去。maillist里面几个月都见不到关于技术的热烈的讨论了。这个组织正在逐渐沦落,讨论,每两周的聚会变得越来越牵强。当初的那种开源的激情,正在随着自身条件的改善,随着我们的年龄老去;我们创造了这个组织,然后利用这个组织改善了自己的生存条件,然后这个组织就像吸光了汁水的椰壳慢慢失去价值。没有人为这个领域贡献。

gigix在关于传媒的一次讨论中,非常鲜明的提出了:太阳底下没有新雪;用技术的传播换取reputation。现在的问题是:reputation有了,还剩谁在那里卖力的,没有任何目的的追求技术,传播技术呢?