This updated edition with brand-new material reveals ingenious ways to solve problems using techniques from the greatest minds in history, like Albert Einstein, Alexander Graham Bell, and the brains at Google.

Do cats worry about retirement? Nope. Do cats do things they don’t want to do? Definitely not. Do cats rush around at all hours of the day when they’d rather be licking their paws and looking out a window? Please.

Currently used at many colleges, universities, and high schools, this hands-on introduction to computer science is ideal for people with little or no programming experience. The goal of this concise book is not just to teach you Java, but to help you think like a computer scientist. You'll learn how to program—a useful skill by itself—but you'll also discover how to use programming as a means to an end.