Atomic Money - from a spreadsheet to a side project
Tags: react, sideprojects, javascript
Published: 2020-05-27 08:14:12

_This post was originally published on May 27th, 2020 on [my blog](https://mersocarlin.com/blog)._

Tracking expenses is not an easy task.
Some folks use apps, some others use a spreadsheet and some don't even bother (or care) where their money is going. 
After all, a positive balance on the bank account is what really matters. Regardless of the methodology people adopt to get there.

I started my expense tracking journey years ago and since then I've been tracking them on an (almost) daily basis.
And after some time, I realised I had a use case for building my own side project and level up new skills along the way.

I am going to break down this story into 3 parts just to make it easier to explain my thought process:


- V1: Spreadsheet file
- V2: Google Forms
- V3: [Atomic Money](https://atomicmoney.app)

## V1 - Spreadsheet file

I couldn't start any easier and simpler than that.
I had the perfect tool for tracking my transactions with a very detailed output of income vs expenses.
Needless to say that Spreadsheets are really powerful for dealing with numbers and complex calculations.

Past data might not predict what is to come next, but they were helping me to at least get an estimate about how much money I would spend with X category at a given time.

Even if I wanted to start budgeting for a big purchase in the future or for an upcoming trip for example, I had some sort of historical data to begin with.

<div class="blog-post-image">
  <img alt="Summary of income and expenses in the spreadsheet" src="https://mersocarlin.com/assets/blog/google-spreadsheet.jpg" style="width: 80%;" title="Summary of income and expenses in the spreadsheet">
</div>

The spreadsheet worked pretty well for a few months and I was really happy with it... at first.

However, having to keep receipts in my pocket for later, losing most of them and the fact that I had to remember to open the spreadsheet (almost) every day to update my transactions was not very pleasant.

The need of some sort of UI was evident.

Moreover, I wanted to bring my wife to this journey. As a couple, I think it's important we both are on the same page with our expenses.

Would your partner agree with saving daily transactions on a spreadsheet? Being _"forced"_ to keep receipts when going out for lunch with friends or traveling?

Mine definitely wouldn't. And this is how I got V2 started.

## The V2 - Google Forms

We used Google Forms for years.
I kept the spreadsheet as its core and I had my first _"front-end"_ prototype working.

If you compare V1 with V2, I could save a new transaction from anywhere I was (even from my smartphone as long as I had internet connectivity) and my wife was really into it.
It just became something super natural for both of us.

We had a detailed summary of all our expenses, by category and very accessible.

As a side note and just to put a timeline in all that, this happened in 2015-2016 and new frameworks such as ReactJS were starting to get attention even more in the tech scene.

About that time too, we were going to start tracking our expenses in an extra currency (we moved from Brazil to Germany) and our mindsets were ready to keep a history of all of our transactions.

We were both curious to compare how different our life was going to be by simply saving our expenses from Brazilian Real (BRL) to Euro. Were things going to be cheaper or more expensive? Less or more money at the end of the month?

<div class="blog-post-image">
  <img alt="Google forms I shared with my wife" src="https://mersocarlin.com/assets/blog/google-form.jpg" title="Google forms I shared with my wife">
</div>

## The V3 - Meet the Atomic Money App

At this point, I felt the need to code something on my spare time and apply some of my knowledge.
I was ok writing "TODO lists" for every new tool or framework I ended up learning and I needed something else.

It could be anything: maybe create APIs, experiment new tools, approach problems differently, reach for something outside of my expertise and comfort zone...

Also, I didn't have to replace the Google Forms for something else. I could even start a new project and keep using it up until today. I just saw a nice opportunity to combine business with pleasure and experiment new things on a real world application.

My requirements were simple:

- A form page similar than the Google Forms that me and my wife were already used to
- Multi-currency support
- Listing page so we could easily see latest transactions as well as search for past transactions
- Create categories on demand
- Dashboard page with stats: income vs expenses, category overview, how much we were spending on daily basis..

Here's a sneak peak of the final result: 

<div class="blog-post-image">
  <img alt="Atomic Money App" src="https://mersocarlin.com/assets/blog/atomicmoney.gif" title="Atomic Money App">
</div>

Did you like everything you've seen so far? 


You can either click [here](https://atomicmoney.app) or simply go to https://atomicmoney.app: It's completely FREE and you can start tracking your expenses right now!

## Conclusion

[Atomic Money](https://atomicmoney.app)'s journey is just about to begin and I can see room for improvement as well as the addition of new features.
But there's no way you can possibly know if your project works or if it is going into the right direction if you don't get feedback from your audience.

And this is why I'm writing this blog post for.

I was always waiting to release the _"perfect product"_ and I will never get to that point.
I think it's better to fail fast, learn with your mistakes and improve along the way than waiting for something that might never end or happen.

If you are waiting to reach that level of confidence too, I'm afraid it is going to be too late until you realise you could've taken a different approach.

And if you came this far reading my post, thank you very much for your valuable time and patience. I really appreciate it.

I truly hope my journey can be of any help and inspiration for you too!

Stay budgeting!