We have become a people unable to comprehend the technology we invent.
—Association of American Colleges
Information technology is undergoing rapid advancement and change, and is having a profound effect on our civilization. This is one of the remarkable developments of our age. A theme of this book is that software can be more fully understood and appreciated by considering it in its broader context, including the full suite of information technologies described in this chapter. This chapter is merely a prelude to the focus on software and its broader contexts in subsequent chapters.
What is technology? A comprehensive definition is given by the National Research Council (2002):
In its broadest sense, technology is the process by which humans modify nature to meet their needs and wants. However, most people think of technology only in terms of its artifacts: computers and software, aircraft, pesticides, water-treatment plants, birth-control pills, and microwave ovens, to name a few. But technology is more than its tangible products. An equally important aspect of technology is the knowledge and processes necessary to create and operate those products, such as engineering know-how and design, manufacturing expertise, various technical skills, and so on. Technology also includes the entire infrastructure necessary for the design, manufacture, operation, and repair of technological artifacts, from corporate headquarters and engineering schools to manufacturing plants and maintenance facilities.
Information technology (IT) in particular is dedicated to capturing, manipulating, storing, communicating, retrieving, and presenting information represented in digital form on behalf of people, whom we call users. The elements of this technology embodied in the definition will be encountered throughout the remainder of the book. We are currently living in what many consider an information age, a period of time where IT is having a dramatic effect on our personal and professional lives, and on society generally.
IT encompasses three basic functions: the processing, storage, and communication of information. Each of these functions involves hardware and software, the software serving as the controlling element and the hardware responding to and carrying out the "wishes" of the software. Both software and the hardware required for its execution are examples of useful technological artifacts.
This chapter begins by clarifying what constitutes information and the complementary roles that hardware and software play in IT. The primary effect of the hardware on software is measured by its performance metrics, so the most relevant metrics and their effects on the software are discussed. Finally, the driving forces behind Moore's law, which models the dramatic advancement in IT hardware performance metrics over time, are discussed along with its relevance for software.