Python is a programming language designed for both complete beginners and experienced programmers. For many people, a working knowledge of Python is a ticket to job advancement or a new career, and they want to start writing real Python programs fast. For those readers, No Starch Press has published the second edition of  Python Crash Course.

With over 500,000 copies sold worldwide, this is a complete introduction to Python programming. In the updated second edition of Python Crash Course ($39.95, 544 pp., May 7, 2019) the first 200 or so pages begin by explaining essential programming concepts like variables, lists, dictionaries, and other core Python concepts. The explanations are accompanied by exercises designed to engage readers, whether self-learners or students.

Part two of the book puts the learning into practice with three substantial, real-world projects: a Space Invaders–inspired arcade game, data visualizations, and a web app. The goal is to teach readers how to solve problems with Python. Why? Because programming is about problem solving, not memorizing coding syntax—just as writing is about putting together paragraphs not about memorizing the dictionary.

This second edition of the best-selling introduction to Python has been completely revised to cover the latest version of Python and to use newer tools and packages.