Digital humanities

Maintained by: David J. Birnbaum ( [Creative Commons BY-NC-SA 3.0 Unported License] Last modified: 2021-09-08T15:13:37+0000

Syllabus: Autumn 2021 (2221)

Getting started

Download and install the following software on your home computer (Windows, Mac, or Linux).

All users:

Windows users:

Mac users:

Linux users:

Class meetings

Date Session topics Homework due next time
Coding Digital humanities Coding, response papers, tests (upload to Canvas unless the assignment says otherwise) Postings
Unit: XML
Fri, 08-27
  • Introduction to XML: hierarchy, well-formedness, elements and attributes
  • Using the <oXygen/> XML editor and IDE
  • Gazpacho recipe
  • What is Digital Humanities?
Mon, 08-30
  • Using our Slack workspace for questions and discussion
  • Types of markup: descriptive, presentational, procedural
  • No prior programming experience? You’re in good company! Read Can humanities undergrads learn to code? by two former undergraduate instructors in this course
  • XML exercise 2: Mark up a text of your choice (any genre, manageable size, foreign languages welcome)
  • Write a 300- to 400-word response paper to either Exploring speech in Russian fairy tales (you do not have to be able to read Russian to do this) or Van Gogh as a tortured genius, discussing the site’s 1) utility as a tool for exploring the text, 2) identification and treatment of specific research questions, and 3) effectiveness of overall user experience (design, interface, interaction, etc.)

Wed, 09-01
  • XML exercise 3: Mark up a different text of your choice (any genre; manageable but reasonable size; foreign languages welcome)
  • Write a 300- to 400-word response paper to Aesop’s fables or My immortal, following the same guidelines as for the previous response paper
Fri, 09-03 XML review
  • Write a 300- to 400-word response paper to the Perseus digital library (this link is to the Iliad inside the library; you do not need to be able to understand Greek to respond to the site) or Melville’s marginalia, concentrating on the user experience (UX). What sorts of research does the site support, and how effectively does it provide that support?
  • Test #1: XML
Mon, 09-06 No class (Labor Day)
Unit: Relax NG
Wed, 09-08  
  • Read our Introduction to Relax NG tutorial
  • Relax NG exercise 1: Write a Relax NG schema for one of the XML documents you created for an earlier assignment (XML exercise 1, 2, or 3; you may modify your XML if you wish) and upload both your XML and your schema file.

    Note: We’ll introduce how to model mixed content in Relax NG only next time. For this first assignment you can either select XML that doesn’t have any mixed content or peek ahead to the reading that will be assigned next time, about content models.

Fri, 09-10
  • Read our Relax NG content models tutorial to learn about modeling mixed content and empty elements
  • Relax NG exercise 2: Choose a small text, perform document analysis, write a schema, mark up the text according to the schema, and upload both your XML and your schema file
  • Write a 300- to 400-word response paper to Blake or Rossetti. These are primarily archive or portal sites, designed to provide enhanced access to materials, rather than to support specific research questions. How well do they achieve their goals?
Mon, 09-13
  • Relax NG exercise 3: Choose a small text of a different type or genre than last time, perform document analysis, write a schema, mark up the text according to the schema, and upload both your XML and your schema file
Wed, 09-15  
  • Post to the project-proposals channel in our Slack workspace a 300- to 400-word tentative/exploratory project proposal. Your proposal should identify your 1) text(s), which must be free of copyright restrictions, 2) research question(s), 3) approach and methods, and 4) potential teammates (if known). All course projects must be undertaken by teams of two or more persons, but this initial, exploratory proposal is an individual assignment.

  • Read just the first part (Background) of An introduction to network analysis and Cytoscape for XML coders and submit a 300- to 400-word response paper. In your response, reflect on whether network analysis might be useful for your own project and, if so, the research questions it might help you explore.
  • Prepare for the Relax NG test (assigned Fri, 09-17, due Mon, 09-20)
Unit: Network analysis (guest lecture)
Fri, 09-17
  • Guest lecture by Elisa Beshero-Bondar (Penn State Erie, The Behrend College) on network analysis
  • Social networks
  • Read Putting content on line
  • Read and follow along with Chapter 1 (sections 1.1 through 1.8) of the official Git tutorial, which begins at By Monday’s class aim to have 1) created a GitHub account, 2) learned how to access the command line on your local machine, and 3) installed Git on your local machine. If you get stuck, don’t panic (it’s complicated, but you’ll become adept quickly as you gain experience), but do ask for help in our Slack workspace. Post your GitHub userid in the git-and-github channel of our Slack workspace.

  • Test #2: Relax NG
Unit: Project organization and GitHub
Mon, 09-20
  • GitHub for project management
  • Markdown
Unit: Regular expressions
Wed, 09-22
  • Form project teams, appoint a project owner (typically the proposal author)
  • Regular expressions (Recipe)
  • Multipurposing
  • Regex exercise 1
  • All students should read GitHub for project management. Additionally, if you are the project owner for your team you should complete the following tasks:
    • Add all project team members and instructors as project collaborators (SettingsCollaborators)
    • Add a brief descriptive markdown file to your repo.
Project update (GitHub)
Fri, 09-24
  • Text analysis and data mining
  • Read Regex tips (Read the first half, before the Using regex in XSLT section, to acquaint yourself with what’s there, but don’t try to memorize it all at once. You can skip the second half, about regex in XSLT.)
Project response (GitHub)
Mon, 09-27
  • Regular expressions
  • Upconversion with regex
  • Regex exercise 2
  • Read the TEI header section (Chapter 2) of TEI P5 and submit a 300- to 400-word response paper. The TEI header is about metadata, that is, information about the document. How will you handle metadata (what type of information, how will be it be encoded or represented) in your project?
Discussion posting (Slack) Topic: Since your first encounter with the command line and GitHub, how has your understanding of these technologies changed? What obstacles still affect your understanding of its use? On GitHub specifically, which features stand out as useful tools for your project team? How would you plan to implement them? Which features do you want to learn more about?
Unit: TEI
Wed, 09-29
  • Read HTML basics
  • Read one chapter from the text body of the TEI guidelines (except Chapter 2, TEI header) and submit a 300- to 400-word response paper. Even if you don’t use TEI in your own project, focus on whether there are TEI features that you would want to adopt or adapt.
  • Prepare for Regex test (assigned Fri, 10-01, due Mon, 10-04)
Project update (GitHub)
Unit: Web technologies
Fri, 10-01
  • Obdurodon accounts
  • The Web: (X)HTML5, CSS, Unicode
  • Metadata
Project response (GitHub)
Mon, 10-04
  • Viewing HTML and CSS on the Web
  • Web developer tools
Discussion posting (Slack)
Wed, 10-06
  • CSS: Flexbox and Grid
  • Take-home midterm instructions (take-home midterm is due Mon, 10-25)
Project update (GitHub)
Fri, 10-08  
  • Read A complete guide to Grid
  • Read one chapter from either Part I or Part II of Visual usability: principles and practices for designing digital applications by Tania Schlatter and Deborah Levinson (available on-line through the Pitt library) and submit a 300- to 400-word response paper. Concentrate in your response paper on how you might apply what you’ve read to the design of your own project site.
Project response (GitHub)
Unit: User experience (UX) and user interface (UI) (guest lecture)
Mon, 10-11
  • Guest lecture by Shea Higgins (UHC) on web design and user experience (UX)
  • Read What can XPath do for me?
  • Read Mining the Dispatch: introduction (the whole page under the Introduction tab; not just the few paragraphs headed Introduction) and submit a 300- to 400-word response paper. Topic modeling is a tool that operates on plain text to provide descriptive statistical information. How might it play a role in your project?
Discussion posting (Slack) Topic: Explore Orbis, a site designed to support research into the economic geography of the ancient Roman world. How does this project make effective use of mapping, and what limitations do you see?
Unit: XPath
Wed, 10-13   Project update (GitHub)
Fri, 10-15 No class (Fall Break)
Mon, 10-18
  • XPath: predicates
  • Namespaces
Discussion posting (Slack)
Wed, 10-20
  • XPath: predicates and functions
Project update (GitHub)
Fri, 10-22
  • XPath: predicates and functions
  Project response (GitHub)
Unit: Schematron
Mon, 10-25
  • Midterm due
  • Schematron
  Discussion posting (Slack)
Wed, 10-27
  • Schematron
The XML family of standards Project update (GitHub)
Fri, 10-29
  • Schematron
  Project response (GitHub)
Unit: Stylometry and authorship attribution (guest lecture)
Mon, 11-01
  • Guest lecture by Patrick Juola (Duquesne University) on stylometry
  • Stylometry
Discussion posting (Slack)
Unit: XSLT
Wed, 11-03
  • XSLT and XPath Overview
  • XSLT exercise 1
  • Prepare for the Schematron test (assigned Fri, 11-05, due Mon, 11-08)
Project update (GitHub)
Fri, 11-05
  • XSLT templates
  • XPath path expressions and XPath patterns
  • The digital workstation
Project response (GitHub)
Mon, 11-08
  • XSLT program structure and design
  • XSLT push and pull
  Discussion posting (Slack)
Wed, 11-10
  • XSLT
  Project update (GitHub)
Fri, 11-12
  • XSLT
  Project response (GitHub)
Mon, 11-15
  • XSLT Review
  Discussion posting (Slack) Topic: Read The hermeneutics of screwing around or In praise of pattern. These essays describe how research methods in a digital environment may differ from research methods elsewhere in humanities scholarship. In what ways are Steve’s arguments persuasive (or not)?
Unit: SVG
Wed, 11-17
  • SVG
  • Sample project:
  • SVG exercise 1
  • Prepare for the XSLT test (assigned Fri, 11-19, due Mon, 11-29)
Project update (GitHub)
Fri, 11-19
  • SVG
  • SVG exercise 2 (Remember that you should be uploading the XSLT stylesheet that you used to transform your document, not the SVG output of the transformation)
  • Upload a 300- to 400-word response paper to Norse or Milton that focuses on visualization. Are the graphic representations suitable for the data? If yes, why? If not, what could they have used instead?
  • Test #6: XSLT
Project response (GitHub)
Mon, 11-22
Wed, 11-24
Fri, 11-26
No class (Thanksgiving Break)
Mon, 11-29
  • SVG
Discussion posting (Slack)
Wed, 12-01
  • SVG
  • SVG exercise 4
  • Prepare for the SVG test (assigned Fri, 12-03, due Mon, 12-06)
Project update (GitHub)
Unit: XSpec
Fri, 12-03
  • XSpec
  • Test #7: SVG
  • XSpec exercise 1
Project response (GitHub)
Mon, 12-06
  • XSpec
  • XSpec exercise 2
Discussion posting (Slack)
Wed, 12-08
  • Lab Session
    Project update (GitHub)
Fri, 12-10
Last class
  • Project Showcase
    Project response (GitHub)
Fri, 12-17,
Projects due