... In June of 1980 I began a two year temporary assignment with what, at
that time, was the ISG advanced technology group in Yorktown Heights.
During this period, ISG and Research were in the process of defining an office
systems research strategy. The result was that I had a lot of "free" time on my
hands, since I was not directly involved in the definition of this
strategy. I made use of this time to investigate some ideas I had been
toying with during the previous few years in Rochester, Minnesota
dealing with "windows" and advanced user interfaces. At this time, the
notion of windows and windowing systems was not well known or accepted.
No systems using windows were yet commercially available, or even hinted
at. As far as I am aware, no work on windowing systems was underway
anywhere in IBM.
Initially, my work received little or no attention. However, since
management in Yorktown continued to be "bogged down" in the office
systems research strategy, I was given additional time to pursue my
work. Eventually, my management began to take note of the work I was
doing, and while still not overly supportive, at least gave me
permission to "officially" continue work on windows.
Up to now, all my work on windows had taken place on IBM System/370
computers running under VM. Due to inherent limitations in the I/O
and display architecture of these systems, the results I was achieving
weren't all that I had hoped. As a result, in the winter and spring of
1981, I began work on a windowing system which ran on an Apple II
computer. The choice of the Apple II was somewhat accidental. At that
time, the IBM PC was only a rumor. I felt that what was needed was a
machine with direct video mapped memory, such as the Apple II (and now
the IBM PC) possessed. In addition, I happened to own an Apple II. The
only stumbling block was a legal one. The IBM legal department in
Research had determined that no Apple II could be allowed inside the
research facility. As a result, I was forced to use my own equipment and
my own time to continue my research into windowing.
The result was that in the spring of 1981, I had completed a windowing
system on the Apple II. This new system aroused somewhat more interest
than the previous VM versions had. Now, with a greater degree of
management cooperation, I proceeded to give a number of demos to groups
in Research and ISG, both in Yorktown and in White Plains. The main
problem that I encountered though was an attitude that might be characterized
as: "So what, IBM doesn't make Apples.".
However, in July of 1981 it became clear to me that IBM was indeed
going to make "Apples". At this time, my manager was able to arrange for
me to travel to Boca Raton to "evaluate" the new personal computer being
developed there. I spent several days in Boca, during which time I
became somewhat familiar with the PC, BASIC, and some of its hardware
features. In fact, Don, you may recall the drawing program I wrote in
BASIC during those two days.
On return to Yorktown, I immediately began to turn my attention to the
task of writing a windowing system for the new IBM PC. I had learned a
lot from the previous two windowing systems I had written. Armed with
this experience, and some additional ideas concerning object oriented
systems, I was eager to combine them into a system that would run on the
PC. However, in the fall of 1981, PC's were not easy to come by. As a
result, I developed the windowing routines on an Intel MDS, but, having
no way in which to test them, I turned instead back to VM. There I
updated the windowing routines with some of the techniques I had
developed over the past year, and incorporated the object architecture
ideas I had been working on. The result was that by the end of September
1981 I had a version of what I called GLASS running on VM.
During the next two months, I "tinkered" with this system while waiting
to get my hands on a PC. Finally, in late November 1981, my manager in Yorktown
was able to procure two old engineering models of the PC for me to work
on. From then until January 1982 I worked on rewriting GLASS for the PC,
incorporating some additional ideas I had had while using the VM
version.
In late January of 1982, my manager arranged for us to travel to Boca to
demonstrate GLASS to a group working on the Datamaster word processing
system. During this trip, he also arranged to give a demonstration of
GLASS to you, Don. I recall, as you do I'm sure, that your reaction was
one of interest, but concern over the fact that existing PC applications
would not run under it. I was somewhat reluctant to promise anything in
this area, and so we let the matter drop, and I returned to Yorktown.
During the rest of 1982 I continued to work on improving and refining
GLASS for the PC. It was during this time that several significant uses
for GLASS developed. In the late spring, a group from Kingston saw a
demonstration of GLASS and were immediately interested in its windowing
capabilities. They were in the process of defining a new display system
and were considering incorporating a form of windowing into the display.
Upon seeing the GLASS demo however, they immediately revised their
concept of what windowing was and what it should be. They began trying
to interest me in pursuing a temporary assignment in Kingston to help
them with the development of their new display. However, for various
personal and professional reasons, I declined all their offers. From a
professional viewpoint, I was convinced that the ideal use of windows
was in a personal computer, and not in a mainframe-based terminal. I was
afraid that if I worked with them, the real potential of a windowing
system would never be realized. So I refused.
Seeing that I would not work with them, Kingston next decided that they
would make do with the code that I had developed. Again I refused.
Finally, Kingston decided to go around me, and appealed to what was now
my CPD management in Yorktown. The result was that I was forced to send all
source code that I had developed to Kingston.
It was at this point, feeling somewhat cheated, that my relationship
with Kingston, as well as my own group in Yorktown, broke down. To this day,
Kingston has been fairly silent as to where many of the original concepts
of the PC/3270 originated. In several conversations I have had
with people outside of Kingston, I have even heard stories of
misrepresentations as to the origins of the prototypes
they developed based on the GLASS code I sent them.
The net result of this series of events was my transfer from CPD to the
Research Division in Yorktown in September 1982. The agreement with
which I joined Research was that I would be allowed to continue work on
GLASS. And so I continued to do so.
As the end of 1982 approached, it became clear to me that the correct
place in IBM for GLASS was Boca. And so in December and January I
turned my attention to what I knew was the major stumbling block for
GLASS with Boca: its inability to run with existing applications. During
those two months I developed the code which was the basis for the DOS
emulation employed today in Orion. At the end of this time I had solved
enough of the problems that I was able to demonstrate running GLASS with
several applications popular at the time. In late winter of 1983 I again
returned to Boca to demonstrate GLASS. This time, considerably more
interest was generated.
In fact, a task force was formed to study which of the several windowing
systems becoming available at that time, including GLASS, should be
adopted by Boca. After several weeks of evaluation, GLASS was chosen by
the task force as its recommendation. As a result, in late march of 1983
I was asked to come to Boca for a six month assignment to work on
turning GLASS into a product. With a certain amount of hesitation I agreed.
During the first week of April, I packed a suitcase and left for Boca,
leaving behind a new house I had just bought and moved into in December.
It is now 14 months later...