They can also do all these
things in combination.
• find all the statements in quotes ("") from a
• count how many words are in each statement
• put the statements in order from smallest
amount of words to largest
• write all the statements from the novel in a text
• allow a user to type in some information, i.e.,
• compare “Benedict Cumberbatch” to a much
• retrieve any data that matches the information
• print the retrieved information on screen
• "read" two texts -- say, two plays by Seneca
• search for any words that the two plays have in
• print the words that they have in common on
• calculate what percentage of the words in each play
• print that percentage onscreen
• if the user is located in geographic location
Z, i.e., 45th and University, go to an online
address and retrieve some text
• print that text on the user’s tablet screen
• receive input from the user and respond
• In Example #1, the computer is focusing on things
that characters say. But what if you want to isolate
speeches from just one character?
• In Example 2, how does the computer know how
much text to print? Will it just print "Benedict
Cumberbatch" 379 times, because that's how often
it appears in the larger file?
These are the areas of
programming where critical
thinking and humanities
skills become vital.
• Humans are good at differentiating
between material in complex and
• Computers are good at not differentiating
between material unless they’ve been
specifically instructed to do so.
Computers work with data.
You work with data, too -- but in most cases,
you'll have to make your data readable by
How to make your data
• Annotate it with markup language
• Organize it in patterns that the computer
• Add data that is not explicitly readable in
the current format (i.e.,
language:English; date of record creation)
Depending on the data you
have, and the way you
annotate or structure it,
different things become
For instance, sometimes it
may be enough to know
that a tile is 9” sq. But
sometimes you need to
know that it is 3” x 3”.
Your goal is to make the data As
Simple As Possible -- but not so
simple that it stops being useful.
Depending on the data you
work with, the work of
structuring or annotating
becomes more challenging,
but also more useful.
<i> This text is
This text is italic.
This text</a> will take you to a webpage.
This text will take you to a webpage.
Anything can be data -- and markup languages
provide instructions for how computers should
treat that data.
HTML is a display language used to format text on webpages.
<p> separates text into paragraphs.
<em> makes text bold (emphasized).
These are just a few of the HTML formatting instructions that
you can use.
HTML Syntax Rules
•Open and closed tags: <> and </>
defined using =“”
•Comments: <!-- -->
Markup languages are
popular in digital humanities
because lots of humanists
work with texts.
Without markup languages,
the things that a computer
can search for are limited.
Poetry w/ TEI
<text xmlns="http://www.tei-c.org/ns/1.0" xml:id="d1">
<div1 type="book" xml:id="d3">
<head>Songs of Innocence</head>
<div2 type="poem" xml:id="d4">
<l>Piping down the valleys wild, </l>
<l>Piping songs of pleasant glee, </l>
<l>On a cloud I saw a child, </l>
<l>And he laughing said to me: </l>
TEI’s syntax rules are
identical to HTML’s --
though your normal
browser can’t work with TEI
the way it works with
TEI is meant to be a highly
social language -- meaning
that the committee who
maintains its standards want
it to be something that
anyone can use.
In order for TEI to
successfully encode texts, it
has to be adaptable to
Anything that you can isolate (and
put in brackets) can (theoretically)
then be manipulated to serve your
TEI can be used to encode more than just text:
<view>BBC World symbol</view>
<p>Monty Python's Flying Circus tonight comes to you live
from the Grillomat Snack Bar, Paignton.</p>
<view>Interior of a nasty snack bar. Customers around, preferably
real people. Linkman sitting at one of the plastic tables.</view>
<p>Hello to you live from the Grillomat Snack Bar.</p>
Or, you could encode all
Stephenie Meyer’s Twilight
according to its emotional
Whether you include or
exclude some aspect of the
text in your markup can be
very important from an
The challenge of creating
good data is one reason that
collaboration is so
important to digital
• Avoid reinventing the wheel (has the
markup for this text already been done?)
• Consider the labor involved vs. the
outcome (and future use of the data you
Study Scenario #1
• You study urban espresso stands: their
hours, brands of coffee, whether or not
they sell pastries, and how far the espresso
stands are from major roadways.
What Types of Data?
• Binary (pastries: y/n)
• Unordered (hours; coffee brands)
• Derived/subservient (hours+proximity to
roadways; take cards? Which cards?)
Study Scenario #2
• You study female characters in novels
written between 1700 and 1850. Encoding a
whole novel just to study female characters
isn’t practical for you.
What types of data might
you collect in this case?
Both scenarios involve
rather than encoding it.
Structured Data: Example #1
ID Name Location Hours Coffee Brand Pastries (Y/N) Distance from
008 Java the Hut 56 Farringdon
N 25 meters
7:00 a.m. –
Monmouth Y 10 meters
Every project has
Text objects, images, tags, geographical
coordinates, categories, records, creator
Even if you’re not planning to learn
any programming skills, you are still
working with data.
Programming on the Whiteboard
January 24, 9:30, CMU 202
•Cleaning data before you work with it!
•Identifying specific programming tasks
•How access affects your project idea
•Flash project development
•Homework: bring some data to work with.