RunScore History Part 3

Part 3 – Running Score, a BASIC program

Running Score

In 1981 IBM announced the IBM Personal Computer.

I was very excited by this because this seemed like the perfect computer with which to score races. I had looked at the Apple II but there were some things I didn’t like. There was so much interest in the Personal Computer that IBM arranged a lottery to see which IBM employees received PCs first. In a sense, I won the lottery, because I was able to get my PC on the first day that employee purchases were available. To get it, I had to drive to the Computer Land store in Ithaca. There they showed us how to take it apart and put it back together. I was already familiar with the PC from work. I was working on a project that was going to use a Motorola 6800 microprocessor as the controller. I made a pitch to my management that they should use the PC instead since the tools we needed, such as an assembler, came with the PC. They accepted my proposal and we were one of the first groups in IBM to receive PCs.

Unfortunately, my date to pick up my PC was March 6, 1982, Barbara’s 36th birthday! She was pretty good about it. I actually scored a running race, the Forks XV 15 km race, by the end of March. I was using my Ditto machine to hand out copies. It wasn’t long before Tony LoTempio pointed out that the program was not computing pace correctly. A 15 km race is about 9.3 miles long. To compute the pace, the computer divided the distance by 9.3 but it seemed to be dividing by 9.0 instead. It turns out that I used a variable name that can only be an integer. Since the programming was in BASIC , I quickly fixed this and handed out correct results.

Since I was still an IBM employee at this time, I had to ask IBM for permission to market a program. I submitted my request and somewhat later received a letter saying that I could market the program. Elmer Galbi, a friend who was the head of the patent department at IBM Glendale Laboratory in Endicott, had told me that I would not be given permission to market it. He had understood that no one was getting permission. When I told him about the letter, he said, “Let me see that letter.” I told him I wouldn’t let him see it. I was afraid he would go up through channels and in the end my permission might be rescinded.

I think I started marketing the BASIC program Running Score in 1983 and sold a few copies after advertising in Runner’s World and Running Times. However, very soon a Canadian wanted to buy it. The problem was that I had all the fields hard-coded and the ZIP code was 5 characters long for the USA ZIP code. This incident made me realize that I had to start all over and make it fully configurable. That is, I could provide a “starter set” of fields but I would have to allow the user to add fields, delete fields, and change the field lengths. I also realized that I could no longer use BASIC. BASIC is an interpreted language. That means that the source code is interpreted each time the program is run thus affecting the overall performance. At this time the main compiled languages in use were FORTRAN, which I had used in graduate school , C, and Pascal. I really didn’t like FORTRAN and, at that time, there were no FORTRAN compilers for the IBM PC. So it came down to C or Pascal. Pascal was more of a teaching language and much system programming was being done in C. At this time I was introduced to Steve Nichols who was quite an expert in C. In fact, he had written something he called SMS: Screen Management System. It was a set of programs for managing the screen of the IBM PC. He gave me his code and I told him I’d give him 10% of my profit which I did for quite a few years. I kept it up because he was a great resource whenever I had a problem. But at some point, he decided he wasn’t helping me that much and suggested I stop paying him.

During this same time, Barbara had left the nursery school at First Presbyterian Church in Endicott because she wanted to start her own nursery school. After a search for a location, she found a home at Maine Federated Church in Maine, New York which was about six miles from us. During her first year or so, she often went down to the Nursery School on Sunday evenings to get things set up for Monday morning. I went with her to help. As I moved things around and did whatever jobs she needed doing, I thought and thought about the architecture of how the program should be configured. These times were very valuable because I could think better away from the computer. If I was at the computer all the time, I would tend to just program instead of planning.