You may have heard of this idea, where the challenge is meant to ease you into the practice of putting money into savings every week. In the original concept of the challenge, you put $1 into a savings account on the first week, then $2 on the second week, $3 on the third, and so on, until you put $52 into savings on the final week. If you stick with the challenge, then it means you’ve saved $1,378. That’s nothing to sneeze at.
But what if you have a savings goal that is higher than that? And what if the rigid payment schedule doesn’t match your annual income and spending habits? For example, if you start the challenge as a New Year’s resolution in January, you will find yourself putting more money into savings just as the holiday season approaches — traditionally, a time of higher spending.
As a side project, I built a small website that facilitates the money challenge, but with the opportunity to set your own goal and order of payments.
Using the Site
Once you create your personal user account, you can set up as many savings plans as you like. So if you want to save up for more than one thing, you can do that. The goal you set for each savings plan must be more than $1,378. Your personalized savings plan will be made up of unequally divided payments.
If you set up a plan, make sure to log in each week and take a look at the list of payments in your payment plan. Consider your financial situation that week: how much money do you have in your checking account? Do you have any major bills due next week? Choose the highest amount you feel comfortable depositing into the account. Make the deposit and mark that deposit as paid in the plan.
Future of the Money Challenge
This project is mostly meant for me as a coding exercise: that I could figure out how to write the payment plan, build a small user interface, etc. However, there is more work to be done. I need to write up some good tests for the software, and build in some new features. Two features I would like to build: an email reminder sent a week after the deposit, and a PDF option for printing out a payment plan rather than rely on the system. Are there any other features I should add?
I have uploaded the code to Github, so feel free to review it. If you decide to review the code, do you see code that might be worth my time to refactor?
Thanks for taking a look, and please feel free to leave feedback.