Old Bones Daily – HeritageJam 2017 Entry

Update: We won!

I’m pleased to take part in the 2017 HeritageJam; Kate and I present Old Bones Daily:

  • Visit online at http://shawngraham.github.io/hj2017
  • Make your browser full-screen for best effect
  • Fully responsive so can be read equally well on mobile
  • Reload the page for the latest headlines and stories and photos


The paradata for the project is printed as the fifth column on the newspaper’s front page.

This ‘newspaper’ that you are looking at pays hommage to that older newspaper culture of reprinting, while at the same time commenting, on modern ‘news media’ by procedurally generating texts from the ‘bones’ of generative grammar. Each time this page is reloaded, the news is generated anew from a Tracery grammar. This grammar is derived from the study of 19th century newspapers in Western Quebec (The Equity) and northern New York State. It selects passages from these papers where the word ‘bone’ is present or implied, and recombines them in sometimes surprising or revealing ways. There are stories of injury, and columns with helpful advice. Sometimes a humorous anecdote is recounted; sometimes popular accounts of the latest academic research.

And sometimes, out and out fraud.

Some of the passages are presented verbatim, using the language and reflecting the mores of the age (with no generative grammar intervention) thus demonstrating another perspective on ‘bones’ and whose are accorded human dignity. The passages were collected in the first place by ingesting OCR’d papers into AntConc, and generating a concordance and keywords-in-context file.

Tracery was designed and built by Kate Compton @galaxykate. This newspaper layout was designed and shared by user silkine on codepen.io. Images are drawn from the British Library’s Flickr stream, where they have been tagged with the word ‘bone’ – thus, another algorithmic expression of the bones underlying the web.

Source Files

Please see the source repository at http://github.com/shawngraham/hj2017

To replicate this newspaper for your own amusement, consult the file, newsgrammar.js and insert new values in the keys. To alter the layout and placement of these elements on the newspaper, create new var and associated div in the js\app.js file. Place the div in the appropriate location in the main index.html file. Extra css or html for a particular chunk of text should be wrapped inside the values in the newsgrammar.js file. For a tutorial on how Tracery functions, see Shawn Graham’s tutorial at The Programming Historian. Tracery can power webpages, games, and twitterbots. What would be the effect of ‘Old Bones Daily’ if it were translated into the new news medium of Twitter?

Sources for Newspaper articles:

The Shawville Equity (consult this digital finding aid project by Carleton undergraduate student Jeff Blackadar)

Syracuse NY Daily Journal via ‘Old Fulton NY Post Cards’ collection of digitized newspapers at http://www.fultonhistory.com/


The original CSS for the newspaper layout is MIT Licensed by user Silkine on codepen.io

The Tracery generative grammar is released by Kate Compton under Apache License Version 2.0, January 2004

Images obtained via the British Library’s Flickr stream are all public domain works

We assert that our use of the original source newspapers is fair use

We release the code in the source repository into the wild, such parts of it that are uniquely ours, under CC BY.