This is a book about the 'Halting Problem', arguably the most (in)famous computer-related problem: can an algorithm decide in finite time whether an arbitrary computer program eventually stops? This seems a dull, petty question: after all, you run the program and wait till it stops. However, what if the program does not stop in a reasonable time, a week, a year, or a decade? Can you infer that it will never stop? The answer is negative. Does this raise your interest? If not, consider these questions: Can mathematics be done by computers only? Can software testing be fully automated? Can you write an anti-virus program which never needs any updates? Can we make the Internet perfectly secure? Your guess is correct: the answer to each question is negative. The Halting Problem is 'hidden' in many subjects, from logic (is mathematics free of contradictions?), physics (is quantum randomness perfect?), to philosophy (do humans have free will, or do our brains generate our thoughts and decisions in a deterministic way?) and quantum computing (why we don't have a quantum Halting Problem?) — this book will visit each of them.Written in an informal and thought-provoking language, supported with suggestive illustrations and applications and almost free of arcane mathematics (formal arguments are relegated to particular parts dedicated to the mathematically-oriented reader), the book will stimulate the curiosity and participation of the reader interested in the consequences of the limits of computing and in various attempts to cope with them.