This web page will serve as the syllabus for the Spring 2023 version of STAT 385. Please read it carefully. You should become familiar with these policies. To do so, you will likely need to return to the syllabus several times throughout the semester. After the start of the semester, this document may continue to be updated. Any such changes will be announced.

Course Name and Number

  • STAT 385 - Statistical Programming Methods
  • Section: S1, In-Person
  • Section: ONL, Online

Location and Time

This Spring 2023 version of the course is both in-person and online depending on your section. Except for office hours and exams, the online section is asynchronous.

In-person students will have access to all online resources. Due to space limitations, we cannot allow online students to attend in-person lectures.1

S1, In-Person

  • Location: 1302 Everitt Laboratory
  • Time: 01:00 PM - 01:50 PM, Monday, Wednesday, and Friday

ONL, Online

  • Location: Wherever your are!
  • Time: Mostly whenever you’d like!

Course Staff

Please refer to the course staff by their given names. For example, your instructor is named David. If you refer to the staff as “Professor” or “TA,” we might refer to you as “student,” which seems odd.


Teaching Assistants

Course Assistants

Course Content

Course Description

Course Catalog: Statisticians must be savvy in programming methods useful to the wide variety of analysis that they will be expected to perform. This course provides the foundation for writing and packaging statistical algorithms through the creation of functions and object oriented programming. Fundamental programming techniques and considerations will be emphasized. Students will also create dynamic reports that encapsulate their implemented algorithms. Students must have access to a computer on which they can install software.

The above description is based on the Illinois Course Catalog. This version of the course may deviate slightly from this description. The course website (in particular the weekly links) will provide an overview of the course content and schedule.


The main textbook for the course is:

While computing and programming are well studied topics, computing with R for data science and engineering is a bit of a moving target. As such, no one textbook can provide the proper support for our course. We will reference several additional freely available textbooks, as well as provide supplementary material throughout the semester. Specific readings will be posted each week. Except for the main textbook, Atomic R, you are not expected to read each text cover-to-cover.2

Two additional resources may be extremely useful:

  • The R Manuals
    • A collection of “manuals” written by the R Development Core team.
  • RStudio Cheatsheets
    • A collection of “cheatsheets” for using R, RStudio, and various R packages.


The stated prerequisite for STAT 385 is either STAT 200 or STAT 212. More generally, we hope that students have had some exposure to both data and statistics, however as STAT 385 is not a course focused on statistical analysis, we do not require a deep understanding of statistics.

We have no expectation of prior programming experience.

Course Communication

We will use several forms of communication for this course. The website will be the one-stop-shop for all course information. Course announcements will be sent via email. Be sure you are regularly checking your email account.

If you would like to communicate with the course staff, our preferred methods of communication, in order, are:

  1. Office Hours
  2. Discussion Forum (Ed)
  3. Email

Email should largely be reserved for private matters. As much as possible, we would appreciate you asking questions about the course where we can respond so that other students benefit from your questions! It’s cliche to say, but if you have a question, someone else is probably thinking it!

Office Hours

For Spring 2023, all office hours will be held online via Zoom. Time listed are Champaign local time.

Staff and Link Day Time
Zoom with Abdi Tuesday 11:00 AM - 12:00 PM
Zoom with Mallory Wednesday 9:00 AM - 10:00 AM
Zoom with Zhiyuan Wednesday 4:00 PM - 5:00 PM
Zoom with Dave Wednesday 5:00 PM - 7:00 PM
Zoom with Abdi Thursday 11:00 AM - 12:00 PM
Zoom with Mallory Thursday 1:15 PM - 2:15 PM
Zoom with Zhiyuan Thursday 4:00 PM - 5:00 PM
Discussion Forum Any! Any!

The office hour schedule is always subject to change, but the times above are the general expectation. As such, the dates and times will be posted each week along with the course materials.

Office hours are by far our preferred forum for discussing individual specific questions. In office hours, our response time will be literally instant. Also, since we are both present in the same physical location (or together on Zoom), follow-up is both expected, and easy. Using asynchronous forms of communication such as the discussion forum or email will have a slower response rate and a much lower communication bandwidth. In other words, please come to office hours!

When joining office hours, be prepared to share your screen! Assuming you are having a technical or coding issue, the easiest way for us to assist is for you to show us the problem.

We understand that sometimes asking a question in office hours can be intimidating. Students also find being asked questions, especially questions to which they do not know the answer, to be intimidating. Try your best to avoid these feelings! We are not asking you questions to make you feel bad. We are asking you questions to better understand how we can help. If we don’t know what you don’t know, we don’t know what we need to teach you!

Office hours will be a rather informal meeting. As such, if the instructor and a student are engaged in causal conversation not directly related to a pressing matter in STAT 385, like a homework question, please just jump into the conversation and interrupt! If office hours are “busy” the instructor may institute an informal queuing system, but the hope is to keep office hours more relaxed and informal.

If you would like to schedule a private meeting outside of regular office hours, please send an email suggesting two possible times, on two different days.3 We have a preference for time-slots directly adjacent to current office hours. Please also indicate a brief agenda for the meeting. Requests to schedule a meeting at a time less than 24 hours in the future are unlikely to be granted.

Discussion Forum

This course will use Ed as our discussion forum.

Ed access and login information was sent via email.

Please register your account with your University email.4

The course staff will attempt to check Ed at least once a day during the week, thus you can often expect a response within 24 hours, except for weekends. If you need a quicker response, you should consider office hours as an alternative.

The course staff would strongly prefer the use of Ed to GroupMe or similar services not officially supported by the course. The course staff feels that a GroupMe may exclude members of the course, whereas all are welcome on Ed. Services like GroupMe also exclude course staff, which while understandable, tends to promote an adversarial relationship between students and their instructors. We’re all on the same team, so let’s act like it.

Private posts have been disabled. Any private matters should be discussed over email where your identity is known and private. Some anonymous posting is disabled. You may post anonymously to your classmates, but not the course staff.

Additional Ed policy can be found in a pinned post on Ed.

Email Policy

STAT 385 will follow a strict email policy. Instead of email, consider using the discussion forum! Any quick, non-private communication should take place there.

If you’d like to email the instructor or course staff, consider the following:

  • Is your question about course administration? If so, have you read the syllabus? If your question is easily answered in the syllabus, we will either refer you to the syllabus, or ignore your email.
  • Is your question about part of an assignment? First and foremost: You should ask it in office hours. After that, consider the discussion board. As a last resort, use email, but there is a good chance you will be re-directed to the discussion board.

If you choose to send an email, you must adhere to the following three rules. If you do not, your email will be considered less import than other emails which follow the rules and response time will be slower.

  • All email must originate from an email address.
    • Depending on the situation, failure to follow this rule may make a response impossible.
  • Your subject line must begin with exactly the following: [STAT 385]
    • Failure to follow this step exactly may result in your email simply not being answered.
  • After the above, put a single space, followed by a useful but short description of your message.
## good
[STAT 385] Grade feedback question
## bad
## improper format
## non-descriptive subject
[stat385] hi
## bad
## improper format
[STAT385] Grade feedback question
## bad
## improper format
## subject too long
## information found in syllabus or website
[STAT 385]when is the exam and what is covered on the exam?

If your email is sent between 9:00 AM Monday and 11:59 PM Thursday, and you follow the above directions, we will try our best to respond within 24 hours. Questions about an assessment sent the same day the assessment is due will likely not receive a response before the assessment is due. Plan accordingly.

Code Discussion

If your question is technical in nature, there are several steps you can take to insure a speedy response on Ed or in email.

First and foremost, you should ask Google before you ask the course staff. Take the error message you obtained and search it with Google. The ability to solve problems this way is an extremely value skill, possibly one of the most important you should learn (but are not taught) during your academic career. Make a legitimate effort to solve the problem on your own. You won’t always be able to, and if you can’t, post on Ed. (Or better yet, stop by office hours.)

If you need to ask the course staff, include the following in your discussion forum post:

  • All code that is required to re-create the error.
  • Staff should be able to run your code, without any modification, and obtain the same error or output.
  • The exact error message received.

Do not use screenshots of code and error messages to communicate about them. Copy paste them so that others can copy-paste them as well. Posts containing screenshots of code will likely be deleted.

In this course, for everything expect exams, we greatly prefer over-sharing to under-sharing code. We would rather everyone learn from others’ “mistakes” than have everyone experience the same issues over and over again. However, if you simply try to copy and paste other students’ code to get through the quizzes, you will likely fail the exam. The course staff reserves the right to change this policy if we feel it is being abused.

Course Staff Emails

Role Name Email
Instructor David Dalpiaz


STAT 385 will use four types of assessments: quizzes, labs, exams, and projects.

With the exception of exams and projects, all course assignments are due at 11:59 PM, Central (Champaign) time, on the listed due date.

  • Quizzes are due on Thursdays.
  • Labs are due on Thursdays.

Both quizzes and labs will generally be released on the Thursday before they are due.


Throughout the semester, there will be a total of eight quizzes, administered through the PrairieLearn system.

To access the course’s PrairieLearn content, simply navigate to and add the course.

Additional information and instructions can be found on the quiz policy page of the course website:


There will be a total of eight labs throughout the semester, mostly administered through the PrairieLearn system.

Additional information and instructions can be found on the lab policy page of the course website:


There will be two exams. Both exams will be administered through PrairieLearn, PrairieTest, and proctored via Zoom. Additional information and instructions can be found on the exam policy page of the course website:


There is no final exam for the course. Instead, there will be an individual final project. The overall goal of the project will be to create a Shiny application.

Additional information and instructions can be found on the project policy page of the course website:


Except for the exams, all deadlines are at 11:59 PM, Champaign local time, on the listed day. Recall that the listed deadlines for quizzes are for 105% credit.

Assessment Deadline
Lab 01 Thursday, February 2
Quiz 01 Thursday, February 2
Lab 02 Thursday, February 9
Quiz 02 Thursday, February 9
Lab 03 Thursday, February 16
Quiz 03 Thursday, February 16
Lab 04 Thursday, February 23
Quiz 04 Thursday, February 23
Exam 01 Thursday, March 2
Lab 05 Thursday, March 23
Quiz 05 Thursday, March 23
Lab 06 Thursday, March 30
Quiz 06 Thursday, March 30
Lab 07 Thursday, April 6
Quiz 07 Thursday, April 6
Lab 08 Thursday, April 13
Quiz 08 Thursday, April 13
Exam 02 Thursday, April 20
Final Project Friday, May 12

Quiz 00 and Lab 00 exist only as practice and are not part of your course grade.

Course Technology

Statistical Computing

R and RStudio are required software for this course. You will need access to a computer where you have the ability to install and update this software.


R is a freely available language and environment for statistical computing and graphics.

Two important notes:

  • If you have used R previously, be sure to update to the most recent version, which as of this writing if 4.2.2.
  • If you are using a M1 or M2 Mac, be sure to select the arm64 build.


RStudio is a free and open-source integrated development environment (IDE) for R.

Learning Management

A mixture of Canvas, Ed, PrairieLearn, PrairieTest will be used for Learning Management.


Assessment Weights

Assessment Percentage
Quizzes 40
Lab 10
Exam 01 20
Exam 02 20
Final Project 10

The quiz sub-score will be the average of the eight quizzes. While buffer points are available for quizzes, your quiz sub-score cannot exceed 100%. The lab sub-score will be the average of your eight lab grades.

Until the end of the semester, all grade information can be found on the PrairieLearn gradebook. It is your responsibility to track your progress in the course. Project grades and final course letter grades will be posted to Cavnas in advance of submission to the University registrar.

Grading Scale

Plus 99 87 77 67
Neutral 93 83 73 63
Minus 90 80 70 60

The instructor reserves the right to lower, but not raise, grade cutoffs. However, this policy should not create an expectation that this will happen. Asking for a change in cutoffs will make any change in cutoffs less likely. Grading in the course is not competitive. There is nothing (other than some statistical realities) that would prevent the entire class from receiving a grade of A.

Grade Disputes

If you feel an assignment was graded incorrectly, you have one week from the date you received a grade to discuss it with the instructor.

After one week, grading is final except for exceptional circumstances. You may not simply ask for a re-grade, but instead must justify to the instructor why the grading was done incorrectly. By disputing any grading, you agree to allow the instructor to review the entire assessment in question for other errors missed during grading. Requests must be sent via email.5 Grade disputes over trivial points will likely be met with frustration.6

All grade disputes must be approved by the course instructor. Teaching Assistants and Course Assistants do not have authority to modify grades.

Academic Integrity

The official University of Illinois policy related to academic integrity can be found in Article 1, Part 4 of the Student Code. Section 1-402 in particular outlines behavior which is considered an infraction of academic integrity. These sections of the Student Code will be upheld in this course. Any violations will be dealt with in a swift, fair, and strict manner. In short, do not cheat, it is not worth the risk. You are more likely to get caught than you believe. If you think you may be operating in a gray area, you most likely are.

Under no circumstances should course materials be provided to Course Hero, Chegg, or any similar for-profit website. The course staff will seek the harshest possible academic integrity penalty for any students who do so.

Additional Information


The university values your safety. Please read this document or watch this video.

Disability Accommodations

To obtain disability-related academic adjustments or auxiliary aids, students with disabilities must contact the course instructor and the Disability Resources and Educational Services (DRES) as soon as possible. To contact DRES, you may visit 1207 S. Oak St., Champaign, call 217-333-4603, email or go to the DRES website.

To ensure appropriate accommodation is provided in a timely manner, please provide your Letter of Accommodation during the first week of class. Letters received after a relevant assessment has been administered will likely cause logistical issues that could result in an inability to accommodate.

The Extended Syllabus

For some thoughts on teaching philosophy, some explanation of policies, and some general tips for success, please see The Extended Syllabus.


The instructor reserves the right to make any changes he considers academically advisable. Such changes, if any, will be announced. Please note that it is your responsibility to keep track of the course proceedings.


  1. This is subject to change later in the semester.↩︎

  2. This might not be a bad idea in the long run, especially if you find yourself interested in a particular topic!↩︎

  3. A total of four suggested times.↩︎

  4. Accounts registered with an email other than an account will be removed.↩︎

  5. Failure to follow the email policy will result in your request being denied.↩︎

  6. A grade on a single assignment is not reflective of your overall grade in the course. The generous buffer points should more than make up for a single point deduction on a single assignment.↩︎