DollarCal: The one New Year’s resolution I’m absolutely committing to.
So here we are! It’s 2016 and I’m ready to start on a side project that I procrastinated for the entirety of last year. No, really, I purchased the domain name in January of 2015.
“New year, new me!” Right?
Right. Because this year I’ve accepted a challenge. It’s called The One Side Project per Year Challenge. And it’s the one New Year’s resolution I’m absolutely committed to seeing through. Its goal, is to hold people accountable for completing things they’re passionate about. Things that may change the world. Or things that may just make even one person’s life, a little bit easier.
Which is exactly where I’m starting with DollarCal; making my life, and working with my finances, a little bit easier.
I’m guessing there are very few people who actually enjoy sitting down at the computer and managing their finances. While I’ve always considered myself to be “good” at it, it’s not particularly enjoyable. Having to worry about when the next pay day is so that I can pay a bill right before it’s due. Or wondering if I’ll still have enough money for that big Summer vacation if I take a spontaneous trip this weekend.
Every dollar spent now is one that cannot be spent later.
This is the point where some people would say: “I just always know how much money I have,” or “Don’t you use Mint.com to track your finances?”
The problem with what exists today
You see, the guy who always knows his money situation and where every dollar is or will be spent is a magician or something. And the other slightly more relatable person who uses Mint is on the right track.
But I want to know where my money is going to go, not where it’s already gone.
The endless categorization of past spending just so that I can see things in a donut chart doesn’t do anything for me. I know that I went to dinner more than I went grocery shopping. I was there.
Instead what I want is a calendar. I want to see (roughly) where I’m going to spend money. I want to see on a random day 3 months from now, what my balance will be. And I want to know that if I spend an unplanned amount this weekend, that it doesn’t ripple into chaos down the road.
What I’ve been doing
Years ago I built version 1. It was simple. I could add and remove debits and credits. It could be easily styled and formatted to be more appealing. And I even added a feature or two that would highlight extreme lows and highs in a given period.
Oh! And it was built in Excel.
But it works!
- Each row is either a debit or credit to my account
- Each column is a day of the month (I manually delete days as they pass)
- Toward the bottom just above the Running Balance, I manually update my current balance
- Simple math adds up a days transactions
- The days transactions are used to derive a running balance
The obvious problem with this approach has always been that columns (months) need to be added as others are removed. And I’m pretty tired of adding columns.
I’m an engineer. There has to be a better way.
Introducing DollarCal
DollarCal is a calendar based view of your future finances.
Moving this process into a web application will not only eliminate the manual upkeep (finally), but will allow for the expansion of new features, analysis, and hopefully some day, users.
So far so good…
Fortunately after years of doing this manually, I have a pretty good sense of what needs to be done in order to create this. In about one night I was able to get the “Transactions” app built using Django (yep, I’m a Python guy).
Transactions is so far a basic CRUD (create, read, update, delete) app inside of the larger Django site. It has the functionality to:
- Create new Transactions
- See details for already created Transactions
- Update details for a Transaction
- Delete Transactions
- See a list of all of your transactions
“So uh, where’s the calendar view?”
Up next I need to get the calculations running. I need the ability to give a current balance and way for the Transactions to start generating a running balance from that. I assume at that point I’ll have a bunch of “Day” objects or similar that I’ll be able to make a calendar view out of.
So that’s the goal for February.
If you too have taken this or a similar approach at managing your finances, or if you have any ideas on how to make DollarCal awesome, please feel free to leave a comment and chat about it. After all, I’m sure I’ll need some beta testers eventually!
As always, give this article a 💚 recommend if you enjoyed reading it. And please, follow One Side Project Challenge to see all the awesome things being worked on.