May 26, 2010

TDD w/javascript using jsTestDriver and (f.ex) QUnit

JsTestDriver is seemingly yet another unit testing framework, and it stems from Google. I say seemingly, because the JsTestDriver guys has made some delicious improvements over the normal work flow which sets it apart from other unit testing frameworks for JavaScript so much it's not even funny to compare.

Having said that, JsTestDriver is (as the name implies) really more of a test runner. It ships a default assertion framework, however it doesn't offer all kinds of JavaScript specific assertions. Instead, JsTestDriver makes it fairly accomplish-able to use your current assertion framework of choice with JsTestDriver by providing a bridge. Last time I checked, both QUnit and YUI Test had functional bridges.
Test driven JavaScript done right / JavaScript - cjohansen.no

There's also an eclipse plugin.

 ff
Blogged with the Flock Browser

March 8, 2010

Spring Batch

Many applications within the enterprise domain require bulk processing to perform business operations in mission critical environments. These business operations include automated, complex processing of large volumes of information that is most efficiently processed without user interaction. These operations typically include time based events (e.g. month-end calculations, notices or correspondence), periodic application of complex business rules processed repetitively across very large data sets (e.g. insurance benefit determination or rate adjustments), or the integration of information that is received from internal and external systems that typically requires formatting, validation and processing in a transactional manner into the system of record. Batch processing is used to process billions of transactions every day for enterprises.

Spring Batch is a lightweight, comprehensive batch framework designed to enable the development of robust batch applications vital for the daily operations of enterprise systems. Spring Batch builds upon the productivity, POJO-based development approach, and general ease of use capabilities people have come to know from the Spring Framework, while making it easy for developers to access and leverage more advance enterprise services when necessary.
Spring Batch
Blogged with the Flock Browser

February 23, 2010

so you haven't seen complaints about maven?

have you only heard good things?  i'm surprised...

here's some stuff to balance it out.

first, a couple of common complaints:
  • too complex
  • too rigid
  • too buggy
  • too opaque
  • difficult and time-consuming to debug problems
then, a couple of links:
Howard @ tapestry, maven vs ivy
a collection of links on negative maven experiences


February 18, 2010

Separate Estimating from Committing

Don’t let your estimates become commitments. Remember the difference between an estimate and a commitment and keep the two activities separate, educating management and customers as necessary.
Separate Estimating from Committing | Mike Cohn's Blog - Succeeding With Agile®
Blogged with the Flock Browser

January 31, 2010

interface code smells

Interfaces are a very useful language feature, but are much abused. Symptoms include:
  1. An interface is only implemented by one class
  2. A class implements multiple interfaces. Often touted as an advantage of interfaces, usually it means that the class in question is violating the principle of separation of concerns.
  3. There is an inheritance hierarchy of interfaces (often mirrored by a hierarchy of classes). This is the situation you're trying to avoid by using interfaces in the first place. Too much inheritance is a bad thing, both for classes and interfaces.
All these things are code smells, IMO.
(Jim Cooper)
Why do most system architects insist on first coding to an interface? - Stack Overflow
Blogged with the Flock Browser