07|18 Python module for Wesabe.com

For the last few years, I've been using a large Excel workbook to keep track of my personal finances. This worked well when I was living at home and my only expenses were Netflix and new hardware from Newegg. However, now that I'm living in an apartment, paying all my own bills I've found that keeping track of every transaction on a daily basis just doesn't scale to real life situations.

I've been playing around with Wesabe as a means of aggregating data from my various accounts for a few months now and haven't been all that impressed with it. Wesabe certainly handles data importing fairly well and their tagging interface is quite usable, but it just lacks a lot of the features I've become accustomed to in my Excel workbook (eg. custom graphs and future projections).

Now, I could use Wesabe's xls export feature and integrate it with everything else I've already got, but that would take quite a bit of work to keep thing sync'd and I fear that I would run into the same problems I currently have with scaling to large numbers of transactions. The alternative that I've chosen to pursue involves Wesabe's REST API mixed with some Django/matplotlib magic to generate all kinds of neat stuff on the fly from live data.

In the process of building this micro-economic paradise, I found that Wesabe's Python API is far from complete and was never intended to be more than a quick hack (nothing wrong with that, but sometimes you want more). I've written a more Pythonic, reusable Wesabe module. It's still a bit hackish and doesn't implement the entire Wesabe API yet (TODO: Financial institution, merchant, tags) but it's better than nothing. wesabe.py (pydoc)

This idea of a personal finance app is still a bit half baked, but I think it has potential. Hopefully I'll have something useful working soon.

I'm sure a number of people are going to tell me that this software already exists with Quicken or MS Money or MoneyDance but none of them do things the way I like to. I've never taken a real micro-economics class so I have a bit of a slanted way of looking at money, but it works really well for me and keeps me from spending too much money. I really like knowing exactly how much money I'll have six months from now (and being able to graph it).

07|07 Welcome to Web 2.0.23-r4

I began my evening finishing my port of The Paper from a pile of shell and python scripts into Django. The functional pieces have been done for a few days, but it was in some serious need of CSS work as I had just applied my default blog template to it while in development. The goal of all of this was to make the code a bit easier to read (for the day when I release the source) as well as make it easier to read on the iPhone.

One thing lead to another and I ended up copying the new, AJAX heavy template back to my blog for general consumption. The codebase of my blog and The Paper are now surprisingly similar, giving me this kind of flexibility. I didn't really think my blog needed a new template, but I just loved all the AJAX stuff so much that I couldn't let it go to waste on a page that only a few dozen people will ever see.

My ultimate goal is to learn how to get Django's authentication system working the way I want it to so that I can open up The Paper for anybody to add their own feeds and create their own pages for. I kept this in mind with the rewrite and it shouldn't be too difficult to get that sort of functionality going in the future. Let me know if you'd be interested in using such an app if it were made available.

The underlying theme of this post is that it's just a lot of fun to build sites for the iPhone using Django. You really get a level of flexibility that no other mobile device has ever come close to. The iPhone isn't perfect though, but there are plenty of other blogs that will tell you why so I won't waste bits on it.

I'd be interested in hearing ideas for iPhone apps that should be developed. If you've got one, shoot me an email synack >at< neohippie.net.