Empirical skills are playing an increasingly important role in the computing profession and our society. Despite this, computer science curricula have paid little attention to developing empirical investigative skills such as forming testable hypotheses, designing experiments, critiquing their validity, collecting data, explaining results, and drawing conclusions. The goals of this project are (1) to formalize a set of core empirical concepts and skills needed by today's computer science graduate, (2) to develop and evaluate resources for integrating the presentation and development of those concepts and skills throughout the computer science curriculum, and (3) to disseminate our approach for adoption at other institutions.<br/><br/>Following an incremental approach similar to the way programming skills are developed, this project advocates the early introduction of fundamental empirical concepts and skills. Once an empirical foundation has been laid, applications and laboratories with empirical components may then be integrated into courses across the curriculum, reinforcing the student's understanding of empirical methods and also demonstrating the utility of experimentation in computer science and related disciplines. Via publications and a Web repository, instructors at other institutions will be encouraged to integrate these applications into their courses and provide feedback as to their effectiveness.<br/><br/>The cross-institutional nature of this proposal is explicitly designed to ensure the broad applicability of developed materials (with perspectives taken from a regional university, a national university, and a national liberal arts college). The applications and laboratories developed will be reviewed and classroom tested by faculty at each school, followed by outside review and assessment.