This page has links to configuration files, R packages, templates, and a few other things that might be of use to people who want to write (and give talks about) well-formatted social science papers using plain text tools.

The Sausage Factory

The Plain Person's Guide to Plain Text Social Science

Available either as booklet or as a website. As a beginning graduate student in the social sciences, what sort of software should you use to do your work? More importantly, what principles should guide your choices? This article offers some answers. The short version is: you should use tools that give you more control over the process of data analysis and writing. I recommend you write prose and code using a good text editor; analyze quantitative data with R or Stata; minimize error by storing your work in a simple format (plain text is best), and make a habit of documenting what you've done. For data analysis, consider using a format like Rmarkdown and tools like Knitr to make your work more easily reproducible for your future self. Use Pandoc to turn your plain-text documents into PDF, HTML, or Word files to share with others. Keep your projects in a version control system. Back everything up regularly. Make your computer work for you by automating as many of these steps as you can. To help you get started, I briefly discuss a drop-in set of useful defaults to get started with Emacs (a powerful, free text-editor). I share some templates and style files that can get you quickly from plain text to various output formats. And I point to several alternatives, because no humane person should recommend Emacs without presenting some other options as well.

Pandoc Templates

Some Pandoc templates meant to go in ~/.pandoc/templates. Point to them directly with the --template or --css switches as appropriate, and use them with what's provided in latex-custom-kjh. Includes a shell script for setting pandoc up to work with the Marked app, a handy HTML live previewer for .md files.

LaTeX Templates and Styles

A collection of LaTeX style files, templates, and org-mode documents providing some nice layouts for typesetting articles using pdfLaTeX or XeLaTeX. They make a pipeline that lets you begin with an .org file in Emacs (as set up in the Starter Kit), and go from there to a nice, fully-processed PDF in one step. Or the pieces can be used separately to set up a .tex file with a nice Article layout.

An Emacs Starter Kit for the Social Sciences

This is a fork of Eric Schulte's Emacs Starter Kit (itself an offshoot of Phil Hagelberg's original) with additional tools included for social scientists, mostly related to writing books or papers in LaTeX and analyzing quantitative data using ESS and R. The goal is to provide a drop-in configuration for Emacs that makes it easier to use right from the get-go. If you know about Git, you can clone the repository.

So You Like My Website

This site is produced using Hugo, a very fast static site generator, which you can read more about here. I've written about my own experience setting it up, too. The design is borrowed mostly from Greg Restall. If you want to look under the bonnet, the entire site is on GitHub. Feel free to adapt it yourself. If you make stylistic modifications, I encourage you to fork the project on GitHub and make them available to others in the same way. You should also change the Google Analytics information in the footer partial, or I will receive analytics information about your site.

Data Visualization: A Practical Introduction

Data Visualization: A Practical Introduction is published by Princeton University Press. It introduces you to both the ideas and the methods of data visualization in a clear, sensible, and reproducible way, using R and ggplot2. It is accompanied by an R package containing supporting materials for teaching and learning, including a variety of datasets, convenience functions, and an R Studio project file containing all the code for each of the book's chapters.

R Packages

socviz. The socviz package supports the Data Visualization book with a collection of small datasets and functions to help draw good graphs in R and ggplot.

The GSS for R The gssr package provides the General Social Survey cumulative data file (1972-2018) and Three Wave Panel data files in an R-friendly format, together with their codebooks (as tibbles).

Dogs of New York The nycdogs package is a fun dataset (actually three separate tibbles: licenses, bites, and zip codes) that I took from New York City's awesome Open Data site, cleaned, and packaged for R. It's useful for teaching dplyr, for drawing maps, and for seeing where dogs with particular names live.

Making Slides

This is a short talk, originally given in my Departmental Proseminar, on the topic of giving presentations. I discuss how to think about your talk in general (and how to distinguish it from the paper you're taking about, on the one hand, and the slides you're showing people, on the other.) I then say some things about how to use slides to best get your point across.

So You Like My Vita

Every few months I get an email asking to see the LaTeX markup that I use to generate my Curriculum Vitae. So, here it is. Feel free to adapt it yourself. If you make stylistic modifications, I encourage you to fork the project on GitHub and make them available to others in the same way.

All GitHub Projects

Here is a full list of the various public code and data repositories that I have put on GitHub. They range from the configuration and templating tools listed above to data visualization exercises and other bits of data analysis, mostly written in R.


I am Professor of Sociology at Duke University. I’m also affiliated with the Kenan Institute for Ethics. Read a brief overview of my work or my Curriculum Vitae.



To be notified of updates, you can subscribe to the  RSS feed for the site.