a basic outline
- some preliminary thoughts - including timeline examples
- the timeline assignment
- The problem: current approaches - timestamps & date objects / types
- Solution? Historical into the comptuational?
- some end thoughts - what does the comptuational offer the historical?
Types of ____lines
to act as 'structure' for sequential content
or
a visual representation of data
Types of Time____
Quantification problem - measuring time?
- An afternoon
- A moment ago
- Last month
- Years months days...
Position in time or the spatiality of time?
- Going forward
- Yesterday...
- Looking back
- Last Tuesday
as perspective
A brief history of the historical timeline... or some examples
... or representations of change over time
Design of digital timelines falling to literary scholars
- 2001 - Beth Nowviskie and Johanna Drucker - Temporal Modelling Project
- More recently - Christoph Meister's team in Hamburg
Historians tracking change in social-spatial analyses over time - Stanford
but a line, right?
The timeline as a way to order discrete events and historical epochs - even more basic, not output of quantitative analyses
- Time as measurable unit
- an historical 'cartography'?
http://bost.ocks.org/mike/nations/
http://timeglider.com
https://itunes.apple.com/app/timeline-maker/id527025710?mt=8
http://www.technotarek.com/timeliner/timeliner.html
http://nikolaydyankovdesign.com/?portfolio=timelinexml
http://www.melonhtml5.com/demo/timeline/
http://tympanus.net/Tutorials/LateralOnScrollSliding/
http://timeline.verite.co/
https://drive.google.com/previewtemplate?id=0AppSVxABhnltdEhzQjQ4MlpOaldjTmZLclQxQWFTOUE&mode=public
"De facto standard"(??) - SIMILE (MIT)
Adaptations - Timemap, Zotero, many others...
Computation and Time
how does the computer handle time?
`eventid` int(11) NOT NULL AUTO_INCREMENT,
`eventtitle` varchar(90) NOT NULL,
`eventdescription` text NOT NULL,
`madeby` varchar(45) NOT NULL,
`modified` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
`eventstartcal` varchar(45) NOT NULL DEFAULT 'gregorian',
`eventstartjulian` varchar(45) NOT NULL,
`eventstart` varchar(45) NOT NULL,
`eventstartamb` tinyint(4) NOT NULL DEFAULT '0',
`eventendcal` varchar(45) NOT NULL DEFAULT 'gregorian',
`eventendjulian` varchar(45) NOT NULL,
`eventend` varchar(45) NOT NULL,
`eventendamb` tinyint(4) NOT NULL DEFAULT '0',
`published` tinyint(4) NOT NULL DEFAULT '0',
`madeon` datetime NOT NULL,
`timelineid` int(11) NOT NULL,
PRIMARY KEY (`eventid`),
Geo-Locating Calendars in Europe 1582-1923
- 2299160: Italy, Poland-Lithuania, Portugal, Spain & Empires
- 2299226: France & Empire, Lorraine
- 2299526: Catholic Germany & Tyrol
- 2299596: Carinthia & Styria
- 2299603: Brabant, Flanders, Hennegan & some south. prov.
- 2299619: Bohemia, Moravia, Lusatia
- 2299624: Catholic Switzerland
- 2299625: Silesia
- 2301003: Hungary
- 2302153: Transylvania
- 2309344: Prussia
- 2342031: Protestant Germany, Denmark & Norway
- 2342164: Gelderland
- 2342317: Utrecht & Overijssel
- 2342348: Friesland, Groningen & Prot. Switzerland
- 2361221: Britain & Empire
- 2361389: Sweden
- 2420967: Bulgaria
- 2421638: Russia
- 2422062: Romania
- 2423479: Greece
https://github.com/jiahuang/d3-timeline
The Timeline Assignment
The Timeline Assignment - History 214, Fall 2013
So What?
Cyber-infrastructure
- php & jQuery frontend
- mysql backend
- TimelineJS
... visual similarities obscure methodological and intellectual problem - simplistic handling of dates and data?
- are timelines only for undergraduate 'projects'?
focus not on visualization but chronometry, networked approach to historical events & data, and emphasis on historical interpretation and its negotiation would look like?
- How can we handle multiple calendars? inaccuracies?
- input? storage? output?
- how do we make historical dates computational?
or ... with more intellectual reflection:
- how do we use historical research to illustrate the limitations of current computation 'solutions'? and use computation to interrogate historical methods?
- 5 classes of group discussion prefaced with lectures on names, actors, dates, places, historical significance
- groups of 5-6 given 'chunk' of time
- by add/drop: 1 unique event, with title, 2 sentences of description, rough start / stop dates
- by end of term: 500 word event description with tags, people, places, and 'things' - ie evidence
- 500 word reflection on historical significance and perception of event over course of term
crowdsource a timeline in a large introductory history survey
- to build the course 'narrative' and chronology
- student engagement and investment
- practical application of historical methodologies
- break apart preconceptions about the 'historians' craft'
- instructive way to handle 'significance' - compare their events with mine and historians' in lectures
- teach historical dating
The Problems
The Status Quo
The Problems
Solution?
items: [
{
"start" : "1449",
"end" : "1494-01-11",
"point" : {
"lat" : 46.7717,
"lon" : 14.2536
},
"title" : "Domenico Ghirlandaio",
"options" : {
"infoHtml": "<div class='custominfostyle'><b>Domenico Ghirlandaio</b> was a visual artist of some sort.</div>"
}
},
{
"start" : "1370",
"end" : "1451-04-22",
"point" : {
"lat" : 52.1928,
"lon" : 0.5166
},
"title" : "John Lydgate",
"options" : {
"infoHtml": "<div class='custominfostyle'><b>Domenico Ghirlandaio</b> was a visual artist of some sort.</div>",
"theme": "green"
}
The Unix Timestamp or Epoch
Jan 1, 1970 00:00:00 UTC
is an integer -> 00000000
Date Object / Type -> has to be valid
yyyy-mm-dd hh:mm:ss
in php, mysql, javascript, java, python...
Date Objects / Types critical to ...
- SIMILE
- Zotero
- Omeka (Neatline)
Example - Julian to Gregorian
Thursday Oct 4 1582 is followed by Friday Oct 15 1582 in ROME only
Elsewhere - Friday Oct 15 1582...
Javascript's weekday handling...
Oct 4 1582 is Monday
Oct 15 1582 is Friday
Ignores calendar change - before 1582 is still 'Gregorian'
- Cross-Calendrical manipulation
- Javascript uses 4 Oct 1582 switch
- MySQL Date Type is agnostic, but other DBs date type starts at 1752
- Is the Date Object / Type "Western"??
- Fast, built in processing / handling
- 'make sense' to modern users
- exactitude
32bit limitation timestamp
December 13 1901
until
January 19, 2038 03:14:07 GMT
... it will 'run out'
- Integer+decimal for subdivisions
- Midnight is .5 - the day starts at noon
- Used by Astronomers
- Julian Day - from 4713 B.C.
- Consistent through date changes
- Geolocated?
- Which Calendar? - Gregorian? Not necessarily for Date Object, but for Timestamp? Transformable, but based on Gregorian
- Dates as ranges? IE 'Fuzzy' dating?
- Starts & Ends are precise because of ISO 8601 requirements
- Php Calendar / PEAR extension / has JS version
- based on Walker's work at Fourmilab in Switzerland
- JD_TO_GREGORIAN();
- GREGORIAN_TO_JD();
- hebrew_to_jd();
- jd_to_french_revolutionary();
- Javascript library also does Mayan, Persian, Islamic, Bahá'í and ISO
- parse front end (visible - qualitative) from back end (computational - quantitative) data
- Store ranges
- Integer
- Front end is qualified with Calendar
- Back end stores integer, calendar, and user input
https://github.com/zotero/zotero/blob/111733217762f4328166c3f1fbcd67521e561e69/chrome/content/zotero/xpcom/date.js
http://www.dayoftheweek.org/?m=October&d=4&y=1582&go=Go
Implementation
Further
Implementation
Output
- Geolocation?
- More calendars?
- Fuzzy Date visualization & handling
- Julian Days and GIS - start/end?
- Hours & parts of the day
Transform how dates are stored & prepared for visualization in TimelineJS
Data input
- Date parts
- Declaration of Ambiguity
- Calendar
Logic
- Transform Date part into Julian Day
- either day or range
- Store JulianDate alongside Calendar, String, Ambiguity
Output
- Calendar as variable
- Generate appropriate requirements for data
- TimelineJS - JSON with date as parsable string, transformed into JS date object
last thoughts...
but wait... more so what?
If 'events' are networks of association, atomized overtime...
- Change in conception of historical 'data'?
- move from quantification to assertions as data
- different formats for dissemination?
- XML, JSON, RDF?
- Provenance, assertions of factual evidence & conflict
- different forms of representation & visualization over time
ALL depend on chronometry and accurate interrogation of what it is historians mean by time, and how it can integrate with computation
- Constructing viable, rigorous timelines becomes an exercise not only in how the historical can fit into the computational, but how computation can return historians (and scholars!) to the first principles of their intellectual inquiries.
- If distant reading has offered new ways of reading to textual scholars - what is the equivalent change in techne for historians?
- What kinds of fundamental problems exist that actively prevent the adoption of digital tools by particular disciplines? Can reorganization of how time is documented, stored, and presented ease historians into adopting the digital just as more nuanced textual-analysis is opening the doors for literary scholars?
use of the digital to interrogate fundamental principles behind historical method as inputting data exposes historical hermeneusis and the role of choice
- What is in a name?
- How do historians actually use dates?
- Where does an event 'take place'?
- What things are associated with an 'event'?
- Do historians implicitly think of events as networks of social interaction? IF SO... how do we think about 'data'?
The digital, then, becomes a penetrating pedagogical tool for teaching what it is historians ACTUALLY do, and the fluid nature of historical interpretation and 'fact'.