Archive for June, 2008

Money Management

Posted by alex on June 24th, 2008

Money Management

Knowing how much we spend on what is a problem everybody faces and people have come up with many different solutions based on their needs. Personally, I’ve found I’m too lazy to maintain an Excel spreadsheet and I don’t trust myself with having no system at all.

I first started looking at money management software when I first heard of mint.com. It looks like a great service but unfortunately doesn’t support UK banks yet. Next I looked into desktop software that might offer a similar set of features. There are plenty out there such as MS Money, Moneydance, Quicken, GNU Cash etc. Unfortunately all of these lacked some essential feature (such as auto-categorisation), were too difficult to use or too expensive.

So I started looking into writing my own application with the features I wanted. This would have a line chart showing my overall balance over time, a pie chart showing the breakdown of my expenses into categorisation. And of course transactions would be loaded and automatically cateogrised with the minimum level of fuss. On this point I wrote an application that automatically logs into my online bank account and downloads my statement in csv format. While I eventually got this working (not a trivial task) I realised it was too clunky and fragile as it’s likely that my bank will change their online interface at some point in the future.

Next I looked into downloading transactions from my bank via the OFX protocol. This is the protocol that lots of banks use to allow software the ability to download transaction information and also potentially execute transfers. It was not easy to find the information I needed to connect to my bank (Nationwide) via OFX as the bank’s details are not officially published. Microsoft use these details when connecting to Nationwide with MS Money. I had to do quite a bit of digging until I found a link on a newsgroup to a file hosted by Microsoft containing the necessary details for connecting to Nationwide’s OFX server. Armed with this I posted the details to a thread on the Moneydance forums. That was 7 months ago and Moneydance have still done nothing about using my information to add support for Nationwide despite a lot of requests from other forum users.

I moved on from the downloading transactions part of my application to the application itself. I figured it would still be useful even if I had to occasionally download transactions manually. Here’s what I came up with:

I even came up with a decent categoriser dialog:

With the application itself shaping up I went back to the transaction download problem. This time I found a nice snippet of Python code for connecting to a server via OFX. I translated this to a Java application that could download a list of my accounts from Nationwide, then download a list of transactions within a certain date period from a given account. This program is available for download here.

Now that I had the ability to download OFX statements from my bank, I looked into the other management services I initially dismissed because I could only import data via OFX. Wesabe was one of these so I tried creating a new account but lo and behold, they now suddenly support Nationwide for automatic uploads. This means they do the whole OFX download themselves automatically. This was great as now I don’t need any manual process at all to see my transactions nicely split into categories. The funny thing was, support was added the same day that I finished making the OFX downloader and this was thanks to my initial investigative work into the Nationwide OFX server details. Someone had picked up on my post in the Moneydance thread, given the details to Wesabe, who within just 9 days integrated support for Nationwide into their application. So great work guys, you well exceeded my expectations and I’m glad I could help other fellow Nationwide users.

Now that little saga is over, onto the real issue of the software itself. The great thing about Wesabe is that I can view and manage my transactions from anywhere. This means I can log on while at work and enter what I spent in cash for lunch. The bad thing about Wesabe is that it doesn’t give a breakdown your expenses as a pie chart and it doesn’t present your overall balance as a line chart.

To rectify this I’ve chosen to abandon my Money Monitor program and try to go in a slightly different direction. I’ve always wanted to learn .NET programming so my next project will be to create a ASP.NET application that connects to Wesabe via the Wesabe API. Downloads transaction data and displays it all in nice pretty graphs. Stay tuned for updates!

Apple’s iPhone 3G

Posted by alex on June 22nd, 2008

Looking back at my post after the first iPhone was announced, it’s quite suprising how many of the predictions about the second iPhone were actually realised. Of course when I wrote it, it wasn’t just a matter of guess what would be improved but also a wish list of things I’d have liked to see before actually buying one.

I said the iPhone 2.0 would:

    be released 1.5 years after the first - Well that seemed about right.
    have 3G - Ok I predicted this would be in the European version. Obviously Apple had more trouble than most phone makers in getting us this feature.
    be smaller - Ok so the 3G is actually slightly thicker but without the metal back manages to be 2g lighter. It would still be nice if it could fit in your pocket though.
    have all the same features - A slight underestimation here. This was based on my reasoning that Apple would be quickly bringing out a version that fixes all the problems with the old one rather than spending money on new features. Of course the price was the big thing that Apple admitted put a lot of people off - especially outside the US. I also reasoned that they’d want to leave some features for the next generation of their phone rather than do they very best they possibly could right away.
    have longer battery life - One thing Apple came through on. Somehow they managed to squeeze more life out of it despite the addition of 3G which is a known battery killer. I suspect that extra width went mostly into a bigger battery.
    have more memory - Well we didn’t have to wait for the 3G version for this. They doubled the initial max capacity from 8GB to 16GB back in February this year.
    a slightly better camera (maybe with an led flash) - Clearly I underestimated the importance to most people of a decent camera on their phone. It would be nice to have but clearly people are not planning to use it replace their digital point and shoots.
    have more custom iPhone internet applications - This was a big focus during the annoucement of the 3G. The SDK is looking very interesting and I’m looking forward to seeing what people will come up with with the new hardware.
    have reasonable prices for unlimited mobile internet access - I still haven’t seen as much response from phone networks about this point as I’d expected. The unlimited data plans are still pretty dear (about £7.50 / month if I’m not mistaken). Still we’re moving in the right direction.
    get an overall price reduction - Apple claims to have made big improvements here by dropping the cost of the initial phone but are actually increasing the overall cost by increasing the data plan costs.

And the biggest improvement that I didn’t expect at all (and I don’t think anyone else did either) is of course A-GPS. I told myself I’d get the phone as soon as they added GPS and now that they have, well, I’m still not going to get one. The monthly plan prices are still way too much (3 times what I’m currently paying). The good thing about these announcements is that a lot more people I know will be getting one now which will give me a chance to play around with it and see what I think. Roll on July 11th!