How will computational thinking change the way you interact with computers? SEC T ION 1.1 Computational Thinking I n the beginning, computing devices were merely calculators. They became popular because they were very fast and accurate compared to a human making manual calculations. Examples of early calculators are the abacus and the desktop calculator. Electronic digital computers were invented in the 1940s. These were single-purpose machines used to calcu- late the trajectories of projectiles or to break a coded message. Modern digital computers are programmable and can perform a variety of tasks, as long as a human writes instructions for the computer to execute. As the capabilities of digital computers increased, expectations for mimicking brain activity increased. To date, no computer has been able to replicate the human brain. Modern computers, while powerful, are still pri- marily calculators that follow instructions. Clever use of these instructions by programmers can make computers perform very sophisticated actions, like machine learning and data analysis. In the end, it is the programmers who make the computers appear to think. Learning Goals After completing this section, you will be able to: • Compare and contrast human thought with computer activity. • Identify the components of computational thinking. • Distinguish computational thinking from problem-solving. Terms abstraction algorithm computational thinking decompose instruction set pattern recognition Think like a Computer Computers are often described using human characteristics. People speak of a computer “thinking.” However, the computer does not create original thought. Even the most advanced video games and simulations are essentially just moving data around in memory. These programs decide which number is greater and make calculations. This may appear as if the computer is thinking, but it is just following instructions. A video game program typically provides options for the computer player. This may include reacting to the human player’s actions. Special programming techniques known as artificial intelligence (AI) are used to provide options for a computer program to execute when reacting to conditions during operation. AI makes it appear the game is thinking. In reality, it is executing a list of state- ments the programmers have provided. Robotics is a field where AI is used to make a machine seem to be human. The robot Nadine created by Professor Nadia Thalman is an example of a hu- manlike robot that uses AI. In another example, Figure 1-1 shows a robotic re- ceptionist in use at a shopping center in Japan. These robots rely on their pro- gramming to remember visitors, their names, and when they were last at the reception desk. Copyright Goodheart-Willcox Co., Inc. Copyright Goodheart-Willcox Co., Inc. 4 Introduction to Computer Science: Java Programming