Mint.com has a fantastic interface that seemed to simply leap-frog all the competing online financial management software in terms of user experience. Personally, I had no interest in finance software until I started playing around with Mint and realized how easy it could be to consolidate all my accounts into one online interface and track my overall financial health easily and with something close to joy. Then, since I let computers pay most of my bills automatically, I set up "alerts" to let me know when balances were getting low, etc.
But, something is broken, or at least overly simplistic, about the way the engineers at Mint wrote their notification software. Here is my somewhat educated guess as to how it works. Mint reminders operate on a queue – a huge list of reminders waiting to be sent out. The script that sends off their reminders runs constantly over the course of the day, making sure that active users are getting notifications in a timely fashion. But their active user prioritizing seems to come from a blunt sort, which in natural language would be something like "give me a list of a thousand customer reminders with the reminders for the most recent site visitors first". The net effect of sorting a query in this way is that the absolute most recent visitors – meaning, the people who just logged in – are always processed first.
Here's how this software design manifests into real-world user experience. Each time I log into Mint.com, my user account is updated to show a very recent site visit. When the notification script runs a few minutes later, my recent visit wins me priority in their sort, and I get bombarded with the alerts and notifications that have been saved for me in the queue. I am told via text that a budget range was exceeded. I am contacted via email about a bank fee charge. And so on. But, having just logged into Mint.com, I just saw all of these notifications on the website. The offline solicitations to check on my finances are, absurdly, prompted by the fact that I just checked on my finances.
I'm not interested in Mint-bashing, it's a great site. But their redundant alerts serve as an excellent example of how "back-end" software decisions, like a sorting scheme written too simply, can directly affect user experience.
Don't get me started on Amazon's automated email sales pitches.