To become great programmers, humans must learn how to think like a computer operates. This is computa- tional thinking, which is discussed later. Programmers use computational thinking to translate great ideas into some- thing the computer can accomplish. Human Thought Humans think quite differently from how computers operate. They can create ideas and imagine new scenarios. Humans build computers to do the things that humans are not good at doing. Calculations are one example of where computers are better than humans. Humans are slow and often inaccurate when performing calculations. When humans think, they use their brains to make sense of their experiences. They can also analyze what they have seen, felt, heard, smelled, and tasted. Using informa- tion from their senses, humans can make decisions about the future. Human thought can use these decisions to make plans, as shown in Figure 1-2. On occasion, a person will have a goal in mind. Recall- ing experiences, sorting through them, and looking for links provide a way to reach that goal. During this process, it is not unusual for a person to create a new idea. This new idea is the result of human thought and may be the key to reaching the goal. Computer Processing A computer without a program to direct its calcula- tions is like a puppy dog jumping up and down trying to get your attention. An idle computer repeats the same steps as this loop: 1. Is there anything to do? A. Yes? Do it! i. Go to the first step. B. No? Go to sleep. 2. Wait a bit. 3. Wake up, and go to the first step. These steps are hardwired into the computer. It is the only thing a computer can do without human coding. The only things a human can ask a computer to do are actions in its instruction set. The instruction set for a chip is the collection of complex actions developed using the basic functions of calculation and decision. The in- struction set is also hard wired into the computer. A computer’s programming can be changed, but its basic instruction set cannot. Figure 1-3 shows part of the instruction set for an early modern computer. Typical actions are: • add two numbers • move a number from one memory location to another and • decide if two numbers are equal or which is bigger. It takes a human to write a program using these instructions. A human must also tell the computer to run the program for anything novel to happen in the computer. Yellow Cat/Shutterstock.com Figure 1-1. Robot receptionists like this one in Japan may appear to act very lifelike, but they can do nothing without a human computer programmer telling them what to do. Marina Vector/Shutterstock.com Figure 1-2. The human brain is capable of thought, assimilating past experiences, facts, and sensory information to form new ideas. Copyright Goodheart-Willcox Co., Inc. Chapter 1 Computational Thinking 5