bblockwood / lab

Repository for collecting and documenting work done by research assistants.
0 stars 0 forks source link

Design training task to demonstrate use of github and tasks #12

Closed bblockwood closed 3 years ago

bblockwood commented 3 years ago

Goal: create a small skeleton project that can but used to train a group of RAs about how to use GitHub issue tracking, and to branch/merge/commit/push. Those should include a minimal stata script and latex writeup (latex not lyx please), with one numberstotext entry and one regression table, with a training assignment document that asks the trainee to complete the following steps:

  1. Clone the repo to ones own computer.
  2. Create an issue and assigning oneself to do a given task, e.g., a change in the regression specification.
  3. Create a branch iss1 to implement the change.
  4. Make the change and commit.
  5. Push.
  6. Merge masteriss1.
  7. Merge iss1master
  8. Push.
  9. Summarize and request to close issue.

The steps here can be listed with minimal detail — the goal is for the wiki to have sufficient detail that an RA can understand the best practices by referencing that, rather than studying the training doc.

@afras-sial could you take a pass at this sometime before Thursday?

afras-sial commented 3 years ago

@bblockwood Did you want to create a separate repo for this or did you just want to put this in a folder in this repo?

Also, what happens after 9? Are you planning on going in and reverting their changes so it can be used again?

bblockwood commented 3 years ago

@afras-sial this should be a separate repo. I'll create one and add you in a moment.

Ideally this will be a reusable task for RAs to do individually during training each year. Which means it's actually a little awkward if they're all creating similar open issues, since their edits will conflict. I haven't used Forking much before, but could you look into it a bit and see if this is a good candidate for that? I.e., we create a template repo, then each trainee forks the repo, performs this task, and if there's a group training, we can look at how they each did it on their own system and compare notes.

afras-sial commented 3 years ago

@bblockwood I think forking should work well for this. I've added the code to the training repo and updated the wiki of that repo with the task instructions. Please take a look and let me know if I should make any changes.

bblockwood commented 3 years ago

@afras-sial thanks for doing this! The setup looks very nice. In step 5, could you just change it to be a specific task of your (Afras's) choosing? I think this will be easier if we can reconvene after the training and see how several different people all implemented the same change.

afras-sial commented 3 years ago

No problem, @bblockwood! I specified a task that requires a little bit of thought but should be quite doable. Feel free to edit it as you see fit.

bblockwood commented 3 years ago

Fantastic, thanks! Closing this issue.