how was the price of computation changed over time?

The price of computation has significantly changed over time due to various factors. To understand this change, let's break it down into different eras:

1. Mainframe Era (1950s-1970s): During this era, computers were large, centralized mainframe systems. They were expensive to purchase, required special facilities, and were mainly used by large organizations or government institutions. The cost of computation was based on hardware costs, including components like vacuum tubes and magnetic core memory.

2. Minicomputer Era (1960s-1980s): In this era, the introduction of smaller and more affordable minicomputers led to a decrease in cost. Minicomputers were still relatively expensive but were more accessible to medium-sized companies. The cost of computation included both hardware and software costs.

3. Personal Computer Era (1980s-present): The advent of personal computers (PCs) revolutionized the computing landscape. PCs became more affordable, compact, and user-friendly. The cost of computation decreased significantly as hardware prices dropped due to advancements in technology and economies of scale. Software costs also decreased with the rise of commercial off-the-shelf (COTS) software and open-source solutions.

4. Cloud Computing Era (2000s-present): Cloud computing introduced a fundamental shift in how computation is priced. Instead of individuals or organizations owning and maintaining physical hardware, they could now access computing resources on-demand from remote data centers. This enabled a pay-as-you-go model, where users only pay for the compute resources they use. The cost of computation in the cloud is dependent on factors such as the type and capacity of the virtual machines, network usage, and storage requirements.

Overall, the price of computation has drastically decreased over time. This can be attributed to advancements in technology, economies of scale, and the shift towards decentralized computing models like personal computers and cloud computing.