A History of Progress
Fostered by the intellectual climate of university towns, Silicon
Valley and its myriad hardware and software companies grew up
surrounding Stanford University. The aerospace industry which
spawned dBase grew up around Caltech, and the Route 128 Corridor
of Massachusetts grew up in the vicinity of the college complex
in Cambridge. MIT is where our story about Progress Software
begins.
No one person would take credit by themselves for the origination
of Progress, and the history of Progress could begin at almost
any point in time with the story of any one of the founders.
Perhaps one of the most interesting and critical events which led
to the beginning of Progress was the story of Harold Adler. He
was a classic entrepreneur who, during the early years of
computing, when time sharing was in its heyday, decided to become
more educated about computers and took some classes at MIT. One
of those classes was being taught by Chip Ziering, who was a
teaching assistant at that time. Chip apparently impressed Adler
enough that he approached Chip about joining a company that Adler
was founding in order to create a software package for
manufacturing management on time-share systems.
At the same time that he was finishing his studies, Chip began
his association with Mitrol (which is an acronym for
Manufacturing Information Control with a nod to
MIT). Chip joined the development team which included some of the
other founders of Progress. Together, they created a wonderfully
rich development called MIMS (Mitrol Industrial Management
Systems). As a company, Mitrol became quite successful with
clients such as Philips, Shell and other international
corporations. Although Mitrol was purchased by GEISCO, MIMS
survives to this day, which says a good deal for the quality of
the work done back in the '70's.
MIMS was written for the VM and MVS mainframe environments. It
uses a CODASYL network database, and is written in PL/1. MIMS as
a language was designed to handle manufacturing problems and has
many unique features, such as the ability to do MRP planning with
a single command (albeit with 72 arguments) called PLAN. It also
contains such unique features as the ability to automatically sum
a column of values in a set of detail records and place it into a
calculated field in the parent. The combination of talented
developers, entrepreneurial spirit of Adler, and that little bit
of luck assured the success of Mitrol in its early days.
Mitrol's success spurred several of its employees to begin to
think about developing an environment for open systems that would
not only be good for manufacturing, but would be a general
development language. One part of the challenge was to be able to
take something which was proprietary and make it available to the
world. Another part was to take the vast amount of learning about
what worked and what didn't and apply it to a new language.
In the waning months of the 1970's, the plans for forming the
company that would eventually become Progress Software Corp.
(PSC) began to take shape. Chip
recruited two other developers, Clyde Kessel and Mary Szekely,
who were enthusiastic about the idea. It took a lot of planning
and a big leap of faith, so it was almost two years before
anything substantive took place. Realizing that they also needed
someone with business savvy, they began looking for another
partner. Eventually, they linked up with Joseph Alsop who knew of
Chip through Joseph's business associations with people on
Mitrol's board of directors. Together in 1980 they decided to
create a company called Data Language Corporation (DLC). The name
says a lot about the original concept of the company: the product
was to be both a database AND a language rather than one or the
other.
Although the product was still a gleam in everyone's eye, they
began to call it Spectrum. Later, it became known by the name
Relational Data Language or RDL. Interestingly enough, the
acronym RDL survives in the computers at PSC as the moniker for
the current compiled development version of Progress. Thus, when
Progress is still in its pre-alpha state, it is called RDL. And
when it is compiled it is addressed by the current revision
number, such as RDL8.3A. DLC, as Data
Language Corp. came to be known in those days, was acronymically
compliant. (The acronym DLC survives to this day as the default
directory where Progress is
installed).
Many of the ideas that went into the early conceptual framework
of RDL were quite radical for their time. In 1978 there was no
such thing as a personal computer and in 1980 Unix had by no
means proven that it was going to be a mainstream operating
system. Yet it appeared to the founders that open systems had a
future which would have a broader base than mainframe computing.
It was a big gamble, and yet it seemed to be a risk worth taking.
And so, the company was incorporated in December 1981, and
development began in the spring of 1982 when Mary came to work
for DLC.
So while the gentlemen sat around the table planning the scope of
RDL, Mary realized that the nature of the database and many of
the other architectural components would be independent of the
compiler and interpreter upon which the language would be based.
In 1982, DLC acquired a 3-station Wicat the first
commercially available Unix system, which Mary began to use to
develop the compiler for RDL. Some of the early development was
also done on Mary's PC, which had only a single floppy drive.
Chip worked on the design of the language, and Clyde picked the
development language to begin working on the database. At the
time, Pascal was the logical choice for developing an
application. Although dBase and SuperCalc (the two big products
of the day) were written in assembler, both Borland's and Apple
Computer's products were all written in Pascal. Interestingly
enough, Clyde picked "C," which was by no means a
mainstream language in 1981.
To the great credit of the developers, most of the decisions
about the architecture of RDL were very insightful and would
prove to have lasting value as the environment matured. For
example, the decision to make RDL "crash proof" has
been one of its strongest suits since the day it was introduced.
Another decision was to separate user functions from database
functions in a manner that we now call client-server. Still
another was the variable length record. The database was designed
to be very good for OLTP (on-line transaction processing) and so
there was no question that the level of granularity for data
retrieval should be at the row level rather than at the page
level. Many of the original algorithms which were written back in
the '80's still have some semblance within the product today.
Things have changed, but many of the underlying principles are
still relevant.
The language itself was designed to be highly procedural. MIMS
was not, and a great deal of what people learned came from
dealing with the problems that end users encountered trying to
accomplish things with MIMS. Not that MIMS was inadequate, but
like any language it had its limitations.
The developers were very clear about the strengths that they
wanted the database and language to have. They shared a passion
for creating the best development
technology around, and this passion continues to exist in the
company to this day.
One of the earliest decisions that had to be made as far as
development was concerned was what to do about the code that
would be executed. An easier decision was that the code would not
be pure executable (binary), and therefore, the source code could
be portable across machines. A more difficult decision was how to
structure the size of that code. These decisions were made well
prior to the implementation of the PC, and before hard drives
were commonplace on small computers. This lack of ample disk
storage left the developers with an interesting trade off. If
they used a two byte offset pointer for the code they could
generate object code with a maximum size that was quite large.
However, each individual command would be tokenized into a
slightly greater size than if a single byte pointer were used, in
which case the code would be more compact but could only have a
maximum size of 63K. At that time hard disks were five to ten
megabytes in size, and cost roughly $500 per MB; roughly $12-1300
in today's money, whereas drives today cost pennies per MB. Not
only that, but most of the commercially available CPUs at the
time could not address more than 64K of memory. Consequently,
they decided to use a single byte pointer and thus make the
maximum size of any individual RDL program be 63K; thus allowing
"more instructions per megabyte." This was only one of
the many decisions made by the developers of RDL based on the
best information available at the time, but which had
consequences that would be totally unforeseen as the computing
environment changed dramatically over the next several years.
Once the founders decided to begin to build RDL they took an
office in the back rooms of a dentist's practice on the second
floor of a small strip mall in the town of Billerica, Mass.
Billerica was geographically central to the homes of the
founders, and PSCs' offices have never been more than a few miles
from those simple
beginnings. For the next couple of years they spent their time
busily developing Relational Data Language. The roof leaked, and
the noise of the people coming to the dance studio downstairs was
often distracting, but everybody was filled with the passion of
developing a new product.
Clyde became the hardware maestro, and set up the patch panel for
the three-user system. When it came time to do their first port,
the developers had to write their own programs (a la laplink of
today) in order to be able to transfer the programs which
generated the database, the compiler, etc. It took hours to move
the programs, and hours more to compile and build the
application. Some of the early systems in addition to Wicat were
Cadmus, Fortune, Pixel, AT&Ts 3B2 and Plexus all
Unix-based systems.
The developers were quite excited about their product and decided
to take it to Comdex in 1983. This product was the infamous
Version 1, which was never taken to market. Nor was it ever
intended for marketComdex was for exposure to potential
customers and feedback from developers. Needless to say, at the
point it was time to go to Comdex, Data Language Corporation
still did not have a big budget, and could not pay people to come
to Las Vegas to support the booth. However, the product was so
exciting that Glen Meader (who became one of the earliest
employees of DLC) and two or three others volunteered to go for
free to Las Vegas to help show off the product. Mary Szekely's
teenage daughters were recruited to hand out promotional
literature at the booth. The response was encouraging, and
everyone returned to Boston excited about creating a commercial
release. By early 1984, they had pulled in some venture capital,
and hired Chad Carpenter among others to prepare the product for
release.
How should DLC position itself in the marketplace? This was one
of the most important questions the sales and marketing staff had
to ask themselves. Other vendors such as Unify and Informix
worked on OEM deals with the hardware vendors: they provided the
software to the vendors at steep discounts, and the hardware
vendors either bundled the software with their systems or sold it
through their own sales force. By this time, many of the vendors
had signed the agreements and weren't looking for new partners;
besides, the discounts weren't appealing to the people at DLC. As
DLC looked at Ashton-Tate, it seemed that selling directly to
developers made more sense than trying to use a hardware resales
channel. The decision was made to market the product to VARs/ISVs
as well as directly to developers.
After the Comdex show, a few astute developers got wind of this
nifty new product in the wings. One of the earliest pieces of
publicity was a review for Byte
Magazine by Jon Roland, who is still a Progress programmer today.
Beta copies of the product were distributed to friends and
associates such as Arthur Fink, who had been a colleague at
Mitrol. Arthur provided feedback from a developer's point of
view, and eventually built a consulting practice around Progress
which is active to this day. Chip invited some Scandinavian
contacts he knew from Mitrol to visit Boston and take a look at
the product. At the time, the only thing demonstrable was the
syntax analyzer, and yet these Scandinavians were excited enough
about what they saw to consider building a distribution network
for this new product-to-be. This was the beginning of the strong
international presence which Progress Software has always held.
The response to the product was quite gratifying. Among the early
customers was Bell South under the aegis of John Harlow, the
founder of United Systems, who
bought over 175 units in 1984. Another big contract was with a
company called Applied Data Research of Princeton. ADR bought the
source code to RDL to distribute on its own proprietary systems.
This brought almost $3 million to DLC in one check and was one of
the biggest and most exciting boosts to the company's early
fortunes.
1983 saw the release of Version 2.2 of Progress (it was never
released under the name RDL) with some interesting changes from
Version 1. Among other things, the earliest version of Progress
did not have r-code. However, most of the commands and structure
were in place. Although a few of them were given slightly
different names such as prompt-for which originally was ask-for.
Some of the changes between the original and the released version
are somewhat intriguing. Many people know the rules of Progress
blocks and down frames. One of the things that was removed from
the original version was the command no-indent. Originally,
Progress was designed so that each successive frame of nested
blocks was indented three characters from the previous frame to
help mimic standard paper forms.
One of the very earliest employees of Data Language Corp. was
Chad Carpenter, who played the role of Executive Vice President
of the company for many years
after its founding. In the early days this meant that Chad was
involved in almost everything at DLC, including providing
training sessions for the early public classes held in Billerica
and Bedford, producing the first training manual, and helping get
the product packaged and out the door. Another early employee was
Dean Carmeris who was involved with tech support, consulting
services, manufacturing and almost everything else to do with
customer service.
At the same time that the founders of DLC went to the Comdex
Show, they changed the name of the product from Relational Data
Language to Progress, although
they kept the original company name, Data Language Corporation.
They moved out of the strip mall into a commercial building at
the end of a cul-de-sac called
Manning Road in Billerica. Clyde, Mary and Chip spent weekends
crawling around the plenum of the new building pulling wires and
setting up a new patch panel before they moved in. The company
was still so small that there was no one else to help with the
move, so the founders rented a truck and did the work themselves.
But the size of the company was belied by the professionalism it
presented to the outside world. Even though Progress' first set
of documentation was mimeographed and stapled together, its first
commercial documentation was well polished and professionally
typeset and printed in two three-ring binders which were burgundy
and silver in color and imprinted with a logo that was vaguely
reminiscent of the pins of a computer chip.
The quality of the documentation, support and training grew in
quality and quantity under the guidance of Chip and Dean; the
product development moved ahead under the guidance of Chip, with
the able support of Mary and Clyde, while the day-to-day
management of the company continued to fall to Joe. The passion
for excellence showed through, and more and more people were
getting excited about this new, unknown but highly usable
language called Progress.
Several astute developers saw the potential of Progress in the
early days, and decided to write commercial applications with the
language. Most of the other database vendors did not have a VAR
base, but DLC continued to cultivate this market with a vision of
building a strong tier of resellers who were motivated and
qualified to sell the product. The first applications catalogue
that PSC produced was less than 1/4" thick and only
contained about 50 entries. This was the beginning of a
long-standing trend of cultivating resellers which continues to
this day. Among the early pioneers were the founders of Shaker
computer, who decided to write a construction management package
in Progress. At approximately the same time, Paul Guggenheim
wrote a sales management package in Progress. Others began
developing accounting, retail management and a host of other
business programs.
A small sandal manufacturer in Southern California decided to
create their own manufacturing software after Hewlett-Packard
announced it was dropping support for their current package. Karl
and Pam Lopker now run one of the biggest VARs for Progress, QAD.
The implementation of this package, mfg/pro, was one of the more
encouraging developments for the founders: since they had come
from a manufacturing background, the development of a
manufacturing system was sure to be an acid test of the work they
had done. Needless to say, things worked out well . . . QAD's
sales are sometimes almost as large as Progress'. It is said that
over $1 billion of product written in Progress is sold each year.
During this time, large numbers of distributors in Europe
(including the Mitrol connection) became very interested in
Progress and began selling it. One distributor, in
particular, Modern Software Europe, or MSE, undertook a very
aggressive campaign to sell Progress. Unfortunately, this
distributor, with offices in several Scandinavian and Northern
European countries, became so aggressive in their sales that they
became over-extended. Not surprisingly, their primary creditor
was DLC. The business problems of this company were a
double-edged sword for DLC. Since it spelled lost revenue, it
hurt Progress' income. In the end, it provided DLC with the
opportunity to acquire the company and turn the distributorships
into several international Progress subsidiaries. Through a
combination of good fortune and astute business dealings, DLC was
able to buy the assets of MSE in 1985, and has had an
exceptionally strong presence in Europe ever since.
Based on their experience of the international success of Mitrol,
DLC cultivated distributors in other parts of the world as well.
Some of them eventually became
subsidiaries of DLC, and others remain independent distributors
to this day. Australia and England were two of the major
distributors which DLC acquired during that time. DLC's strong
commitment to the international market has been borne out by the
fact that over half of its revenue has always come from
international sales.
By 1985, dBase was the standard for PC-based programmable data
bases and Oracle and Informix were still young companies.
Progress was a very functional
language, but there were still many features missing. With the
introduction of Version 3, the developers had added simple
networking, validation, and some nice reporting features like
break-by. DLC continued to grow, particularly with its VAR base
and international distribution channels. The development team had
moved from Wicat to Fortune to Plexus Computers. The number of
operating systems that Progress supported began to
diversifySun, Xenix, Pyramid, Convergent. Progress
continued to attract an enthusiastic following of application
developers who began to turn out significant, sophisticated
products for resale, thus providing a ready marketing channel
that DLC did not have to cultivate. Throughout this time, DLC
continued to open sales offices across the country and throughout
the world.
Version 4, released in 1986, included heterogeneous
networkingthe client and server could be on different
machines! There were numerous performance
improvements, more language features, and Progress supported yet
even more operating systems.
Not too many months later, DLC had outgrown their offices on
Manning Road, and began looking around for new space. They found
a building in the Oak Park area and began planning their move for
the fall of 1987. Guess who wired the patch panels for the new
offices at 10 Oak Park? Even though there were more employees, it
was still a do-it-yourself affair which had the air of a party
rather than a corporate move. The building was big enough that
the founders needed help in pulling the wires, but it was still a
"family affair." This helped bring people
togethereveryone was used to doing a little bit of
everything in the company.
The product had long since been known as Progress, and it had
become evident that this was a highly recognizable name. The
decision was made to change the name of the company from Data
Language Corporation to Progress Software Corporation (PSC).
Ironically, although the idea had been discussed for some time,
the move prompted the change, since the company had to reprint
all its stationery anyway. Not surprisingly, the company grew
rapidly over the next few years. Desk space was at a premium: new
employees found themselves in cubicles squeezed into hallways,
and the manufacturing facility, which was in the basement, used
the elevator shaft to store shipping boxes.
Version 5 saw the advent of SQL, shared memory and
multi-threading as well as some changes to the much-loathed
time-stamp. SQL was particularly important
because other databases such as Sybase were making major inroads
in the marketplace. Even though the Progress 4GL was
substantially more powerful than SQL, many clients, including a
lot of government agencies, would not acquire Progress because it
did not support SQL. Ironically, a large number of SQL directives
are merely tokenized in the Progress 4GL. However, the SQL
standard was in high demand in the mid to late 1980's. The
multi-threading features of Version 5 provided for significant
improvement in terms of throughput and the number of users who
could access the database simultaneously.
PSC's first user conference was hosted by MSE in Holland in 1986.
The next year, PSC put on a European conference in Vienna. It was
not until 1988, in Hyannisport, Mass. that PSC held its first
North American Conference. At this conference, Progress
developers in the US got together in numbers for the first time
to learn about the community, share technical tips and get to
know the members of the Progress staff. From the outset, one of
the things which set this conference apart from so many other
industry conferences was the high accessibility of the
staffboth the technical staff and the management group.
(The '88 international conference was held in Stockholm).
The following year, 1989, continued to see PSC grow as a company
and prepare for a new release of the language. The highlight of
the year for the North American Progress community was the
conference at the beautiful Hotel Coronado in San Diego. In
Europe, people remember eating dinner with numerous
dignitariesat Mme. Tussaud's wax museum!
By 1989 PSC had been involved for a couple of years in developing
an object-oriented environment called Future Shock. This project
was being developed in what was called the Nashua Skunk Works, in
New Hampshire. (Interestingly enough, this office is still in
existence, although it currently houses the database group).
Future Shock was originally written in Forth and modeled after
the Macintosh Hypercard environment. It was then rewritten in C++
and, after significant investment the product was ultimately
shelved for a variety of reasons. Some problems were with
marketing (many companies had suffered by introducing products
which competed with their flagship). Other problems were
technicalmany of them to do with performance and future
development issues.
But the people at PSC learned a lot, and were building a cadre of
talented developers. The development staff had grown from the
original single developer in 1983, to the core development staff
of four in 1984, to a staff of several dozen when Version 6 was
released in 1989. This version had significant new features
including client-server support, a totally rewritten dictionary,
the introduction of a report writer, dataservers (which were
called gateways at the time) federated or multiple database
support, significant new administration tools and a host of other
features.
The documentation, which had evolved from the ring-bound set to a
spiral bound burgundy and silver set (and which now included
database administration manuals!) was refurbished, along with a
new logo and color scheme. The new logo was four red swoosh
stripes on a glossy black background.
The company and its image were coming of age. The 1990
conferences which were held in Hilton Head in the US and Paris in
Europe, hosted almost 2000 developers total. Hilton Head also saw
the introduction of Programmer's Progress, the first commercial
book about Progress.
Excitement grew as Progress Software Corporation prepared to go
public . . . this would provide capital for growth and was a
further sign of the success of the product and the company. The
corporate balance sheet was very strong, the product was
attractive, the management team was seasoned: the public offering
in the late summer of 1991 was a resounding success: the stock
"came out" several dollars higher than even the best
estimates.
Things continued to go well: the company continued to grow, the
product continued to mature, and the business infrastructure
became more robust. The application
catalogue included more and more VARs, the number of sales
offices both nationally and internationally increased, and the
size of the development staff continued to grow. There was also a
significant change in PSC's release philosophy. Whereas in
Versions 2 through 5 no new features were added between whole
number releases, Version 6 saw the introduction of new language
features, database features and other administration and tool
options were delivered in incremental releases from 1989 through
1992.
During the course of Version 6, the new dictionary and the
Results report writer were introduced. These were the work of a
young programmer named Tony Lavinio who reputedly got a job at
PSC Software by demonstrating his knowledge of the date algorithm
in Progress. This algorithm was based on Chip's birthday. Tony
joined the numerous other dedicated programmers working under
Bill Phelan, who was product manager for both Version 6 and
Version 7.
By 1991, when the conferences were held in Orlando and Geneva,
the product was continuing to show its advance into the more
complex world of distributed
computing. During the next year, PSC Software released Version
6.3, which not only enhanced the dataserver and continued to
improve the client-server algorithm, but also provided Symmetric
MultiProcessing (SMP) support, as well as distributed databases,
two-phase commit and numerous performance related issues. There
were even rumors of a GUI release.
At the 1992 computer conferences, which hosted 800 in Phoenix and
an equally large number in Geneva, there was significant talk of
the GUI version. There was much discussion about such hot topics
as multi-threaded transactions, component servers, and other
ideas which would be necessary to support a GUI environment. In
the interim, PSC had hastily released a "windows
compliant" version which would support mouse actions for
choose and cursor placement. The first release was quickly
replaced when it was realized that MS Windows, being the
different environment it was, did not support many functions in
the same way DOS didusers could not even print from the
first Windows release! PSC learned quickly, and the new release
satisfied the growing demand for products which ran under
Windows.
As time passed, PSC continued to grow both in terms of size and
sales. With over 100 developers working on the product by 1992,
and the company topping $100 million in sales during that fiscal
year, Progress was starting to move up in the ranks of the major
database vendors. However, there was stress and strain on the
company. Between moving to a new headquarters, (too big a project
for Clyde) coordinating such a huge development staff with the
other branches of the company, and a product release cycle which
was getting out of hand, Progress was showing the classic
symptoms of growth pains many a major company goes through. There
was significant pressure from the investment community for the
quick release of Version 7, which was against Progress'
philosophy of "release no product before its time."
However, the rules had changed, and so by 1993, Version 7 was
finally released. It was heartily welcomed at the users
conferences in Boston and Munich. It was
evident that this was a product which still needed to mature; but
here it was at last, a GUI version which had complete
compatibility with the old language. (This
compatibility was unlike that of some vendors such as Ingres,
which suffered drastically from the lack of compatibility between
its old Quel language and the new GUI version).
Needless to say, there was significant new functionality in
Version 7 and, of course, new color schemes for the Progress
documentation which now numbered in the
dozens of manuals. In addition to the event and GUI paradigms
there were significant changes to the database. PSC also
introduced a totally rewritten dictionary, a new Results, a
third-party report writer, translation manager and a debugger.
The index manager was rewritten for performance, and there were
innumerable enhancements to improve both referential integrity
and programming flexibility. It was through the efforts of the
core team, and key new members including Gus Bjorklund, Amnon
Weisman, Pete Slikowski, Tim Sargent and Bill Ferro who finally
got the product pushed out the door. No wonder it took so long:
there were more new features in V7 than V2 through V6 added
together!
The GUI development tool was a significant step for Progress,
since it was completely written in the 4GL. The initial developer
of this new GUI tool, called the UIB, was Ross Hunter (a college
friend of Chip), who modeled it rather shamelessly after Visual
Basic, which was the only working model on the market at the
time. Ross was soon joined by Bill Wood, and the two served as
the core for the development of the UIB for several years. In
fact, were it not for the development of this tool by these
talented programmers (later joined by Gerry Seidl), Version 7
might have had significant difficulties in being accepted by the
market. Any GUI language is complex, and without a development
tool such as the UIB, most programmers would go elsewhere to
develop GUI applications. Although the development of the UIB was
one of several causes for the lateness of the release of V7, had
the development effort not been undertaken in the 4GL, a lot of
deficiencies in the underlying kernel would not have been
discovered, and V7 might well have been a commercial disaster.
By 1994 the product had matured significantly. Many of the early
problems had been cleared up. In fact, the second release of V7
was almost exclusively refinements and bug fixes on the first. By
the time of the conferencesheld in Dallas and
Amsterdamthere were a number of applications developers who
had products to display using the new GUI interface. There were
changes in the old guard, however. Clyde took a "leave of
absence" which really was a nice way of saying he was ready
to retire. Clyde, always the iconoclast of the grouphe had
waist-length hair until the week of the original Comdex
conferencespent his spare time doing such things as
traveling to the North Pole on a Soviet ice breaker and riding
his bicycle on a 300KM nonstop loop around a lake in Sweden on
midsummer's eve. He had worked hard at both Mitrol and PSC, and
had decided he wanted to retire at 40. Chad stepped back from his
role as executive VP, and Chip moved out of his role as head of
the development team. The company was prospering, and it seemed
that it was time to let go a little, and bring in some new faces.
It was evident by the 1995 Orlando conference (which was billed
as a worldwide conference), that the company had matured
significantly. There was plenty of hoopla and press acceptance of
the new product. The stock prices were doing well, and some
vendors were actually coming to market with GUI releases. PSC's
infrastructure became significantly more integrated as it grew
and significant changes in the product in each successive release
were reflected in the large number of replacement documents
shipped with each upgrade, which occurred approximately every six
months during 1994, '95 and '96.
With the advent of Version 7, PSC began to acknowledge the need
to move its architecture from a client-centric approach to a more
distributed model. It began to shift more of the functionality
back towards the server, and began to talk about the enhancements
to support more distributed processing. In addition, the database
group, who eventually moved into the offices formerly inhabited
by the Future Shock group, began working on upgrading its
database and introducing more advanced administration tools, more
flexible backup and deployment options for higher availability,
as well as a new structure to support more flexible database
requests through query optimization.
Rumors of an object-oriented 4GL surfaced in 1994; this seemed to
be confirmed during 1995 with the demonstration of a prototype
object-oriented syntax. (In the end, it was decided that Java was
becoming the standard for object-oriented languages and the
OO-4GL concept was dropped per se). On the 4GL side, the
"Shell Methodology" was introduced. This early
beginning of an object-oriented approach to 4GL programming was
the work of George Kassabgi, John Sadd and several others in the
consulting group. Several major clients adopted this new
technology, which was released after the 1995 Orlando conference
as Version 8 Smart Objects.
As the GUI marketplace matured, PSC decided to make a foray into
the Visual Basic world. The first effort was to build an
object-oriented visual basic compiler.
(Microsoft introduced their own . . .) Later Progress acquired
Crescent Software, a developer of VB tools. This gained PSC more
recognition in the GUI world, and provided a strong support
infrastructure for Crescent, but didn't accomplish as much as PSC
would have liked in terms of bringing it closer to the Microsoft
world.
Even with the acquisition of Crescent and a spate of marketing,
PSC was still having a difficult time gaining acceptance for its
Version 7 release. During this period of growth and the ensuing
struggles over V7, several tactical errors were made. An early
release, which could have supported database triggers, was
bypassed. Another release, which could have supported
event-driven programming in character mode (with no GUI support)
and would have been a great boon to programmers, was also nixed.
There had been numerous problems with Vermont Views, the new
screen handler PSC had acquired, and so character support was
uneven in the beta program. Thus, by the time Version 7 was
released, it was wrongfully perceived as a GUI only product, and
even three years later, approximately 35% of Progress users had
not converted to V7 character mode in spite of all the obvious
benefits. Thus, Version 8 was targeted as a meaningful move,
since it signaled an end-of-life cycle for Version 6 at some
point in the future. Unfortunately, V8 did not support character
mode or Unix servers for almost a year after its release, so once
again PSC was in the position of appearing to be moving toward a
GUI-only environment in spite of repeated public assurances to
the contrary.
Progress finally began to acknowledge that the company image
needed a little help; there was a concerted effort to boost brand
awareness through the VAR channels and in the general public.
This included a new image, the "Powered by Progress"
logo which was made into tattoos, decals and disk images for
everyone to sport.
By the conferences of 1996Boston and BrusselsPSC had
seen numerous changes in upper management, much to the
consternation of the user community, so a major effort was put on
to show solidarity at the conference. With PSC stock at its low,
these shows were designed to indicate support for the Internet by
introducing distributed components, or remote procedures, which
had been designed as early as 1992. However, major products such
as MFG/PRO needed these features, as did the Internet product, so
they were finished in time for a release as version 8.1 in late
1996.
During the months prior to the worldwide conference in Boston in
1997, PSC had introduced two versions of its WebSpeed product for
internet support. A lot of
resources were diverted from other projects to develop and
support this product, and so by early 1997 it was apparent that
the company had to refocus on some of its core strengths. The
different releases of V8 continued to introduce stronger database
features for high availability, easier disaster recovery and
administration, while continuing to improve the performance of
the database itself. This included distributed components, which
were another step in the direction of multi-tier client server,
sometimes jokingly referred to as a "buffed client" (as
opposed to a "fat" or a "thin" client).
The next several versions will be aimed at satisfying the critics
of the Progress database. These releases are under the guidance
of talented database developers such as Gus Bjorklund, Britt
Johnston, Jeff Owen and Rich Tucker. Intended to enhance both
availability and large database support, the database is designed
to allow distribution of tables to specific disk locations,
isolation of data and indexes together, SQL query optimization
and numerous other high-end performance issues which the top tier
customers demand. In addition, PSC is actively developing an
object-oriented language which most likely will be Java
compliant. Look for Smart Beans, which will be Java-flavored
smart objects, and still more features to move Progress squarely
into both the 'net world and the object-orientation required by
the business world.
Progress Software Corporation has always been run in a fiscally
conservative fashion, and has always grown based on its profit
rather than on borrowing. In one
manner, this has hurt PSC, since it has been somewhat slow to
come to market with new features. On the other hand, the product
has usually been very solid when it was released, and support and
service has generally been good, because the company has been
able to keep up with the measured growth. Although PSC has
suffered from an identity problem, it has always had a loyal
following. The passion for excellence still survives among its
developers, while at the corporate level the acknowledgment that
the company needs a higher marketing profile is a step in the
right direction.
From a business perspective, PSC has gained enough momentum that
it can grow significantly in the coming years. The successful
weathering of so many business
milestones shows that the company has matured and can continue to
grow without any severe logistical or administrative headaches.
From a technical perspective, the successful transition to a GUI
and event driven paradigm bode well for the future of PSC, both
in its ability to continue to improve its product and its ability
to deploy and support that product.
With a clear focus on the support of enterprise application
development and a well integrated company staff, PSC stands a
good chance of being a major player in the database market in the
coming decade. Progress Software has managed its growth and its
product well and everyone involved can be proud of the strong
technical and financial record that it has established.