# Authoring Notebooks: Start to Finish

Here are a series of recordings that lead through how to author Jupyter Notebooks as well as Otter-Graded based notebooks.

**Part 1:** Setting up your environment [Screen Recording (5 min)](https://drive.google.com/file/d/1JWs35cRRaGbtYlsVGFfFPxE3p26oqZna/view?usp=drive_link)

The first step in authoring is configure the repositories and editing environment you need. In this recording we illustrate:

* the creation of the GitHub Repositories needed for students and instructor materials
* Uploading notebook and accompanying materials to a JupyterHub in order to facilitate making changes

**Part 2:** Running Otter Assign [Screen Recording (12 min)](https://drive.google.com/file/d/1UfT6zWLygEFX6rV6zUQYrzGmzHPtAoAl/view?usp=sharing)

This part reviews Part 1, assumes the changes you need to make and now we run `otter assign`. The video illustrates, from a JupyterHub, the `otter assign` workflow once you have a otterized-notebook ready to be published. After the `otter assign` moment, we copy the student materials and instructor materials into the repositories created in Part 1.

**Part 3:** Distributing Notebook to Students(nbgitpuller links) [Screen Recording (5 min)](https://drive.google.com/file/d/18vD5_SqlQ70uH5n_80qevCgx9E-PCU_k/view?usp=sharing)

If you are going to change the name of a notebook or you have a notebook you created from scratch, you can create special links that allow students to open notebooks seamlessly on a JupyterHub. This recording shows how these links are created via the nbgitpuller Chrome Extension.

**Part 4:** Authoring Jupyter Notebooks(without otter-grader!) [Screen Recording (12 min)](https://drive.google.com/file/d/1HVP-PCc-pY_anBnd7kMe98eL9VZu51WD/view?usp=drive_link)

If you are ambitious and branching out to create your own course or creating new assignments and content in an existing course, you may need to create a Jupyter Notebook that does not include self-grading -- a good example is a Jupyter Notebook used in a lecture that students may follow along with. There is no need for self-checks or instructor grading of these notebooks.

This recording also reviews uploading your notebooks(Part 2) and associated files to GitHub as well as generating the nbgitpuller link for distribution(Part 3).

**Part 5:** Authoring Jupyter Notebooks with Otter-Graded Content [Screen Recording (13 min)](https://drive.google.com/file/d/1DFjz5R9uyKyhNxq9NhYWNz1SrIYH47ao/view?usp=sharing)

This adds onto Part 4, by including examples of Markdown to create otter-graded self-check questions as well as instructor grading questions. This includes assigning points as well as exploring how we might create questions that require students to code, answer short-answer or free-form questions or respond Multiple Choice prompts. The example notebook used in this video can be viewed on this [page](https://github.com/data-8/zero-to-data-8/blob/master/authoring/otter-examples.ipynb).
