1981-1988 TSI: GrandAd: System Structure

The design of TSI’s ad agency system. Continue reading

This entry is rather wonkish. There are no funny stories. I just wanted to record the details while I could still remember them.

I gave our system the name “GrandAd”, but I doubt that anyone ever called it that. We were lucky if the users called it “TSI” rather than “Mike’s system” or “Sue’s system”. The original programs were designed to be run on a Datamaster with an external hard drive (described here). A few years later the system was converted to run on a System/36 (described here). We also converted it to run on an AS/400 (described here).

In the early eighties, administrative software systems generally fell into two categories: BICARSA (Billing, Inventory Control, Accounts Receivable, Sales Analysis) and GLAPPR (General Ledger, Accounts Payable, Payroll). Accounts Receivable was abbreviated as A/R. The GLAPPR modules were abbreviated as G/L, A/P, and P/R)..

GrandAd contained versions of all of these modules except payroll. I don’t remember even one of our agency clients using TSI’s payroll system. From an accounting perspective the distinctive features were that the GrandAd system had two separate methods of billing—media and other—that fed a rather standard accounts receivable system and a unique “media liability” module. The accounts payable system likewise had two separate sets of data entry programs, one for media vendors and one for others. If a bill from a media vendor included production charges, it could be entered in the media payables program after the media portion was completed.

None of the operating systems used by our customers distinguished between tables and data files, but our documentation usually did. In our parlance a table was maintainable by the users through simple editing. Data files could only be maintained through transactions that always created auditable detail records. Transactions were also usually entered in batches that updated the data files all at once. Changes made to items in tables took place immediately. Some important tables contained a few fields that could not be edited by the users. For example the G/L master file contained thirteen fields for the amounts for each month and adjustments. These fields could only be updated by transactions.

Every table had a unique key. The open item files for A/R, A/P, and media liability also had unique keys, as did the file with job costs by category and the media detail table. Detail files for transactions either had no key or keys that were not unique.

There was also one record-oriented specs table that TSI did not tell users about. We maintained this ourselves. It contained things like the agency’s name and address and a large number of “switches”, mostly binary Y/N designations that indicated whether the agency used optional features or the manner in which it used them.

Here were the principal tables, at least as I remember them:

  • Client: The key was a three-digit number. There was a field on this table for an “associated” client number to handle those cases where one company owned several semi-independent entities. Client #10 was usually used for in-house jobs and #11 for one-shot projects.
  • Job Type: The key was a two-digit number.
  • Job: The key was the client number plus a three digit-job number. The numbers could be assigned by the system. A few agencies had their own job numbering system. We kept this number as a twenty-character reference number. In general, 90000 was used for media billings. Every job was assigned a job type.
  • Job Cost Categories: The cost categories also had three digit keys. The categories were of three principal types: time, agency-owned materials, and vendor costs. The entries in the time categories consisted of hours worked on a job. The entries in the materials categories were dollar amounts. The vendor costs came from the accounts payable system.
  • Employee: The key was a three-character code. Initials were usually used here.
  • Rate: The key consisted of the employee code and the category number. It might also have had a date to allow rates to keep up with inflation.
  • Vendor: Vendors were keyed by a five character code and a two-digit location number. Checks were always cut to the name and address on location #0.
  • Media Type: A two digit code identified types of media—radio, television, magazine, newspaper, mailing house, yellow pages, etc.
  • Pub: Like the vendors, pubs were identified by a five character code and a two-digit number (usually 0). Every pub was associated with one vendor and had one media type. A vendor could have any number of pubs associated with it. Although the name “pub” was derived from “publication”, this table was also used for other media entities.
  • Media Ad: The key was the client number, a five-digit ad number, and a one-character version code (usually blank). The ad number was usually the production job number, but it could be something else.
  • Media Schedule: The key was the media ad key plus the pub key plus the date in the form YYMMDD and a two-digit number to preserve uniqueness. The last field was necessary because the same ad could be run more than once on the same day in the same publication or station. Three costs were stored on each record: net (the amount the agency paid the vendor), gross (net plus agency commission), and charge (the amount the client would pay).

The system provided for the following types of transactions:

Transactions were ordinarily entered in batch mode.
  • Menus specific to each type of transaction allowed for recording of new items, editing or (at least deleting) of items entered but not updated, printouts of the contents of the batch, and updating of data files.
    • Production and fee billing. Invoices could be printed on special multi-part forms or just recorded. The update program created records on the A/R detail file. Summary records on the job file were updated and entries were created in the batch file for the G/L system.
    • Media billing: Detail was selected from the media schedule. The update program created records on the A/R detail file, media liability records, and G/L batch entries. Summary records on the job file were updated.
    • Media payables: The update filled in the amount relieved on media liability records and created A/P Detail records and G/L batch entries. YTD spending on the vendor table was updated.
    • Other payables: The update created G/L batch entries. YTD spending on the vendor table was updated. For production costs job cost detail records were written and the job-to-date costs on the job file and job cost summary file were updated.
    • Checks: Invoices from vendors could be selected for payment in various ways. The update program wrote A/P detail records and entries for the G/L batch.
    • General ledger: Entries were generated by other modules, but they could also be entered one at a time. The update program wrote out journal entries and updated the monthly totals by account.
  • Live entries:
    • Cash receipts: The program to record cash received from clients updated paid amounts on open A/R items, and cash received month-to-date and year-to-date on the client table. It also wrote out A/R detail records and batch entries for the general ledger.
    • Individual disbursements: This program was used for partial payments, write-offs, and other A/P issues that were difficult to handle. It could also print checks, but that feature was seldom used by agencies.

The best thing about AdDept and also the worst thing was the month end reconciliation process. That is, it was the invaluable process that underscored the reliability of the data, but its vigor was still dreaded at the end of each month.

We provided the customers with checklists for what needed to be in agreement with what at the end of the month. For example, the total for the list of items in A/P must be the same as the balance in the A/P account in the G/L. If there were discrepancies, I showed the users the reporting tools to use to find the discrepancy and how to fix it. This could easily consume an entire day, and I often had to help them for two or three months before they understood what was causing the errors and how to fix them.

An account at one installation showed a discrepancy of only ten cents that we discovered was the result of three different errors, each of which was for more than $1,000.

I mostly dealt with the manager of the business office. However, I almost always sat down with one of the principals to go over the cost accounting report by client at least once. This report had columns for each source of income (media commissions, fees, billings for production jobs) and both direct and allocated expenses. A primary purpose of the reconciliation process was to insure that the total profit by client was the same as the total profit on the general ledger1. I tried to make it clear that the allocation of indirect expenses was only as accurate as the timesheets. If some employees (media buyers, for example) were not reporting their time accurately, the accuracy would suffer.

I have no doubt that our competitors did a lot less for their customers. Some tried to support their clients without any on-site visits. Some partnered with locals to provide hand-holding. I feel sure that they must have had some unhappy customers.

We actually used parts of this same process in TSI’s office. An unintended benefit of this rigorous approach was that it was rather easy to catch embezzlers.

The system was not sexy. The screens were green, and the output was columnar. The first few months were frustrating and difficult for almost all users. However, in the end it always saved a lot of time and produced valuable information.


One of our agency clients told us that they used a PC-based system called Media Management Plus2 to purchase broadcast commercials from radio and television stations and to evaluate the performance of the spots. We contacted Glenn DeKraker at the company in New Jersey. He told us that the software had several forms of files that it could produce to feed billing and accounting systems. We chose one of them, and wrote software on the System/36 (it would have been very difficult to do it on a Datamaster) to create records on the ads file in GrandAd’s media system from the records uploaded from the PC.

It worked smoothly from the beginning. We did not need to make any adjustments to our files at all. The users just needed to follow a simple convention when it came to naming the pubs. They had to use the call letters and a one-character code: A for AM, F for FM, and T for television.

This project taught us not to fear building interfaces with other software companies.


The original design of GrandAd was surprisingly stable, especially when the constraints under which we operated are considered. The screens supported nothing but text and had only 78 usable columns and 24 rows. The reports were limited to 132 characters on each line. The amount that could be stored on the hard drives was quite limited. If a customer ran out of room, the options were poor.

It was, thank goodness, never necessary to increase the size of any fields, although we had to pass on requests for proposals from two agencies. One was a New York agency that specialized in theatrical productions, each of which was a separate client, and a separate agency that specialized in want ads. Our biggest problem was in handling the version of the system that was used by TSI. When we started selling the AxN system to newspapers, The 999 clients allowed by the three-digit client number might not be sufficient. Besides, we did not want to intermingle the newspapers with our other clients. We decided to allow alphabetic characters in the client number field.

In retrospect we obviously should have used eight-digit dates from the beginning. We devoted countless hours in the late nineties to fixing this oversight.


1. Occasionally some G/L accounts, such as investment income, were excluded for this purpose.

2. In 2021 the company is now known as CoreMedia Systems. Its website is here.

1981-1988 TSI: Working with Ad Agencies

What I learned from working with advertising agencies. Continue reading

When Sue and I first met with the people from Harland-Tine in 1981, everything that I knew about advertising agencies came from watching Bewitched when I was in high school. I soon learned1 that most medium-sized ad agencies included people with the following types of jobs:

  • Account executives: These were the people who meet with the clients. Their primary function was to keep the clients happy, either by explaining what the agency was accomplishing or by keeping them in the dark. Some were also responsible for recruiting new clients.
  • Creative: Writers and artists usually worked in teams of two or three to come up with the campaigns and the ads used in them.
  • Production: These people actually executed the ideas.
  • Media: These employees communicated with the stations, networks, publications, etc. to schedule the advertising. They also made sure that the media vendor provided documentation that the ads were run as scheduled. In broadcast this was done via affidavits. Print media supplied tearsheets.
  • Administrative: Billing and other functions were done by the business office. Sometimes there were other areas as well, such as building maintenance and parties. Ad agencies liked parties.

Ad agencies preferred to measure themselves by their “billings”, a more than slightly deceptive term. An agency that describes itself as having $10 million in annual billings did not arrive at that figure by adding up the figures on the invoices that they sent to clients. The reason for this is that the broadcast entities and most magazines paid, at least in theory, ad agencies a 15 percent commission on everything that they bought. So, if the agency had sent invoices to the client for $10 million of media that it had billed, $8.5 million of it probably was paid to the media. Still, the agency billed it all, right?

Some vendors, notably most newspapers, did not give agencies commissions. Some agencies therefore marked up these charges by 17.65 percent to make them equivalent to other media. Regardless of what they actually billed, the reported billings would include the markup, not on their tax forms, but for promotional purposes.

Luis Delgado, who played Officer Billings on The Rockford Files, was also James Garner’s best friend.

In order to put agencies that that concentrated on other aspects of the business on the same footing as ones that billed a lot of media, it was common practice for agencies to use the same or similar ratios to calculate the “billings” that they reported. If a client paid a retainer, for example, of $1.5 million per year, that also was treated as $10 million in “billings”.

Further adjustments were also made, sometimes for questionable reasons. If they often used freelancers or other vendors on projects, should their costs be deducted before doing the calculation? The one overarching principle was that no one ever adjusted billings down. I once walked into an advertising agency that claimed “$50 million” in annual billings. I counted only six desks there. .

When I wanted to know how big an ad agency was, I asked them how many employees worked there. That was a better proxy variable for the amount of work that went through the agency than its billings.

Not every agency was a “full-service” agency. Some of them used a service to purchase media. On the other hand an agency in Illinois that we talked with did almost nothing but place newspaper ads for Sears. Another ad agency that used our system mostly produced point-of-sale signage for the beef industry. One “agency” in the Hartford area actually tried to talk its clients out of advertising. Instead, it promoted the idea of press releases. The agency would write them, and then try to persuade various media to run them verbatim or at least cover them as news items.

The most important equipment for an ad agency in the eighties.

An agency could be as small as one or two people. The two essential items are a telephone and a good contact list, which in my day was likely kept on a rolladex.

Some international agencies were enormous, but many agencies of any size were startlingly ephemeral. I found that most ad agencies were no more than two phone calls away from oblivion. That is, very few of them could afford to lose their two biggest clients. In the big Madison Avenue agencies when an important account changed agencies, the creative team and sometimes others involved in the account might just move to the new agency. Any agency of any size that lost one of its biggest accounts would most likely cut staff and other expenses to compensate for the loss of revenue.

The proprietors of medium-sized agencies understood this. Most had at some point experienced it first-hand. In order to maximize their chances of surviving the dreaded phone call, they tried to minimize fixed costs. They would rather rent than own. Something that could not easily be used to wow a client or a potential client seldom made much of an impression on them. The usual argument that automation improved efficiency generally fell on deaf ears.

When I did pitches to clients, I emphasized billing. If the agency was not prebilling its media—billing from the schedule rather than from invoices from the vendor—I emphasized how easy it was to do this with our system. I argued that in those inflationary times they should be making 1 percent per month on their money. So, billing two months later was like forfeiting two percentage points of their commission!

I also explained how they could easily customize the invoices for other types of jobs. Each client’s could look different. It wasn’t exactly sexy, but at least it was client-oriented. I knew well that very few agency heads were looking to make life more pleasant for their bookkeeper.

The other thing that I focused on was the profitability of client agreements. Most agency owners with whom we dealt had only a vague idea as to which clients are profitable. Few of them were good businessmen. We could show them on the system’s cost accounting reports how to analyze the profitability of clients for the month and year-to-date, and, if they found a problem, they could probe more deeply with other reports.

I think that our system served our agency clients well. I know for a fact that it helped a few of them through some difficult times.


A few aspects of the way that we handled accounting for advertising agencies were somewhat unique. These features were not really marketable unless the agency’s accountant was involved in the purchase.

I never read this book either.
  • We developed separate systems for media billing and accounts payable. They did not use the same programs used for other billing and vendor invoices. Both the billing and the A/P systems matched up the invoices with the items from the media scheduling system.
  • Non-media jobs that were billed in advance were credited to an advance bills account. The entries taking these amounts as income had to be made individually.
  • Every agency that did any kind of production or creative work kept an asset account called billable work-in-process (WIP). The system printed a list of the WIP for every active job at the end of the month. The change in WIP from month to month was booked as income.2

These methods were my own invention. I never took an accounting class in college and, for that matter only one programming. Never, however, in my thirty-five years of setting up computerized accounting systems for people did anyone challenge my credentials.


Spare me the consultants!

Some agencies recognized that they needed to computerize the administration of the agency, but they were not competent to figure out how to do it. So, they hired consultants. I absolutely hated dealing with consultants. They would begin the research process with a set of standards that they had developed, not from dealing with ad agencies or even by listening to what the agency in question hoped to accomplish, but from their experience with other companies that were unlikely to be comparable to ad agencies.

Sometimes they would send out a Request for Proposal (RFP) that outlined the requirements that they intended to impose. Often I could tell that TSI would be eliminated immediately for one reason or another. Almost never did the RFP ask if the system could be customized, or if it generated any of the billing or client profitability advantages outlined above.

Only one of our installations was produced through a consulting firm, and it was a disaster for us (wasted time), the agency (wasted a lot of money), and the consultant (law suit), That experience is described here.


The experience with advertising agencies broadened my horizons. I learned enough about the details of advertising that when the opportunity arose, I was able to make a successful pitch to Macy’s advertising department. That story is told here.

I also amassed enough details about the mindset of an advertising executive that I wrote a prize-winning short story about one. That account is here.

I never got interested in advertising, but in order to market to the New England agencies I had to follow their ups and downs. Seeing a few dramatic crashes reinforced my desire not to depend too much on any one client. That philosophy helped to sustain us through the nightmarish year of 1991, when our two largest clients both declared bankruptcy.


1. The Internet drastically affected advertising agencies. Much of what I learned is probably obsolete in 2021.

2. The American Association of Advertising Agencies (AAAA, pronounced “four A’s”) recommended a different method that was more cumbersome and less useful. Every accountant who ever saw what we did thought that it was equivalent but provided more useful audit trails, took much less time, and was less susceptible to errors.

1981-1985 TSI: The Quest for the Holy Grail

Who made the hoofbeats with coconuts? Continue reading

We knew what the Grail looked like, but finding it was another matter.

Systems that were designed and implemented to the specifications of each client were both fun and challenging. They were not, however, very profitable. From the beginning I was always on the lookout for a way to market one system to a dozen or more clients. It had to be a business that was unique but also substantial. Another limitation was geographic. In the early eighties there was no good way to support systems remotely. We therefore needed to concentrate on companies that were within relatively easy driving distance.

It wasn’t in the construction industry.

I realized the importance of finding such an industry in which to concentrate our efforts almost immediately. The search for this Holy Grail led us down several paths that turned out to be dead ends for various reasons.

When we first moved back to Connecticut we had not yet developed any significant software aimed at businesses. Sue had expertise working with the construction industry and IBM’s payroll package for those companies. Unfortunately, we did not have access to a list of IBM’s installations of this product.

I spent some time putting together a card file of construction companies in New England. I think that my source was the Yellow Pages in the Hartford Public Library. We may have even done a mailing to them. I am not sure that we had stationery and envelopes yet. In early 1981 the first class postage rate was only fifteen cents. So, we could have mailed to one hundred companies for $15. That was within our marketing budget.

At any rate, nothing came of this effort. For several years Sue continued to do work for those clients, but we got no new ones in any aspect of the construction field.


As soon as I had completed work on the software for Diamond Showcase (described here), I undertook research to find out how many small chains of jewelry stores there were in New England. I located very few indeed. Undaunted, I composed a letter that boasted of our success at Diamond Showcase. I only got one response.

Would you buy a jewelry inventory system from this guy?

Before my first interview with the president of Harstans Jewelers, Frank Sikorski1, and his wife (whose name and title I don’t remember), IBM had already announced the Datamaster. So, I had to persuade them to have faith not only in my ability to produce a system for them but also my recommendation that they buy a computer system that was just hitting the market. They also had to let us take delivery on the system. At the time I still looked like Tommy Chong (minus the headband and the ever-present joint), and my wardrobe was that of an impoverished grad student. Nevertheless, they agreed to our proposal.

Harstans was a family business, but there was no one with the surname of Harstans. Rather, it was a combination of the first names of Stanley Sikorski, Frank’s brother, and Harriet, Stanley’s wife. Stanley, I learned, operated a wholesale jewelry business in New York City that was the source of all of Harstans’ diamonds. Frank was the president; I am not sure what Harriet’s title was, but she was in charge of payroll and paying the bills. They used IBM’s payroll system for the former, but they did not like it. Eventually we installed the payroll system that we had written with some minor modifications.

The Harstans store in Hamden, CT. I could find no photos or mentions of the West Haven store.

The company’s offices were on the second floor above the West Haven store. There were four other Harstans stores at the time. Eventually they even opened one in the Enfield mall. I was never actually on the sales floors of any of these locations. I parked in a lot behind the West Haven store, entered through the back door, and took the stairs to the second floor.

Harstans insisted that we make one major enhancement. When a batch of new items had been entered, they wanted the system to print small tags for each one. The tags contained both the retail price of the item and the price that Harstans paid—in code. The code was BUICKSEDAN. B was 1, U was 2, etc. If they paid $523 for an item, the tag said KUI.

A Harstans ad in the Hartford Courant in 1991.

No customer paid the retail price on the tag either. The store had the peculiar policy of running a permanent half-off sale. So, if the tag said $350 the real price was $175. Competitors tried to force them to abandon this tactic, but for as long as we were associated with them, it persisted.

I visited Harstans many times over the years. Here are some of my most vivid memories.

  • Harstans had many customers from New York. The store, which was near I-95 and Route 1, did not charge these people sales tax, which was required for on-site retail sales. Harstans allowed these people to take the goods they bought home with them, but they also mailed them an empty box to prove that no exchange of money for goods had taken place on the site.
  • I locked my keys in my Celica once. I had to borrow a coat hanger to get in.
  • Harriet told Sue that she and her daughter had been at their house in Branford when some men broke in and tied them up. Some items were stolen, but no one was injured. The incident induced Harriet to buy a pistol and take shooting lessons. She always carried it in her purse after that.
  • I was working in the office in December when the store manager brought up a stack of bills from downstairs that was as thick as his fist. He wanted to count them in private. The first eight or ten were $100 bills. I stopped watching after that.
  • Frank asked me to give a speech at the Lions Club of West Haven. I told the attendees how much I liked my job. A few people asked me about horrible situations that they had had with their computers. In every case they had sent a boy to do a man’s job. Their computers were not designed for business applications.
  • Frank asked me to do something once that was almost certainly unethical. It involved writing a program that produced one page of printed output that looked vaguely like a computer-generated report—not one from our system—but actually contained fabricated numbers that he supplied.
  • The store, of course, had burglary alarms. I was occasionally the last person still working in the office. Usually people were still working in the selling area. However, on once occasion the last person downstairs had left without checking the office. When I opened the door to exit all of the alarms went off. I just strolled to my car and drove home No one ever mentioned it.

We also installed an accounts payable system at Frank’s insistence. I had already noticed Harriet’s approach to accounts payable. Her lower right desk drawer was devoted to invoices from vendors. Sometimes she took the invoices out of the envelopes, but just as often she threw the envelopes in unopened. This infuriated Frank, but there was not much that he could do about it. He was the president and she was an employee, but she was also an owner, and he was not. He was counting on the A/P system to solve the problem.

It was an ugly job, but someone had to do it.

Vendors called complaining about unpaid bills pretty often. I once heard her tell one of them that she would cut a check to them that day. She also begged them not to tell her boss about it because he would probably fire her, and she really needed the job. She got a tear in her voice while she said that. She also usually asked the vendors how much she owed them instead of looking through the invoice drawer.

To set up the accounts payable system we had to go through the stack of envelopes and invoices one at a time. We had to take Harriet’s word that some of them had already been paid. It was a humiliating experience for her, and she probably hated both Frank and me for it. When we were finally done, A/P was turned over to the lady (I can’t remember her name) who ran the inventory system.

I had an interesting meeting with the proprietor of Michaels Jewelers, a chain of stores based in New Haven. I don’t remember his name. He lost interest in our system when I told him that there was no way for two Datamasters to communicate remotely. This was becoming a bigger drawback to the design of the hardware every year.

Who cares if they buy it?

He told me that his biggest problem was inventory “lost” at his branch stores. He said that he really didn’t care that much if he sold the jewelry. It could just be melted down and resold as something that was more popular at the moment. Is there anything else that one could say that about?

Another great thing about the jewelry business is that you can depreciate the inventory for tax purposes, but in fact the value of the goods is more likely to increase rather than decrease for reasons that I have never understood. After all, they are just shiny rocks of little utility.

Unfortunately, there was not much that we could offer in the way of loss prevention, especially if the problem is focused on employees. Really good solutions to that problem were not available until at least a decade later.

One other thing that I remember is that the proprietor of Michaels called the people at Seiko “whores”. I think that he meant that they did not care who sold their watches.

I also pitched Westerly Jewelry Co. in Westerly, RI. An IBM rep from Providence drove to Westerly and brought a Datamaster with him so that I could do a demo for Larry Hirsch, the owner. The reception to my presentation was not great. I tried to follow up, but there was not much interest. If they had owned two or three stores, we might have had a better chance. Managing one store without a computer is much easier than managing several.

Not at IBM in the eighties!

What I remember most about the experience is that the IBM rep wore a yellow shirt. I had never seen any male IBM employee in anything except a white shirt. This was, of course before IBM did a 180-degree turn on its expectations about the attire of its employees.

I called the 5360 model of the System/36 the washer-dryer unit.

Harstans used their Datamasters for many years. They hired a young man named Jim Coer to oversee the systems. We had a pretty good relationship with him, but they eventually decided to buy a System/36 at a cost that dwarfed what they had spent on Datamasters. They must have also bought a competing software system that they expected to do things that we could not provide. I suspect that whoever sold them on this idea also said that no one used BASIC on the System/36 because the performance was bad. The first part of that statement was pretty much true, but the performance of well-written BASIC programs was, we later determined, roughly equivalent to that of RPG, the simplistic column-oriented language used by most S/36 programmers.

We parted with Harstans on amicable terms, but the loss of our main reference account ended the hope of concentrating on jewelry stores.


TSI’s installation at Avon Old Farms School was, by all measures, an unqualified success. It is described here. The Datamaster was perfect for their requirements, and all of the modules were successfully completed in a relatively short time.

Even before we met with them, I suspected that this installation might be the first step into a lucrative market. When I learned that Walter Ullram’s younger brother held a similar position at Westminster School in Simsbury, I grew even more optimistic. However, at the meeting that Walter set up for me with him the younger Ullram seemed only mildly interested. I followed up with a letter, but I heard nothing back.

I discovered that there was a book listing all of the private schools. It might have been restricted to New England. At any rate I mailed to the business managers of all of them and never heard anything in reply. By that time we had our hands full with other clients.


We had designed a report that provided Paul Prior of Ledgecrest Convalescent Hospital with the information that he needed to maximize his reimbursements from the state. The installation is described here. When it was completed, I decided to try to market it to the other nursing homes in Connecticut. By limiting it to Connecticut, I would only have one set of regulations to deal with.

By the mid-eighties it was becoming difficult to sell Datamaster systems. PC’s were so much cheaper. It was hard to explain why they were inferior. In response to this a developer named Gary Hoff2in Minnesota had created a PC program called Workstation Basic3 that ran programs written for the Datamaster without any conversion. TSI bought a copy and converted our report program to run in WB. I also designed add-ons so that people without the TSI G/L system could enter the appropriate numbers and the month they represented. The program would tell them how they were doing towards staying under the state’s predetermined caps.

A woman who worked for a company that sold personal computers helped me to market this product. I sent letters to all operators of nursing homes in the state. Quite a few responded, and I did a few demos and talked with a few owners. She offered them discounts on the computers. No one was ready to buy. One of them finally told me, “Our accounting firm does this for us. You really should talk with them.”

I asked Paul about this accounting firm. He said that he was well aware that everyone else used them, but he didn’t like them. He did not trust them, he said, and they charged quite a bit just to do the arithmetic for customers.

This is one of DEC’s VAX-11 780 computer. You know at least as much about it as I do.

I scheduled a meeting with the accountants. They seemed very interested in what I had done, but they wanted me to convert it all to run on the mini-computer that they had purchased from the Digital Equipment Corporation (DEC)4. I was looking for many clients, not one big one. Also, I knew nothing about their system. I had no interest in becoming a DEC programmer.

Maybe not as bad as the Vanguard TV3.

On the other hand, if I did not work with them, it was very unlikely that we would ever sell even one copy of this system, which I called CAPS5, to anyone. Since nearly every nursing home in the state used this firm, and they were the recognized experts, the project was doomed to die before it had a single installation. It was the worst (or at least tied for the worst) software launch ever.


Fortunately, our efforts in the other industry that we targeted, advertising agencies, worked out much better. That story can be read here and here.


1. The only Harstans store that still exists in 2021 with that brand is in Guilford, CT. I think that Frank Sikorski lives in La Quinta in eastern California..

2. Gary Hoff is still working in 2021 as a contract developer. His LinkedIn page is here. A few years after the CAPS fiasco Gary visited our office in Enfield. He spent one night at the Red Roof Inn and one day in our (then empty) sales office trying to get one of our System/36 BASIC programs to work on an AT using a new version of WB. He flew back to Minnesota without getting a single screen to appear. He did not get errors, but this new version of WB was unbelievably slow. He later used me as a reference account!

3. I was astounded to discover that Workstation Basic is still supported in 2021. You can read about it here.

4. After divesting most of its assets. DEC was acquired by Compaq in 1998, when TSI’s business was really taking off.

5. CAPS was an acronym. C stood for Connecticut, and S was for system. I don’t remember the rest.

1981-1985: TSI: A4$1: The Clients

We delivered the code. They paid us the buck. Continue reading

IBM’s introduction of the System/23 Datamaster in June of 1971 was a tremendous opportunity for TSI. In fact, if the announcement had been a month later, I probably would have given up on TSI and looked for a job.

The Datamaster was one of the very few systems in the early eighties that offered small businesses of all shapes the opportunity to automate their operations. There were competitive hardware systems, of course. Some of them offered more processing bang for the buck, but none of them had the three magic letters I-B-M on the hardware. IBM had a well deserved reputation of delivering high-qualiity system with unmatched service. “No one ever got fired for recommending IBM,” was a popular saying.

What we did not realize until we got our hands on it was that the Datamaster was extremely easy to program. Of all the systems that we worked with, I enjoyed working on a Datamaster the most. We delivered an enormous amount of code to meet incredibly diverse requirements in a very short period of time.

We depended on IBM for most of our new clients. The exceptions were Harstans Jewelers (described here) and advertising agencies (described here and here). I am uncertain of the order in which we acquired the new clients. The order in which I have listed them here may not correspond to the order in which we did the projects.

In most cases we took delivery on their systems in our office in Rockville and then carted them to the user’s location when the systems (or at least the most important modules) were ready. Once this started we always had at least one system in the office until the time that we bought one for ourselves.

Paul Prior sold Ledgecrest in the eighties or nineties, but it is still in business in 2021. It is now called Ledgecrest Health Care Center.

One of the most memorable clients was Ledgecrest Convalescent Hospital, a nursing home in Kensington, CT. The proprietor was Paul Prior1, one of the most interesting people whom I have ever met and one of the few clients whom I got to know pretty well.

When Sue and I first met Paul I was quite intrigued by his business. Paul’s goals were not much different from those of any other small business. He wanted to bring his company into the twentieth century. Most of the applications that interested him were fairly standard,—patient billing and accounts receivable, accounts payable, and general ledger.

The last was his top priority because a high percentage of his receipts came from reimbursement from the government. The amount that the state reimbursed the business depended on his keeping a close eye on expenses. A mistake could cost thousands. So, the objective was to produce a system that allowed Paul to keep Ledgecrest’s expenses within state guidelines year after year. Anything over the legally prescribed “caps” would be disallowed.

The important thing was for him to learn where he stood while he still had time to do something about it. He needed to project his spending fairly accurately beginning in the middle of the year or even earlier. This sounded to me like something that would be valuable to all of the nursing homes in Connecticut. I had high hopes of marketing it to the dozens of nursing homes in the state, and I did. That effort is detailed here.

Paul also ran a second company called Priority Services. It provided Meals on Wheels to aged and disabled people.

After we won the contract and delivered the first part of the system, Paul told me how much he enjoyed working with the system. For reasons that I did not yet understand he had done all of the initial data entry himself. As usual he was drinking coffee from his dirty cup. He never washed it because, he said that it protected him from a weak cup. That was the day that he identified for me the feature in our systems (I forget exactly what impressed him) that convinced him to hire us. I chuckled when I informed him that our systems did not actually have that feature. He must have mixed us up with someone else.

Not for Paul.

Paul told me that he had been drafted in the fifties and took part in the Korean War. I don’t use the word “fought” because he told me that as soon as he got close to combat he “went over the hill”, was apprehended by MPs, and then spent some time in the brig.

When he got his discharge (I didn’t press him for details) and came home, he discovered that his older siblings had taken control of the family business that had been founded by their parents. According to Paul, everything was a mess. Bills were going unpaid, and the standards of patient care had dropped precipitously. Meanwhile his brothers and sisters were living high on the hog.

Paul somehow chased them out and took over the management and eventually the ownership of the business. He went to each creditor and arranged a plan for paying all the bills. Eventually he reestablished the reputation of the institution. I was very impressed by this. Nobody had ever related for the origin story of his business.

While I worked with Paul on getting reports from the G/L system to provide the information needed to maximize his income from the state, I got to meet the other three people in the office, all of whom were female. The first was named Dorie. She served as secretary and reception. She also paid all the bills. I don’t remember the second lady’s name. She was, among other things, in charge of Priority Services. The last was Paul’s daughter, Kathy, who helped out part time. I think that she was engaged to be married.

I don’t remember exactly what the system that we designed for Priority Services did. I think that they recorded who was to receive meals on specific days, and the computer printed delivery routes. I seem to remember that it also did billing. One day Paul asked the lady who ran this system to get me a cup of coffee. She asked me how I liked my coffee. I requested just a little bit of sugar and no cream.

Much too sweet for me.

The beverage that she brought me back was so sweet that I could not drink it. She explained that she could not find any sugar, and so she substituted a packet of Sweet’n Low. That didn’t seem like enough to her, and so she poured in a second envelope. From that day forward I drank my coffee black. I eventually learned to appreciate the bitterness.

The last system that we got working was accounts payable. I spent one session with Dorie in which I tried to learn how she did things. I asked her how many bills they had in accounts payable. She responded “None.”

I mansplained to her that I meant how many invoices that she had not paid yet. She insisted that she had none. Eventually I realized that, unlikely as it may seem, she was right. As soon as she got an invoice from the mailman she wrote out a check, stamped it with Paul’s signature, put it in an envelope, and mailed it.

Paul, perhaps mindful of his terrible experience with debts to vendors when he took over the business, tolerated this approach. However, he understood, that it tied his hands with respect to cash flow. Furthermore, after Dorie paid the bills they still had to be entered into the general ledger system.

The problem was that Dorie was terrified of the computer. The night after I talked with her about accounts payable, she could not sleep at all. I wasn’t there, but the next day she came to Ledgecrest and was ready to quit her job. Paul assured her that she would not be required to use the computer.

Instead, Paul entered in records for all the vendors himself. Once he had done so, it was easy for him to keep up with them. He did not need to enter a stack of open invoices and reconcile balances. Paul found something else to keep Dorie busy.

I doubt that anyone with an MBA would have approved of this extreme “Theory Y” management style, but it seemed to work for Paul.

Ledgecrest and Priority Services upgraded to a System/36 in the late eighties.


I can’t prove it, but I strongly suspect that NSNE was in the west side of the indicated building.

In many ways National Safe Northeast was not an exceptional company. Most of their customers were banks. By the time that I started working with them their primary products were no longer safes, but Automated Teller Machines (ATMs). Their office was in an industrial park in West Hartford2. The most peculiar thing about it was that four family members were often present: Tony Bernatovich, who ran the company, his wife Lynn, who had a title but no evident responsibilities, his daughter, who was sort of the office manager when she was there, and a very large dog.

They wanted us to install a rather standard bookkeeping system. We made very few adjustments to the accounts receivable, accounts payable, and general ledger systems. It made me wonder why the IBM rep did not just sell NSNE IBM’s packaged systems. They would have worked pretty well.

Tony’s real interest was in a customized payroll system. NSNE used a method called “half-time due”. You haven’t heard of it? Neither has anyone whom I have ever met. There is not the slightest passing reference to it on the Internet.

NSNE did not want its installers to work overtime. Since they were out on the road, it was difficult to control their hours. Employees who put more than forty hours on their timesheets were only paid half of their usual rate for the excess. Not double-time, not time-and-a-half, just half-time. If the total pay for the period was less than the minimum wage, they were paid the minimum wage.

Was this legal? I don’t know. There are several case files for lawsuits involving NSNE3, but I did not find any that involved complaints about illegal compensation schemes. Incidentally, although I was always on the lookout for an edge for our software, I never considered marketing this feature.

We primarily worked with three people at NSNE. Joan Kroh was the accounting manager. Her assistant’s name was Darlene. There was another employee named Jimmy. I do not recall either last name.

I am not sure what Jimmy did, but one morning no one else was there, and he was supposed to enter some accounts payable. The system was on, but he could not get it to work. I tried to talk him through it over the phone. I asked him to key in GO APMENU and then press Enter. As God is my witness, I talked on the phone with him for forty-five minutes, and he could not accomplish this. Finally, Darlene came in and keyed it in with no difficulty. It took her less than a minute.

I have two other fairly vivid memories. In one of them I was driving my car to NSNE. It overheated. I had to pull over to the side of the road. I loosened the cap on the radiator, and steam and hot water blasted me in the face. I was not hurt, but I was a mess. I went to NSNE anyway. I never have cared much about appearances.

This was not Joan’s team.

Darlene and Joan played in a woman’s football league. It was flag football, but these ladies were serious, and Joan was one of the best players. I was very impressed.

When the Lingerie Football League appeared on television I could not help thinking about the contrast between the ladies on TV playing “tackle” football in bikinis and shoulder pads and Joan’s teammates wearing sweatpants and tee shirts knocking one another on their asses.


This was not a pleasant drive. Route 44 can be very busy.

I never felt as ill-at-ease at a client’s offices as I did at John LaFalce, Inc., on Route 44 in Canton, CT. John4 was (and apparently still is) an interior designer. His retail office in Canton showcased a lot of eclectic furniture and doodads. I avoided the showroom lest one of my elbows occasion an unintended purchase. Rich people came there to hire him to redo the interiors of their Connecticut homes while they were living in one of their other houses. Or maybe vice-versa.

I think that TSI just implemented accounts payable and general ledger systems for them. We might have done some other programming that I don’t recall. There really was only one user, the bookkeeper, whose name was Jan Shustock.

I remember a meeting that involved one of the guys who ended up buying out John LaFalce, Inc. After the purchase they changed the name to LaFalce Campbell Robbins. The third person in our meeting was an IBM sales rep. The new owner mentioned something about red and blue not going together. As one, the rep and I held out our red and blue ties and looked down at them.

I also remember being stunned when TSI delivered the Datamaster that we had been working on to JLF. They asked me where, in my professional opinion, in their business office they should locate the computer system . They had sixteen employees, most of whom designed interiors for a living. They were asking a coffee-swilling code jockey how to arrange their furniture. I told them how long the cables were, but I refused to venture any further opinions.


SMI, in the south end of Hartford, has hardly changed in appearance at all in forty years.

Sue did most of the work for Standard Metals. The proprietor was Steve Buzash5. The person with whom we worked the most was named Carol. I recall very little about what we did for them, probably A/R, A/P, and G/L. I remember Steve talking with us about designing an inventory system. His inventory consisted of pieces of metal of various compositions, shapes and sizes. He often cut off pieces and sold them. It sounded like a nightmare to me.

Carol and Steve got married. They invited us to their unusual wedding, which took place on a large boat on the Connecticut River. After the ceremony there was a supper, which was followed by something that most of the people in attendance had never heard of, Karaoke.

Two people ran the show, a guy who served as MC and a woman in a sparkly dress who was obviously a professional singer. He told us tha we were going to be the entertainment, and we were going to have FUN!!!

To get things started, the lady sang a song. Needless to say, she hit every note perfectly and also inserted a few bel canto flourishes. Everyone was totally intimidated. I, for one, was wondering how far the shore was, and whether it would be worthwhile to try to swim for it in my suit and dress shoes.

When no one volunteered, the MC tried to coerce people into trying it. He promised “we will make you sound good.” A few people eventually ventured forth. I think that Sue sang a duet of something with Carol. The event lasted at least ten hours. No, I guess that would be impossible, but it sure seemed like it.


Dave Tine asked us to provide a computerized system for his sister’s company, Videoland, a company that sold home entertainment systems and rented VHS tapes. Its store and office were on Farmington Avenue in Hartford, but we never went there. I have a vague recollection that TSI did a simple inventory system for her. We probably also provided A/P and G/L systems. We billed Dave Tine for our work.

The company went out of business when Blockbuster Videos started appearing on every corner.


After we had a few installations, IBM accepted us into its fledgling Business Partner Program, which meant that we could make a little money selling hardware. One of our very first sales was to the Business Office of Avon Old Farms School. The Business Office Manager was Walter Ullram6. We sold them three diskette-based Datamasters. One was used for accounting functions by Mary Lee Pointe. One was used strictly for word processing by Walter’s secretary. The third was used by the bank. I don’t remember the names of either of these ladies.

The best thing about the AOF installation was that one-third of it required no support at all. The secretary loved IBM’s word processing system, and she learned how to use it from the manuals.

The first time that I visited AOF Walter showed me the system that he had developed for tracking on accountants’ sheets the school’s usage of oil in comparison with the heating-degree days. I was very impressed with how he had devised a scientific system to pinpoint inefficiencies and control the amount of money spent on heating all of the buildings. I was less impressed when I visited a few of the other buildings and saw that people there were coping with the cold weather by using incredibly inefficient electric space warmers.

I went to a very good prep school, but it was nothing like AOF. All Rockhurst students commuted. Most of the AOF students were boarders. They had uniforms, but they deliberately looked like slobs. We had no uniforms, but everyone dressed pretty nicely. The tuition at AOF was about thirty times what my parents paid. I soon learned that a lot of the AOF guys were “trust fund” students. Neither parent paid the tuition. It was paid by a trust set up when the parents divorced. Nearly all of the students were wealthy. Few were on scholarships.

I mostly worked with Mary Lee, whom I liked a lot. She had one very strange mannerism. A light on her telephone indicated whether calls originated inside the school or outside. When she answered outside calls, she began in a voice nearly as deep as Lauren Bacall’s, “Good afternoon, Mrs. Pointe speaking.” For inside calls, she sounded like Jerry Lewis’s falsetto, “Hello-oh?”

AOF reported a problem with connectivity. I cannot remember why they had to run long cables (maybe for Mary Lee’s printer), but they did. The cables did not run along the floorboards. They went through the walls and ceiling. We eventually discovered that the connections were OK, but some squirrels living above the ceiling had chewed through the cables.

Deposits at the AOF bank were not insured by the FDIC.

I was surprised to learn that AOF had a bank for its students. The parents did not send money for incidentals directly to the students. Instead the money went to the school, and the students were allowed to withdraw it. It was a simple system to write, and the lady who used it really liked it.

All in all this was a very satisfying installation. Walter and the users bragged about it to others in the faculty. I was considered a hero by all of the people that I worked with, and TSI made quite a bit of money on it.

I knew that there were quite a few prep schools in New York and New England. I was hopeful that there might be business office managers at some who were interested in automating. When I learned that Walter’s brother held that position at Westminster School in Simsbury, I was pretty optimistic. The story of our attempt to market Mary Lee’s system is told here.


Another favorite client was Viscom International in West Simsbury. Although their business was the importing and marketing of parts for boats, three of the four employees had formerly worked at advertising agencies. In fact, “Viscom” was short for “visual communication”. They were therefore very interested in the ad agency system that we had developed for Harland-Tine.

The principals were Curt Hussey and Frank Hohmeister7. The third advertising guy was an artist. I don’t remember ever even talking with him. Mostly I dealt with Curt and the administrative person, whose named was Mary. She also doubled as a model in ads that they produced to feature marine equipment that they imported from France. As Frank remarked once, “She could fill out a pair of jeans.”

The most enjoyable thing about this account were the lunches that Kurt, Mary, and I consumed in the small restaurant in the shopping center in which they were located. I recall good food and good conversation.

The account itself was a fairly difficult one. The primary system was inventory, and users are often unhappy with their inventory systems. Every transaction must be perfect, and designing a bullet-proof auditing system is difficult. Although their system was working fine at the time, they eventually decided to buy an IBM AT and ditch the Datamaster. The primary motivation was that Curt wanted to be able to do spreadsheets.

My recollection is that Curt had a heart attack while I was still visiting Viscom frequently. He came back to work not too long after that.

Mary left Viscom to work in a restaurant well south of Hartford that was managed by her husband. Sue and I went there for supper once, but I don’t remember any details about it.

Viscom went out of business in 1993.


We sold two Datamasters to the Feldman Glass Co. in North Haven. That was one less than the number of companies that they had. The parent company manufactured glass bottles that they sold and delivered to companies in the Northeast that distributed food or anything else in bottles. This company required only fairly standard accounting software.

The second company was named Anamed. It provided hospitals and the like with small plastic bags that contained tooth brushes, combs, and other hygienic items for patients. I think that we wrote a billing program for this service.

The bookkeeping for these two companies and the data entry for the computer was done by a mother-daughter team. The mother was named Isabel Blake. I don’t remember the daughter’s name.

I don’t remember the name of the third company. It specialized in “fulfillment”. Liquor companies ran contests in which they awarded fairly valuable prizes in exchange for some large number (fifty or more) of labels from their bottles. I don’t know how that Feldman Glass got involved in organizing and keeping track of all of this, but I guess that it was no more distant from its core business than Anamed was. At any rate they told me how they wanted it to work, and I did it.

One day I overheard one of the Feldman/Anamed ladies say that they had bought the wrong computer. I knew very well that it was unlikely that they would have found anyone who was willing to customize three different systems for them on any other computer. It was much easier to criticize the Datamaster’s specs than the quality of the installations. Someone had probably scoffed a the notion of using an underpowered system. I assume that they bought something else after using our systems for several years. It was just as well. Their businesses were so unique that we could not really even use them as a reference account.

I could find no evidence of the existence of any of these companies past the early nineties.


One of our strangest clients was Hartford Cutlery, a one-man operation owned by Bob Burke8. His parents owned East Granby Machine9, which had actually purchased the Datamaster. Bob’s business was sharpening knives and scissors for restaurants. I don’t think that he had any employees. His grinding equipment was kept in a little room at his parents’ company, but the Datamaster was actually in his house a few blocks away. That’s right. We sometimes made house calls.

Evidently all restaurants of any note had at least two entire sets of knives and scissors. Once a week Bob picked up a tray of cutlery from his clients, sharpened all of the pieces, and then returned them to the restaurant. Maybe he could pick up and deliver at the same time if he came very early or very late.

We wrote a billing program for him. It saved him a lot of time. It fed accounts receivable and general ledger systems.

Bob felt constrained by geography. There were not enough high-quality restaurants within an easy drive for him to make very much money. I could see what he meant; East Granby is not usually considered the center of the culinary universe.

Bob then told me his plan, or maybe it was his dream. He wanted to invade New York City. His scheme was to rent (or inherit or buy or steal) a helicopter and begin making daily flights to the city to collect knives to sharpen. He figured that he could undercut the prices of the local competition and still make a hefty profit. We didn’t talk about how he would get around in the city. I suppose that he could buy (or inherit or rent or steal) a truck of some sort to hold the trays of cutlery as he went from one posh dining establishment to another. There might be a place to park it near the helipad, although, now that I think of it, parking spaces there went for upwards of $50 per day even in those days.

Bob used our software for quite a while, but then we lost touch. I have seen no evidence that he ever implemented the plan or, for that matter, that he didn’t.


Putt Brown ran his family’s business, Mono Typesetting, in Bloomfield. I think that he may have gotten our name from a mutual friend and client, Ken Owen, whose story is here. We did a time and materials billing system for him that fed rather standard accounting systems.

These were great, but newer ones were better.

Putt and I often ate lunch together. He was a peculiar dining companion in that he saw a menu as not so much a list of food choices as an agglomeration of type fonts. He often lamented about the state of his industry. He said that he was forced to purchase new electronic typesetting equipment every year. As soon as he got a new system it was obsolete.

I don’t think that he realized it yet, but not very long after this conversation everyone would become a typesetter. Every font imaginable became usable by every Tom, Dick, and Harry with a personal computer that cost a tiny fraction of the systems that Putt was burning through. I am pretty sure that Mono was the last standing typesetting company in the Hartford area, but Moore’s Law killed it as well.

This looks like work to me.

At the time I was a fairly serious vegetable gardener in the small patch of courtyard behind our house in Rockville. Putt told me that he was going to try raised beds for his next planting. Raised beds are quite a bit of work, but they allow more heat to reach the roots, which, for some plants, stirs more growth. It seems like the technique would work best for root crops. The other advantage is that you can sit down rather than kneel down when weeding the crops.

I wonder if Putt actually tried it and whether it worked.

In 1988 I was very surprised to see Putt again in a very unusual setting. In fact, I was wearing a disguise. The incident is described here.


This Atari ST sort of looks like a computer

Suzanne Nettleton owned and operated a company in Middletown, CT, called Professional Relief Nursing. The company maintained two lists, nurses looking for work and institutions looking for nurses. PRN then matched them up.

Suzanne had already had two bad experiences with computing systems. Several years earlier she had tried to get someone to develop a system for her on an Atari computer. You could play Pong on it, sure, but I never heard of anyone trying to develop an administrative system on one.

On her second attempt she did a better job of selecting the computer (a Datamaster), but she chose the wrong people to develop the software. It worked OK at first, but at some point they refused to support it any longer. So, Suzanne asked us to take over the maintenance.

We printed out the listings of the programs. They did not meet our standards by a long shot, but they were fairly simple. We insisted on converting the programs to meet our standards. She agreed, and we signed a contract. Over the years we did a fair amount of additional programming to provide a more comprehensive system.

I have two vivid memories of this installation. The first was the drive to the PRN office. I was shocked that there were two stoplights10 in Middletown on Route 9, a six-lane high-speed highway.

The second memorable event occurred when I showed up early one afternoon for an appointment with the guy that Suzanne had hired to operate the Datamaster system. When he saw the McDonald’s bag that I brought with me, he exclaimed, “Oh, you eat styro-food!”


By far the most prestigious name on out A4$1 client list was only three letters long, IBM. A new department devoted to the IBM Business Partner Program resided in the company’s Armonk, NY, complex. We drove there and talked with Dick Patten, the IBMer in charge of the program, about installing a customized system for lead-tracking on a Datamaster. He liked our approach, and we were equally enthusiastic because we had already developed lead-tracking software for our own use. We also had installed it elsewhere a couple of times.

So, we signed a contract. Dick was then shocked to find out that he could not get IBM to deliver him a Datamaster for several months. He was astounded even more when we told him that if he ordered it through TSI, we could deliver a system in two weeks. Our orders went through “the channel”, which, sometimes but not always, had much better delivery times than were available elsewhere.

For a moment Dick actually considered our offer. Instead, he informed his hardware contact at IBM about our offer. He then demanded to know why the business partners had better access to systems than the man IBM had chosen to manage the business partners. Evidently they found one for him.

While we were in Armonk we chatted one day with a female college student who was employed by IBM for the summer. She told us that IBM had a policy of providing summer jobs to offspring of its employees who were at or above a certain level. She qualified because of her father’s rank.

She said that hers was the best job ever. She astounded us when she disclosed her hourly pay rate. $17 sticks in my mind, but that seems excessive. Also, on her first day her supervisor told her to go to the supply closet and take whatever she thought that she might need. No one kept track of anything like that.

When IBM found itself in financial difficulties in the nineties, this young lady’s tale popped into my head.


TSI had two clients in East Greenwich, RI. One of our most important was an advertising agency that is described here. The other was on the other end of the spectrum. Thorpe’s Wine and Spirits, which I think was just called Thorpe’s Liquor Store in those days, was a small adjunct to Thorpe’s Pharmacy. The pharmacy was sold to a major chain (weren’t they all?), but the liquor store still survives.

Not Gil Thorp, Gill Thorpe.

The proprietor, Gill Thorpe, told us that he had a Datamaster that he would like to used for an inventory system for his liquor store. We had quite a bit of experience doing retail inventory by this time, and the liquor operation was much simpler than a chain of jewelry stores. So, we took on the project in spite of the distance. I found the contract for this account in a box that Sue stored in my garage. We only charged them $500!

We evidently did a good job. The operator, Richard Thorpe11 (Gill’s son), called us for support a couple of times, but he never complained about the system, and they never asked for any enhancements.


One of the last Datamaster clients that we worked on, and certainly the site of the last such system that was still in use was the Regal Men’s Store of Manchester, CT. This store also had the distinction of being the only TSI client (other than IBM) that I personally patronized. I did not go there often, but when I needed something, I generally made the drive.

There was not much to the system. My recollection is that they did nothing but accounts payable on their Datamaster. I would have remembered if we had installed an inventory system.

IBM stopped marketing the Datamaster in 1985. We still supported our clients, and more than once we helped them find used parts—usually diskette drives. In the early nineties we were still supporting all the software that we had written for the Datamaster, but we sent a notice to all of these clients that we would NOT address the Y2K issue on these systems, and we would not support them after 1999. By this time IBM had reasonable hardware alternatives for most of them, but none of the A4$1 clients hired us to convert their code.

This tiny ad is the only reference I could find on the Internet.

In 1999, however, the computer operator at Regal’s, Ann Gareau, begged us to make her system work past New Year’s Eve. I told her that they really should get a new computer and that all of our other Datamaster customers had moved on. She told me that management would never approve the purchase of another computer. She was probably right. The company closed its doors in 2000.

I told Ann that the programs would probably still work in 2000, but the aging would look strange. They might occasionally need to fudge the system date to get the program to accept some dates. She seemed satisfied by that.


I have a strong feeling that I left out at least one other A4$1 client.


1. I think that Paul still lives in Berlin, CT, in 2021.

2. The address was 21-C Culbro Drive. The street no longer exists. I don’t know what happened to it.

3. Among these is one that mentions the NSNE computer system. That’s us!

4. John LaFalce’s LinkedIn page is here.

5. Steve Buzash’s LinkedIn page is here. Evidently he has moved to Jacksonville, FL.

6. Walter Ullram is retired. He lives in Farmington, CT.

7. Frank Hohmeister died in 2015. His obituary is here.

8. Bob Burke died in 2015. His obituary is here.

9. East Granby Machine is now called Burke Precision Machine Co., Inc.

10. The state has a plan to remove these annoying lights in 2023.

11. Richard Thorpe died in 2010 at the age of only fifty. His obituary is here.

1981-1985 TSI: A4$1: The Beginnings

Anything for a Buck: Getting started. Continue reading

We never turned down a project.

I have pretty clear memories of most of the clients1 from the very early days of TSI in Rockville, but I did not remember how we managed to develop the software for the first few. All of them except one either bought a new Datamaster or already had one at their offices.

The only computer to which TSI had access was a 5120. Both the 5110/5120 and the Datamaster used the BASIC programming language, but there was no easy way to convert code from one system to the other. If we did not develop the systems for new customers on the 5120, how did we write the code? I was pretty sure that we did not park ourselve in the client’s offices for weeks on end. For one thing, that would inhibit cursing, and it is not really possible to write good code without giving vent to a great deal of foul language. For another, we would have had to meet the client’s dress code every day. I would have certainly remembered that.

Sue reminded me that IBM in those days endorsed the policy of having the software developer take delivery on the customer’s hardware. The system would then presumably arrive at the customer’s location a short time configured and ready to use. Needless to say, this approach lasted only a few years, but it definitely gave struggling developers like us the opportunity to write a lot of software and simultaneously to put aside enough money to buy a system of our own.

This was accounting in 1980. By 1990 the columnar pads were an endangered species.

TSI’s first Datamaster client1 was our accounting firm, Massa and Hensley. Looking for a system to do time and material billing, they had purchased the tabletop model of the Datamaster. We met with them and designed a system that used three diskettes: JCPROG, which held all the programs, JCDATA for the keyed tables, and JCDET, to hold the transactions. The system had the following tables:

  • A table of client-related data that was keyed by a three-digit client number.
  • A table for each job opened for a client. The key was a concatenation of the client number and a five-digit job number.
  • Two job cost tables. One had every transaction; the other had the summary of costs by category. This arrangement violated the rules of normalization, but it facilitated some requirements. By the standards of the day the detail file was gigantic.
  • An employee table that was keyed by a three-character code.
  • A table of cost categories that also had three digit keys. The categories were of two principal types: time and materials. The entries in the time categories consisted of hours worked on a job. The entries in the materials categories were dollar amounts.
  • A rate table with a key consisting of the employee number and the category number. It might also have had a date so that they could increase rates to keep up with inflation.

The JCDATA diskette also had a table for a batch of transactions. This table might have been keyed by a letter so that more than one batch could be open at the same time.

My recollection is that there was only one menu on the JCPROG diskette. The user would place the program diskette in drive 1 and key in GO JCMENU. GO was a system command (ass opposed to a BASIC command) and JCMENU was the name of the program that displayed the menu of options.

Employees at both Massa and Hensley and Harland-Tine filled out forms like this every day. The category numbers were printed on the form. The employees knew by heart the client numbers and job numbers on which they worked.

Every day the operator keyed in a batch of transactions. The source documents were time sheets from the employees and other forms for billable materials. The program checked to see if the JCDATA diskette was in drive 2. If not, a message was displayed on line 24 of the screen to put it in. The entry and editing programs validated each field (client number, job number, employee number, category number) as it was entered. It printed a record of the transactions as they were entered. Transactions could be edited or deleted. When everything seemed correct, the program to update was run. The user was told to remove the JCPROG diskette from drive 1 and to insert JCDET. The records were then written on the history file on JCDET. Summary records at the job level were also written.

There might have also been a program to produce invoices to send to clients. Mass and Hensley may have opted just to produce a cost sheet for the jobs that they wanted to bill. I don’t remember.

We finished this project pretty rapidly, and everyone liked what we had done. Previously they would have had to rewrite and calculate costs for the information from the time sheets onto cost forms for each job. So, this was an ideal project for an early eighties software system. The savings in time and the increase in accuracy of costing and billing were immediate and substantial.

The users must have called TSI for support a couple of times, but I cannot ever remember when we needed to “put out a fire” for them.

TSI’s standards fit on one page, but they were strictly enforced.

Since I was doing the bulk of the programming, I implemented a set of standards for all of the programs. The goal was to make it as easy as possible to understand and debug them.

  • Many BASIC programmers eschewed the GOTO statement and use the RENUM command when they have changed their programs. I never renumbered the programs. Instead ,certain types of statements ALWAYS were in the same range of line numbers:
    • Line 1 was always OPTION BASE 1, LPREC. That meant that all counting started with 1, not 0, and all numbers had as much precision as the system could handle.
    • Line 250 always opened the specs table, and subsequent lines read in whatever specs were used by the program.
    • Lines 10000-10999 opened the tables used by the program.
    • The main loop of the program started on line 15000.
    • The exiting routine started at 60000.
    • Program-specific subroutines and functions were located on lines in the 70000-89999 range.
    • Headings for reports were subroutines that started at 90000.
    • Detail lines on reports were subroutines that started at 90000.
    • Reusable functions were 95000-99998.
    • Sections of code were separated by comment lines consisting of asterisks or dashes.
  • Every program had a meaningful number.
    • 1-99 was for programs to insert new records into tables or to work on existing records.
    • 100-199 was for lists of items in tables on the screen.
    • 200-299 for transactions.
    • 300-399 for printed lists of items in tables.
    • 400+ for reports.
    • The program number was in the upper right corner of every screen and every report.
    • Program listings and variable cross-references were placed in accordion files by client and program number.
  • Variable names were consistent and meaningful. CLNUM was used for client number in every program. Looping variables were always I or J. Counting variables started with N. NEE=NEE+1 would be used to count the number of employees selected.
  • In this version of BASIC all files were accessed by a number between 1 and 255. We consistently used the same number for a file. The printer was always #255.
  • Although BASIC allowed reading in all of fields at once, thereby assigning values to all of the variables with the corresponding field name, we never did this. If we had, we would have not been able to use the same field names for the same concept in different files. Instead, we read in only the fields that we needed by their position in the file. The disadvantage was that if we decided to change a field, e.g., to make it bigger, every program that referenced that file needed to be changed.
  • Disk space was precious. If a customer ran out of space on a diskette, it was a catastrophe. To save space all numbers except codes were “packed” to fit nine-digit numbers in five bytes in every layout. Dates were stored as six-digit numbers in the form YYMMDD. This all worked fine until the late nineties when we, as well as everyone else, needed to address the Y2K problem.
  • The screen layouts were consistent, and the behavior of Cmd keys2 was also consistent.
    • F2=Online help for every screen.
    • F3=Orderly exit.
    • F4=List of items in a table.
    • F12=Cancel and return.
  • The screens validated every field as soon as it was entered. If it was not accepted, the reason for the problem appeared in bold print on line 24, the alarm sounded, and the cursor remained at the field. This worked very well for the 5120 and the Datamaster, but when a single computer had many terminals attached, it became important to minimize traffic going to and from the server. Our programs on the System/36 and AS/400 therefore validated the entire screen at once. Problems were still reported on line 24 of the screen, the alarm still sounded, and the cursor was positioned at the source of the problem.

By and large these standards serve us well. We never really abandoned any of them.

This rather simple project was memorable not so much for what we did but for what it led to. Our accountant, Dan Marra, had a client named Harland-Tine, a new advertising agency in downtown Hartford. The two principals were Dave Tine3 and Susan Harland4.

I have dozens of vivid memories of this installation. At our first meeting Dave introduced himself as the president of the agency. He did not say what his partner did, and, in all honesty I never saw her do anything but cook. I think that they might have attracted clients by wowing them with her culinary skills.

A complicated business.

Dave said that the agency desperately needed to become more organized and efficient. He said that he turned to IBM for help, and both the IBM rep and his accountant had told him that he should talk to us. He envisioned using the computer for all of the administrative tasks of the agency. We spent a couple of days talking with people there. A large part of what the agency did was analogous to what Massa and Hensley did, but there was a whole other side to their business. They also purchased media (newspaper and magazine ads and radio and television commercials), which they marked up and billed their clients. Sometimes they created and produced these projects in-house, but most of the time some or all of the work was done by other companies or freelancers. There were a lot of other miscellaneous things that they also billed—public relations consulting, billboards (always called “outdoor” even if it wasn’t), direct mail campaigns, and “collateral”, which covered virtually anything else that promoted products or services.

They also wanted a billing system that could handle every type of work that they did. They wanted fairly standard accounts receivable, accounts payable, and general ledger systems. Their payroll was handled by an outside service.

In the early 1980’s Hitchcock not only manufactured chairs, but also had several retail locations.

The agency’s ultimate objective was to analyze the profitability of each client. Producing the reports for this was a very complicated assignment. Each client had negotiated a separate agreement with the agency. Harland-Tine billed some clients for items that others got free. For example, the agency’s largest client, Hitchcock Chair, was billed a monthly fee but did not pay anything extra for media expenses. They only paid what the publication or station charged the agency. So, if Hitchcock ordered a lot of media in a month, Harland-Tine did a lot of work with no reimbursement at all.

In addition, some jobs were billed in advance, some when the job was completed, and some in stages. So the profitablity reports, which we called “cost accounting”, needed to match the period in which income was counted with the period in which expenses were incurred.

We did not have the wherewithal to put together a detailed proposal. Instead we outlined in fairly broad terms what we would do for them. We broke it out by module, but we knew that it was really all or nothing. Their most important objective required all of the pieces. Our proposal was a great deal for them. We were desperate, and we did not want them to start looking around.

We saw ourselves in half of what agencies did.

Sue and I immediately noticed the resemblance of this agency to TSI. They were another company that would do anything for a buck! We decided that when we designed the system for Harland-Tine, we would also make sure that it could be used by TSI as well. We did not purchase media on behalf of clients, but pretty much everything else that the agency did had an analog in the way our company did business. For example, we did not advise about public relations, but we did consult about connectivity and hardware decisions.

I did a little research and discovered that there was a paucity of computer software for advertising agencies. Moreover, there were many agencies within driving distance, especially if New York and Boston were included in our sphere of influence. I figured that the best way to make TSI profitable was to sell a base package with customization to a lot of agencies. We had to start with one or two happy and successful clients. We resolved to make Harland-Tine the first.

Detailed recollections of the installation itself can be found here.


1. We never called the people who paid us money customers. We thought of our business as more service than product. We never installed a system that did not include at least a modicum of customization.

2. There were no function keys on the Datamaster keyboard. Instead there were 24 active Cmd keys in BASIC programs. The user held down the Cmd key in the panel on the left and the appropriate numeric key on the QWERTY portion of the keyboard for the 1-12 Cmd keys. For 13-24 (seldom used by TSI) the user held shift and Cmd and pressed the appropriate key (less 12). Shift Cmd 1 was 13, Shift Cmd 2 was 14, etc.

3. Dave Tine’s LinkedIn page is here.

4. Susan Harland died in 2000. She and Dave Tine opened the Connecticut Culinary Institute in 1987.Her obituary is here.