As technology marches on, life gets easier for each generation. I personally was never that curious about the struggles of my parents and grandparents generations, and how they had to live their lives and perform their work with the now seeming antiquated science and technology of their times. So I was taken back a bit when my son first asked me about a personal budget and finance management program that I had written for my own personal use back in the 80s, that somehow survived right up to the introduction of the iPhone and its modern day world of applications decades later.
He and I share an interest and a passion for programming, and a career in IT and it turns out that he is curious about the challenges, trials and tribulations of my programming this application back in the day. So I’ll try to address questions he posed to me through this story.
Although I was taught about the value and importance of saving money by my parents early in life, I never really had a need to track and monitor my income and expenses until Mary and I started living together in the real world and had our own responsibility for basic expenses. My parents definitely enjoyed some level of moderate affluence and were always able to handle any bills that came in yet I have this lasting image in my mind of my father sitting at the dining room table on a Sunday morning, bills and envelopes strewn all over the table, as he exhorted his anger and frustration over having to pay them all. I told myself right then and there that when my time came, I would always have the money set aside and ready to go to pay any bill that ever came in. I may not be happy about it either, but I’d be calm, cool and without anger.
When Mary and I started out living together, it was two years before the introduction of the IBM PC; local and wide area networks and the Internet itself were not yet on the commercial scene. Information in general was never at your fingertips; you always had to go out and search for it. I came to understand the value of a so-called envelope budget system where every type of expense or savings could be individually categorized and tracked, but I had no way at all to automate it. So I did what was not unusual at the time. I decided to do it by hand, using extra wide accounting ledger type stationery, folding it way out to accommodate all of my categories in columns.
Whenever we received any income, I would manually sprinkle it across the categories to ensure that when an upcoming bill arrived, the money would be there. It was tedious and tiring but I did it for every piece of income we got and when we paid each bill I would decrement the appropriate column.
Shortly thereafter, I began to work at Canon, programming their proprietary microcomputer in a language called the Beginners All-purpose Symbolic Instruction Code, a.k.a. BASIC. This Canon microcomputer had a full keyboard and a one line 20 character display. We used legal sized yellow pads upon which to write our code, then rekeyed it one line at a time into the micro computer. As I performed my job programming things like certificate of deposit and installment loan calculations for banks, I realized that I had the knowledge and the tool to program my own budget application for myself. BASIC was a language that ran through an interpreter at the time and the programming process was fairly easy and primitive with no compiling required. I implemented a couple of menu options, but the one that paid the most dividends over the old hand method was the automating of the sprinkling of the income into the different categories, at the touch of the button. You could then step through all the categories one at a time, and see the current balance for each on the one line display. This was revolutionary for the time but today seems Neanderthal.
The IBM PC was also now emerging into the marketplace, and companies like Canon were introducing more sophisticated models to compete. Canon introduced a much more advanced microcomputer with a full monochrome CRT display, with 24 rows of screen with 80 characters each, quite a leap from a one line 20 character display.
Like the iPhone was to do decades later, the IBM PC spawned an entire industry of third-party tools, both hardware and software, that greatly expanded its capability. A company by the name of Ashton-Tate released a relational database management system within an English like high level procedural programming language called dbase II, that quickly came to dominate microcomputer software development at the time and revolutionized the industry.
By this time, I had transitioned to working for an independent Canon dealer, and we quickly adopted Ashton-Tate’s dbase II as our programming development language for the financial applications that we were delivering to credit unions. As I worked more and more with dbase II and its successors dbase III and III plus, I began to program with it as a hobby for my personal needs such as address books and cassette tape labels. It seemed like there was nothing I could not develop in dbase. So I turned my attention to my budget needs.
Like its birther the IBM PC, dbase itself too spawned a universe of third party accessories including code generators, compilers, and magazines. Again, absent the internet, there was no such thing as user groups or discussion boards; the Data Based Advisor periodical became the ultimate reference and learning tool for dbase programming. I waited patiently each month for its arrival in my mailbox eager to soak up its knowledge. I also went to bookstores to buy additional references.
Programming back then would seem primitive today. I had to program on my one and only computer, ensuring my own backups to the media available then, and storing them off site for maximum protection. The coding itself for this application was fairly trivial, not rocket science by any means, but I always strived to write the most efficient code possible because the IBM PC microcomputer architecture provided limiting constraints with memory, storage and raw computing power.
Using the third party compiler, Clipper, I created an executable file so that along with the dbase data files, could be ported to any other machine and would not require the native dbase package to run.
As I continued to embellish my program, eventually it reached full functionality for my purposes and I just kept on using it as the years went by. As microcomputer technology marched on, from text based to graphical based user interfaces to handheld devices, I just kept using my program because it did everything I ever dreamed of for budget management, my way. Ultimately, the evolution of the microcomputer architectures and operating systems approached a point of no return, rendering all software originally dependent on such antiquated technologies incompatible and unusable.
Fortunately, for me, this did not happen until the iPhone, and its own world of third-party applications had taken over the world; and applications, such as the one I struggled to conceive and develop decades ago now seemed like they were a dime a dozen. I found one particular application that did absolutely everything that mine had done and would run on any of today’s modern devices from iPhones to iPads to laptops and eventually I said goodbye to my passionately developed budget system.
Oh yes, and I’m still able to pay all the bills, and from any place at any time!