Page tree

Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

The goal of social science research is to produce and make publicly available the results to advance knowledge, deepen understanding and, ultimately, improve well-being. That broad goal is advanced when scientists keep up with recent developments of their colleagues by attending conferences and reading the literature, when they make well-reasoned arguments, and when they write and publish research papers to communicate their own empirical findings and interpretations. Good workflow also contributes to this goal by making us more efficient, providing us and our colleagues greater confidence in our work, reducing error, and creating stronger foundations for future research. By workflow I mean practices implemented on a day-to-day basis while conducting research that organize and document our analysis of empirical data. Any empirical research, whether quantitative or qualitative, involves workflow, but the focus of this document is on workflow for the analysis of secondary quantitative data sources.

...

Code Structure – organization of scripts to process data that makes clear the function of each and its role in the project.

Archive record records of code and data that produced published results, record of supplementary analyses, old versions of code, documentation, papersand of earlier drafts of papers written for publication. For archiving code, you might use GitHub and GitHub Desktop.

Automation – the code produces the empirical results as they appear in the publications and supplements with minimal human intervention.

Collaboration – workflow facilitates work on teams, but teamwork also encourages good workflow, You'll see in the page on File Structure, my projects have a workflow that requires that each collaborator replicate the analysis independently. This allows us to check to make sure that the code is archived and works the same in different environments. Sharing code through a GitHub repository allows each one of us to review and edit the code. Often I find myself adding documentation as I read code written by someone else to make it clearer to me. My collaborators do the same for my code. 

Tools

GitHub – GitHub is a location for archiving, sharing, and keeping a version history of your files. There are many introductions to Git and GitHub, but this one is especially good.

...

Coding Tools

Macros

Assert

Markdown

See also Automation