1996-2006 TSI: AdDept Clients: May Company

As soon as the AdDept system at Macy’s in New York (described here) was running reasonably well, the May Department Stores Company became the most attractive marketing target for the system. The largest advertiser (at least in newspapers) in central … Continue reading

The G. Fox & Co. store in downtown Hartford.

As soon as the AdDept system at Macy’s in New York (described here) was running reasonably well, the May Department Stores Company became the most attractive marketing target for the system. The largest advertiser (at least in newspapers) in central Connecticut was—by far—G. Fox, a traditional department store similar to Macy’s that was based in Hartford. They even had a store that was within walking distance of our new house in Enfield.1 I was well aware that G.Fox was part of the May Company and that the May Company was largely responsible for the development of the mall.

I had purchased a book from somewhere that contained marketing information on large retailers. In it I learned that the May Company, which had been in business since 1877, operated the following divisions in 1989:

  • G. Fox & Co. based in Hartford.
  • The Hecht Company with headquarters in Arlington, VA.
  • Filene’s, a former Federated division based in Boston.
  • Foley’s, a former Federated division based in Houston.
  • Kaufmann’s in Pittsburgh.
  • Famous-Barr in St. Louis
  • J. W. Robinson Co. in Los Angeles.
  • May California in Los Angeles.
  • May D&F in Denver.
  • May Ohio in Cleveland.
  • Lord & Taylor in New York.
  • Meier & Frank in Portland, OR.
  • Venture, a chain of discount stores based in O’Fallon, MO.
  • Payless, a chain of shoe stores based in Miami.

That’s fourteen independently run divisions that were, except for maybe the last one or two, good prospects for the AdDept system. I figured that if we could persuade the parent company to commit to using AdDept in all of its divisions, TSI would be set for life. Maybe they would even buy us! That was the way that small software companies thought (and dreamed) in the late eighties.

In fact, the May Company during that period was busy acquiring other department stores, and that attitude put a lot of stress on the advertising departments of the divisions that acquired the new stores. There is no doubt that the May Company’s acquisition of thirteen Thalhimer’s stores in 1992 was the impetus for Hecht’s to purchase the AdDept system that year.2 Hecht’s advertising department had been using a PC-based system for producing corporate reports. It was completely incapable of handling the extra load. Similarly, when May D&F was folded into Foley’s in 1993, the Houston division suddenly was facing a greatly increased workload. That caused them to call TSI for help, and we installed an AdDept system for them.3 Capacity was never an issue for AdDept; we always proposed hardware near the lowest end of the available AS/400 models. If a client outgrew its hardware, it could migrate to a more powerful model.

Filene’s store in Boston.

In 1993 G. Fox was absorbed by the Filene’s division. Having a pretty good idea of the problems that this would cause for the advertising department of Filene’s, we tried to interest them in using AdDept. However, for reasons that I have never completely understood, we were unable to get our foot in that door for many years. Filene’s advertising department never took advantage of a significant portion of the system productively enough that we were able to use them as a reference.4

Instead, our third May Company installation was at Lord & Taylor5, where I learned that L&T did not play by the same rules as the other divisions. In some ways that caused headaches; in other ways it was delightful.


Doug Pease: In 1993 Sue and I hired Doug Pease to handle our marketing. One of the primary reasons that we selected him was because he had formerly worked in G. Fox’s advertising department in Hartford. He was looking for a job because the G. Fox stores had been converted to the Filene’s logo, and the advertising for those stores was planned and purchased from the office in Boston. Doug was quite familiar with the work flow of an advertising department that was similar to the ones that TSI was targeting, and he also had some contacts in the industry. Our hope was that he could grab the brass ring of the May Company for us while I was busy trying to get the systems for the three divisions—and a few other retailers—that we had sold up and running.

This was a very important time for TSI. My image of those days resembles a hockey stick. Until that time TSI had experienced rather flat earnings. We were basically just getting by. By contrast, in the last seven years of the twentieth century we had as much work as we could handle, and our financial statements were much better.

Unfortunately, I have almost no notes for that entire period. I talked with Doug on a regular basis, but my focus was on the current installations. I depended on him to establish a relationship with prospective customers. As soon as we hired him we did a mailing to prospective customers, and Doug took to the phones. He talked with several people at the May Company.

The main liaison person between the May Company and the advertising departments of its divisions was named Fred Christen. I never heard anyone say a bad word about him. He had, of course, heard about our work at our three installations, and he seemed to be impressed.

I am pretty sure that we had another “guardian angel” at the corporate headquarters. I often seemed to be at an advertising department at a division at the same time as a corporate auditor whose first name was Linus. His job was to assess the way that divisions were reporting their advertising expenses and income from co-op programs for their vendors. He seemed to be impressed with the way that AdDept handled these things.

May D&F store in Denver.

Fred Christen left the May Company shortly after Doug arrived at TSI. I heard that Fred left to manage his family’s business. Doug established a relationship with Fred’s successor, Dennis Wallace. I am pretty sure that Doug made at least one trip to St. Louis, but I don’t remember the details. At any rate, at some point the May Company decided that AdDept should be installed in all of the department store divisions. At that point Robinsons and May California had merged, May D&F had been folded into Foley’s, Kaufmann’s had taken over the May Ohio stores6, and the May Company had divested the Venture stores. So, we learned about five new clients in one swell foop: Famous-Barr7, Filene’s, Meier & Frank, Robinsons-May, and Kaufmann’s.

In retrospect I find it rather incredible that I have so little recollection of the details of how or when this decision came about. It was definitely a momentous occasion for TSI, but I remember no fanfare or celebration at all. I don’t think that the deal was finalized until 1996 or 1997. In the interim I installed quite a few AdDept systems at other retailers.

Employees at the May Company treated us fairly from day one right up until the time that the company was purchased by Federated in 2006. Most of TSI’s dealings with the May Company were at the division level. The following is a summary of my notes of our dealings with the corporate entity after all of the systems had been installed.


Notes: The first note that I have is dated October 18, 1999. It makes reference to a “sales tax fiasco”. I think that this must be about whether it was necessary to charge sales tax on our software and services. Because all of our AdDept clients were in other states, we were generally able to avoid doing so. However, there is an Excel file with a similar date that lists three invoices for Robinsons-May, which was in California, and three for Filene’s, which was in Massachusetts. Massachusetts and Connecticut had an agreement by which each collected taxes for the other. So, we definitely needed to charge Filene’s tax.

We also had a problem with California. TSI’s second accountant, whose name I do not remember, was hired in the early days of the AdDept system. She advised us to register with every state in which we had clients. This was poor advice, and we changed accountants shortly after that. However, there is no way to take back a company’s registration.

I vaguely remember an issue from several years earlier that involved an arrangement that my partner (and later wife) Sue Comparetto had made with Gottschalks, another store in California. In this case, the invoices were probably sent to St. Louis and paid by the May Company. We had never registered in Missouri, and we never paid sales tax there.

On January 2 of 2000 I wrote the following email to my other partner, Denise Bessette:

I think that we need to get something established as soon as possible with the May Co. to get compensated for your time and mine. Do you have any suggestions? I also think that it might be time for one or both of us of us to go to St. Louis and talk turkey with them. I am serious about this. I really am tired of not knowing where we stand.

I found a six-page document dated February 7, 2001. It concerned the specs for a Planning System Interface. Evidently they had an application called WD that they wanted to feed. They provided me with a document describing the system that had at least sixty-seven pages. Evidently we had been talking about this for at least two years. The document lists my questions and their incredibly vague responses. No one could conceivably quote an interface based on the responses that we received. I only vaguely remember this whole process. “WD” sounds familiar, but I am pretty certain that we never quoted it, much less coded it.

Denise and I went to visit the May Company together, but I think that it was in 2002. I went to St. Louis in 2001 to install AdDept for use by Filene’s on an AS/400 in the Midwest Data Center. I stayed in the Adam’s Mark Hotel. I did not like where they told me to stay. This is what I wrote to Denise.

My hotel room in St. Louis is absurd. It is a huge suite. I located a microwave and refrigerator inside what looked like a chest of some kind. For some reason it is much easier to find these two features in places where it is impossible to buy food (because I am downtown). The bathroom is right by the door, about a quarter mile from the bed. There are two TV sets, but no Jacuzzi, at least not in the room. The thermostat is out of whack. You have to set it to nearly 80 to keep the room from being frigid. I fear that they may not offer free breakfast here. They did not mention anything when I checked in.

It is supposed to rain all day here. There may even be thunderstorms. I was too lazy to run on Sunday. I will probably regret it today.

I hope that the May Co. has a comfortable nap room. I have become quite accustomed to the two-hour post-breakfast naps.

I think that the guy on the phone is Dennis Wallace. I don’t recognize the other two.

I remember that room and the rain much better than I remember what I did at the May Company. On subsequent visits I stayed at a nearby Hampton Inn. Incidentally, more than two decades later I still take lots of naps.

I found an agenda for a meeting with the May Company dated August of 2002. This must be the trip that Denise and I took together. Here it is:

  1. TSI
    1. People
    2. History
      1. Founded in 1979.
      2. Advertising in 1981
      3. Retail in 1988.
      4. First May division (Hecht’s) in 1991
    3. Custom programming
      1. Good at diagnosis.
      2. Incredibly efficient system of delivering custom code using BASIC.
      3. Two principles:
        1. There should be one version of the truth;
        2. Everyone should be able to take advantage of work done by others.
      4. People capable of completing difficult projects within parameters.
  2. AdDept
    1. Intent
      1. All administrative aspects.
      2. All media.
      3. Easily customizable.
      4. Require a minimum of local support — AS/400.
    2. Retail advertising is difficult.
      1. All the difficulties of retail — stores, merchants, accounting, A/P, and co-op
      2. All the difficulties of advertising
        1. Multiple media, each with almost completely different structure
        2. Media scheduling, production scheduling, estimating, loan room, etc.
    3. System design
      1. Scheduling:
        1. Every media represented in the ad file.
        2. Open on-line database works best when each person updates the system with information as soon as it is available.
        3. One main program, many well-normalized files.
        4. History of significant changes:
          • Production.
          • Financial.
      2. Financial:
        1. One main set of files (header and detail).
        2. Many front ends with supporting detail files.
        3. Two months, three amounts.
        4. Interfaces
      3. Cost accounting (data warehouse)
        1. Detail at the department level using May Company rules.
        2. Can also be used for other purposes:
          • Planning
          • Store-level analysis
      4. Add-ons
        1. Productivity
        2. Competitors
        3. Loan room inventory and transactions
        4. Photo studio
  3. May future plans
    1. Filene’s
    2. Uniformity
    3. Best practices
  4. Technology
    1. Explain CFINT
    2. Explain performance of 5250 v. browser-based
    3. Why “web-facing” doesn’t help
    4. Explain V5
      1. BASIC compiler.
        1. Should we convert to C?
        2. Should we convert to Net.Data?
        3. Should we convert to WAS/Java?
        4. Should we look to Wintel?
      2. Can’t save back very far.
      3. InfoPrint server allows output as .pdf files.
    5. Browser-based programming requires VPN or the equivalent for support.
  5. Other things
    1. AxN.
    2. Peggy Southworth labels.
  6. What else?

Some of this has fled my memory. I do remember that CFINT was a program that regulated performance. Prior to version 5 of the operating system the users could allocate priorities for jobs between “interactive” jobs (5250 sessions on terminals or PCs) and “batch” jobs (everything else, including jobs that relied on something between themselves and the operating system, such as a Java server). IBM wanted to show that the Java jobs had good performance. To do so it slowed down all jobs that were running as interactive. Nothing that IBM had previously done was as hated as this tactic.

I also remember the Peggy Southworth labels. Every division was required to create these labels for each print media job in a precisely specified format. We wrote a program for one of the divisions to do this for them.

The notes indicate that Denise and I met with Rob Cole and Mike Henry. I only vaguely remember them. I have a more vivid memory of Lew Allder, who was a Vice President in the IT department. He showed us around the machine room and assured us that the small size of our organization was not an issue with him or anyone else at the May Company. Everyone with whom we talked was very supportive of what we had done and what we were planning for the future.

Don’t take the bridge across the river.

I also remember one incident that occurred when we were driving either from or to Lambert, the St. Louis airport. I made a wrong turn, and we found ourselves on the bridge that goes across the river to East St. Louis, IL. I had no interest in taking a tour of that town. When there was a break in the traffic I jerked the rental car’s steering wheel to the left, made a clean U-turn and headed back to St. Louis. I think that this maneuver shocked Denise, at least a little.


I tried to find information on what became of the May Company employees mentioned in this entry. However, I was not able to find any information on the Internet about most of them. After a good bit of digging I found Dennis Wallace’s LinkedIn page, which is here. In 2022 he appeared to be working for a company in Houston that provides technical assistance to the hospitality industry.


1. All right, I never actually walked to G. Fox’s store in Enfield Square mall, but I could have.

2. The Hecht’s installation is described here.

3. The account of the installation for Foley’s is provided here.

4. The troubled AdDept installation at Filene’s has been documented here.

5. The Lord & Taylor installation is described here.

6. Doug and I made a strong pitch to Debra Edwards at May Ohio, but the division was eliminated before we could close the deal. That “whiff” is described here.

7. I think that Famous-Barr may have already committed to getting AdDept before Doug arrived on the scene, but their decision was probably made because of the May Company’s commitment to the project. The installation at Famous-Barr is described here.

1999-2002 TSI: The Million Dollar Idea

The genesis of AxN. Continue reading

In large measure this entry is based on and inspired by a set of recently discovered messages that I sent to my partner, Denise Bessette, about new projects that we were researching or working on. The first email was dated in late 1999. The last was in early 2001. The messages portrayed an exciting but scary time for both of us.

By the middle of the nineties it was evident to us that the way that TSI had been programming in the past fifteen years was becoming obsolete or was at least losing popularity. In 1992 Microsoft left IBM at the starting gate when it released Windows 3.1, the first version of its operating system that featured a graphical user interface (GUI) and was also stable enough that large corporations took it seriously. One could still make the argument that text-based software systems like the ones that we had developed were appropriate for many business tasks—in fact, most of the most important ones. However, if you did, you were probably dooming yourself to the fate of typewriter salesmen.

Great if you have just 2 fingers.

In fact, systems like AdDept and TSI’s other systems were branded by many of the magazines of the day as “legacy systems”. The emphasis of the new approach centered around the appearance of the screens, which now featured colors, images, text boxes, radio buttons, and varied fonts. They were certainly more interesting to look at than anything that we had produced. The mouse was the thing! The keyboard was only used when absolutely necessary. Whether they were as efficient or as easy to use was debatable, but, as I already noted, we were well aware of what had happened to the typewriter salesmen.

Another thing that happened during the middle of the nineties was the explosive growth of the Internet. All software developers wanted to be a part of it, but few were exactly sure how to approach it. I knew that we needed to figure out what aspect we should concentrate on, but it was not an easy decision to make. A few early participants made a lot of money, but an awful lot of ideas were catastrophic failures.

The Search for a GUI: I spent countless hours researching ways that we could provide a GUI for the AdDept system that did not involve a complete rewriting of the hundreds (and growing daily) of screens that we had already implemented. Every developer who worked on IBM midrange or mainframe systems must have been faced with the same problem. We all wanted a way to provide a system that looked modern but also took advantage of the thousands of lines of functioning code that had already been written.

I don’t know why, but IBM was not much help in this endeavor. Instead, in the late nineties IBM became a strong proponent of an object-oriented programming language developed by Sun Microsystems called Java. This was a startlingly new language. The first version was released in 1996.

I bought and read ten separate books that purported to teach Java programming. The structure of the language was consistent with the first principle of its design: “It must be simple, object-oriented, and familiar.” Well at least it was simple and object-oriented. The structure of the code was nothing like what I was accustomed to. Its main orientation was to a computer display, which it considered a set of objects, each with a set of properties and methods. That approached worked well enough for a screen, but how would it work for other things? After downloading the software development kit to my laptop and spending hundreds of hours mulling the contents of those books, I could do all of the exercises in every book, but I had not the slightest clue how to begin to code a system to manage any aspect of retail advertising. In fact I could not replicate even one screen of the AdDept system.

I did not completely discard the notion of using Java somehow, but if we did, we would definitely need some help. As I look back on this, maybe this is the reason why IBM was so crazy for Java.

The Spreadout Project: Users of TSI’s systems seldom complained about the look or feel of our data entry screens. Those screens would never have won any design awards, but the formats were completely consistent throughout the application, and everyone knew that they got the job done efficiently. Furthermore, they knew that TSI could implement requested changes rapidly and at moderate costs.

What they did not like much was the look of the reports, which was limited to one non-proportional font—Courier—with no images or even styles like italics or bolding. Many, if not most, of the people who used AdDept were quite good at making and manipulating spreadsheets. They were used to controlling the format of the output, and they liked the flexibility. For example, if they wanted someone to concentrate on one column or row, they could easily change the font, color, or style for just those cells.

Several clients asked us if it would be possible for us to produce an Excel spreadsheet as the output from designated programs in AdDept instead of or in addition to printed reports. I did not know if it would be possible, but I said that I would look into it. I dubbed this project “Spreadout”.

It was rather easy to produce an output file that contained the same rows and columns as the report, and we implemented that option in a large number of AdDept reports. The user could then download that file to their PC. That file could then be loaded into Excel with the rows and columns intact. However, the fields (or cells) in the file contained only text or numbers. It was not possible to download formulas for totaling or designate any kind of formatting. Furthermore, the process of downloading the file was not exactly speedy.

I tried to figure out what it would take to produce code that could provide files that could be opened in Excel with predetermined formulas and formatting. I found some documentation from Microsoft of the Excel files, but I never could concoct a way to provide what our customers asked for. Furthermore I never heard of anyone else who had accomplished this, and —believe me—I searched..

I did, however, managed to provide an alternative that proved popular to some clients. Almost all the AdDept customers used Hewlett-Packard printers that were accessible by the AS/400. HP sold books that documented the format for files in HP’s printer command languages, PCL 4, PCL 5, and PCL 6. I could then write code to produce spooled files that contained the output in exactly the format that the client specified. The downside was the considerable amount of coding required for each report, many times as much as it took to produce it in the Courier-only. It also required an extra step to send the output directly to the printer without being reformatted.

However, a few clients were so insistent about the need for a precise format that they were willing to pay the price. These reports were almost always the ones that they distributed to other departments or to higher-ups.

If anyone else ever did a project like this for the AS/400, I never heard of it. Unfortunately, I never figured out how it could be marketed as a stand-alone product usable with other AS/400 software.


As the new millennium approached, we—that is, Denise Bessette and I—felt that we needed to expand TSI’s horizons. In January of 2000 we flew to San Diego for IBM’s PartnerWorld conference in the hope of making contact with people who could advise us how to adapt to the need for modernization and the Internet. That enjoyable but frustrating experience has been described here.


On February 25, 2000, I took the time to write up in a fairly detailed manner how, given the inherent limitations of a small business like ours, TSI should to proceed in trying to develop a second line of business. Here is a portion of that memo:

General principles:

1. We should get the best people available to help us.

2. We should maintain AdDept as a dependable source of income. Whether we should invest a lot of time and/or money in enhancing and marketing AdDept is still to be determined.

3. We should try to leverage our assets better. Our income is too heavily dependent upon the number of hours put in by Mike and Denise.

4. We should assume that the economy will remain strong for another two years. On the other hand, we should avoid debt or at least large amounts of debt in case this assumption turns out to be false.

5. We should add new skills that are more marketable. That means learning some subset of Windows, object-oriented programming, and the internet. We should be thinking past the next project to the one after that if we can.

6. We should look for partners with skills and assets that complement ours.

7. We should not be deterred by the fact that some of these principles seem incompatible.

8. We need to act fast. Pursuing René2 cost us seven months. On the other hand we might have gone down some less profitable paths if she had been on board.

I think we should take the following steps as soon as possible.

1. Find out what it takes to get our existing clients to use AdDept for insertion orders. The following clients are not using AdDept for IO’s: Macy’s East, Neiman Marcus, Filene’s, Saks Fifth Avenue, and Hecht’s. I checked Herberger’s. They have ads through March 29, 2000, at least. Macy’s West is apparently starting. Gottschalks ran insertion orders yesterday. I don’t know about Meier & Frank, but I can take care of that on my trip.

2. Find out which advertising departments have access to the internet and would be willing to use it to check on insertion orders. I don’t think that this would be a problem with most of them. Unfortunately, we don’t really have anyone in the office who can do this for us.

3. Make an appointment with Ken Owen3 to run the idea of a clearinghouse for insertion orders by him. He may be very interested in working with us on it. I have quite a bit of respect for him. At the very least, he is smart and completely honest.

4. Run the clearinghouse idea by at least one of our clients. Why not schedule our trip to New York and run it by Tom, Chris, and whoever their ROP person is?4

5. Run the clearinghouse idea by at least one newspaper or someone who knows how newspapers think about these things today.

6. Start trying to package and market AdDept and/or AS/400 products and services. We need to maintain or enhance our cash position over the next six months.

7. We should find out what, if anything, the National Newspaper Association (NNA)5, the AAAA6, and AP AdSEND have done in this regard. The AP is a potential partner in this venture. I once had a copy of the NNA’s EDI spec7, but I seem to have thrown it out when we moved. I will see what I can find on the Internet.

Requirements for hiring a marketing/client services person:

1. He/she must be able to get along with Mike and Denise. This includes having a good work ethic. I think Doug barely met these qualifications.

2. Must be able to get along with the clients.

3. Must be willing to spend a lot of time on the phone.

4. Must be able to talk to decision-makers and occasionally presidents of corporations without looking foolish. Doug could do this, but his ability to identify the real decision-maker was just so-so. He was also almost always overly optimistic, but this might be necessary to offset my tendency to see the negative side of everything.

5. Must be able to refrain from overselling.

Pluses:

1. Intelligence. Determination can go a long way to overcome deficiencies in this categories, but I don’t think I want to try to explain things to someone any duller than Doug.

2. Retail experience.

3. Newspaper experience.

4. Other advertising experience.

5. Good business sense.

6. Sales experience.

7. Computer experience.

How to proceed.

1. We can run an ad in the Courant. There are almost as many classified ads for sales and marketing people there as for programmers. The only major retailer in the immediate area now is Ames, and they run no ROP. Therefore the chances of finding someone in Hartford who understands retail advertising are slim.

2. We can contact a headhunter. We don’t have to pay unless we find someone, but we will have to pay plenty if we do. It might be worth it if it speeds up the process.

3. We can advertise on the Internet. Does that cost money? If so, how much?

4. In interviews I think that we should consider dangling a carrot of a spinoff of a .com company for the insertion order clearinghouse. I am not exactly sure how to present this idea to someone. Maybe we could offer them a percentage of the new company with the understanding that we would try to sell it once it has become established.

In retrospective I find it impressive that I was able to earmark in advance so many important issues that TSI would face over the next few years. We made some mistakes, but we made a lot of good decisions.


A month later, on March 25, 2000, I mailed a letter to our contacts at all of the companies that used AdDept. I solicited their opinions on what TSI’s priorities should be in the new millennium. Here is a copy:

TSI is in the process of evaluating how best to allocate its resources over the course of the next year or so. Our highest priorities will remain providing excellent support for existing installations and responding to requests for custom programming from existing clients. However, there are a few additional projects that we are considering. We are very interested in learning what our existing clients think about them.

1. Menu maker: This is a fairly simple idea both in concept and in implementation. You would be provided with either a PC/Mac program or an AS/400 program that would allow you to create your own menus. The menus would reside in a separate library so that they would never get mixed up with the standard AdDept menus. You would provide the name for the menu and the heading text. For each option you that want to add, you would be allowed to select from a list of AdDept programs and menus. You could also enter your own command or an IBM command (e.g., WRKQRY). If you selected an AdDept menu or program, the description and the online help would be filled in for you, but you could override the text to make it say what you wanted.

2. GUI front end: Most software companies that market systems of a size comparable to AdDept have budgeted more than $1 million to “modernizing” their data entry screens to use a “graphical user interface” that is consistent with the methods used by Windows and Mac programs. It is now technically feasible to create a fairly nice GUI front end for AdDept for much less than that using products available from third party vendors. However, there is still a considerable capital outlay involved. We also estimate that it would take at least half of a man-year of labor. Furthermore, the PC or Mac would have to meet certain minimum requirements. Terminals would still use the green screens. TSI’s support regimen would be more difficult. The interactive programs would probably run slower on older AS/400’s. They may actually run faster on newer boxes.

3. Output to Excel: We believe that it is technically feasible (albeit difficult) to create a file from the AS/400 that is usable by Microsoft Excel with no intervening steps. It is a relatively straightforward task to download data files (or even spooled files) to spreadsheets today, but many intervening steps are required to get something presentable. TSI’s proposed method would allow you for each report that is eligible for this kind of treatment to designate (and permanently store) the formatting of the worksheet—report titles, column headings, “fit to page”, and most of the other values in “File, Page Setup.” You would also be allowed to designate fonts and sizes for the report title, the column headings, the body text, and each level of subtotals. The subtotal values would be formulas, not simple values. The same program could be used for data files that are produced by queries. The resulting worksheet could then be edited as needed. You can even edit, add, or delete lines in the worksheet. The subtotals will automatically be updated. Most simple reports could be reformatted to use the proposed program. It might be difficult or even impossible to generate some complex AdDept output using this approach.

4. Insertion order clearinghouse: We have long thought that the methods used for reserving newspaper space leave too much room for error and are overly labor-intensive, both for the advertiser and for the newspaper. The purpose of this project is to make the ordering process easier and to minimize the potential for miscommunication.

Instead of faxing the orders, the AS/400 would send them electronically to TSI. We would post them on a website. When the newspaper reps sign on, they would see all orders for them from all advertisers who are using this service. They would be able to add comments or questions and confirm them electronically with or without reservation numbers. They could also print the orders and, eventually, download them directly into their reservation systems. When you sign on, you would see all of your orders. It will be immediately obvious which ones have been confirmed, which have been read but not confirmed, and which have not been read yet.

What do you think of these ideas? Do you have any ideas of your own? We would greatly appreciate it if you would communicate your feedback to us at your earliest convenience. The last thing that we want to do is invest a lot of time and money in something that is of little or no perceived value to our clients.

I don’t recall receiving any substantive responses to this, but around this time Steve VeZain sent me a rather lengthy email that explained some of the priorities for Saks Inc. Our dealings with him and his company are detailed here.


Net.Data: At some point I became acquainted with an online forum called IGNITe/4007. This was a website where AS/400 developers could pose questions about using the AS/400 for applications for the web. Although some IBM experts participated, the forum was not run by IBM, but by a former IBMer named Bob Cancilla8, who worked for a company in Rochester, MN, the home of the AS/400.

Bob also wrote the book shown at left that explained how to use the AS/400 as an Internet server. IBM disdained the approach of its customers using a book written by someone who had actually gotten the AS/400 to function as an Internet server. Big Blue preferred that its customers spend hundreds of dollars on classes or thousands of dollars on consultants rather than $15 or $20 for a book. They also championed something called WebSphere to manage applications written in Java. During February and March of 2000 I had puzzled over the Redbook that documented this product. I was nearly ready to give up on the idea of using the AS/400 for anything related to the Internet until I found Bob’s book and website in April of 2000.

I purchased this excellent tome and followed most of Bob’s advice. I successfully configured TSI’s model 150 as an HTTP server to serve web pages to browsers and as an FTP server for exchanging data files. It was possible to use the AS/400 as an email server, but Bob advised against it. We elected to use AT&T for sending and receiving emails for our employees. We later configured our AS/400 to send outgoing emails through the SMTP (simple mail transfer protocol) server. Eventually IBM decided that it was a bad idea to have its own proprietary HTTP server and supported a version of the Apache server used by almost everyone else.

At that time the most popular scripting language for web-based applications was PERL. IBM never supported it on the AS/4009. Instead it provided its own language, which was called Net.Data (pronounced “Net Dot Data”). This was the only web language that could be used on the AS/400, and no other system in the history of the world ever used it. We obtained a copy of IBM’s handbook on Net.Data (posted online here), and I determined that we could probably use the language for what we wanted to do. Here is what I wrote about it at the time.

I signed on to the IGNITe400 website and registered as a member. It’s free. You can ask questions there. I looked at a few of them. Bob Cancilla himself answered some of the questions! I also looked at IBM’s Net.Data website. It is full of information.

I printed out a lot of documentation. I am now convinced that we can do what we want to do with HTTP server and Net.Data. This is exciting. Buying that book was a great idea. The links alone are worth the price. The biggest difficulty that I see will be working out the process of getting the orders from our customers and then from others.

… I have more than doubled my knowledge about the AS/400 and the internet in the last two days. Moreover, I think I could do it! I think that we should try it some time this coming week.

Net.Data was an interpreted language, just as BASIC was on the Datamaster and the System/36. The programs (which in web parlance were called scripts or macros) were not compiled into executable machine code. Changes to the scrips took effect as soon as the programmer made them. So, a developmental environment was a necessity. The time it took the processor to interpret the code and generate the HTML code that the browser could understand made all of the programs considerably slower than the compiled BASIC programs on the same machine. However, they were lightning fast compared to Java, the approach blessed by IBM.

So, I taught myself how to use Net.Data to deliver interactive scripts for a browser (at the time the main choices were Netscape Navigator, Internet Explorer, and whatever Apple called its browser before Safari). The language itself was relatively easy to understand, but programming for numerous constantly changing browsers was much different from programming for a very stable AS/400 and its 5250 user interface.

I also had to learn the Common Gateway Interface (CGI), which was the method of reading from and writing to files on the AS/400. This was totally different from what we were accustomed to. Our programs had always read the files a record at a time even after we switched to the AS/400’s relational database. With Net.Data it was necessary to execute an SQL statement that returned a set of data—rows (records) and columns (fields)—that was stored in an array (called a table in Net.Data). It was then necessary to loop through the rows of the array. I was already somewhat familiar with SQL, but I needed to learn how to use “joins” to do complicated selections.

These two volumes got a workout. The binding on the HTML book split in two years ago.

I also needed to buy books on HTML and JavaScript. If I had realized before I started that I needed to learn all of this, I might have deemed that the project would require more time and effort than I could afford. However, by the time that I realized what I was up against, I had invested so much time that I was not about to abandon the project.

There was no syntax-checking of Net.Data macros, and, at first, there was no editor to help by color-coding the statements. So, when I ran into a problem, which happened quite frequently, I had to search elsewhere for help.

Life got a lot easier when IBM put its Redbooks on CDs.

In researching for this blog, I found a pdf online for a Redbook (technical manual) that IBM published for people like me in 1997. It is posted here. Even a quick glance will make it clear that writing applications for the AS/400’s HTTP server would be a daunting task. For example, it contained this statement: “Net.Data Web macros combine things you already know such as HTML, SQL, and REXX with a simple macro language.” I did not know HTML at all, I knew only a little SQL, and to this day I have no idea what REXX was. Also, the Redbook neglected to mention that it was not really possible to write interactive programs without JavaScript.

I hung in there. Here is one of my last messages: “I feel a lot of pressure to work harder. I want this new project operational yesterday. It is going to be difficult at first. I want to get over the hump.”

I spent a lot of time in the IGNITe/400 forum. My best source of information was a guy from (I think) New Zealand, of all places. I never met him in person or even spoke with him on the phone. His name was Peter Connell, and he helped me through every difficult coding problem that I encountered. Not once was he stumped. By the time that I was well into the project, I was able to provide solutions to coding problems that others described.


TSI’s Internet Project: Even before Denise and I attended PartnerWorld, we had pretty much decided that our best shot at developing a successful Internet product would involve insertion orders, which is what newspapers and magazine call reservations that they receive from advertisers for ROP (display ads), inserts, polybags, or any other kind of advertising. TSI’s AdDept customers sent their reps at newspapers a schedule that listed all of the ads that they wanted to place for a specified period—usually a week. Most of them faxed this information to the papers. The rep at the paper examined the schedule. Sometimes questions required phone calls. Sometimes requests (such as designated positioning in the paper) could not be accommodated. Even after final approval the schedule was often changed by the advertiser before the ads ran, sometimes with very little advance notification.

Newspaper ads were expensive … and valuable.

Errors on both sides were not rare, and they could be quite costly. The newspaper often gave the retailer free ads to make up for the mistake. The advertiser’s loss might be much greater. In the nineties and early twenty-first century ads in newspapers were the primary vehicle for communicating with customers. Mistakes in the ads could cost the retailer thousands in sales, and they were embarrassing to the advertising department. Occasionally heads rolled.

In 2000 most retail advertisers faxed their schedules to the newspapers. If the line was not busy, the phones were rather reliable. However, what happened to the schedule after the fax machine received it? Was the printout legible? Did the rep ever get it, and, if so, what did he/she do with it. What assurance was there that the fax that the newspaper used to compose the paper was the final version?

We thought that the Internet might provide an opportunity to speed up this process and to improve its reliability. My first idea was to replace faxing with email. If the AS/400’s (free) SMTP server were installed, AdDept could compose and send to the newspaper an email that contained the schedule. Wouldn’t the newspaper rep immediately print the schedule? If so, how was this better than faxing? Doesn’t it just add another step? Besides, email is demonstrably less reliable than faxing. The worst that usually happens with faxing is that the output is blurry or even unreadable. Emails, in contrast, can be held up by any Internet Service Provider (ISP) that handles the message, and there could be dozens. So, the schedule might never make it to the rep’s inbox.

Eventually Denise and I settled on using FTP to send the schedule from the client’s AdDept system to TSI. Thereafter TSI’s AS/400 managed the whole process using a combination of BASIC programs and Net.Data macros. Details of the actual design are posted here.

After Denise and I agreed on the design, several details still needed to be settled:

  1. Who will do the coding at TSI?
  2. Who will pay for the service, the advertiser or the newspaper?
  3. How much will we charge?
  4. How will we market the product to our clients and their newspapers?
  5. How can we entice advertisers that did not use AdDept to use this method for insertion orders?
  6. Can we take advantage of the link established between TSI, the papers, and AdDept for other modules?
  7. What will the product be named?
  8. Will the project be part of TSI or a new financial entity?

The answer to #1 turned out to be Mike Wavada. I expected that I would eventually train Denise or one of the programmers so that they could at least support the existing code, but it never happened. It astounds me to report that this was a one-man coding job from day one, and no one else at TSI ever learned Net.Data. Hundreds of papers and most of the AdDept clients relied on it starting in 2002 and continuing through early 2014. Think about this: Between 2003 and 2012 I took six vacations in Europe and one cruise in the Caribbean. There were no serious incidents!

Questions 2-5 are addressed in the entry about marketing of AxN, which is posted here.

From the outset I was hoping that the nexus connecting newspapers and the retailers through TSI’s website could be used for other communications as well. The most obvious one was for the delivery of the files that contained the layouts of the ads. Nevertheless, I was reluctant to pursue this for several very good reasons. The first was that the Associated Press already had a huge head start with its very popular product called AdSEND10. There were also several other companies that offered similar services.

The other thing that gave me pause was the potential legal liability. It seemed to me that if we failed to deliver an ad correctly and/or promptly, we could easily be sued. A fundamental tenet of TSI’s operation had been to avoid any activity that might occasion a lawsuit. Throughout the first two decades of its operation, TSI had successfully avoided litigation. Also, we knew nothing about the process of sending ads electronically, and the AP already owned satellites that it used for this purpose. I also learned later that AdSEND had twelve dedicated T-1 lines, and one of TSI’s clients told me that that was not nearly enough. TSI eventually installed one T-1 line that easily handled the insertion order traffic generated by AxN.

An idea that I liked better was for the newspapers to transmit their invoices electronically through TSI’s servers to AdDept users. I even came up with a cool name for this: e-I-e-IO, which stood for electronic invoices and electronic insertion orders. My idea was to provide a program to feed the newspaper’s billing system with the information from the insertion order, and to feed the retailer’s AdDept system with the same information. I did a little research to see if one software system for billing or accounting was dominant in the newspaper industry and discovered that this was decidedly not the case. So, we would face the prospect of persuading one paper at a time, or, at best, one chain of papers at a time. Furthermore, someone else had already claimed the URL that I really wanted: eieio.com.

The name that I picked for the new product would still work if we came up with other ways for TSI to serve as a nexus between advertisers (A) and newspapers (N). It was AxN, which was pronounced “A cross N”. The A and the N were always portrayed in dark blue Times New Roman. The x was always in red Arial.

That leaves question #8. Denise was always in favor of making AxN a separate financial entity. However, we never found a way to extricate it from the rest of the business. We looked at the revenues separately, but we never even did a separate P&L for it.


1. René Conrad was TSI’s liaison with Kaufmann’s, the May Company’s division based in Pittsburgh. Both Denise and I had a very high opinion of her. When Doug Pease left TSI in 1999, we tried to hire René. Details of the AdDept installation at Kaufman’s are posted here. The unsuccessful pursuit of René is documented here.

2. Ken Owen is a friend and was a client. The latter role is explained here. By 1999 Ken’s business had drifted away from creating and placing ads for clients to software for the Internet. He gave us a little free advice, but the role for him that I envisioned did not materialize. I communicate via email with Ken every year on March 4, the holiday that we celebrate together—Exelauno Day.

3. Tom Caputo and Chris Pease were our key contacts at Lord & Taylor in Manhattan in those days. The history of the installation at L&T is recorded here.

4. I did contact the NNA, but nothing came of it. The person with whom I spoke was nice enough, but it became evident that trying to work with this organization would be extremely time-consuming and not the kind of thing that I was good at or enjoyed. Eventually I discovered that there were almost as many administrative systems for newspapers as there were newspapers. It appeared that there were no accepted standards.

5. The American Association of Advertising Agencies (AAAA—universally pronounced “four A’s”) published an annual list of software for ad agencies. For years TSI’s GrandAd system was on the list. I am not sure what I had in mind as an additional relationship. Perhaps I envisioned ad agencies that specialized in retailers might want to use AxN for insertion orders and would work with us to create an interface. Perhaps I thought that other software companies might add the interface to their products for ad agencies. Nothing like any of these things ever happened.

6. EDI is short for Electronic Data Interchange. It refers to an orderly setup that enables participant to exchange information electronically. When there are only two participants, it is usually just called an interface. “Specs”, which is short for specifications, refers to the documentation published and delivered to the participants and prospective participants.

7. I have no idea what the name of this group meant. At the time IBM was busy promoting the idea of e-business. IBM’s marketing director proclaimed at PartnerWorld that IBM “owned” the concept. So, that may explain why the e is not capitalized. I was surprised to find an article in Enterprise Systems Journal about IGNITe/400. It is posted here.

8. Bob Cancilla went back to IBM for a while and then became a consultant. His LinkedIn page is here. In 2018 he wrote about the thirtieth anniversary of the AS/400. It is posted here. The article explains some of the reasons why IBM treated the AS/400 division and its customers so shabbily almost from day one.

9. For some reason IBM repeatedly changed the name of the AS/400 to a bunch of things with the letter i appended. The operating system remained the same. Everyone at TSI, like most users, still called it the AS/400 even after the name changes.

10. In 2007 Vio Worldwide acquired “the assets” of AdSEND. The deal is described here. In 2010 Dubsat acquired Vio Worldwide. This transaction was reported here.