This book is intended for self-study or as a textbook for graduate students or advanced undergraduates. It includes applications of the material to robotics and tensor analysis. It covers traditional algebraic geometry and schemes, culminating with a modern treatment of the Riemann-Roch theorem and the j-invariant classifying genus-one curves. It only presupposes some basic knowledge of point-set topology and a solid foundation in linear algebra. It contains appendices that develop all of the commutative algebra, sheaf-theory, and cohomology needed to understand the material.