Skip to content

Practice Task

Sameer Nair-Desai edited this page Oct 25, 2023 · 11 revisions

Checklist

  • Read through RA manual carefully.
  • Make sure your computer is properly set up. First, check that you have installed the softwares listed on the RA manual setup page. Then, verify that your computer satisfies the requirements of the template per its ReadMe.

Task Description

Make sure you follow all procedures in the RA manual (e.g., issue threads and branching).

1) Basic functionality

  1. Create your own public repository from the gentzkow template and invite the practice task assigner as a collaborator on your GitHub repo. Make sure you fork this repository, do not click "Use this template". Doing so will create errors in the filters for git-lfs files.
  2. Run the repository from beginning to end to replicate the output.
  3. Open a new issue following the guidelines described in the RA manual and modify the code in the data folder so that the histogram in output/chips_sold.pdf displays percentages instead of counts. To update the data folder with your new histogram as an output, you should run data/make.py. Then, to make sure your changes are reflected in the paper, you should run paper_slides/make.py. Commit this file with a helpful tag following the RA manual's format.
  4. Once you are done, close the issue with a summary and deliverables. Open a Pull Request to merge your work into the master repository following the PR guidelines. On the PR, ask the practice task assigner for a peer review (see peer review guidelines).
  5. Repeat steps 3 and 4, this time to modify the code in analysis/code/analyze_data.py to run an additional regression only on the subset of years greater or equal to 1960. Export the model coefficient, standard errors and p-value into a new table output (similarly to what is currently done in the code for the full set of years) and add your new table to the paper.
  6. Complete the task.

2) Sherlock Extension

  1. Thoroughly review the purpose and features of Sherlock in the Research Clusters section of the RA Manual Wiki.
  2. Log on to Sherlock following the instructions here. Ensure you have access to the correct partitions ($OAK, $HOME, $GROUP_HOME, $SCRATCH, and $GROUP_SCRATCH) with the sh_part command. If you do not have access to $OAK, ask a lab member for access.
  3. Set up your personal directory under $OAK. You can review the Research Clusters section of the ra-manual if needed.
  4. Set up Dropbox and Rclone on Sherlock. You can follow the instructions here and here.
  5. Initialize GitHub usage on Sherlock by generating a new SSH key and adding it to Sherlock.
  6. Clone the remote template repository to your personal directory in $OAK.
  7. Set up the repository following the instructions in the ReadMe. To install miniconda, see the instructions in the Research Clusters section (this installation process is distinct from the standard template setup).
  8. To check that the template repository is operating as expected, run the data module within your terminal. You should see the standard output appear in your $OAK directory.
  • Note: You will not need to set up command line usage on Sherlock - simply load the relevant applications with the module spider and ml <application/version> commands. For more on this, see Setting up the environment in the Research Clusters section.
  1. Create a new issue following the guidelines in lab-manual, and modify the code in analysis/code/analyze_data.py to cluster standard errors at the county-level.
  • Note: You may either follow the instructions in the Research Clusters section to make these file edits directly in Sherlock, or make the edits locally and pull to your Sherlock directory from a remote Git repository.
  1. Add a new regression table capturing the revised outputs to the paper in paper_slides/code/paper.lyx. Caption the table mentioning the two-way fixed effects the model uses, and that the std. errors are clustered at the county level.
  2. Submit a job to run the full repository with these edits, following the instructions here.