General Overview

STAT 447: Data Science Programming Methods is a course in the Department of Statistics at the University of Illinois.

Data Science Programming Methods was first offered in the Spring 2019, Fall 2019 and Fall 2020 terms as the earlier STAT 430: Topics in Applied Statistics course. Starting the Fall 2021 term, it is offered under a new course number STAT 447. The instructor is Dirk Eddelbuettel who also designed the course, and taught the previous instances.

Course lectures slides as well as guest lectures are publically accessible, see the lectures by topic and guest lectures links on the left.


A 2018 report by National Academies of Sciences, Engineering, and Medicine stated:

Data science is emerging as a field that is revolutionizing science and industries alike. Work across nearly all domains is becoming more data driven, affecting both the jobs that are available and the skills that are required. As more data and ways of analyzing them become available, more aspects of the economy, society, and daily life will become dependent on data.

This courses introduces key concepts for computational literacy in a data science context:

  • Basic shell operations (which are a core building block for all computing systems) and key command (find, grep, sed, awk, …) up to simple shell scripts
  • Git (and GitHub) for version control: for versioning source code, write ups and much more such as social computing
  • R Programming: getting familiar with the best language and environment for _programming with data+
  • Reproducible computing: Markdown is at the core of this and incredibly versatile
  • Further extensions such as Docker for deployment.

This course is fast paced. We cover a considerable amount of material.


  • Lectures, generally as (on-line) slides along with short videos
  • Self-study, with plenty of reading and coding to do
  • Six (on-line) homeworks administered via the PrairieLearn system
  • Six (on-line) quizzes in the CBTF facility also using PrairieLearn system
  • A self-directed group project demonstrating data science programming
  • On-line office hours with instructor and course assistants

Brief One-Paragraph Description

Statistics and Data Science are focused on making sense of data – and face an ever-increasing demand for their work. Yet at the same time, data sets increase in size and scope. Proper tooling is essential to meet these challenges, and as applied work in data analysis is in effect applied computational work, we will learn the computational tools and programming methods to meet these data science challenges. Proficiency at the shell, familiarity with git version control, sufficient understanding of SQL, and of course acquiring actual expertise in R programming are the goals of this course to prepare students for the coming computational challenges. We will use RStudio Cloud instances so students are not required to install and maintain all required components. Prior programming experience (in R or another language) will certainly be helpful, but is not a formal requirement for taking the course.