|
What Ever Happened to
Client/Server?
oday, the overwhelming
trend in custom software development is toward systems that run on
web browsers and web servers. But as recently as two or three years
ago, companies requiring systems that could service multiple
users were focused on "client/server" technology. What
happened?
Just as the Internet has been the
dominant buzz since the mid nineties, Client/Server was the
favorite IT flavor of the eighties and early nineties. Let's take a look at what
happened.
An Unexpected
Turn
Historically, the
shift away from Client/Server amounts to a 180-degree turnaround: from a trend toward
distributing processing power to users' desktops to a trend toward re-consolidating
that power in huge centralized data centers. Beginning with the
first time a teletype was connected to a "timesharing" mainframe
computer [circa 1961], multi-user software followed a simple pattern: all
the processing capacity, all the memory and disk storage, resided on
the mainframe; only a "dumb terminal" sat on the user's desk.
During the early 1980s, as personal computers
became serious tools, people became accustomed to
more responsive systems whose graphical interfaces made them easier
to use. PCs rapidly lowered the raw cost of computing,
and a compelling case was made for shifting software tasks away
from centralized mainframes and onto personal computers distributed over
a network. Users were no longer dependent on MIS
for all their data needs.
Everything Gets GUI
Companies large and small set out to develop software
systems that used Windows- or Macintosh-based "front ends" in
conjunction with specialized database servers. Under this arrangement, the
PCs on users' desktops that drew on the resources of the database
server were called "clients," a sometimes confusing term that was perhaps a
cold-war-era analogy to Soviet "client" states. Throughout the late
1980s there was fierce competition in the software industry to
provide the tools that people would use to build client/server
systems.
It was in this market
that Oracle, Sybase, Informix, Gupta, and many other companies made -- and sometimes
lost -- their fortunes. Corporate systems departments underwent turmoil as
mainframe programmers were given early retirement and replaced by
young PC programmers. The "hot technologies" now were not COBOL and
Fortran but rather Visual Basic, Fox Pro and PowerBuilder.
The Promise and the Reality
Multi-million-dollar projects were undertaken to
convert mainframe applications to client/server. IBM began selling
its mainframes as mega-servers for corporate PC networks. Despite
becoming the official religion, client/server usually didn't live up to the
promise, proved difficult and expensive, and often failed. In
retrospect, we may have thrown out the baby with the bath water (or
the retirees with the pool water). Procedures, methodologies and tools
for mainframe development, which had matured for 20 years, were hastily abandoned.
Trends
and styles effect IT just like any other facet of corporate life. Lots of times, however, what's in fashion doesn't always make sense. When it came to the robustness that the "enterprise" required, PC networks couldn't support big corporate systems like mainframes
could. While availability of distributed raw power and apparent ease of setup made corporate networks grow at a staggering growth, systems suffered. Though PC networks were improving, they were still plagued by security, backup, reliability, and uniformity
issues. While long on promise, client/server was in trouble. The big problems of client/server
came from (a) loss of central control, (b) complexity and
fragility of PC operating systems, primarily Windows, and (c) lack of
proven development tools and techniques.
Along Comes the Internet
The nineties have been a very interesting time for distributed computing. In 1990 no one could have possibily imagined how fast things would move, or how important the Internet would become. But when Tim Berners-Lee first developed HTTP and HTML (1990), he was just looking for a better way of keeping track of documents at European Laboratory for Particle Physics (CERN). Like a lot of good ideas, momentum started to build.
First there was Mosaic (1993), and later Netscape (1994) and Internet Explorer (1995) which took Berners-Lee's model and made it truly usable across a variety of platforms.
The rapid emergence of the browser model of computing provided a glimpse at a simplified, cross-platform approach to computing that bypasses the complexity of PC operating systems while providing graphical point-and-click interface.
Lo and behold, there was another new paradigm, and this time a better balance seems to have been struck. Yet once again, everyone's scrambling to develop software using immature tools. Mainframe's heyday had 20 years. Client/server had about 12 years to evolve
before the internet meteor drove it nearly to extinction.
At Chalem Systems Group we're very excited about browser-based development. But we think it's important to keep history in mind. It's important to realize that the web and tools for building web-enabled application are still in their infancy. Of course, if you want us to do client/server, we here at Chalem Systems Group are happy to build the best possible applications for your project. In the end, no fashion or trend drives us. We continue to hold to the notion that there are different technologies suited to different purposes. It's a matter of picking the right tool for the job.
Links
IEEE Computer History Timeline Understanding Distributed Computing [Garnter Group's DataPro Report]
|