Around the late 1980's Personal Computers (PC's) were starting to provide functionality suited to individual user usages like word processing and spreadsheet functionality. This brought processing and data storage down to the user and away from the central server and mainframe ("big iron") environments. As PC's became more affordable and the need for computing power of small and medium size businesses grew, mainframes slowly lost mass market appeal due to costs inherent in their topology. At the same time, mainframe environments utilized the PC and their Monitors (screens) as replacements for CRT's (dumb terminals). Which now gave way to "smart terminals" (or a dumb use of something that could be smart). This was the beginning of distributed processing and distributed data and enablement of Smart(er) clients.

As the PC gained acceptance we also experienced the growth of LAN's (Local Area Networks) and WAN's (Wide Area Networks). These topologies utilized the distribution of processing power now on the client (users desktop) as well as using PC's as servers. The servers (PC's) were used as a central repository of data and provided network operating systems, once the singular domain of mainframe companies like IBM. This era begot the early 1990's support for network communication between the client and the server. Multi-user databases providing concurrency management, Insert, Update, Delete, and Querying functionality provided the central database functionality once found only in mainframe environments. As Sybase SQL, Microsoft SQL, Oracle, etc.. provided database functionality on the equivalent of a high end desktop (a souped up PC) we entered the world of Client Server application development.