This textbook covers first-order language in a method appropriate for first and second courses in logic. An on-line grading services instantly grades solutions to hundred of computer exercises. It is designed to be used by philosophy instructors teaching a logic course to undergraduates in philosophy, computer science, mathematics, and linguistics. Introductory material is presented in a systematic and accessible fashion. Advanced chapters include proofs of soundness and completeness for propositional and predicate logic, as well as an accessible sketch of Godel's first incompleteness theorem. The book is appropriate for a wide range of courses, from first logic courses for undergraduates (philosophy, mathematics, and computer science) to a first graduate logic course.