Where is the money going? That was the question on my mind in 2006. I wanted a way to track my expenses. That’s how MoneyTracker was born.

In the beginning, there was a text file. “Wait, a text file?” I hear you ask. Well, yes. I wanted something simple. I still do. Everyone does - at first. But complexity tends to grow with our needs. I can’t count the number of times I was commissioned to build a “super simple” system only to dig into the details and you know what lies there, don’t you? Yep, the devil. But forget about him for a minute and let me finish my story.

With a text file, I soon started to need to do a few things text files don’t do well. Things like sorting expense transactions aand filtering out ones too small to have a meaningful effect on any budget. Those things are what a spreadsheet is good at. So on to that I move.

But even that wasn’t enough. It served me well for months but you see, I was still living in Lebanon back then. In Lebanon, we use a mixture of cash and card payments. That’s in both US dollars and Lebanese pounds. And online banking services? hahahaha Let me just say that as a computer programmer, those banking platforms offend me.

I experimented with a few desktop applications some of which were too complex and others too simple. So I wasn’t satisfied with what I found. But even if I did find the perfect desktop application, I would still need to keep track of cash transactions at the very least and enter those manually later. Not good.

Hang on a sec. I’m a programmer(it seems I have to remind myself of that every so often). Writing software is my profession. Why should I suffer writing things on a piece of paper only to type it again into an application. If that got out, what would people say about me. I think you can see where this is going. So a web application shall be written.

MoneyTracker is currently at the 3rd iteration with a corresponding change in look and frontend technology stack. It had a mobile application at some point. It also underwent a name change but that’s what happens when you start getting famous. The feature set has only increased over the years as the needs changed.

For example, I used to pay a monthly gym subscription in cash. So every month, I’d have to record a transaction that says “Gym”. And that’s how the Recurrent Transactions feature was born. As the name implies, that would be any transaction that needs to be done on a particular schedule.

Some expdentures are essential such as paying for accomodation and food. Others, such as social outings, not so much and can be decreased if you’re trying to save more. How do you know how much money you’re spending on each group? Well, you tag the transactions and group them into whatever makes sense for your situation. And that ladies and gentlemen is how tagging was born.

Charts? Well everyone likes pretty charts. Besides the asthetics of the feature, a chart is useful in quickly spotting trends in data. You feel like you’ve been paying more for your electricity bills? Filter those transactions and chart them over the past few months and see for yourself.

There are still things that it doesn’t do well, however, and so it remains a work in progress. As an example, I’d like to add explicit support for budgeting and the ability to share information with another user such as your partner. But really what software is ever done?

As a free product, I can’t justify spending too much time working on it anymore but it has been a journey and the project was started as a result of scratching my own itch. As technology changed and the methods of payment has changed, so has MoneyTracker. I am happy to be able to share this with anyone who might find it useful.