Adam Jacques

Software Engineer + Product Development

Blog Posts

I occasionally write blog posts where I talk about software, hardware, or even plants that I'm working on.

Recent Posts

My new Framework laptop

I was recently in the market for a new personal-use laptop and wanted to try out a Framework Laptop. I was intrigued by the idea of being able to replace any part that failed or even upgrade parts as I went. I also was frustrated with the direction that Windows 10 and Windows 11 was going. They seemed more interested in advertising, tracking, sending notifications to increase my engagement of their apps, then just building an operating system that got out of my way and let me do my thing.

Continue reading...
Importing and cleaning Mint transactions

Since Intuit announced that Mint was going away, I’ve spent several months investigating how to import my Mint data into Firefly-iii, an open source, self-hosted budgeting software. It seemed like a perfect fit. I would fully own the data and get to build whatever tooling I want on top. However, before we can get there, we need to have cleaned and accurate data from Mint. As it turns out, Mint’s data actually had some errors in it that required me to go back years and fix them.

Continue reading...
What to expect when you're excepting Java

Birthing code is not always easy.

Enough puns. Let’s talk about Java exceptions. No matter how hard you try, your code will likely encounter an error and throw an exception (if your language supports exceptions.) It could be anything from unexpected user input to an underlying service outage. An exception will be thrown and it’s important to do something useful with it. That doesn’t mean putting try-catch blocks everywhere or trying to recover everything, in-fact I’ll argue the opposite in a few situations.

This post introduces a few common issues I’ve seen when working with Java code-bases and developers that lead to poor debuggability or other operational pains.

Continue reading...
Read all my posts