software bloat - Computer Definition
Refers to the ever-increasing complexity of software. Modern operating systems and applications are huge in size and complexity compared to software in personal computers in the late 1970s and early 1980s. They are absolutely gigantic next to software of the 1950s and 1960s. Larger with Each Version Software tends to get larger and more complex with each version. It is due to many reasons, including the increasing capacities of the computer's memory and disk, which allow programmers to be much less concerned with conservation. It is also due to the increased number of functions placed in an application for marketing purposes, most of which are not needed by 95% of all users (see bloatware). A significant contribution to software bloat is that in order to make it easier to write a program, much of today's software is written in higher levels of abstraction. This eliminates the coding tedium but increases the number of instructions the computer must execute (see abstraction layer). Another reason for software bloat is too many cooks in the kitchen. The more that software code is patched by different people, the more obtuse it can become. After numerous versions, a program's logic can become unbelievably convoluted. See Wirth's law and Freedman's law.
A Note from the AuthorFrom 1963 to 1966, I worked for the Pennsylvania State Drivers License Division, programming an IBM 1401 computer. The first widely used transistor-based computer, our 1401 handled all six million drivers in the state. The machine had 12K of memory. That's 12,000 characters... there were no bytes then. The driver master file was some 40 reels of magnetic tape. The point of this story is that we never added the extra 4K memory module, upgrading the machine to its whopping 16K maximum... it would have cost several thousand dollars, and we never found it necessary. Our programs, written in IBM assembly language, first on paper and then transcribed to punch cards, were extremely compact. We condensed program steps wherever we could. There was no graphical interface, because there was no screen. We debugged our programs with memory dump printouts, and we didn't even have an operating system. What for? We just wrote our own input/output routines. But, we processed an entire state! Know anyone these days processing a state on his or her desktop computer with 300,000 times as much memory as we had in 1963? Software bloat. You better believe it.
Computer Desktop Encyclopedia
THIS DEFINITION IS FOR PERSONAL USE ONLY
All other reproduction is strictly prohibited without permission from the publisher.
© 1981-2014 The Computer Language Company Inc. All rights reserved.