The Infinite Kind Blog

The Infinite Kind Blog

Moneydance and File Management

Now that the mad dash involved with releasing Moneydance 2012 is subsiding, I’d like to explain some of the most significant changes that we’ve made.

If you’ve been using Moneydance for a while and have an advanced workflow then you’ll have noticed that it now manages your files in a very different way. Rather than maintain data files in various locations across your computer such as Documents/Finances/MyFinances.md, your files are now kept within a special folder that Moneydance manages. This has significant benefits, but it does come at a cost for people who prefer to manually manage their files. This post will explain the benefits and costs as well as how “power users” can migrate their workflow to the new system.

Managed Data Benefits

The first benefit of managed data is that the vast majority of customers need not worry about where and how their files are stored. If you’re even reading this article you can likely handle the complexity that the new model tries to minimize. Even so, there are many benefits provided by the new model.

Evolving Abstraction

Computers should help you perform your tasks, not get in the way. Having to think about files when managing your finances reduces productivity by adding unnecessary distraction. We want your brain to be focused on assessing your finances rather than where the file storing your finances may be located. Of course, if you do want to know where Moneydance keeps your files, that is easily done using the Help->Show Documents Folder menu.

More Flexible Data Structures

We have a great data file format. Unencrypted Moneydance data files can be opened and edited using a standard text editor. It is accessible to humans as well as scripts and other programs while still being efficient and relatively quick to load, even when storing decades of financial history. However, it was clear that we needed a more flexible way of storing additional information. Without breaking out of the single-file format we were limited in the kinds of data that could be stored.

One example is how Moneydance will soon store attachments to transactions. Storing PDF and image files in a single file would be a performance nightmare. With internally managed data, we will be able to store attachment files without having to pack everything into a single file.

Consistent Data

Moneydance used to behave similarly to document-based applications in that you could Open, Save, and “Save As” files that were stored anywhere on your computer. This was a comfortable model that a lot of people knew how to use.

The thing is, Moneydance has never really been a document-based application. Only one “document” can be open at a time, and the vast majority of customers would only ever have one single document. It was a library-style app in a bad document-based disguise.

Moving to a library style design lets Moneydance keep better track of the files that it needs to function. It can keep synchronization data in an incremental storage so that syncing with services such as dropbox and mobile apps is faster and more reliable. It lets us keep transaction attachments safe, encrypted, and close to the transactions or accounts with which they are associated. These are all difficult to impossible with a document-based model.

Exit Without Saving

Some people have requested that we bring back the ability to exit Moneydance without saving any of the changes in the current session. I don’t think we will bring this back. One of the reasons is that exiting without saving the current data breaks synchronization. If a new transaction is synced from your iPhone or Android phone and you exit without saving that synced transaction, then you’ve just lost a bit of data. That’s obviously not acceptable, and the example shows that Moneydance data files are not documents in the same way as word processing files, spreadsheets and images.

We do recognize that exiting without saving did serve a purpose. We would like to provide a better way to get the same function. One way is to keep a history of changes (which ties into the syncing mechanism). Time Machine and other backup software provide a similar function at the file level. You can restore files and folders from different days and sometimes hours and minutes. To summarize: exiting without saving is a crude way of doing an “undo”. We’re working on a better way. In the meantime, if that ability was important to you then you should stick with Moneydance 2011.

Syncing Across Multiple Computers

Moneydance 2012 adds the ability to sync your data with mobile devices such as our iOS app over Dropbox without installing a separate extension. While this is much more convenient for syncing with mobile devices, this does not enable desktop-to-desktop syncing. Some Moneydance customers keep their data files under their Dropbox folder, allowing their data to automatically sync to and from other computers connected with the same dropbox account.

While this approach, and Dropbox in general, is a wonderful way to keep your files in sync across computers, there is one problem: You (and your spouse, coworkers, etc) are responsible for making sure that the file isn’t opened on different computers at the same time. If you left Moneydance running on your office computer and then try to make a change on your home computer, you may end up with a very difficult-to-resolve conflict on your hands.

Our solution, which isn’t yet ready, will be for Moneydance to synchronize data files using a shared sync folder, similar to the way that mobile apps are synced already. This solution will be far better than simply storing your data file in dropbox because it means conflicts can be automatically resolved, even if multiple people have made changes at the same time. Our plan is for this syncing solution to work with Dropbox or any shared-folder system.

In the meantime, if you require your Moneydance data to be shared across multiple computers you should continue using Moneydance 2011 until the new syncing mechanism is ready.

Your Managed Data Folder

For more details on how and where Moneydance stores data files, please see the Data File Locations FAQ.


If you want to get in touch (or stay up to date), we’re @moneydance and @theinfinitekind on Twitter.