The goal of this project is to create a sophomore-level undergraduate course introducing students from a wide variety of backgrounds to the principles and results of linguistic semantics. The heart of this course is a software "workbook" that presents the material in an interactive, graphic environment. The course and workbook address various aspects of meaning, including its relation to word and sentence form (morphology & syntax), its relation to systems of mental representation (cognition), and the interaction between meaning and use. The goals of the course are to reveal to students the complex internal system of internal rules and principles that underlie our abilities as native language speakers, to let them experience some of the intellectual excitement that comes with discovering such principles and struggling to formulate them in a precise way, and to encourage them to explore the computer as a model of how we, as human beings, think and understand. The results of this work will be of significant value in introducing undergraduates to the principles of scientific reasoning, in reaching students not otherwise considering science majors or extensive science electives, and in helping to foster interest and interdisciplinary exploration in the cognitive sciences.