Practical course information

For an overview of course goals, grading, policies, and so on, please refer to the syllabus. Here, I will focus on practical information to help you orient to the course.

Course Infrastructure

Contact with Instructors

You can email me (Jelmer, main instructor) or Zach (TA) any time, and you should generally expect to get an answer within 24 hours, certainly on weekdays. We prefer to be referred to simply using our first names.

Office hours

Jelmer and Zach both have biweekly office hours, see the course’s home page on the Carmen Canvas site for times. You can reserve a slot by going to the Calendar on Carmen Canvas, clicking “Find Appointment” (right-hand side), then selecting this course and clicking “Submit”, and finally, clicking on a time slot in the main Calendar window and clicking “Reserve”.

Modules

Each module is one week, and for all except two modules we will meet twice: There are two brief instructional breaks that each affect a module this course (no Zoom meetings on Tue, Feb 9, or on Thu, Apr 1). Therefore, those two modules are “half-modules” with half the material of regular modules.

Material for each module will generally be published on the preceding Friday.

CarmenCanvas and Github websites for this course

This GitHub website has all material for the course including slide decks, exercises, assignments, information about readings, and so on.

The Carmen Canvas site has the syllabus, Zoom and contact information, a calendar with all due dates, grades, and course announcements.

CarmenCanvas notifications

The instructors will mainly be communicating with you using CarmenCanvas Announcements. Make sure that you are set up to receive a notification whenever an announcement is posted – see this page for more information. If you haven’t received a notification by the first week of the course, go back to check your settings and your email Spam folder.

Coursebooks and other course readings

We will be reading parts of the following two textbooks:

In most modules, we will read and, in class, work through a chapter of CSB, our main book for the course. In four of the modules, our primary reading will be a chapter of Buffalo so we can learn about project management and Markdown (week 2) and cover the shell and shell scripting in greater detail (weeks 4-6).1

In week 7, we will read part of the OSC documentation, and in week 13, we will read two papers related to automated workflow management, a topic largely omitted in both books.

Computational infrastructure and software installation

Because all of the software needed for this course is available at the Ohio Supercomputer Center (OSC), we will be working at OSC. The way this works is that we can access the software through our browser after logging in at https://ondemand.osc.edu. We have an OSC “classroom project” for the course, and you will be asked to sign up at OSC in a pre-course assignment.

Because we will work at OSC, you are not required to install anything for this course, and we can accommodate all operating systems. However, you may still want to install software to be able to work locally: this optional assignment covers local software installation.

Homework

I have created a Carmen Canvas “assignment” for everything that I would like you to do outside of synchronous zoom sessions, including readings, exercises, graded assignments, and creating accounts. All these assignments have due dates associated with them so you can easily see in the Carmen Canvas course calendar when you are expected or recommended to do them.

Here are the different types of homework (Canvas assignments), and when you are generally expected to do them:

Synchronous Zoom Sessions

What to Expect

Overall, the Zoom sessions will be highly hands-on, so you should be prepared to be engaged during class. We will spend most of the time doing “participatory live coding” (or “code-along”), in which the instructor demonstrates and you are expected to follow along in your own terminal or console. During participatory live-coding, there will also be regular questions for students and small exercises.

Computer Setup

During participatory live coding, it will be beneficial to either have a (very) large monitor or two screens/monitors. This way, you can see what the instructor is doing and also do this yourself.

If you don’t have multiple monitors set up with a single device, you’re welcome to connect to the Zoom sessions with two devices; e.g., a laptop and a desktop, two laptops, etc. If you have neither a large screen nor multiple devices, you’ll have to decide if you will put the Zoom window and your own coding window side-by-side, or if you can effectively switch between windows. (The latter will work best by using Alt+Tab (Windows/Linux) or Command+Tab (Mac), and by having as few windows as possible open in your workspace.)

You may occasionally be asked to share your screen, so try to have a setup where this is possible. For example, if you watch the Zoom session on an iPad, but code on a computer, do also connect to the Zoom session with your computer so you can share your coding screen.

Etiquette

Please keep your camera turned on as much as possible. This will be very helpful for the instructor, and probably for your fellow students too, in creating an engaging environment that resembles an in-person class meeting as much as possible. If you prefer not to have your camera on or have bandwidth problems, a note to the instructors about this would be appreciated.

Please have your microphone on mute by default, but feel free to unmute yourself whenever you would like to say something.

FAQ


  1. We will not cover the second half of CSB, which deals with LaTeX, R, and relational databases.↩︎

Reuse

Text and figures are licensed under Creative Commons Attribution CC BY 4.0. The figures that have been reused from other sources don't fall under this license and can be recognized by a note in their caption: "Figure from ...".