Physics is naturally expressed in mathematical language. Students new to the subject must simultaneously learn an idiomatic mathematical language and the content that is expressed in that language. It is as if they were asked to read Les Misérables while struggling with French grammar. This book offers an innovative way to learn the differential geometry needed as a foundation for a deep understanding of general relativity or quantum field theory as taught at the college level.The approach taken by the authors (and used in their classes at MIT for many years) differs from the conventional one in several ways, including an emphasis on the development of the covariant derivative and an avoidance of the use of traditional index notation for tensors in favor of a semantically richer language of vector fields and differential forms. But the biggest single difference is the authors' integration of computer programming into their explanations. By programming a computer to interpret a formula, the student soon learns whether or not a formula is correct. Students are led to improve their program, and as a result improve their understanding.