stoutfellow (
stoutfellow) wrote2012-12-07 08:38 pm
![[personal profile]](https://www.dreamwidth.org/img/silk/identity/user.png)
Entry tags:
Bookkeeping
As I may have mentioned, I am prone to obsessiveness about certain things. One of those things is financial recordkeeping. I've tried some of the commercially available software - Quicken, MS Money, etc. - and been dissatisfied: they all do lots of things I'm not interested in, and don't do things I'd particularly like. Eventually, I decided that I'd have to write my own.
Back in 2005, then, I used MS Access to put together an approximation of my dream software. Only a crude approximation; I used out-of-the-box tools and wrote a few macros, but didn't do any serious coding. I've used that setup since then, and been, if not satisfied, at least willing to put up with its flaws.
They did grate on me, however, and a few weeks ago I finally bit the bullet: I began teaching myself VBA, the programming language used by MS Office products, and set to work putting together something that really did what I wanted. (This is strictly hobbyist-level work, of course; I make no claims to more than tyro status as a programmer.) Over a span of a couple of weeks, with frequent consultation of the online help, I put together a set of tables, queries, forms, macros and modules that did just what I wanted. (That's "just what I wanted" as of last Monday; since then, I've come up with a couple more things I want it to do....)
It was at about that point that I finally got my hands on a programmer's guide to the current version of VBA. I quickly recognized numerous inefficiencies in my code, and so I've found myself forced (obsession again...) to redo a lot of it. I'm still in the middle of that task, but the thing about efficiency is that it's efficient; each bit of reworked code I write makes the next bit that much easier.
In any event, I'm pretty happy with what I've developed. A year from now, if I want to know how much I spent on cereal between June 3 and August 15, I'll be able to find out with a few taps at the keyboard and mouse. If I want to know how much I've spent at Amazon in that time span (or any other, as long as it begins no earlier than a week or two ago), I can; if I want to know how much money I've picked up on the street, I can do that too. Entering the itemized data from a trip to Shop'n'Save is a snap, and likewise tracing the various pieces one of my paychecks is parcelled into. Balancing my checkbook or my MasterCard account, comparing how much of my entertainment money went to CDs, DVDs, or theaters, tracking the fluctuations of my MassMutual TDA - this can do everything I wanted it to do.
(Yes, isn't this ship in a bottle pretty? And absolutely to scale, too!)
Back in 2005, then, I used MS Access to put together an approximation of my dream software. Only a crude approximation; I used out-of-the-box tools and wrote a few macros, but didn't do any serious coding. I've used that setup since then, and been, if not satisfied, at least willing to put up with its flaws.
They did grate on me, however, and a few weeks ago I finally bit the bullet: I began teaching myself VBA, the programming language used by MS Office products, and set to work putting together something that really did what I wanted. (This is strictly hobbyist-level work, of course; I make no claims to more than tyro status as a programmer.) Over a span of a couple of weeks, with frequent consultation of the online help, I put together a set of tables, queries, forms, macros and modules that did just what I wanted. (That's "just what I wanted" as of last Monday; since then, I've come up with a couple more things I want it to do....)
It was at about that point that I finally got my hands on a programmer's guide to the current version of VBA. I quickly recognized numerous inefficiencies in my code, and so I've found myself forced (obsession again...) to redo a lot of it. I'm still in the middle of that task, but the thing about efficiency is that it's efficient; each bit of reworked code I write makes the next bit that much easier.
In any event, I'm pretty happy with what I've developed. A year from now, if I want to know how much I spent on cereal between June 3 and August 15, I'll be able to find out with a few taps at the keyboard and mouse. If I want to know how much I've spent at Amazon in that time span (or any other, as long as it begins no earlier than a week or two ago), I can; if I want to know how much money I've picked up on the street, I can do that too. Entering the itemized data from a trip to Shop'n'Save is a snap, and likewise tracing the various pieces one of my paychecks is parcelled into. Balancing my checkbook or my MasterCard account, comparing how much of my entertainment money went to CDs, DVDs, or theaters, tracking the fluctuations of my MassMutual TDA - this can do everything I wanted it to do.
(Yes, isn't this ship in a bottle pretty? And absolutely to scale, too!)