Something About UI

今天整理了一下关于UI Design的一些资料。看到Scott Ambler的箴言:

For most people, the user interface is the software.

还有Isys Information Architects的一篇“Interface Design and Usability Engineering”中说的:

  • Software must assist the user perform a task, not become a task in itself
  • Software must not make the user feel stupid
  • Software must not make the computer appear to be stupid

很有道理。

这个网站还有著名的“Interface Hall of Fame”和“Interface Hall of Shame”,是一些让人捧腹的好玩dd。

News Link, October 28th

Mozilla Releases Firefox 1.0 RC1

This could very well be the last official release of Firefox before the big 1.0 launch date on November 9th.

Yeh! November 9th, the F-day!!【UPDATED:这个版本还是不要用的好,有反映中文支持有问题,而且插件又改了,好几个很重要的插件挂了。】

— from Slashdot

Best Software Essays of 2004
有些有意思的小品。

Pure CSS Scrollable Table with Fixed Header
CSS rocks!!

Cascading Style Cheatsheet
又一个CSS的好东东。

— from del.icio.us

News Link, October 25th

Greatest Equations Ever
讨论了一组简洁漂亮的公式,包括著名的欧拉恒等式(e + 1 = 0),也有E = mc2,还有 1 + 1 = 2 等等。

Legal Music Sharing Returns To MIT
对音乐共享的尝试似乎没完没了。。。

Firefox – The Platform
FF强大优雅的架构使得它有很高的潜力,成为一种Web应用的客户端平台。

Beware ‘Fedora-Redhat’ Fake Security Alert
有人利用fedora-redhat.com的域名冒充RedHat分发木马程序,嘿嘿,这个域名居然不是RedHat官方的,难怪有人上当的。

— from Slashdot

Robs Blog: Gmail Tools & Plugins
又一个Gmail大全。

How to be a Programmer
一篇很长但是还算易读的文章,如果有人翻译,大概会按惯例叫做“手把手教你做程序员” -_-bbb

— from del.icio.us

News Link, October 19th

There are 2 news about browser on /., maybe the new War of Browser will come soon…

Firefox Seeks Full Page Ad in New York Times
这说明两件事:第一、FF就要出1.0了;第二、Mozilla社区还在惦记着IE(真的或者假的)。

IE Shines On Broken Code
Aha, who says that /. is always against M$?

— from Slashdot

5 Rules of Data Normalization

  1. Eliminate Repeating Groups – Make a separate table for each set ofrelated attributes, and give each table a primary key.
  2. Eliminate Redundant Data – If an attribute depends on only part of amulti-valued key, remove it to a separate table.
  3. Eliminate Columns Not Dependent On Key – If attributes do notcontribute to a description of the key, remove them to a separate table.
  4. Isolate Independent Multiple Relationships – No table may containtwo or more 1:n or n:m relationships that are not directly related.
  5. Isolate Semantically Related Multiple Relationships – There may bepractical constrains on information that justify separating logically related many-to-manyrelationships.
  6. Optimal Normal Form – a model limited to only simple (elemental)facts, as expressed in ORM.
  7. Domain-Key Normal Form – a model free from all modification anomalies.

IP Address Locator
Bingo, I don’t like to install a yucky tool just to find the IP address location – that’s it!

Bending the Matrix
A good design for web page navigation bar.

— from del.icio.us

A Tao of RE Translation

有那么多人不会用(甚至不知道)正则表达式,真是可惜啊!周末花了2个多钟头翻了这篇文章,作为入门还是很不错的。

正则表达式之道(A Tao of Regular Expressions)

有错慢慢改。

News Link, October 15th

IE Holes Not Microsoft’s Fault, Says Bill

Posted by timothy on Friday October 15, @02:09AM
from the born-into-a-state-of-sin dept.
thparker writes “As part of the Media Center release discussed previously, Bill Gates had an interview with USA Today. Best quote: ‘Q: Speaking of security, Internet Explorer has had well-publicized holes… Gates: Understand those are cases where you are downloading third-party software.’ Well now we know — these problems have all been our own fault.” Any counterexamples?

If Windows Came to PPC, Would You Switch?
之前有人问过“If Mac OS X Came to x86, Would You Switch?

— from Slashdot

Deprecate javac in favour of the Java 5 “apt” tool?
Bruce Chapman在java.net的论坛上讨论了javac的未来,随着JDK 5中携带的具备强大的扩展能力的apt工具,也许javac以后不会被直接使用了(虽然apt仍然要运行javac代码)。

5.0 has a new tool “apt” which is a better javac. It allows us (mere mortals) to run our own code inside the compiler which can …
* examine the source being compiled (via mirror API – similar to reflection or javadoc API)
* generate other code (sourcecode which will then be compiled, as well as bytecode if you have the inclination),
* and generate compiler errors if we detect something out of spec.

Sun releases HAT: The Java Heap Analysis Tool
HAT是Sun新发布的Java堆分析工具。

— from TheServerSide.com

Google Desktop Search Download
Another desktop tool from Google(after Picasa & Gmail Notifier).

A Tao of Regular Expressions
A good article for regular expression. I’m about to translate it to Chinese – if possible.[UPDATED: DONE]

— from del.icio.us

News Link, October 6th

Don’t Be Afraid to Drop the SOAP
这个讨论很久以前就出现过了,真的是“Don’t Be Afraid to Drop the SOAP”?

Laszlo Platform Goes Open Source
Laszlo,一个RIA平台,最近开始转向open source模式,把盈利方向定在服务、支持等方面。

— from TheServerSide.com

viksoe.dk – GMail Drive shell extension
More, more… Gmail is the source of innovation…

— from del.icio.us

Seven habits of effective text editing

Vim: Seven Habits of Effective Text Editing
by Bram Moolenaar

(local link)

News Link, September 23th

Craig McClanahan comments on Struts Future, and Struts 1.2.4
Struts作为最早取得巨大影响的MVC框架,现在已经开始规划它的下一代,这是在JSF发布之后的背景下,所以显得格外引人注目。Struts的Craig McClanahan最近有一份comment谈到Struts的未来——包括即将发布的1.3和未来的2.0。另外目前最新的1.2.4也已正式发布(download | release-notes)。

JAOO 2004 AOP Coverage
AspectWerkzAlex Vasseur在自己的blog上为JAOO2004写的介绍,主要集中在AOP领域。

JSF-Spring integration library released
JSF-Spring发布了支持最新的Spring 1.1和JSF 1.1的版本(2.6)。

— from TheServerSide.com

Microsoft To Provide IE Patches for Windows XP Only

Microsoft has decided that future IE updates, including those related to security, will only be available to customers using Windows XP. This news.com article has the complete scoop. A choice quote: ‘Microsoft may be turning the lemons of its browser’s security reputation into the lemonade of a powerful upgrade selling point.’ This should provide a huge boost to Mozilla and other alternative browser backers.

— from Slashdot

PerformaSure Evaluation

APM(Application Performance Management)恐怕是现在最热门的产品之一,上午请了Veritas的人来介绍他们新买下的i3产品,中午找了点时间试了一下之前拿到的PerformaSure产品,初步试用情况简介如下。。。

(more…)

News Link, August 20th

An Introduction to IKVM: Java on .NET
IKVM是运行于.NET CLR平台上的Java虚拟机。(我觉得好像能够运行在Java上的.NET虚拟机大概会更有用些!)

Application Performance Management Review
APM是一个应用性能管理框架。JDBInsight的架构师在下面贴了一堆关于数据库尤其是JDBC性能方面的资源链接–事实上数据库访问的性能和应用代码的性能是J2EE应用中最常出现的两种性能问题。

Serializing Java Objects with XStream
XStream是将Java Objectserialize为XML流的开源项目。

ActiveMQ 1.0 released: an open source message broker and JMS 1.1
ActiveMQ发行了1.0版。这是开源世界最可靠的JMS 1.1提供者之一。

Rule Engines and Declarative Programming Come to Java
试想一下运行在Java中的Prolog?Java Rule Engines正在成为一个大大的热门,把基于规则的业务逻辑和人工智能带入Java应用。

— from TheServerSide.com

Web Design Practices | Home

— from del.icio.us

News Link, August 19th

End Of The Line For Alpha
RIP…正像HP收购Compaq的时候有人说的,“Alpha没有死在Compaq手上,但是估计逃不过HP这一关了。。。”

Mozilla Releases Mozilla Sunbird 0.2
看来Mozilla跟鸟卯上了,这次是Sunbird,一个独立的日历应用。

— from Slashdot

CrossOver Office 3.0.1 review
当你想省下Windows的钱,但是又不得不用Office时。。。

— from NewsForge

Bruce Eckel talks about Process Patterns
Bruce Eckel阐述Process Pattern

How to Authenticate a Servlet App with Windows Passwords
使用JAAS来集成NTLM用户认证到J2EE的web应用中。是个很实用的技术,不过有人指出他的solution用到了native lib(NTSystem.dll),也给出了一个pure java的解决方案。

TSS Article: Rich Internet Applications
TSS最新的专栏文章,介绍最近如火如荼的Rich Internet Applications技术架构。

Free Book: The J2EE Architect’s Handbook
TSS的新书,The J2EE Architect’s Handbook

  • Design J2EE applications so that they are robust, extensible, and easy to maintain.
  • Apply commonly used design patterns effectively
  • Identify and address application architectural issues before they hinder the development team
  • Document and communicate the application design so that the development team’s work is targeted
  • Avoid common mistakes that derail project budgets and timelines.
  • Guide the development team through the design and construction process.
  • Setup effective procedures and guidelines that increase stability and decrease bug reports
  • Effectively estimate needed resources and timelines

Wicket: Do we need yet another presentation layer framework?
Wicket是原来Sun设计SwingUI的那批人搞得一个新的web表现层框架(还没够?!)。。。

— from TheServerSide.com

The 36 Plots, by Loren J. Miller
Another RPG plots analysis. 最近这个topic很有人气啊!

Google.rss !
使用Google Web APIs实现的一个Google RSS,看上去可以自己搞一个的说。。。

KeepResident Eclipse plugin
据说Eclipse的性能常因为Windows的虚拟内存管理而下降,Stanford的某个家伙就写了这个plugin,保证Windows为Eclipse保留更多的内存。

mozdev.org – delicious: index
Mozilla的del.icio.us插件。

— from del.icio.us

News Link, August 4th

HP Releases Linux-Based Notebook
不过HP的NB外观实在是乏善可陈。

— from Slashdot

Software metrics: Lines of Code vs Function Points
Function Points or Lines of Code? That’s the question.

Article: The eXo Platform Reloaded
eXo platform reloaded! 这个广受关注的J2EE应用框架开源项目继续向1.0前进中,支持JSF是新版本的一大亮点。

The eXo platfrom : CMS AOP + Portlet and Service Container (JSR 168 CERTIFIED) + Hot Deployable Portlet + Portal Based on Java Server Faces + Struts and Cocoon Bridges + Workflow + Enhanced Commmunication Tools + Many Portlets…

The eXo platform is an Open Source integrated application suite that provides several dependant services in a loosely couple way using a lightweight container.
The eXo platform services stack:

  • Low level : Log, database, hibernate, XML processing, cache…
  • Middle level : Portlet container, Workflow, JCR…
  • Higher level : e-commerce, publishing…

The service stack can be reached through two channels : a portal and web services.
The eXo platform provides a CERTIFIED portlet container(JSR 168 – JCP specifications) that can also be queried through web services (WSRP – OASIS specifications).

— from TheServerSide.com

News Link, August 1st

AMD and Intel Update CPU Roadmaps
大家都知道,明年是64bit年,是dual-core年。

Amateurs Pushing the Dreamcast’s Boundaries
DC已经败死多年了,没啥新游戏玩了,但是自有人有办法废物利用,有人移植了GBA模拟器,现在又有人在移植N64模拟器Nincest -_-bbb

— from Slashdot

Hammurapi 3.0 released: Open Source Java code review tool
Hammurapi发布了新的3.0版。

— from TheServerSide.com

Learn to Program, by Chris Pine
Better than most of our colledge textbooks.

RSS Quick Summary
一个很好用的RSS规范速查手册。

A Tao of Regular Expressions
自从“The Tao of Programming”之后有了不少的英文版“Tao”,不过RE真是个很强大的工具!

Gallery of Stupid XSL/XSLT Tricks
诡异版XSL/XSLT用法大全,都是非常规性的用法——XSLT也是个非常有意思的东西,可惜,似乎一直没有性能上很令人放心的解决方案!

— from del.icio.us

News Link, July 29th

JetBrains releases IntelliJ IDEA 4.5
早就预报过了,主要是增加JDK 1.5支持——没啥用的东西。

IBM building Java/.NET interoperability tools
IBM的alphaWorks小组发布了一个工具,允许Eclipse代码和.NET的WinForm进行通讯。另外还有一个Java-COM Bridge

— from TheServerSide.com

.NET Tools
呵呵,NDoc/NUnit/…

The Programmers Stone

Hi, and welcome to The Programmers’ Stone. The purpose of this site is to recapture, explore and celebrate the Art of Computer Programming. By so doing we hope to help the reader either become a better programmer, understand what less experienced programmers are struggling with, or communicate more effectively with other experienced programmers.

— from del.icio.us

News Link, July 28th

Debugging in Plain English?
令人瀑布汗的新研究,试想一下,若干年后,这幕场景:
程序员:“这破程序为啥内存溢出?!”
Debugger程序:。。。(工作中)
Debugger程序:Bingo!(debugger自动停在某处)
Debugger程序:你这个笨蛋,居然有个连接一直没有关闭!
程序员:!◎×#……%×※!◎%

— from Slashdot

Open Source Web Design – Home /\^/\
嗯,很不错的设计,我喜欢老外那种简洁的设计。唉,一直没时间把这个RS弄的pp一点。。。

GmailerXP
喔!看截图还是没有Gmail自己的界面舒服,呵呵!

Stopdesign | Throwing Tables Out the Window
是的是的!不要再使用麻烦的table来定位了,既然我们有了强大的CSS。。。

game physics
讲述游戏世界的物理原理,好像要作游戏必须搞懂这些的说,作游戏真难。。。

— from del.icio.us

News Link, July 26th

Celebrity Casting For LOTR
老外的幽默细胞。。。这是一篇关于名人排演LOTR的恶搞。

— from Slashdot

JSR 201 PFD: Enumerations, Autoboxing, for loop, static import
JDK 1.5的几个语言级特性——JSR 201发布了PFD,估计很快就会进入最后的发布了——希望有人赶紧开始做JDK 1.4的实现吧!

Google gets another Java guy: Adam Bosworth from BEA
Hm,Google想干嘛呢?还是BEA真的不行了??

Detecting Memory Problems Before they Hurt
The Java Specialists’ Newsletter的Heinz在OutOfMemoryError Warning System中演示了如何使用JDK 1.5的memory MX bean来检测内存溢出异常。但是,似乎没有从这种灾难中recover的办法,那又有啥用呢?!

The Eclipse Web and J2EE Tools Platform Project is Now Live!
Eclipse的webtools项目正式挂牌,看看几时可以出点成果,现在的Eclipse J2EE开发plugins几乎没有好用的。。。

More Patterns of Enterprise Application Architecture
MF这家伙看来也是个喜欢赶潮流的主儿,这次他对他的新书“Patterns of Enterprise Application Architecture”做了修正,增加了一些针对Rich User Interfaces的新patterns。

JDBC Tips: Managing Connections and Updates
JDBC Performance Tips的第IV部分:Managing Connections and Updates

EJB 3, the New JavaBeans?
Gavin King讲EJB 3将会成为JavaBean的增强版,因为JavaBean的设计模式简单而强大,相比之下EJB 1&2的模式复杂而晦涩,而且毫无意义。这是不是说——之前的EJB实在瞎折腾呢?

JavaBeans components are:

  • easy to write and easy to change
  • object oriented
  • somewhat self-documenting
  • sufficiently general – the component model does not really assume much about the nature of the bean container, nor about the purpose of the component
  • fine grained
  • executable completely outside any container

…EJB 3 component model as an enhancement to JavaBeans: JavaBeans with “extra” semantics, defined by the spec’s general-purpose annotations.

Grady Booch talks past, present, and future
嗯,这老家伙又出来说话了,在IBM Rational User Conference上,这里有两句他新说出来的话:

Java is not the last language — although it may be Scott McNealy’s last language.

Many of the frameworks of the future will be built upon UML semantics, and that aspect-oriented programming will be mainstream.

— from TheServerSide.com

How to use CVS without going insane
很实用的dd啊,虽然我们要转向SVN了,不过这个还是有用DI!

Writing Bug-Free C Code
Jerry Jongerius在1995年出的名作,讲了很多很基本的原则,用一种好的code style来降低差错率,style的重要性是不能低估的。

css Zen Garden: The Beauty in CSS Design
Zen Garden经常有些很pp的设计,这次是一篇CSS的设计示例。

— from del.icio.us

Get Ready to Continuous Integration!

Martin Fowler发表他关于Agile Programming的里程碑式文章“Continuous Integration”已经数年,今天找了点时间把这些工具整理了一下,算是终于开始认真考虑这个问题了。

1. SVN=Subversion
CVS的终结者,在兼容VCS文件格式的前提下,改进了很多CVS的痼疾,提供强大的审计能力。也有不错的Eclipse插件Subclipse和方便的Windows GUI前端TortoiseSVN

2. Apache Ant
这个不用多说了,目前最强和使用最为广泛的Java自动创建(build)工具,尤其是1.6引入的import功能使得在项目组范围建立模块化的自动创建脚本成为可能。

3. JUnit | HttpUnit | Cactus
分别针对Genaral Java、Web和J2EE应用的自动测试框架。

4. FindBugs
发展十分活跃的Java Bytecode检查软件,提供独立GUI、命令行、Anttask、Eclipse集成plug-in等多种应用界面,能够发现数十种常见的代码缺陷。

5. Checkstyle | Hammurapi
两个Java源代码风格检查软件,都可以和Ant进行集成,Checkstyle还是被Apache Maven选中的集成化代码审查软件。这两个软件我都在News Link中介绍过(CheckstyleHammurapi),里面可以找到一些例子的链接。

[UPDATED]
6. CruiseControl
MF持续集成理论的实作,由于是MF亲自指导的,有着简洁清晰的架构和100%原味的持续集成理念。主要提供自动化创建、Email通知等功能,还有个叫做Dashboard的Eclipse插件,可以即时看到创建反馈。

News Link, July 22th

Article: Introducing the Savant Build System
一个集成了依赖分析的创建系统,Ant + Dependencies = Savant

IBM Rational announces Atlantic tools
IBM讲,他意识到了即将来临的企业开发工具之战。MS早些时候公布的Studio 2005确实是个带来竞争对手恐慌的东西!

AspectJ Development Tools (AJDT) 1.1.11 released
加强了新的IDE整合(例如Welcome页面的链接等),改进了一堆显示,添加了ajdoc的一个wizard(这个最有用),等等,赶紧升级吧(download)。

Ant 1.6 for Task Writers
文章分两部分:Part I | Part II

— from TheServerSide.com

News Link, July 18th

Thinking like a Genius
虽然天才是无法复制的,但是天才的思维还是有一部分可以模式化的。。。

The Absolute Minimum Every Software Developer Absolutely, Positively Must Know About Unicode and Character Sets (No Excuses!)
嗯,可以作为基础教材。

Alice’s Adventures under Ground
珍本图书上网,难怪点击者众。。。

Online Depth of Field Calculator
在线景深计算器!试过一把Nikon那个超级BT的牛头Nikkor 300mm f/2.0s IF ED,在最近对焦点(4m)景深是前后1cm -_-bbb

TTW WYSIWYG Editors
一大大大堆在线HTML编辑器!

— from del.icio.us

News Link, July 17th

Apache Maven 1.0 Released
Maven是一个强大的集成化PM工具,包含了代码和文档的自动创建等非常适合OSS开发的特性。终于出了1.0.

North Korea Opens Official Website
该来的总是会来。。。www.kcckp.net是北朝鲜官方网站,主页写着:President Kim Il Sung, a Great Man of 20th Century。。。

— from Slashdot

Mozilla and the future of the Web
提到广受欢迎的Firefox和Thunderbird将在这个夏天结束的时候发布1.0 release。

— from NewsForge

dprism Time Package v2.0 Released
说起来又是Sun值得羞愧的事,居然要第三方来发布Date/Time处理代码,还能赚钱。这个dprism Time Package是专门处理时间的过程库。不知道比起开源的 Joda Time来有什么优胜,居然还要钱。。。

New Product Listing from JavaOne 2004
今年的J1上所有announce的product list。我最感兴趣的是。。。Nokia和Sega联手推出的移动游戏终端。。。

Featured Article: Source Code Communication Best Practices
一个很有意思也很少被提及的专题,关于如何在代码高度共享的开发环境交换源码信息。Vincent Massol的这篇TSS Featured Article提出了两个方案:Diff emails on SCM commit和RSS feeds(feeds anywhere, hm?)。

— from TheServerSide.com

FCKeditor – The text editor for Internet
FCKeditor是一个开源、跨平台的在线HTML编辑器。

Things President Bush is not
可以学到很多有趣的词儿,呵呵!”I’m not a tree, I’m a Bush.”

How to write Firefox extensions
Have a try!

bitoogle :: the bit torrent file search engine (bittorrent)
Bingo! 正是我要的dd啊!

Free Picasa Photo Album Software
可以用来作照片管理索引库,不会改变文件原有位置。

An no-nonsense guide to Semantic Web specs for XML people (Part I)
针对目前正热烈讨论中的Semantic Web的评论和分析。

Making TeX Work
名著Making TeX Work的SourceForge版!

— from del.icio.us

News Link, July 8th

Will LOTR:ROTK Extended Edition Hit Cinemas?
这个。。。也太黑了吧!!

— from Slashdot

AspectWerkz 1.0: First beta released
其实还是早了点,AspectWerkz离1.0还有不少的举例,从它的newsletter中来看离一个可用于生产环境的工具还差的满远——不过AspectJ 1.2不也还是试验性居多么。。。

Tech Talk – Rod Johnson on The Spring Framework, AOP
Spring的Rod Johnson的访谈。

— from TheServerSide.com

GoodLogo!com
一个专门搜集各式各样的logo并进行评述的站点。有意开公司的同志们值得关注一把。

— from del.icio.us

News Link, June 25th

Computer Pioneer Bob Bemer Dies
Bob Bemer何许人也?早期的计算机专家之一,他引入了现在常用的\t、\n这类转义字符,还在1971年就预言了Y2K问题。。。

Ghost in the Shell 2 in Theaters Late This Summer
士朗正宗原画,押井守监督的《攻壳机动队2:纯真(Ghost in the Shell 2: Innocence)》将在秋季上映!这也是我比较喜欢的一个系列,大概是喜欢那种末世的气氛吧。

— from Slashdot

JetBrains to hand out IntelliJ IDEA 4.5 and Fabrique at JavaOne
在即将开始的JavaOne大会上,JetBrains将发布它最新版本的IntelliJ IDEA 4.5Fabrique。IDEA 4.5将包含完整的JDK 1.5支持和若干增强的代码功能。但愿不要满是bug。

JDO 2.0 (JSR-243) Early Draft Specification Published
JDO 2.0(JSR-243)进入了early draft阶段。

Article: Ant 1.6 Features for Big Projects
Ant 1.6是一个重要的版本,借助<import>等新功能,Ant 1.6能够更好的支持大开发项目中的创建过程。Stefan Bodewig的文章集中介绍了<macrodef>,<import>,<subant>这几个新增功能,并展示了可以怎样利用这些特性简化大项目的创建和配置管理。

Featured Article: Implementing Caching with AspectJ
又是来自AspectJ的Adrian Colyer的新作,描述利用AspectJ实现caching机制的例子。AOP需要这样的传道者啊,呵呵!

— from TheServerSide.com

News Link, June 23th

Tools for making Tools
又是一个大杂烩。。。

Hotmail Bounces Gmail Invitations
今天终于得到了一个Gmail帐号:[email protected]——Thanks Sunny!——所以也要关注一下Gmail的新闻。这一则说Hotmail——大家都说它最害怕Gmail——在阻挠Gmail的邀请邮件,嘿嘿!

— from del.icio.us

Opinion: You Call That An Elephant?
针对Bruce Tate的’Don’t Make me Eat the Elephant Again‘的回应。

Container Driven Testing Part II: Testing Entity Beans
这是这一题目的Part II(这里有Part I)。

— from TheServerSide.com

News Link, June 20th

C-3PO Joins R2 in the Robot Hall of Fame
C-3PO日前终于进入了Carnegie MellonRobot Hall of Fame,跟他的老搭档R2D2,以及其他著名的机器人——例如《2001: Space Odyssey》中的HAL9000——跻身一堂,想必会十分愉快。

— from Slashdot

The CMS Matrix
大量的CMS系统比较!有很多我听都没听过。。。

— from del.icio.us

News Link, June 16th

Mozilla Project Officially Releases Firefox 0.9
昨天已经报道过了,今天/.的geeks精确的概括了0.9的新特性:

mE123 adds “You can get it from plain old HTTP or from fancy new BitTorrent, and points out that (compared to 0.8), “this release includes tons of bug/stability fixes, a %3 speed up, a new theme and plugin management system, a new standard windows theme, and a smaller windows installer.”

Java Faster Than C++?
令人惊讶的benchmark!从result gragh来看,有些指标Java甚至超出C++若干倍。。。

— from Slashdot.org

Featured Article: Dynamic Coupling
TSS的新专栏文章描述动态耦合,何谓动态耦合?说白了就是在运行时进行组件接口绑定,这是个令人生疑的技术,但是也会带来一些特定的价值。

— from TheServerSide.COM

News Link, June 13th

Meteorite Crashes Through New Zealand Roof
一枚1.3公斤、寿命大约为40亿年的陨石击穿了纽西兰的一间房子的屋顶——让我想起了《丁丁历险记》中的大蘑菇。。。

Searching for the Best Scripting Language
一直让我很纳闷的一件事情,就是我国天才的技术人员们似乎很不喜欢脚本语言,但是其实script是很强大的,昨天还听BEA的哥儿们讲他90年代用纯DOS Batch实现复杂拨号程序的故事。。。这里有个survey,关于最好的script语言的,非常细致。

UK Anti-Spam Laws Criticised
英国是最早实现了Anti-Spam立法的国家,但是似乎执行的过程中遇到了不少的问题,有技术的也有官僚的。The Guardian的一篇文章描述了这种尴尬,考虑到这种立法即使在我国也是迟早的事情,这个还是可以借鉴一下的。

— from Slashdot.org

Microsoft Acquire SAP?
IT Manager’s Journal(也是OSDN的成员)的一篇文章,提到了《财富》杂志近期某篇文章的一个十分诡异的观点,并提出了一些很有趣的意见,不过我似乎没法访问《财富》的网站 :(

— from NewsForge

News Link, June 8th

Marking 50 Years Since Alan Turing’s Death
6月7日是图灵逝世50周年,在他的老家曼彻斯特进行了纪念活动。

Sun Opens JDesktop Integration Components
Sun在LGPL之下发布了它的JDIC / JDesktop Integration Components API,主页上包括两个例子可以运行(通过Java WebStart),看来Java和本地德交互接口有望标准化了。

— from Slashdot.org

今天有多个开源项目有新的release,其中包括AspectWerkzPicoContainer两个重量级的东西,还有Netty这个事件驱动网络应用框架。

— from TheServerSide.COM

Digital Photography Composition Tips
又一个不错的数码摄影tips。

Super Mario War
基于SDL开发的Mario游戏,有源码可下载。

— from del.icio.us

没有废话的AOP

前几天的News Link提到了AspectJAdrian Colyer对AOP的一些解释,今天抽了点时间翻译了出来,感觉对AOP的本质是比较有见地,也是说的比较清晰的。

p.s. 当我完成了这个翻译的时候,Adrian又写了一篇相关的文章”Making Programs Simpler“,发表在他的blog上,可以作为后续的读物。(有时间再翻?嘿嘿!)

(more…)

News Link, June 4th

Sun Will Open Java’s Source
Open Source Mania! Sun也加入战团(不久以前老麦还说不呢)。。。混乱啊,病的不轻!

— from Slashdot.org

IBM Rational Targets Software Against Microsoft’s Team Studio
新一轮的工具之争终于打响,以Microsoft做工具的力量,Rational光靠那个牌子可能是不够的了,况且现在这个牌子前面被加上了IBM。。。

Tech Talk: Scott Ambler on Agile Modeling and Development
Scott Ambler是除了MF之外另一个我比较喜欢的Agile专家,最近TSS对他的interview中重点放在了敏捷建模和MDA上——在这个问题上他倒中规中矩,认为MDA还是一个blueprint多点。

— from TheServerSide.COM

News Link, June 2nd

Canon Digital Rebel Hacked Into A Pseudo-10D
什么是Digital Rebel?其实就是EOS 300D -_-bbb 但是今天故事的关键不在这个夸张的美国式名字,而在于这个“Rebel”跟10D相似之处,相似到以至于Canon不得不做了一些软件上的限制以降低300D的能力,要不然没有人会去买它那足足贵上500美刀的老大哥。最近对300D软件系统的hack激活了其隐藏的功能菜单,带来了10D几乎所有的功能。。。/.的geeks带来的有趣的conclusion:

Canon has so far said little on the hack but certainly cannot be happy with its potential effect on sales. This is, however, a reality that more corporations are having to confront. In an era where programming labour is relatively cheap and computer connectivity more frequent can artificial, marketing-driven, barriers between technology products, last?

Intel To Release Next-Gen BIOS Code Under CPL
连Intel也open source。。。open source是不是dotCOM的传人啊 -_-bbb

First Looks At PCI-X, BTX, New Chipsets, And More
AnandTech报道了NVidia的NV45,首个实用的PCI-X芯片组,新一代总线正在慢慢浮出水面。

— from Slashdot.org

ASF Announces Geronimo as an Official Project
Apache的Geronimo孵化完毕,正式升格成为顶级project——最近做J2EE server的开源项目很红火啊——这是不是也说明这个领域还有很多事情做的很不够呢?

Sun releases J2SE 1.5 beta 2
The tiger is coming! (不知为啥就是对这个玩意儿打不起精神来。。。)

AOP without the buzzwords: The Ted Neward Challenge
Adrian Colyer在自己的blog上的新文章,是对Ted Neward的一个challenge——请大家不使用什么口号表语词汇(例如scattering, tangling, crosscutting, modularity, encapsulation, abstraction, dominant decomposition, concern)描述一下AOP是什么——的回应,很有意思的一个话题。

Release of Match4J 1.1
Match4J是一个match引擎,能够基于知识进行关键字匹配,相当于一种智能化的模糊查询,可惜,不是免费的,没法试试,只能看看在线demo

An Introduction to the Drools Project
TSS新的专栏文章介绍了Project Drools,这是JSR 94: Java Rule Engine API的一个参考实现——似乎没有JESS好用。规则引擎为什么重要?因为这往往是大型信息系统中最领域化的部分,而再优秀的架构师有时也无法足够快的理解领域专家的需要——所以要把规则交给决策者去定义,系统只要运行这些规则就行了。简言之,rule engine是人们弥合IT鸿沟的最新尝试之一。遗憾的是,在我国这种需求还十分的超前,呵呵!

EJB 3.0 – Is It Going To Solve Our Problems?
又一个关于EJB 3.0的讨论。Michael Nascimento Santos认为,EJB 3.0的第一次亮相展现不少亮点,但是还是漏掉了很多金子,使得目前看上去只是一个50%的解决方案。Santos的建议包括:强化annotation技术(annotation processors和user-defined annotations),减少容器产生的interface(看来讨厌interface的人不止cauchy一个啊),而使用类似ApectWerkz的AOP技术来帮助容器从普通的new操作符构造session bean(a really good idea as i think)等等。

Orion 2.0.3 Released
Orion(猎户星座,不错的名字,也是MIB中那只关键性的猫的名字:p)是个口碑很不错的开源J2EE Server。对于BEA和IBM的大恐龙app server我已经没啥耐心了。。。

A New Cocoon from Apache
InternetNews介绍Apache Cocoon新版本的文章,谈到了Cocoon在新的SOA潮流中的示范作用。

— from TheServerSide.COM

Timeline of the History of Information
毫无疑问,中国是越来越差了。。。

One Hundred Unfinished Projects
100个夭折的项目,它们怎么来的?为什么夭折?留下了什么?有趣的主题。

Cross-Browser Rich Text Editor
真正的跨浏览器平台的rich text editor,功能一般,不过好过哪些IE only的垃圾。。。

— from del.icio.us

News Link, May 29th

TMC Terminates Business with JBoss, Inc.
JBoss由于最近的TSS Fake Account事件搞得声名狼藉,TSS今天正式宣布终止一切和JBoss的商业合作,还发表了措辞十分强烈的一个声明。唉,钱啊。。。

Test Driven versus Test First
PragDave的这篇文章描述了这两者间的区别。

JavaServer Faces 1.1 Released

JavaServer Faces 1.1 has just been released: http://java.sun.com/j2ee/javaserverfaces/
Following is a link for changes from 1.0 to 1.1: http://java.sun.com/j2ee/javaserverfaces/docs/README
Go to the JSR 127 home page
The Faces Console GUI tool has also been updated to support JSF 1.1: http://www.jamesholmes.com/JavaServerFaces/

Jakarta-Struts Live
TSS的电子书一般来说都是可读性还可以的,这本Strusts Live也是这样,还附了很不少的范例代码。

— from TheServerSide.COM

Review: Fedora Core 2
来自Linux.com的评测基本给FC2定了性:

Fedora Core 1 has proved to be a remarkably stable and well-supported distribution suitable for home and office desktop work, after the missing (non-open source) pieces are installed.

Fedora Core 2 is not. It is bleeding-edge technology that will become mainstream in a year or so, and as such is an important distro for people who will be working with next year’s technology. It’s an important step in the evolution of Linux, and I’m glad it’s here to experiment with, but I won’t be using it for production work anytime soon.

— from NewsForge

Is Swap Necessary?
这是Kernel Trap最近最热门的一个thread,——为什么总是没有swap的系统比较快?老实说在物理内存接近、达到甚至超过2G、4G得今天,这是个要认真考虑的问题,不过最过瘾的是这帮家伙真是思路活跃的只能用BT来形容。。。

— from Slashdot.org

Naming Classes – Do It Once And Do It Right
比一般的这类东东看上去好理解和容易操作些。

Cool log4j Hack
see below

— from JRoller.com

(more…)

News Link, May 28th

Flash 7 for Linux Released
终于,一贯歧视Linux的Macromedia也总算做了一次好事,终于开始提供最新版本Flash播放器的官方download(官网会自动分析你的操作系统导向合适的下载页面)。

— from Slashdot.org

Subversion: The new-generation CVS
Subversion已经不是什么新鲜事了,DevChannel也不是最早称之为new-generation CVS的。但是我想知道的是——其实CVS的那些问题早就尽人皆知,为什么今天还没有被个什么dd替换掉呢?

— from NewsForge

jConsole in J2SE 1.5.0beta2
Monitoring & Management Console是J2SE 1.5中少数我觉得真的有用的东西,Nothingness给我们带来了完整的screenshots,但是——这个东西为什么不能运行在1.4、1.3。。。上面呢?!

— from JRoller.com

News Link, May 22th

Modern JVM’s and AOP Frameworks
AOP的经典应用:performance instrumentation。ONJava的专题文章向我们展现了这样一副图景,过去属于尖端的profiling工具,现在任何人都可以基于AspectJ或者AspectWerkz轻易的实现。这里比较令人担心的是运行效率问题,一个好消息是——AOP的实现开始和各种关键任务级JRE更好的集成,例如在运行时进行横切处理的AspectWerkz利用了BEA JRockit底层扩展接口,以提升动态profiling的效率。BTW,这个AspectWerkz是BEA赞助的——就好像AspectJ是IBM赞助的 -_-bbb ——由于它的online mode特性支持runtime bytecode weaving,无需重新编译源程序,在某些方面能够完成AspectJ望尘莫及的任务,而被看作是后者有力的挑战者。

— from JRoller

Design Eye for the Usability Guy
Very much hot topic of this week, by Andrei Herasimchuk and his friend design guys, inspired on Jakob Nielsen’s updated ‘Guidelines for Visualizing Links’. Very interesting, helpful, and cool design!

— from del.icio.us

Calculate When You Are Most Awake
英国的科学家据说研究出了一种算法,可以算出某一天中你最疲劳的时刻——在他们的网站上就可以计算出来,have a try?我的结果是:

You will start to feel noticeably tired at 15:30 and you will feel most tired at 16:30.

SETI@home Turns Five Today
五年前,加州大学伯克利分校建立了最早最大的公开网格计算工程——SETI@home,自那以后,SETI@home已经借助全球数百万志愿者(包括我 :D )的电脑计算发现了2,568个候选信号——可能来源于地外智能的无线电信号。Happy birthday, SETTIE!

— from Slashdot.org

The State of Workflow
TSS今天刊登了Tom Baeyens关于Workflow的文章,指出当前工作流市场的混乱和技术的薄弱。

If database systems are like a respected, wise man telling a clear story, then workflow must be a buch of spoiled brats shouting their own truth at each other.

— from TheServerSide.COM

News Link, May 21th

MovableStyle Tansferred
MovableStyle(本站的skin作者)正式易主,Scott Yang因为MT3的新授权策略而感觉备受打击,一周前宣布放弃MT和这个很受欢迎的站点,他十分礼貌的决定无偿转让域名和现有的一切成果,根据昨天的更新,现在已经有人接手了,可能很快就能完成交接。希望是一个同样优秀的作者和讨人喜欢的新主人!

— from Ragnarok Studio

Worst Explanation From Tech Support?
我们听过无数做support的人不得不向巨多的菜鸟解释极菜的问题,但是——凡事都有但是——也有专业用户和菜鸟support的事件,看看Slashdot的nerd “Disgruntled-with-Tech-Support”带来的“stuck bits”的故事,绝对的经典!

… I had just had DSL installed, only to find it much slower than the 56K line I was looking to get rid of. On calling the provider, I was told (by someone who likely reading off cue cards) to visit one of their internal websites for measuring bandwidth. While there, I observed that they had both bytes per second and bits per second listed, and that the number of bytes/sec != bits/sec * 8, rather a factor around 13 or 14. I pointed this out as a possible problem, and the guy’s reasoning: ‘Uh, it looks like the bytes are getting through to you ok, but the bits are getting stuck someplace.’

— from Slashdot.org

Intellij IDEA Consequently Loses Its Advantage Over Eclipse
其实不是新闻了,不过这位IDEA拥趸的文章非常透彻的描述了这个事实——但是他没有说出的是——其实最新的Eclipse 3.0M8已经超过了IDEA 4,难道不是么(别忘了,Eclipse是开源和免费的,而IDEA价值不菲)?看看:

I am one of these fanatic Idea users, participating in EAP, helping Jetbrainers fixing the bugs, defining new functionality and so on. I am keen on Idea. I am so keen that I treat all Idea rants and complaints very personally. Until now…

Something bad happened recently. Jetbrains guys, known from their rock-solid software and obsession with quality – are changing. Idea build are more and more buggy, even basic features are sometimes not working properly. Moreover, user interface, that other companies had to dream about is becoming more and more polluted, bloated and not intuitive. It all began with Idea 4.0 – released too early, not tested enough and bloated with the features that only few want.

质量问题可以怎样轻易的毁了一个优秀的软件品牌!

Wanna Use Spring With JSF?
Sun和IBM都发布了自己对JSF的支持,据说BEA也将在Platform 8 sp3中支持JSF(Server和Workshop)。开源社区也没放松,这里的例子是SourceForge上新成立的JSF-Spring Integration项目。

Effective AspectJ – Understanding Type Checking For pointcuts and advice
AspectJ毫无疑问属于新生事务,要掌握基本概念容易,要实际的用在有用的地方就比较难了。这篇文章描述了AspectJ中一个很容易误解的问题

— from JRoller

News Link, May 20th

BEA to release Apache Beehive: Workshop Open Sourced
传闻已久的事情终于确实了,BEA宣布将把它的Workshop的核心部分开源,开源项目的代号为Beehive,而BEA选中的开源组织——毫无悬念的——是Apache(Workshop的一个核心技术,XMLBeans就是BEA捐给Apache的),也就是说很快就会有一个Apache Beehive的project。据说这次将开放的是Workshop Runtime,Controls,PageFlow。开源的授权模式将是Apache License v.2.0,开放的是:Controls、NetUI=PageFlow、XMLBeans、Web Service Metadata。可以访问BEA的专题网站获得更多信息。

The Top 10 Elements of Good Software Design

10. Considers the Sophistication of the Team that Will Implement It
9. Uniformly Distributes Responsibility and Intelligence
8. Is Expressed in a Precise Design Language
7. Selects Appropriate Implementation Mechanisms
6. Is Robustly Documented
5. Eliminates Duplication
4. Is Internally Consistent and Unsurprising
3. Exhibits Maximum Cohesion and Minimum Coupling
2. Is as Simple as Current and Foreseeable Constraints will Allow
1. Provides the Necessary Functionality
read the whole story

Javalobby Launches Nnew Java Knowledge Base
著名的Java网站Javalobby最近建立一个Java Knowledge Base,牛人可以赶紧去contribute点料。

ObjectWeb Announces Speedo JDO 1.0
Speedo正式发布这个JDO实现的1.0版。产品据说用了ObjectWeb的很多框架和组件技术,这个ObjectWeb倒什么都有!(人人搞得自己什么都有,这样的好么??)

— from TheServerSide.COM

MailFeed: Generate an RSS Feed from a POP3, IMAP, or NNTP mailbox
呵呵,MailFeed是个简单的PHP页面,直接读取POP3等协议的邮箱生成2.0格式的RSS Feed。再次领略到了RSS的无穷可能

The 46 Best-ever Freeware Utilities
The best… Free… Ever… 46!!!

— from del.icio.us

News Link, May 19th

FC2 Released!
Fedora Core 2如期发布,同时也发布了amd64的版本。按惯例,你可以下载ISO镜像,也可以使用bittorrent下载(这是我正在做的事情下载分流看这里)。

— from Ragnarok Studio

Java and .NET Interoperability Using CORBA
用CORBA来连接Java和.NET??我正准备说出小盖最喜欢的那句“It is the stupidest idea I’ve ever heard”,但是MiddTec提供的CORBA for .NET产品把CORBA变得简单了许多,JavaWorld的这篇示例基于这个CORBA产品演示了如何用几十行代码实现跨平台集成。还是令人半信半疑,不过看上去很酷!

JSR 170: Content Repository for Java Announces Public Review
JSR 170,也就是传说中的Java CMS的规范,发布了它的第一个public review版本

SearchBlox J2EE Search Component Version 1.3 Released
SearchBlox的产品是那种即插即用的搜索引擎,还提供了一个可以搜索1000篇文档的免费license(整个产品就一个war,看上去比较讨人喜欢)。号称支持中文!找时间弄来试试(Tomcat和Weblogic的安装指南在这里,注意,需要Servlet 2.3容器,也就是说不支持Tomcat 5)。

Checkstyle 3.4 Released
上次介绍了Hammurapi,这次的Checkstyle是个类似的东西,Apache Maven代码检查报告就是用这个东西做的,但是看了一下,似乎没有Hammurapi简单易用,而且它的ant task似乎还有一点issue,至少在我的系统上目前还跑不起来(解决了,classpath里不能有不兼容的antlr.jar,发现这个库经常变化接口带来兼容性问题。。。),comments里有人提到这个问题的。

— from TheServerSide.COM

A Photoshop Tutorial for Photographers
严肃摄影师的标准照片数码处理流程,PS并不是作假——如果你做且只作这里教你的事!

Ten Types of Innovation
嘿嘿,有趣的商业理念

— from del.icio.us

(more…)

News Link, May 14th

Hammurapi: Open Source Java Code Inspection Tool
Hammurapi是一个开源的源代码分析工具,看它的输出(针对它自身的代码)还是比较有趣的。

AspectJ 1.2 Moving Along
AspectJ刚刚发布了它的1.2rc2版本(这里下载)。到目前为止,可用的Eclipse更新还没有。

IBM Announces New Software Strategy to Kill Microsoft

IBM has announced a new software strategy, with accompanying products, designed to circumvent Microsoft’s lock on operating systems and productivity applications.

文章援引IBM的官方消息,IBM表示将会扩展它的“thin client”战略,提供Lotus Workplace、Tivoli、Websphere Portal全系列更新产品,保证各种客户端可以在其上完成所有日常工作。但是,也有人挖出了古老的Lotus eSuite新闻来置疑Big Blue的想法。

Usability and Java 1.5 Generics vs. Autocasting
有一个关于TigerGeneric特性的讨论,这次有人把它跟同样是Tiger特性的Autocasting(Autoboxing)(这是JSR 201的一部分)做了比较。有人的发言很精辟:

I don’t like having generics in Java. The new generics stuff is sure going to make things a lot less readable with very little benefit to the developer.

Opinion: EJB3 Red Herrings
EJB3的技术细节在TSSS上被专家组详细披露过之后,PicoContainer的Aslak Hellesoy在在自己的blog上发表了他关于EJB3的想法。文章列出了EJB3的关键技术特征:

  1. POJOs/POJIs (plain old java objects/interfaces – nothing to extend)
  2. Dependency Injection (setter flavour)
  3. Testability outside the container
  4. Annotations
  5. CMP becomes Hibernate

然后进一步指出,其中前三点概念分别来自三个轻量级容器:SpringHivemindPicoContainer(其实Dependency Injection概念的提出还有个大牛在里面——Martin Fowler,他的介绍文章是迄今为止对这个概念的最精到的阐述,而且,Aslak就是MF任CTO的ThoughtWorks公司的雇员!),而专家组的头儿Linda de Michiel在明确提到了EJB3的persistence部分的主要思路来源于Hibernate的同时,只字未提上述三个OSS实现。Aslak半打趣的推测这是因为:

  1. The EJB3 spec committee have invented these concepts independently and have not been inspired by the current lightweight containers.
  2. Other projects only get mentioned if one of its contributors are on the spec committee.
  3. The EJB3 spec committee is trying to hide the fact that they were inspired from other projects and sell it as their own invention.

:D 看来老外对于“credit”真的很看重,钱倒不是重要的问题——这也算比我们文明的地方吧。
Cedric也在自己的blog上就这一问题发表了不太一样的观点。所以,Aslak也调侃他一把,说他在对EJB3表现狂热的同时却很不喜欢lightweight的概念提法。后面这个评论令人想起论坛上关于这个问题的bt讨论。然后,马上就有专家组的Scott Crawford站出来说他其实早就向Aslak和其他相关人士致谢,而且他认为专家组的其他成员也会愿意致谢——不过在官方场合没有提到的话。。。是会令人不快的嘛!

— from TheServerSide.COM

The Home Parallel Universe Test
来自allsci的文章教你如何在家验证平行宇宙概念,看上去很有趣的说!(可惜我没有激光器。。。是不是可以拿投影仪的遥控器。。。)

— from Slashdot.org

News Link, May 12th

JCP Watch: JSP 2.1, JDK 1.5, Web Services Metadata
JCP今天公布了这些新的规范,不过整个业界的态度似乎是越来越现实,恐怕像以前那样盲目跟新规范的会越来越少了。

Thinking about Macromedia Flex
What is the Flex? 简单的说,这是Macromedia野心勃勃的RIA(Rich Internet Application)的最新技术,被定位在application server和客户端之间的presentation server。在主页上有关于Flex的极其华丽的演示,其表现效果也确实惊人,但是,问题是——一个后台基于Web Service、前台基于Flash的应用架构该有多慢啊!而Flex那个颇为古怪的MXML编程语言目前只能手工编写。。。大概是还需要许多年的未来技术吧!

— from TheServerSide.COM

News Link, May 9th

Free MIT Engineering Text For Download
这本书就是John H Lienhard V (MIT)和John H Lienhard IV (U Houston)经典的热力学教材,A Heat Transfer Textbook, 3rd Edition。这件事的意义也许在于:教育本身就应该是open and free的。

Using GPUs For General-Purpose Computing
GPU们包含的晶体管和处理能力超过CPU似乎成了一种趋势,Nvidia和ATI发布的最新图形芯片都包含了4至5倍于Intel Pentium 4 EE的晶体管——这会使人不由得要想:出了我在玩最新的3D游戏的时候,我还能拿这些芯片做点什么呢? 嗯,已经有人做了研究,这里是他们的成果:Using Modern Graphics Architectures for General-Purpose Computing: A Framework and Analysis(pdf)。他们测试的机器上配置着GeForce4 TI 4600和1.5GHz的P4 CPU——

For a 1500×1500 matrix, the GPU outperforms the CPU by a factor of 3.2.

— from Slashdot.org

News Link, May 8th

EJB 3.0 and JDO 2.0: Views From Both Sides
好了,这种讨论都出现了,Sun应该感到羞愧啊。。。

SOFIA 2.2 Adds Linux and Portal Support
SOFIA是什么?移植了.NET的Web Form概念的一个MVC框架(我就快要患上framework-phobia了。。。)SOFIA的全称是Salmon Open Framework for Internet Applications,Salmon LLC还有一堆关于SOFIA的很好的资料,尤其是快餐式的视频介绍——这就是公司来搞OSS的好处,既有很专业的支持,又开放源码,公司则可以借机制定标准。另外,我很欣赏SOFIA和其他工具(Dreamweaver、IDEA等)的整合方式,生产率会比较高。

AndroMDA 3.0M1 Milestone Release Is Out!
AndroMDA是比较知名的开源MDA项目。试试这个东西一般来说就能清楚目前MDA实践的程度了。

— from TheServerSide.COM

Jetspeed 1.5’s First Look

今天在我的环境(XP sp1, JVM 1.4.2_04, Tomcat 5.0.16, Firefox 0.8)中配置好试了一下,花哨了很多,增加了几个比较有用的portlet,过去那个Tomcat启动时有时会出错的问题还是存在 :(

(more…)

News Link, April 30th

Implementing IoC with AOP
Yet another AOP-based application. 最近AOP的面向生产环境的应用慢慢多了起来。

14th Annual Jolt Awards
最具影响的软件开发专业奖项,14th Jolt Award揭晓,非常有趣的得奖列表和评述,有时间翻译出来给大家看看,呵呵!BTW,MindManager X5 Pro击败了TogetherJ for Eclipse得到最佳分析设计工具的奖项是这届最大的亮点!

— from TheServerSide.COM

BEA Considering Open Source Implementation of BPEL for Java
BEA终于也加入了Open Source的大潮,第一个试验品是BPEL标准规范的Java参考实现。这也是BEA主导,IBM、Microsoft都参与的重要“民间”标准规范。

— from NewsForge

Portal Project on ASF Evolved

Apache终于建立了独立的Portal一级项目,把以前分散、杂乱的Jetspeed-1Jetspeed-2PlutoWSRP-4J等项目组织到了一起,并且重新界定了各自的分工。另外也出人意料的发布了Jetspeed 1.5(啊哈,一看就是MT,越来越多的官方媒体发布采用Blog软件和模式了)——我还以为已经不会有人维护这个项目了呢。

News Link, April 26th

ObjectFilter: AOP Rule Based Object Access
Another AOP-based component!

Open Source Workflow Engine – con:cern 1.1 Released
con:cern是一个符合GPL的开源Java工作流引擎,包含了定制器、运行时、页面流框架等核心要素。看它的流程定制器截图,还可以。

Performance Tuning J2EE and MySQL Applications
其实JVM的启动参数中有着很多的技巧,这篇文章虽然是针对MySQL应用,但是有些精神是普适的。

GCC 3.4 Released: Java Improvements
哪位大侠有空做做gcj、jikes、javac的比较啊。。。

— from TheServerSide.COM

Free Software’s Killer Applications
这里列举的几个重量级Linux应用确实具有杀手潜质,不过总是感觉比Windows的同类产品还是差些——但是,毕竟是免费的啊!

.Net on Linux
DevChannel.org上的这篇文章介绍了.NET在Linux上的两个主要的实现:MonoDotGNU

— from NewsForge

p.s. 突然发现4.26的这篇是我的第100篇blog。。。自己庆祝一下!

News Link, April 22nd

2004 – A Workspace Odyssey
模仿Stanley Kubrick的“2001: A Space Odyssey”中Dave和超级电脑HAL的对话,TSS的这篇humor当中作者也和WSAD 5.0进行了一番对话。。。

Pattern Testing with AOP
PatternTesting是一个利用AspectJ实现的用于模式和架构测试的框架,AOP的应用不仅仅是记记log哦!

IBM Delivers SOA Enablers
没啥别的,只说明IBM开始公开的模仿BEA。。。

JView 2004 – J2EE Performance Monitor – 1.4 Released
又是一个强大的server-side profiler,当然,也不是免费的。。。

— from TheServerSide.COM

News Link, April 21st

Simplifying Web Development: Jython, Spring and Velocity
Python在国外大有盖过Java和传统脚本语言的气势,而众多的Web框架也越来越关注开发、维护效率问题,不过我觉得到目前为止,Web开发仍然是软件开发中的毒草。。。

Stateful Session Beans Rock
非常少见的给Stateful Session Bean说好话的文章,且看他怎么说!

— from TheServerSide.COM

Reasonable Salary for Entry Level Programmers?
嘿嘿,瞧瞧Slashdot的Geeks对这个“敏感”问题的认识。

NASA Gravity Probe Launched
就是最近叫得很响的验证AE广义相对论的空间试验,看看美国人是怎么砸钱的。。。

— from Slashdot

News Link, April 19th

Martin Fowler’s First Law of Distribution
MF的“分布式第一定律”是这么说的:“First Law of Distributed Object Design: Don’t distribute your objects!” Dan Creswell这篇文章反驳了这种观点,这是一篇关于分布式对象的很有教益的文章,值得一看。

— from TheServerSide.COM

C, Objective-C, C++… D! Future Or Failure?
这个来者不善的D语言,号称支持垃圾回收,运算符重载,完全C语法编译,内嵌汇编,内嵌单元测试,还有”Design by Contract“,等等。这里有一份完整的和C/C++、C#、Java的比较

— from Slashdot

News Link, April 13th

Does Code Generation Matter to Java Developers?
XDoclet为代表的代码生成机制,作为一种“生成程序的程序”正在悄悄的崛起,尤其是JDK 1.5引入的JSR-175支持,更是为这种机制提供了标准化的途径。考虑到正引起广泛关注的MDA方法,本周的TSS Article引起了不少有趣的讨论。

Implementing the Null Object Pattern using AOP
当臭名昭著的NullPointerException发生的时候,一般除了挂起你的应用,显示一行无意义的NPE提示意外就没啥帮助了,Dale Asberry利用AOP实现了一个“Null Pointer Pattern”,使得你能够定位这个诡异的异常,而不是茫然的在源代码中做行级调试。显然,这一技术对于跟踪所有的Runtime Exception都是有效的。

What is the place for MDA and UML?
又一篇关于MDA的讨论,这次是置疑图形化能否代替手工编码的核心问题,见仁见智,呵呵。我个人的观点,MDA依然还是一个概念,在真正实现之前还有很长的路——这一类的事物在IT业界存活的概率历来都不是很大。

— from TheServerSide.COM

Forbes Reviews Google’s Gmail
嗯。。。不是愚人节的谣言。。。

— from Slashdot

Cocoon as a Web Framework

Cocoon as a Web Framework

— from TheServerSide.COM

现在所谓的Framework太多了,但是真正有潜力的、killer级的还不多,目前有一个趋势,就是Framework开始越来越接近开发实践,经历了框架本身的演变之后,现在被关注的主要是:实际应用的效率问题(包括开发效率和运行效率), Apache Cocoon由于以XML为核心并引入了所谓的component-based pipeline request handling概念而显得十分的独特。如果有一个系统,其内部数据表示主要由XML完成,那么Cocoon框架将是值得评估的选择。

顺便说一句,搞IT时常会使我们忘记一个词本来的意思,其实cocoon意思是茧,而web是网,一个来自蚕,一个来自蜘蛛,都是粘糊糊的丝状物质 -_-bbbb

AspectJ’s New Plan

AspectJ在v1.1.1版本发布之后基本上停止了新功能的开发,转向1.2版本的目标和计划。由于计划2004年6月发布的Eclipse 3把J2SE 1.5(Tiger)支持作为核心feature,所以新的AspectJ当然也要支持J2SE 1.5。另外,从这个版本的开发计划中可以看出,AspectJ的下一步主要是向主流产品靠拢,以提高实用性和生产力为主要目标,例如它的功能列表主要要点包括(按Eclipse社区的习惯划分为strong candidates和potential candidates):

Strong Candidates for 1.2

Highlights include(see full list of planned features here):

  • weaving class loader support
  • improve performance and memory usage for compile/weave and runtime
  • provide documentation and samples for using AspectJ with popular J2EE servers
  • allow the specification of input directories (not just jars) for binary weaving
  • enhancements to IDE support for incremental structure model

Potential Candidates for 1.2

Highlights include(see full list of potential features here):

  • pertype aspect instantiation model
  • class attributes in type patterns
  • support for context information in declare error/warning messages
  • user specifiable exception in declare soft
  • serial version uid support

毫无疑问,令人期待的版本,毕竟到目前为止,AOP要在real world的应用系统中使用还是有很多问题的,但是一旦能够很好的支持诸如binary weaving的特性,又能和主流中间件、IDE良好集成,那么离真正解决cross-cutting问题的目标就很近了。

Martin Fowler的持续设计及其他

Martin Fowler一贯以他深刻的洞察力和高超的阐释能力让我折服(可能是因为他的著作不多而且都极出色,老让我把他跟出身MS的牛人Steve McConnell类比)。而且他也是最早的几个把自己的著作放在自己的个人网站上发表的大牛之一。最近他又写了一篇叫做《Continuous Design》(pdf)的文章,又是那种把经典理论写的让人耳目一新的典型MF式文字,值得一读——联系MF早年名噪一时的那篇讲述Agile Methods的经典文章《Continuous Integration》来看会比较有意思。我一直觉得敏捷方法将是未来软件企业的核心竞争力了,能不能接受和实施敏捷方法也是专业软件人才和菜鸟的分水岭。要是有时间研究一下CruiseControl之类的东西就好了。。。(哪位研究过或者近期准备研究的分享一下?)

Martin Fowler Speaks out on MDA

Read the Original Article Here

QUOTATION:

Some people think that Model Driven Architecture (MDA) will be biggest shift in software development since the move from assembler to the first high level languages. Others think that it’s nothing more than Night of the Living Case Tools. I’m in the latter camp but feel the need for more than a slick saying.

(more…)

IDEA和OptimizeIt的集成

IDEA的webapp的配置和调试界面远比JBuilder来的清晰和简洁,但是OptimizeIt是Borland买下的,跟JB配合很好,而 IDEA好像还没有这种插件,但是其实研究一下OptIt在Tomcat的启动脚本就可以知道其实这种集成是很简单的。

(more…)

The HelloWorld of AOP

终于,AOP系列的第一弹终于出来了,感觉这个东西主要是证明了“Hello world”情结对软件从业人员的影响之巨大。。。

文中使用了这篇文章中的示例和部分分析,特此致谢。

(more…)

21世纪不可不读的软件四大名著

现在软件方面的书真是多――可是在我看来真正值得“读”的实在是不多,最多也就是值得“翻翻”或者“查查”。但是我确实看过一些书――让我觉得是要一读再读反复回味并且获益匪浅的,这次就来说说我心目中不容错过的几本书吧——纯粹个人喜恶,绝无厚此薄彼之意,欢迎大家纠正、补充!

(more…)

AOP

最近又有点时间研究一下真正的技术了。第一站是时下的大热门——AOP。

AOP=Aspect Oriented Programming(翻译不能 -_-bbb “面向表面的编程”??想打自己一嘴巴……)

(more…)