Budgetwise Update December 2021

Greetings everyone! It’s been a very busy month or so since we last spoke. We are still working on the new Budgetwise “Archimedes”, but have also been hard at work updating the current version. Here’s a list of some of the fixes and improvements we’ve done, and what’s next:

Current Fixes & Improvements

Refactored Codebase
We’ve updated all of the systems to the latest versions, which was a very involved process with lots of breaking changes but the end result brings better overall performance. This includes the server, database, and the underlying services that everything depends on.

Optimized Budget Creation Logic
Previously, creating a budget involved lots of effort on the browser side, which left many opportunities for bugs to appear since everyone’s devices and browser preferences/setups are different. With the latest update, a lot of that business logic has been moved to the server so that it does’t rely on the user-facing side as much.

Converted to a Monorepo and Streamlined Deployment
Previously, Budgetwise Pacioli was spread across several different code repositories which made it a bit more challenging to keep organized and deploy. It’s now been moved under a single repo, a “monorepo”, and the deployment process has been totally overhauled.

Additionally, we replaced Digital Ocean with Vercel as our deployment platform for the frontend, and Digital Ocean with Heroku for the backend since they have many awesome features that will let us build and deploy without fuss.

Improved Database Performance
The database has been improved and you should be able to see noticeable performance gains. In our testing, we were table to take a huge query that took 30s and bring it all the way down to 3-5s. There will be further improvements around the database soon, but we wanted to have a great starting baseline.

Upcoming Improvements

Perhaps the biggest bug we are working on right now is the one where some users experience nothing but “0.00” across their budget page, even though they previously had data there. This is caused by a memory issue resulting in the calculations not completing properly, and we are working to rewrite some areas to fix this and make sure it doesn’t happen again.

Another area we continue to work on is improving the client/server performance and reducing unnecessary or duplicate API calls. One big example is when you first log in, there are 20+ calls but we plan on condensing this down to only a handful, which will greatly improve speeds and reliability.

Release Date for the Latest Fixes
We continue to work on Archimedes, but we want to make the current version as usable as possible. The changes listed above have actually been deployed to production as of last night! You should be able to see some performance gains now.

Thanks for reading, and looking forward to talking to you soon! As always, feel free to reach out to us on Discord or send us an email at [email protected] or [email protected]