9/21/2009

Doloto: JavaScript optimization tool

Doloto is an AJAX application optimization tool provided at Microsoft DevLabs.

It works as an local proxy server, and it profiles JavaScript in Ajax applications. After profiling, Doloto groups JavaScripy functions as clusters based on profiled data. And rewrite original JavaScript code to load functions on demand using XMLHttpRequest.

Doloto is very simple and easy to use. It makes lazy loading of JavaScript with no changes of your applications.

9/05/2009

Vilike: Open Source vi Plug-in for Eclipse

viPlugin for Eclipse is a major plug-in that provides vi like key binding for Eclipse. However it's not open source. We have to buy license to use it (15 Euro).

Today, I found an open source vi plug-in named Vilike. I tested this plug-in and felt it good.

You can get it from the download page.

  1. Download jp.gr.java_conf.mitonan.vilike_0.1.0.beta1.jar and put it into ECLIPSE_HOME/dropins.
  2. Restart Eclipse and choose ViLike Key Binding Scheme ad the key binding schema in the Eclipse preference dialog ([General] - [Keys]).

Try Vilike plug-in if you want to bring Eclispe key binding close to the vi editor!

8/24/2009

JSDT: JavaScript Debug Tool

JSDT(JavaScript Debug Tools) is a JavaScript debugger that supports multi web browser without any add-ons.

Existing JavaScript debugger such as Firebug works for only specific web browsers or requires special add-ons. However JSDT has no requirement. It supports IE, Firefox, Chrome, Safari, Opera and many other browsers.

It works as the HTTP proxy server and this proxy inserts JavaScript code for debug into original JavaScript code. Inserted code sends debug information to debugger using Ajax.

JSDT provides a Swing based stand-alone debugger and an Eclipse plug-in. We can choose them by our development style.

Now, JSDT has some problem to debug JavaScript which contains multi-byte characters. So the current version is not so practicable. However JSDT's debugging mechanism looks epoch-making. I'm looking forward to the future of JSDT!

7/26/2009

Utility to use JDO easily on Google App Engine

We can use JDO to access BigTable on Google App Engine for Java.

However JDO PersistenceManager and Query object are so complex. So I wrote an utility to use JDO easily. For example, you can search entities as follows instead of JDO Query object.

List entries = JdoUtil.from(Entry.class)
  .filter("userId == ?")
  .ordering("updateDate desc")
  .range(0, 20)
  .getResultList(userId); 

No need to cast result objects and Query#declareParameters() also.

I would like to provide this utility in the part of my NikoNiko Framework (NikoNiko means Smile in Japanese). NikoNiko Framework supports both standard JavaEE web development and Google App Engine for Java. It's small and lightweight. It would be suitable for the small web application development.

4/03/2009

Empire-db: Type-safe query builder

I found a new database access framework named Empire-db in the Apache Incubator.

A most important feature of Empire-db which I think is a type-safe query builder. See a following example from Empire-db's web site.

// Create a command object
DBCommand cmd = db.createCommand();
// Select columns
cmd.select(EMP.EMPLOYEE_ID);
cmd.select(EMP.LASTNAME.append(", ").append(EMP.FIRSTNAME).as("NAME"));
cmd.select(DEP.NAME.as("DEPARTMENT"));
// Join tables
cmd.join  (DEP.DEPARTMENT_ID, EMP.DEPARTMENT_ID);
// Set constraints
cmd.where(EMP.LASTNAME.likeUpper("Foo%"));
cmd.where(EMP.RETIRED.is(false));
// Set order
cmd.orderBy(EMP.LASTNAME);
cmd.orderBy(EMP.FIRSTNAME); 
This feature is very useful at the software development projects which face many changes of database schema. Because compilation errors are caused by changes of database schema. We can fix these errors completely and surely soon.

1/02/2009

Toggle comment in the Velocity editor

I've just start development of the next version of ClickIDE.

I added Toggle Comment action to the Velocity editor. You can toggle comment for selected lines by the context menu or CTRL + /.

By the way, Now I'm planning JSP and FreeMarker support in the next version of ClickIDE. I have no concrete idea yet, but I wish to provide FreeMarker editor which has features same as the Velocity editor.