-
Notifications
You must be signed in to change notification settings - Fork 6
Description
One of the goals is to make ReproHacks reproducible, ie develop customisable templates and tools so that hosts can run ReproHacks easily.
Problems with current setup
The current approach to event setup & delivery uses shiny and googledocs to compile a list of papers and collect feedback for the authors. This approach comes with limitations:
- Requirement to authenticate with googledocs
- Requirement to have a shinyapps.io account or access to a shiny server/institutional shinyapps.io account. Although it is easy to set up a shinyapps.io account, there is a cap on the amount of traffic to the app allowed in the free account and upgrading the subscription to run an event might be required (I had to do this for the first two OpenCon events I ran from my personal account).
- Currently, distributing feedback to the authors is not automated, although it could be set up as a script attached to the feedback googlesheet
- Overall, the materials feel like they are too spread out.
Solutions
Manage everything through GitHub:
Taking inspiration from Carpentries workshop website deployments for event sites, and rOpenSci management of package reviews to track reproductions and feedback to authors, we will be developing a system that is fully open and relies solely on GitHub for compiling and serving paper lists as well as tracking reproductions and participant feedback. Managing everything through GitHub also means we have a way of contacting authors through their with needing to publicise email addresses
Use pull requests for paper submissions
- pull request to add a YAML file that describes a paper
- Provide YAML file template
- Travis CI validates Pull Request YAML file.
- Explore easier ways to submit file (as any significant increase in complexity of procedure will reduce author interaction and submission levels. eg:
- Use something like prose.io to provide a GUI for submission? (eg have a look at hackers.nyc file submission portal)
- PRs could be reviewed and accepted by the organizers of the event or automatically merged once checks have passed: Merge pull requests when all status checks are passing probot/ideas#22
- GitHub trick: how to prefill "create new file" form?: https://www.reddit.com/r/github/comments/3ty3g9/github_trick_how_to_prefill_create_new_file_form/
Make pages static and build after checks pass
- when merged Travis CI builds static site and serve as GH pages (or equivalent)
This way we minimize the toolset and would not require Google Forms etc. Having everything in one place (one repository) would also simplify reuse for other events. Generate from a GH template and that's it: no other accounts and places to set up.
Use participant registration issues for author feedback
This helps maintain everything in the same place and can be handled by expanding the current GitHub issue template. Although the majority of authors submitting to the CarpentryConnect the fact that feedback will now also be open might put some people off initially. This makes a really clear and well enforced code of conduct, particularly with respect to treatment of authors even more important!
Use bots/tests to automate some processes?
- Check YAML for paper submissions: https://probot.github.io/apps/yamburger/
- Automatically merge PR after checks pass: https://github.com/dependabot or https://github.com/bobvanderlinden/probot-auto-merge
- More bots to consider on probot: https://probot.github.io/apps/
Key considerations
- Submission workflow needs to be as simple and as automated as possible so as to be able to compete with the simplicity of a google form.