A collection of thoughts, ideas and rants inspired by my career in the fintech and banking industry.

Mercurial changes how you work

I’ve recently started using Mercurial, which is a distributed version control system.

DVCSs initially struck me as a solution looking for a problem. SubVersion seemed good enough for our purposes at work, but we decided to try out Mercurial for one iteration to see what all the fuss was about.

Perhaps the most significant difference between SubVersion and Mercurial is that Mercurial uses a local repository. This subtle distinction significantly changes how you work because you can commit your changes without having to publish them. A ‘commit’ in Mercurial is like a savepoint in database-speak - it gives you a safe place to roll back to if things go awry. Once you’re happy with your changes you can use the patch queue to fold all your commits into a single changeset and ‘push’ (i.e. publish) your changes to the central repository.

[Read More]

JRebel and Tapestry working together

I’ve recently started trialling JRebel at work. JRebel is a piece of software that hot-swaps your code so that changes made in your IDE are reflected in your application server without requiring a restart.

The benefits of this idea are fairly obvious. I no longer have to wait 1 - 2 minutes for JBoss to restart each time I correct a spelling mistake etc. The time saved by not restarting probably make the product worth the $US149 licensing fee.

[Read More]