CSCI 1360

Foundations for Informatics and Analytics

View project on GitHub


Informatics, or "data science," are rapidly becoming essential skills for scientists across fields; in addition to field-specific specializations, researchers require knowledge of and experience with quantitative analytical techniques for extracting knowledge from raw data.

This course aims to provide an introduction to concepts in scientific programming and data science using the Python language. Students are given hands-on opportunities to learn techniques applicable to quantitative analyses across a broad range of fields. These core techniques involve formulating solutions in terms of their inputs and outputs (functional programming), repeated operations (loops), branching operations (conditionals), different methods of organizing data (data structures), how to implement an optimal problem-solving strategy (algorithm design), and methods for visualizing and interpreting results.


The only hard prerequisite is MATH 1113 Precalculus.

This course assumes no prior programming or statistics knowledge. It is meant to be an introduction to these concepts in the larger context of data science and scientific programming through the lens of the Python ecosystem. The course is targeted at undergraduate students across fields who, irrespective of their ultimate career goals, are interested in a foundational understanding of programming and quantitative data analytics.