Resources
This page provides a number of general resources for the main technologies we will be using in the course. More specific resources about the weekly topics are listed on the page for those weeks.
Digital Humanities
Humanities Commons - Hcommons is doing a lot of interesting things to build open source infrastructure for the Humanities in general. Their blog, called Platypus, discusses the why and how of what they are doing.
The question of what Digital Humanities is is ever present. In fact, there is a website that provides different answers. Digital Humanities is also perpetually seen as the future as Cameron Blevins noted in 2016. The Digital Humanities Literacy Guidebook provides a good overview of the breadth of Digital Humanities.
Writing on or about Digital Humanities is quite widespread and diverse. Here are some useful places to start, some of which we will read during the semester.
- Romein et al, “State of the Field: Digital History,” History 105, (2020): 291–312. https://doi.org/10.1111/1468-229X.12969
- The Debates in the Digital Humanities series published by University of Minnesota Press and hosted at The Graduate Center at CUNY has a fairly exhaustive range of discussions spanning from 2013 to 2023.
- A more theoretical discussion of how Digital Humanities affects the study of History can be found in History & Theory vol 61, issue 4: Changing Narratives, Changing Methods, Changing Narrators.
As far as tutorials for digital tools and technologies, two good places to start looking are The Carpentries and Programming Historian.
There are many lists of Digital Humanities and Digital History tools, projects, tutorials, and data sources. Here are a couple Awesome lists:
- Awesome Digital Humanities
- Awesome Digital History
- Awesome Research Tools
- Awesome Reproducible Research
An invaluable source for finding Digital Humanities projects is the online journal Reviews in Digital Humanities. I recommend looking through the reviews by topic or method, which includes a quite large collection of DH projects devoted to Public Humanities.
Discord
Discord is a community chat platform. Unlike most tools that we are using in this course, it is not open-source, but the free tier of Discord serves our needs well of providing a place to discuss topics outside of our meetings. Discord is available for download on desktop and mobile or can be used in the browser. We will go through using Discord together, but you can look at the docs on getting started or at the beginner’s guide if you are confused about anything. You will receive an invite for the Discord via email.
Zotero
Zoetero is an open-source application available on macOS, Windows, Linux, and iOS that is created by the Corporation for Digital Scholarship. It is built by a group of historians and designed specifically for use by academics in the Humanities. In this course we will be using Zotero groups as a way to collaborate on the collection of resources for the course.
You can download Zotero here. To use Groups you need to sign up for an account. I will send you a link to join our group, vt5454-s24, once everyone has an account.
We will discuss using Zotero in more detail in Week 3. To help get started check out the Zotero Guide and the Zotero Research Guide created by Lisa Becksford Russell at the Library. If you have any questions, check out Zotero’s documentation.
Text editors
We will be working in plain text documents throughout the course and a good text editor is essential. Happily, there are many options for you. Below is a partial list of text editors, but feel free to explore other options.
Cross platform
- Visual Studio Code is much more than a text editor, but it can also be made into a good text editor for plain text and Markdown. It is free and open source and worthy of a download to check out.
- A paid alternative is Sublime Text.
macOS
Windows
- A classic text editor for Windows is Notepad++.
Markdown and plain text
Markdown is widely used as a way to add markup to plain text documents and to write for the web. It was developed by John Gruber in the early 2000s. Its use has exploded since 2010 and there are now a variety of “flavors” of markdown that have more features than the original version. Mostly you do not need to worry about this. See the Markdown Syntax Guide for an overview.
Guides to Markdown syntax can easily be found on the internet. Programming Historian: Getting Started with Markdown by Sarah Simpkin is a good place to start. Markdown Guide provides a good overview of the basic syntax. The Quarto docs show the flavor of Markdown used by Quarto. Most/many Markdown editors, especially those that focus on academic writing, depend upon Pandoc, which attempts to be a universal document converter. The Pandoc documents do not make for particularly fun reading, but they are a good resource when digging into the weeds.
Good places to start for the why and how of writing in plain text for academic writing is Kieran Healy’s The Plain Person’s Guide to Plain Text Social Science and Programming Historian’s lesson on Sustainable Authorship in Plain Text using Pandoc and Markdown.
Command line
- Programming Historian: Introduction to the Bash Command Line
- Software Carpentry - The Unix Shell
- Hartl, Learn Enough Command Line to be Dangerous
- Very good basic tutorial and guide that can be used as a good reference.
- Bates, Conquering the Command Line
- More in depth than Learning Enough and discusses more advanced commands.
- Sean Kross, The Unix Workbench
Git and GitHub
- Software Carpentry - Version Control with Git
- Chacon, Pro Git
- GitHub docs
- Jenny Bryan, Happy Git and GitHub for the useR
- And in case you get in trouble with git there is always Oh shit, Git!?!.
R
There are innumerable freely available resources and tutorials on learning R for data analysis and visualization, but the best starting place is Hadley Wickham, Mine Çetinkaya-Rundel, and Garrett Grolemund, R for Data Science (2nd Edition) (O’Reilly, 2023). It is an essential resource that I continue to check whenever I am working in R and forget how to do things.
Make sure that you get comfortable using the RStudio IDE, the app you use to run R. Check out the RStudio IDE User Guide if you encounter issues and to see what you can do in RStudio.
A good tutorial on R from a Humanities/Social Sciences perspective is Data Carpentry - R for Social Scientists. Another good option is Software Carpentry - R for Reproducible Scientific Analysis. A more general intro to R from the perspective of someone more used to spreadsheets is Julie Lowndes and Allison Horst, R for Excel Users.
Posit, the company that makes RStudio, publishes cheatsheets for the set of tidyverse packages we will be using during the course. If you have a question about R you can ask or look for similar questions on the Posit Community.
It might be useful to keep The tidyverse style guide handy as you are getting used to writing R code. It provides some basic tips for how to style your code to make it more consistent and easier to read.
Two great resources on visualization are Kieran Healy, Data Visualization: A Practical Introduction (Princeton University Press, 2018) and Claus Wilke, Fundamentals of Data Visualization (O’Reilly 2019). Both provide guidance on how to make effective visualizations for the Humanities and Social Sciences. Hadley Wickham, the creator of ggplot2, Danielle Navarro, and Thomas Lin Pedersen have a third edition of the book ggplot2: Elegant Graphics for Data Analysis. It is a very good reference.
Another set of great resources for visualization with ggplot2 are by Cédric Scherer. His blog post, A ggplot2 Tutorial for Beautiful Plotting in R is both a great starting point and great as a quick reference. His workshop, Graphic Design with ggplot2 at the 2022 RStudio conference is a really nice tutorial on making advanced visualizations.
You can also look at a series of notes/overviews that I have written on the tidyverse and visualization with ggplot2.
Two good ways to keep up with what is going on with R and the R community is to subscribe to the R Weekly RSS feed to get a curated list of posts about R. Another great project for learning R and seeing some examples is Tidy Tuesday a community driven weekly event to analyze and visualize a given data set. Because it is difficult to search for a single letter on the internet, the R community often used #rstats
.
Quarto
- The Quarto documentation is very good and thorough.
- Look through the Getting started tutorial to get acquainted with the basics of a quarto document.
- For an extensive list of resources on Quarto see Awesome Quarto.
Quarto websites
- Quarto websites are a collection of Quarto documents using
format: html
with a set structure and consistent visual style. - Create new Quarto website project: File -> New Project… -> Quarto Website.
There are multiple ways to preview the website.
- RStudio interface:
Render
button (⇧⌘K). Use gear button to control how preview works. quarto
commands on the R console:quarto::quarto_preview()
- Quarto command line interface in Terminal:
quarto preview
You can render the website, meaning build all of the pages into the _site
folder, through the same methods.
- RStudio interface:
build
tab in upper-right section of RStudio ->Render Website
quarto
commands on the R console:quarto::quarto_render()
- Quarto command line interface in Terminal:
quarto render
Publishing Quarto websites with GitHub Pages
- See documentation for publishing website with GitHub pages.
- We will use the publish command using the quarto command line interface.
Setting up the publish command
- First, make sure all changes are committed on your project.
- Create an empty
gh-pages
branch.git checkout --orphan gh-pages
git reset --hard
git commit --allow-empty -m "Initialising gh-pages branch"
git push origin gh-pages
- Check Settings -> Pages for Source branch on your GitHub repository.
- Ignore
_site/
folder in git- Add
/_site/
to.gitignore
file. - Remove any tracking of
_site/
in git:git rm -r _site
- Add
- Publish through command line:
quarto publish gh-pages
What this does: The publish command will render your content, copy the output to a special gh-pages
branch, push that branch to GitHub, and then open a browser to view your site once it is deployed.
What you should be doing to make changes to your website
- Make the changes in RStudio.
git add
andgit commit -m
changes.- Push changes to GitHub main branch:
git push origin main
- Publish changes by pushing to gh-pages branch:
quarto publish gh-pages