This is the repository for designing your weekly problem sets. Clone it to your desktop and keep it synchronized with GitHub for peer feedback and submissions.
Before you start using this repository, please edit the README.md file of your repository in the text editor of your choice and replace all instances of the word 2020-ps-splazatorres
(the name of the template repo) with the name of your own repository.
To design a new problem set, follow the instructions below:
Before you start designing your problem set for any given week, please complete the following steps. Make sure to do this every week with the appropriate branch name for the week (week1
, week2
, etc.):
- Create a new branch called
weekX
(X=1,2,3,..., e.g.week1
). - Create a new pull request from
weekX
back to themaster
branch. This is the pull request for peer feedback and it will stay open until you finalize your work, only merge once you are certain you want to submit your final version for grading. - Synchronize the repository with your desktop and make sure to switch to the new
weekX
branch for the new problem set (NOTmaster
or a previous week's branch). - Copy one of the
blank_
template files to create a new notebook for this week's problem set (name itweekX.Rmd
orweekX.ipynb
). - In README.md, remove all but one of the links from the
Binder link for peer reviewers
andBinder link for final version
sections for the relevant week below (i.e. decide whether you want to work in R or python and whether to work in RStudio or Jupyter this week). - Test-launch your binder for peer reviewers by clicking on the remaining binder link for this section (leave the tab open in the background, this may take quite a while because your binder server is built from scratch the first time - note: you can reload the page after ~1 hour if it's stuck).
- Design your problem set draft by editing the problem set file (
weekX.Rmd
orweekX.ipynb
). If you are working in Jupyter, make sure to always clear the output in the notebook before committing changes to git. There are two ways to do this: you can run the code block in thecleanup.ipynb
notebook, or you can do this in your problem-set notebook by selecting Cell => All Output => Clear. - Make sure the binder link for peer reviewers below works for interacting with your draft problem set. Note that if you are using functionality from non-standard libraries other than
numpy
,matplotlib
, andpandas
in python or thetidyverse
packages in R, you may have to modify the binder configuration in the relevantbinder-
branch for your problem set to work on binder. If this is case, take a look at theBINDER.md
file and ask an instructor for help if you get stuck. - During next class, your peer reviewers will use the binder link below to interact with your draft problem set and will use the pull request to provide feedback.
- Update your problem set based on peer feedback. If you are working in Jupyter, make sure to always run the code block in the
cleanup.ipynb
notebook, or clear output in your problem set notebook directly, before committing changes to git. - Create an answer key named
weekX_answers.Rmd
orweekX_answers.ipynb
that provides example answers for all questions you pose in your problem set. If you are working in Jupyter, again make sure to clear all output before committing changes to git. - Make sure the answer key runs completely without error in the binder for the peer reviewers (that means it will also work in the final version).
- Optional: ask a peer reviewer to take another look before merging the pull request.
- Once ready, merge the pull request into the master branch. Double check that the binder link for the final version works as well.
Only keep the one link you want your peer reviewers to use. Note that these will only work once the
week1
branch exists.
Instructions: Only keep the one link you want your instructor(s) to use. This uses the
master
branch so will only have your newest notebook once you have merged your pull request for the week.
Only keep the one link you want your peer reviewers to use. Note that these will only work once the
week2
branch exists.
Instructions: Only keep the one link you want your instructor(s) to use. This uses the
master
branch so will only have your newest notebook once you have merged your pull request for the week.
Only keep the one link you want your peer reviewers to use. Note that these will only work once the
week3
branch exists.
Instructions: Only keep the one link you want your instructor(s) to use. This uses the
master
branch so will only have your newest notebook once you have merged your pull request for the week.
Only keep the one link you want your peer reviewers to use. Note that these will only work once the
week4
branch exists.
Instructions: Only keep the one link you want your instructor(s) to use. This uses the
master
branch so will only have your newest notebook once you have merged your pull request for the week.
Only keep the one link you want your peer reviewers to use. Note that these will only work once the
week5
branch exists.
Instructions: Only keep the one link you want your instructor(s) to use. This uses the
master
branch so will only have your newest notebook once you have merged your pull request for the week.
Only keep the one link you want your peer reviewers to use. Note that these will only work once the
week6
branch exists.
Instructions: Only keep the one link you want your instructor(s) to use. This uses the
master
branch so will only have your newest notebook once you have merged your pull request for the week.