The financial industry does seem to be loath to share the fruits of their efforts. There doesn’t seem to be a lot around. And certainly not much that is regularly updated. Maybe everyone is worried about sharing trade secrets, but the rules for calculations are well established and I’m guessing that everyone must be writing their own implementations or buying in over-priced modules.
As a developer of financial systems, I’m constantly disappointed by how difficult it is to perform precise decimal arithmetic in Java. It’s fairly common knowledge that the use of double is not much use for financial calculations. As a quick example, take a look at the following piece of code.
public static void main(String arg[]) {
BigDecimal bd = new BigDecimal("58.99").add(new BigDecimal("0.99"));
System.out.println("BigDecimal result: " + bd);
double d = 58.99 + 0.99;
System.out.println("Double result: " + d);
}
You would have thought both results should be the same. However, you end up with:
BigDecimal result: 59.98
Double result: 59.980000000000004
The following image shows what I have just been listening to, as determined by last.fm. Hopefully it’s not showing anything too embarrassing.
I already mentioned my foray into MySpace in search of new music to listen to. As a result of that I ended up setting myself up on last.fm. This is another social networking site oriented around the music you listen to. To get anything out of it, you will need to install their client software. This is a little app that checks what you are listening to in iTunes and uploads your playlist to the site. Based on this, it will provide statistics about your musical taste and let you know who your neighbours are each week, based on how similar their tastes are to your own. They also provide handy little things like generating images periodically that you can put on other sites, showing what you have just been listening to. You may not actually want to share such information, and from what I can gather, users do become rather careful about what they listen to, in order that they look as cool as possible. All those tunes that you are embarassed about liking get published out for all the world to see.
