We work in four-week long iterations, each of which has some pre-defined deliverables.
In each iteration, I’m going to write the Java code first, then implement the same features with Ruby.
It may make better sense to code in Ruby first, since it’s supposedly better for rapid prototyping. However, my deliverable as far as my employer’s concerned is the Java app. In other words, I have deadlines for the Java code. My Ruby deadlines are self-imposed, and thus can be postponed indefinitely :)
Nevertheless, my plan is to stick to the four-week iteration deadlines in both environments, i.e. finish the Java code before time, then do the same in Ruby by the end of the iteration.
This isn’t going to be easy. From my boss’ point of view, my Ruby experiment is no excuse for failure to deliver the main (Java) solution on time and in good quality. From my wife’s point of view, it’s no excuse for failure to get out of the office before . In short, Ruby better be as fast to code with as its proponents claim…