Sorry

This feed does not validate.

In addition, interoperability with the widest range of feed readers could be improved by implementing the following recommendations.

Source: http://davorg.theplanetarium.org/atom.xml

  1. <?xml version="1.0" encoding="UTF-8"?>
  2. <feed xmlns="http://www.w3.org/2005/Atom">
  3.  <title>planet davorg</title>
  4.  <link rel="alternate" href="http://davorg.theplanetarium.org/" type="text/html"/>
  5.  <subtitle>Aggregating Dave's stuff</subtitle>
  6.  <author>
  7.    <name>Dave Cross</name>
  8.    <email>[email protected]</email>
  9.  </author>
  10.  <updated>2017-08-22T22:03:04Z</updated>
  11.  <link rel="self" href="http://davorg.theplanetarium.org/" type="application/atom+xml"/>
  12.  <id>http://davorg.theplanetarium.org/</id>
  13.  <entry>
  14.    
  15.    <summary type="xhtml">
  16.      <div xmlns="http://www.w3.org/1999/xhtml">Minute Mile - The Rifles</div>
  17.    </summary>
  18.    <link rel="alternate" href="https://www.last.fm/music/The+Rifles/_/Minute+Mile" type="text/html"/>
  19.    <updated>2017-08-22T17:14:47Z</updated>
  20.    <author>
  21.      <name>The Rifles</name>
  22.    </author>
  23.    <id>https://musicbrainz.org/recording/9ca97613-a151-4124-9c21-a6f3c6204dee</id>
  24.  <title>last.fm: Minute Mile - The Rifles</title></entry>
  25.  <entry>
  26.    
  27.    <summary type="xhtml">
  28.      <div xmlns="http://www.w3.org/1999/xhtml">The Frog Princess - The Divine Comedy</div>
  29.    </summary>
  30.    <link rel="alternate" href="https://www.last.fm/music/The+Divine+Comedy/_/The+Frog+Princess" type="text/html"/>
  31.    <updated>2017-08-22T17:10:24Z</updated>
  32.    <author>
  33.      <name>The Divine Comedy</name>
  34.    </author>
  35.    <id>https://musicbrainz.org/recording/8665a840-8aac-4dbb-a09f-2594262b40f8</id>
  36.  <title>last.fm: The Frog Princess - The Divine Comedy</title></entry>
  37.  <entry>
  38.    
  39.    <summary type="xhtml">
  40.      <div xmlns="http://www.w3.org/1999/xhtml">Call Mother A Lonely Field - Jackie Leven</div>
  41.    </summary>
  42.    <link rel="alternate" href="https://www.last.fm/music/Jackie+Leven/_/Call+Mother+A+Lonely+Field" type="text/html"/>
  43.    <updated>2017-08-22T17:04:43Z</updated>
  44.    <author>
  45.      <name>Jackie Leven</name>
  46.    </author>
  47.    <id>https://musicbrainz.org/recording/fcda38ed-e804-48af-b632-c223f05f3103</id>
  48.  <title>last.fm: Call Mother A Lonely Field - Jackie Leven</title></entry>
  49.  <entry>
  50.    
  51.    <summary type="xhtml">
  52.      <div xmlns="http://www.w3.org/1999/xhtml">Byker Hill - The Imagined Village</div>
  53.    </summary>
  54.    <link rel="alternate" href="https://www.last.fm/music/The+Imagined+Village/_/Byker+Hill" type="text/html"/>
  55.    <updated>2017-08-22T16:58:45Z</updated>
  56.    <author>
  57.      <name>The Imagined Village</name>
  58.    </author>
  59.    <id>https://musicbrainz.org/recording/67aa50e7-1182-4e94-8dce-c356cd9f2bfa</id>
  60.  <title>last.fm: Byker Hill - The Imagined Village</title></entry>
  61.  <entry>
  62.    
  63.    <summary type="xhtml">
  64.      <div xmlns="http://www.w3.org/1999/xhtml">Awful Sound (Oh Eurydice) - Arcade Fire</div>
  65.    </summary>
  66.    <link rel="alternate" href="https://www.last.fm/music/Arcade+Fire/_/Awful+Sound+(Oh+Eurydice)" type="text/html"/>
  67.    <updated>2017-08-22T16:52:33Z</updated>
  68.    <author>
  69.      <name>Arcade Fire</name>
  70.    </author>
  71.    <id>https://musicbrainz.org/recording/</id>
  72.  <title>last.fm: Awful Sound (Oh Eurydice) - Arcade Fire</title></entry>
  73.  <entry>
  74.    
  75.    <link rel="alternate" href="https://twitter.com/davorg/status/900030949056032768" type="text/html"/>
  76.    <content type="xhtml">
  77.      <div xmlns="http://www.w3.org/1999/xhtml">@kaokun 👍</div>
  78.    </content>
  79.    <updated>2017-08-22T16:24:34Z</updated>
  80.  <title>twitter: @kaokun 👍</title></entry>
  81.  <entry>
  82.    
  83.    <link rel="alternate" href="https://twitter.com/davorg/status/900004902574993408" type="text/html"/>
  84.    <content type="xhtml">
  85.      <div xmlns="http://www.w3.org/1999/xhtml">Someone is wrong on the internet (and I'm pretty sure it's not me) https://t.co/betjFvunoY</div>
  86.    </content>
  87.    <updated>2017-08-22T14:41:04Z</updated>
  88.  <title>twitter: Someone is wrong on the internet (and I'm pretty sure it's not me) https://t.co/betjFvunoY</title></entry>
  89.  <entry>
  90.    
  91.    <link rel="alternate" href="https://twitter.com/davorg/status/899936146129604608" type="text/html"/>
  92.    <content type="xhtml">
  93.      <div xmlns="http://www.w3.org/1999/xhtml">Oh. Well-played @guardian. https://t.co/RMabRD0qH0</div>
  94.    </content>
  95.    <updated>2017-08-22T10:07:51Z</updated>
  96.  <title>twitter: Oh. Well-played @guardian. https://t.co/RMabRD0qH0</title></entry>
  97.  <entry>
  98.    
  99.    <link rel="alternate" href="https://twitter.com/davorg/status/899934860638380033" type="text/html"/>
  100.    <content type="xhtml">
  101.      <div xmlns="http://www.w3.org/1999/xhtml">The clapping and cheering you can hear from South London is us realising we've just finished paying off our mortgage.</div>
  102.    </content>
  103.    <updated>2017-08-22T10:02:45Z</updated>
  104.  <title>twitter: The clapping and cheering you can hear from South London is us realising we've just finished paying off our mortgage.</title></entry>
  105.  <entry>
  106.    
  107.    <link rel="alternate" href="https://twitter.com/davorg/status/899880679328100353" type="text/html"/>
  108.    <content type="xhtml">
  109.      <div xmlns="http://www.w3.org/1999/xhtml">Ooh. Excellent news. @Sunflower_Bean added to the line-up at the Alexandra Palace @wolfalicemusic show in November.</div>
  110.    </content>
  111.    <updated>2017-08-22T06:27:27Z</updated>
  112.  <title>twitter: Ooh. Excellent news. @Sunflower_Bean added to the line-up at the Alexandra Palace @wolfalicemusic show in November.</title></entry>
  113.  <entry xmlns:media="http://search.yahoo.com/mrss/">
  114.    <id>tag:github.com,2008:PushEvent/6489937562</id>
  115.    <published>2017-08-21T04:50:40Z</published>
  116.    <updated>2017-08-21T04:50:40Z</updated>
  117.    <link type="text/html" rel="alternate" href="https://github.com/davorg/svg-timeline-genealogy/compare/3b692993fd...2ee5b87792"/>
  118.    
  119.    <author>
  120.      <name>davorg</name>
  121.      <email>[email protected]</email>
  122.      <uri>https://github.com/davorg</uri>
  123.    </author>
  124.    <media:thumbnail height="30" width="30" url="https://avatars1.githubusercontent.com/u/24642?v=4&amp;s=30"/>
  125.    <content type="html">&lt;!-- push --&gt;
  126. &lt;svg aria-label="Push" class="octicon octicon-git-commit dashboard-event-icon" height="32" role="img" version="1.1" viewBox="0 0 14 16" width="28"&gt;&lt;path fill-rule="evenodd" d="M10.86 7c-.45-1.72-2-3-3.86-3-1.86 0-3.41 1.28-3.86 3H0v2h3.14c.45 1.72 2 3 3.86 3 1.86 0 3.41-1.28 3.86-3H14V7h-3.14zM7 10.2c-1.22 0-2.2-.98-2.2-2.2 0-1.22.98-2.2 2.2-2.2 1.22 0 2.2.98 2.2 2.2 0 1.22-.98 2.2-2.2 2.2z"&gt;&lt;/path&gt;&lt;/svg&gt;
  127.  
  128. &lt;div class="time"&gt;
  129.  &lt;relative-time datetime="2017-08-21T04:50:40Z"&gt;Aug 21, 2017&lt;/relative-time&gt;
  130. &lt;/div&gt;
  131.  
  132. &lt;div class="title"&gt;
  133.  &lt;a href="/davorg" data-ga-click="News feed, event click, Event click type:PushEvent target:actor" rel="noreferrer"&gt;davorg&lt;/a&gt; pushed to &lt;a href="/davorg/svg-timeline-genealogy/tree/master" data-ga-click="News feed, event click, Event click type:PushEvent target:branch" rel="noreferrer"&gt;master&lt;/a&gt; at &lt;a href="/davorg/svg-timeline-genealogy" data-ga-click="News feed, event click, Event click type:PushEvent target:repo" rel="noreferrer"&gt;davorg/svg-timeline-genealogy&lt;/a&gt;
  134. &lt;/div&gt;
  135.  
  136. &lt;div class="details"&gt;
  137.  &lt;a href="/davorg" rel="noreferrer"&gt;&lt;img alt="@davorg" class="gravatar" height="30" src="https://avatars0.githubusercontent.com/u/24642?v=4&amp;amp;s=60" width="30"&gt;&lt;/a&gt;
  138.  
  139.    &lt;div class="commits pusher-is-only-committer"&gt;
  140.      &lt;ul&gt;
  141.        &lt;li&gt;
  142.          &lt;span title="davorg"&gt;
  143.            &lt;img alt="@davorg" height="16" src="https://avatars1.githubusercontent.com/u/24642?v=4&amp;amp;s=32" width="16"&gt;
  144.          &lt;/span&gt;
  145.          &lt;code&gt;&lt;a href="/davorg/svg-timeline-genealogy/commit/2ee5b87792e58a01d33a36ef28e7430e6192c5c0" data-ga-click="News feed, event click, Event click type:PushEvent target:sha" rel="noreferrer"&gt;2ee5b87&lt;/a&gt;&lt;/code&gt;
  146.          &lt;div class="message"&gt;
  147.            &lt;blockquote&gt;
  148.              Added .travis.yml
  149.            &lt;/blockquote&gt;
  150.          &lt;/div&gt;
  151.        &lt;/li&gt;
  152.      &lt;/ul&gt;
  153.    &lt;/div&gt;
  154. &lt;/div&gt;
  155. </content>
  156.  <title>github: davorg pushed to master at davorg/svg-timeline-genealogy</title></entry>
  157.  <entry xmlns:media="http://search.yahoo.com/mrss/">
  158.    <id>tag:github.com,2008:CreateEvent/6489931696</id>
  159.    <published>2017-08-21T04:48:24Z</published>
  160.    <updated>2017-08-21T04:48:24Z</updated>
  161.    <link type="text/html" rel="alternate" href="https://github.com/davorg/svg-timeline-genealogy/tree/RELEASE_0.0.2"/>
  162.    
  163.    <author>
  164.      <name>davorg</name>
  165.      <email>[email protected]</email>
  166.      <uri>https://github.com/davorg</uri>
  167.    </author>
  168.    <media:thumbnail height="30" width="30" url="https://avatars1.githubusercontent.com/u/24642?v=4&amp;s=30"/>
  169.    <content type="html">&lt;!-- create --&gt;
  170. &lt;div class="simple"&gt;
  171.  &lt;svg aria-label="Create" class="octicon octicon-tag dashboard-event-icon" height="16" role="img" version="1.1" viewBox="0 0 14 16" width="14"&gt;&lt;path fill-rule="evenodd" d="M7.73 1.73C7.26 1.26 6.62 1 5.96 1H3.5C2.13 1 1 2.13 1 3.5v2.47c0 .66.27 1.3.73 1.77l6.06 6.06c.39.39 1.02.39 1.41 0l4.59-4.59a.996.996 0 0 0 0-1.41L7.73 1.73zM2.38 7.09c-.31-.3-.47-.7-.47-1.13V3.5c0-.88.72-1.59 1.59-1.59h2.47c.42 0 .83.16 1.13.47l6.14 6.13-4.73 4.73-6.13-6.15zM3.01 3h2v2H3V3h.01z"&gt;&lt;/path&gt;&lt;/svg&gt;
  172.  
  173.  &lt;div class="title"&gt;
  174.    &lt;a href="/davorg" data-ga-click="News feed, event click, Event click type:CreateEvent target:actor" rel="noreferrer"&gt;davorg&lt;/a&gt; created tag &lt;a href="/davorg/svg-timeline-genealogy/tree/RELEASE_0.0.2" data-ga-click="News feed, event click, Event click type:CreateEvent target:tag" title="RELEASE_0.0.2" rel="noreferrer"&gt;RELEASE_0.0.2&lt;/a&gt; at &lt;a href="/davorg/svg-timeline-genealogy" data-ga-click="News feed, event click, Event click type:CreateEvent target:repo" rel="noreferrer"&gt;davorg/svg-timeline-genealogy&lt;/a&gt;
  175.  &lt;/div&gt;
  176.  
  177.  &lt;div class="time"&gt;
  178.    &lt;relative-time datetime="2017-08-21T04:48:24Z"&gt;Aug 21, 2017&lt;/relative-time&gt;
  179.  &lt;/div&gt;
  180. &lt;/div&gt;
  181. </content>
  182.  <title>github: davorg created tag RELEASE_0.0.2 at davorg/svg-timeline-genealogy</title></entry>
  183.  <entry>
  184.    <title>cpan: DAVECROSS has released SVG-Timeline-Genealogy-0.0.2</title>
  185.    <link rel="alternate" href="https://metacpan.org/release/DAVECROSS/SVG-Timeline-Genealogy-0.0.2" type="text/html"/>
  186.    <content type="xhtml">
  187.      <div xmlns="http://www.w3.org/1999/xhtml"> </div>
  188.    </content>
  189.    <summary type="xhtml">
  190.      <div xmlns="http://www.w3.org/1999/xhtml">Create genealogical timelines in SVG</div>
  191.    </summary>
  192.    <author>
  193.      <name>DAVECROSS</name>
  194.    </author>
  195.    <id>https://metacpan.org/release/DAVECROSS/SVG-Timeline-Genealogy-0.0.2</id>
  196.    <published>2017-08-21T04:48:16</published>
  197.    <updated>2017-08-21T04:48:16</updated>
  198.  </entry>
  199.  <entry xmlns:media="http://search.yahoo.com/mrss/">
  200.    <id>tag:github.com,2008:PushEvent/6489929803</id>
  201.    <published>2017-08-21T04:47:41Z</published>
  202.    <updated>2017-08-21T04:47:41Z</updated>
  203.    <link type="text/html" rel="alternate" href="https://github.com/davorg/svg-timeline-genealogy/compare/028575632e...3b692993fd"/>
  204.    
  205.    <author>
  206.      <name>davorg</name>
  207.      <email>[email protected]</email>
  208.      <uri>https://github.com/davorg</uri>
  209.    </author>
  210.    <media:thumbnail height="30" width="30" url="https://avatars1.githubusercontent.com/u/24642?v=4&amp;s=30"/>
  211.    <content type="html">&lt;!-- push --&gt;
  212. &lt;svg aria-label="Push" class="octicon octicon-git-commit dashboard-event-icon" height="32" role="img" version="1.1" viewBox="0 0 14 16" width="28"&gt;&lt;path fill-rule="evenodd" d="M10.86 7c-.45-1.72-2-3-3.86-3-1.86 0-3.41 1.28-3.86 3H0v2h3.14c.45 1.72 2 3 3.86 3 1.86 0 3.41-1.28 3.86-3H14V7h-3.14zM7 10.2c-1.22 0-2.2-.98-2.2-2.2 0-1.22.98-2.2 2.2-2.2 1.22 0 2.2.98 2.2 2.2 0 1.22-.98 2.2-2.2 2.2z"&gt;&lt;/path&gt;&lt;/svg&gt;
  213.  
  214. &lt;div class="time"&gt;
  215.  &lt;relative-time datetime="2017-08-21T04:47:41Z"&gt;Aug 21, 2017&lt;/relative-time&gt;
  216. &lt;/div&gt;
  217.  
  218. &lt;div class="title"&gt;
  219.  &lt;a href="/davorg" data-ga-click="News feed, event click, Event click type:PushEvent target:actor" rel="noreferrer"&gt;davorg&lt;/a&gt; pushed to &lt;a href="/davorg/svg-timeline-genealogy/tree/master" data-ga-click="News feed, event click, Event click type:PushEvent target:branch" rel="noreferrer"&gt;master&lt;/a&gt; at &lt;a href="/davorg/svg-timeline-genealogy" data-ga-click="News feed, event click, Event click type:PushEvent target:repo" rel="noreferrer"&gt;davorg/svg-timeline-genealogy&lt;/a&gt;
  220. &lt;/div&gt;
  221.  
  222. &lt;div class="details"&gt;
  223.  &lt;a href="/davorg" rel="noreferrer"&gt;&lt;img alt="@davorg" class="gravatar" height="30" src="https://avatars0.githubusercontent.com/u/24642?v=4&amp;amp;s=60" width="30"&gt;&lt;/a&gt;
  224.  
  225.    &lt;div class="commits pusher-is-only-committer"&gt;
  226.      &lt;ul&gt;
  227.        &lt;li&gt;
  228.          &lt;span title="davorg"&gt;
  229.            &lt;img alt="@davorg" height="16" src="https://avatars1.githubusercontent.com/u/24642?v=4&amp;amp;s=32" width="16"&gt;
  230.          &lt;/span&gt;
  231.          &lt;code&gt;&lt;a href="/davorg/svg-timeline-genealogy/commit/3b692993fdc08f847e6d929dbe3c3dcb403900d5" data-ga-click="News feed, event click, Event click type:PushEvent target:sha" rel="noreferrer"&gt;3b69299&lt;/a&gt;&lt;/code&gt;
  232.          &lt;div class="message"&gt;
  233.            &lt;blockquote&gt;
  234.              Updated Changes
  235.            &lt;/blockquote&gt;
  236.          &lt;/div&gt;
  237.        &lt;/li&gt;
  238.        &lt;li&gt;
  239.          &lt;span title="davorg"&gt;
  240.            &lt;img alt="@davorg" height="16" src="https://avatars1.githubusercontent.com/u/24642?v=4&amp;amp;s=32" width="16"&gt;
  241.          &lt;/span&gt;
  242.          &lt;code&gt;&lt;a href="/davorg/svg-timeline-genealogy/commit/0356e34e2bdcefb00d77180eab31c62c57b7f820" data-ga-click="News feed, event click, Event click type:PushEvent target:sha" rel="noreferrer"&gt;0356e34&lt;/a&gt;&lt;/code&gt;
  243.          &lt;div class="message"&gt;
  244.            &lt;blockquote&gt;
  245.              Added SVG::Timeline to pre-reqs
  246.            &lt;/blockquote&gt;
  247.          &lt;/div&gt;
  248.        &lt;/li&gt;
  249.        &lt;li class="more"&gt;&lt;a href="/davorg/svg-timeline-genealogy/compare/028575632e...3b692993fd" data-ga-click="News feed, event click, Event click type:PushEvent target:comparison" rel="noreferrer"&gt;View comparison for these 2 commits »&lt;/a&gt;&lt;/li&gt;
  250.      &lt;/ul&gt;
  251.    &lt;/div&gt;
  252. &lt;/div&gt;
  253. </content>
  254.  <title>github: davorg pushed to master at davorg/svg-timeline-genealogy</title></entry>
  255.  <entry xmlns:media="http://search.yahoo.com/mrss/">
  256.    <id>tag:github.com,2008:IssueCommentEvent/6488324167</id>
  257.    <published>2017-08-20T16:04:10Z</published>
  258.    <updated>2017-08-20T16:04:10Z</updated>
  259.    <link type="text/html" rel="alternate" href="https://github.com/jokergoo/Statistics-Multtest/pull/2#issuecomment-323594346"/>
  260.    
  261.    <author>
  262.      <name>davorg</name>
  263.      <email>[email protected]</email>
  264.      <uri>https://github.com/davorg</uri>
  265.    </author>
  266.    <media:thumbnail height="30" width="30" url="https://avatars1.githubusercontent.com/u/24642?v=4&amp;s=30"/>
  267.    <content type="html">&lt;!-- issue_comment --&gt;
  268. &lt;svg aria-label="Issue comment" class="octicon octicon-comment-discussion dashboard-event-icon" height="32" role="img" version="1.1" viewBox="0 0 16 16" width="32"&gt;&lt;path fill-rule="evenodd" d="M15 1H6c-.55 0-1 .45-1 1v2H1c-.55 0-1 .45-1 1v6c0 .55.45 1 1 1h1v3l3-3h4c.55 0 1-.45 1-1V9h1l3 3V9h1c.55 0 1-.45 1-1V2c0-.55-.45-1-1-1zM9 11H4.5L3 12.5V11H1V5h4v3c0 .55.45 1 1 1h3v2zm6-3h-2v1.5L11.5 8H6V2h9v6z"&gt;&lt;/path&gt;&lt;/svg&gt;
  269.  
  270. &lt;div class="time"&gt;
  271.  &lt;relative-time datetime="2017-08-20T16:04:10Z"&gt;Aug 20, 2017&lt;/relative-time&gt;
  272. &lt;/div&gt;
  273.  
  274. &lt;div class="title"&gt;
  275.  &lt;a href="/davorg" data-ga-click="News feed, event click, Event click type:IssueCommentEvent target:actor" rel="noreferrer"&gt;davorg&lt;/a&gt; commented on pull request &lt;a href="/jokergoo/Statistics-Multtest/pull/2#issuecomment-323594346" data-ga-click="News feed, event click, Event click type:IssueCommentEvent target:issue-comment" title="Fixed the MANIFEST" rel="noreferrer"&gt;jokergoo/Statistics-Multtest#2&lt;/a&gt;
  276. &lt;/div&gt;
  277.  
  278. &lt;div class="details"&gt;
  279.  &lt;a href="/davorg" rel="noreferrer"&gt;&lt;img alt="@davorg" class="gravatar" height="30" src="https://avatars0.githubusercontent.com/u/24642?v=4&amp;amp;s=60" width="30"&gt;&lt;/a&gt;
  280.  &lt;div class="message markdown-body"&gt;
  281.    &lt;blockquote&gt;
  282.      &lt;p&gt;Hi, any chance you could push this version to CPAN? Thanks.&lt;/p&gt;
  283.    &lt;/blockquote&gt;
  284.  &lt;/div&gt;
  285. &lt;/div&gt;
  286. </content>
  287.  <title>github: davorg commented on pull request jokergoo/Statistics-Multtest#2</title></entry>
  288.  <entry>
  289.    <title>perl hacks: Genealogical Timelines in Perl and SVG</title>
  290.    <link rel="alternate" href="https://perlhacks.com/2017/08/genealogical-timelines-perl-svg/" type="text/html"/>
  291.    <content type="xhtml">
  292.      <div xmlns="http://www.w3.org/1999/xhtml"><p>If you ever read my (mostly dead) more general blog, you might know that I’m a bit of <a href="https://blog.dave.org.uk/tag/genealogy">an amateur genealogist</a>. I’ve been tracing my family for over twenty-five years and I’ve got some branches of it back to the 1700s (actually, I have one branch back to the late 1600s).</p>
  293. <p>One problem in genealogy is how to present data in a readable and easily-understandable way. Family trees are messy things. Both the roots and the branches can get very tangled. A good way to cut through all of that is to ignore unnecessary branches and just so the ancestors of a given person on the tree.</p>
  294. <p>And that’s what the image at the top of this post shows. In the right-hand side of the image, halfway down, you will see Prince George of Cambridge (ok actually, you’ll see “Princ”, that’s a bug that I need to fix – it works when someone’s lifespan is long enough to fit their name in!) Above and below him (at a quarter and three-quarters of the way down the page) you’ll see his parents. And so on back through time until on the left of the page you’ll see his great, great, grandparents – most of whom were born back in the nineteenth century.</p>
  295. <p>It’s all created with a Perl program, of course. I’ve just uploaded <a href="https://metacpan.org/pod/SVG::Timeline::Genealogical">SVG::Timeline::Genealogical</a> to CPAN (it should be there at some point later today) and that can be used to draw these diagrams.</p>
  296. <p>The module is very similar to <a href="https://metacpan.org/pod/SVG::Timeline">SVG::Timeline</a> which I <a href="https://perlhacks.com/2017/08/timeline-diagrams-perl/">wrote about a couple of weeks ago</a>. And that’s completely unsurprising as it’s a sub-class of that module. Interestingly, early drafts of this module pre-date SVG::Timeline, but I recently realised that it should be a sub-class so I spent yesterday re-implementing it (and making more than a few changes to SVG::Timeline as some idiot had made it hard to sub-class!)</p>
  297. <p>There are two ways to use the module. The hard way involves writing your own code:</p><pre class="crayon-plain-tag">use SVG::Timeline::Genealogy;
  298.  
  299. my $tree = SVG::Timeline::Genealogy-&gt;new;
  300.  
  301. $tree-&gt;add_person({
  302.  ahnen =&gt; 1,
  303.  text =&gt; 'Joe Bloggs',
  304.  start =&gt; 2000,
  305. });
  306.  
  307. $tree-&gt;add_person({
  308.  ahnen =&gt; 2,
  309.  text =&gt; 'Mr Bloggs',
  310.  start =&gt; 1975,
  311.  end =&gt; 2005,
  312. });
  313.  
  314. $tree-&gt;add_person({
  315.  ahnen =&gt; 3,
  316.  text =&gt; 'Joe Bloggs',
  317.  start =&gt; 1975,
  318. });
  319.  
  320. print $tree-&gt;draw;</pre><p>The easy way involves putting the information in a data file and using the <tt>treeline</tt> program that is included in the distribution.</p><pre class="crayon-plain-tag">$ cat bloggs.dat
  321. 1   Joe Bloggs  2000
  322. 2   Mr Bloggs    1975    2005
  323. 3   Mrs Bloggs  1975
  324. $ treeline bloggs.dat &gt; bloggs.svg</pre><p>The fields in the data are separated by tabs.</p>
  325. <p>The important bit to get right is the “ahnen” attribute. “Ahnen” is short for “Ahnentafel Number” and it’s a concept that is common in genealogy. You take a person in your family tree (say you for example) and give that person a number of 1. Your father then has a number of 2 and your mother is 3. Carry on with that scheme through the generations. You paternal grandparents are 4 and 5, your maternal grandparents are 6 and 7… and so on.</p>
  326. <p>These numbers have a couple of interesting properties. Firstly, if a person has an Ahnentafel Number of <tt>$x</tt>, then their parents are <tt>2 * $x</tt> and <tt>2 * $x + 1</tt>. Secondly, with the exception of person 1 (who can obviously be of either sex) all the men have even numbered Ahnentafel Numbers and the women all have odd numbers.</p>
  327. <p>It is therefore these numbers that allow us to convert a flat data file into a tree structure. They tie the records together in the correct order. If you want to know more, I have a module called <a href="https://metacpan.org/pod/Genealogy::Ahnentafel">Genealogy::Ahnentafel</a> which allows you to manipulate these numbers in various ways.</p>
  328. <p>So that’s, <a href="https://metacpan.org/pod/SVG::Timeline::Genealogy">SVG::Timeline::Genealogy</a>. Hope you find it useful. Please share any interesting genealogies that you find.</p>
  329. <p>The post <a rel="nofollow" href="https://perlhacks.com/2017/08/genealogical-timelines-perl-svg/">Genealogical Timelines in Perl and SVG</a> appeared first on <a rel="nofollow" href="https://perlhacks.com">Perl Hacks</a>.</p>
  330. </div>
  331.    </content>
  332.    <summary type="xhtml">
  333.      <div xmlns="http://www.w3.org/1999/xhtml"><p>If you ever read my (mostly dead) more general blog, you might know that I’m a bit of an amateur genealogist. I’ve been tracing my family for over twenty-five years and I’ve got some branches of it back to the 1700s (actually, I have one branch back to the late 1600s). One problem in genealogy … </p>
  334. <p class="link-more"><a href="https://perlhacks.com/2017/08/genealogical-timelines-perl-svg/" class="more-link">Continue reading<span class="screen-reader-text"> "Genealogical Timelines in Perl and SVG"</span></a></p>
  335. <p>The post <a rel="nofollow" href="https://perlhacks.com/2017/08/genealogical-timelines-perl-svg/">Genealogical Timelines in Perl and SVG</a> appeared first on <a rel="nofollow" href="https://perlhacks.com">Perl Hacks</a>.</p>
  336. </div>
  337.    </summary>
  338.    <author>
  339.      <name>Dave Cross</name>
  340.    </author>
  341.    <id>https://perlhacks.com/?p=1698</id>
  342.    <published>2017-08-20T09:58:54Z</published>
  343.    <updated>2017-08-20T09:58:54Z</updated>
  344.    <category term="CPAN"/>
  345.    <category term="cpan"/>
  346.    <category term="genealogy"/>
  347.    <category term="svg"/>
  348.    <category term="svg::timeline::genealogy"/>
  349.  </entry>
  350.  <entry xmlns:media="http://search.yahoo.com/mrss/">
  351.    <id>tag:github.com,2008:PushEvent/6487563328</id>
  352.    <published>2017-08-20T09:02:22Z</published>
  353.    <updated>2017-08-20T09:02:22Z</updated>
  354.    <link type="text/html" rel="alternate" href="https://github.com/davorg/svg-timeline-genealogy/compare/64bd427b24...028575632e"/>
  355.    
  356.    <author>
  357.      <name>davorg</name>
  358.      <email>[email protected]</email>
  359.      <uri>https://github.com/davorg</uri>
  360.    </author>
  361.    <media:thumbnail height="30" width="30" url="https://avatars1.githubusercontent.com/u/24642?v=4&amp;s=30"/>
  362.    <content type="html">&lt;!-- push --&gt;
  363. &lt;svg aria-label="Push" class="octicon octicon-git-commit dashboard-event-icon" height="32" role="img" version="1.1" viewBox="0 0 14 16" width="28"&gt;&lt;path fill-rule="evenodd" d="M10.86 7c-.45-1.72-2-3-3.86-3-1.86 0-3.41 1.28-3.86 3H0v2h3.14c.45 1.72 2 3 3.86 3 1.86 0 3.41-1.28 3.86-3H14V7h-3.14zM7 10.2c-1.22 0-2.2-.98-2.2-2.2 0-1.22.98-2.2 2.2-2.2 1.22 0 2.2.98 2.2 2.2 0 1.22-.98 2.2-2.2 2.2z"&gt;&lt;/path&gt;&lt;/svg&gt;
  364.  
  365. &lt;div class="time"&gt;
  366.  &lt;relative-time datetime="2017-08-20T09:02:22Z"&gt;Aug 20, 2017&lt;/relative-time&gt;
  367. &lt;/div&gt;
  368.  
  369. &lt;div class="title"&gt;
  370.  &lt;a href="/davorg" data-ga-click="News feed, event click, Event click type:PushEvent target:actor" rel="noreferrer"&gt;davorg&lt;/a&gt; pushed to &lt;a href="/davorg/svg-timeline-genealogy/tree/master" data-ga-click="News feed, event click, Event click type:PushEvent target:branch" rel="noreferrer"&gt;master&lt;/a&gt; at &lt;a href="/davorg/svg-timeline-genealogy" data-ga-click="News feed, event click, Event click type:PushEvent target:repo" rel="noreferrer"&gt;davorg/svg-timeline-genealogy&lt;/a&gt;
  371. &lt;/div&gt;
  372.  
  373. &lt;div class="details"&gt;
  374.  &lt;a href="/davorg" rel="noreferrer"&gt;&lt;img alt="@davorg" class="gravatar" height="30" src="https://avatars0.githubusercontent.com/u/24642?v=4&amp;amp;s=60" width="30"&gt;&lt;/a&gt;
  375.  
  376.    &lt;div class="commits pusher-is-only-committer"&gt;
  377.      &lt;ul&gt;
  378.        &lt;li&gt;
  379.          &lt;span title="davorg"&gt;
  380.            &lt;img alt="@davorg" height="16" src="https://avatars1.githubusercontent.com/u/24642?v=4&amp;amp;s=32" width="16"&gt;
  381.          &lt;/span&gt;
  382.          &lt;code&gt;&lt;a href="/davorg/svg-timeline-genealogy/commit/028575632ef1ef295dae27b9b8903fa55591b5f3" data-ga-click="News feed, event click, Event click type:PushEvent target:sha" rel="noreferrer"&gt;0285756&lt;/a&gt;&lt;/code&gt;
  383.          &lt;div class="message"&gt;
  384.            &lt;blockquote&gt;
  385.              Added Changes and README.
  386.            &lt;/blockquote&gt;
  387.          &lt;/div&gt;
  388.        &lt;/li&gt;
  389.      &lt;/ul&gt;
  390.    &lt;/div&gt;
  391. &lt;/div&gt;
  392. </content>
  393.  <title>github: davorg pushed to master at davorg/svg-timeline-genealogy</title></entry>
  394.  <entry>
  395.    <title>cpan: DAVECROSS has released SVG-Timeline-0.0.6</title>
  396.    <link rel="alternate" href="https://metacpan.org/release/DAVECROSS/SVG-Timeline-0.0.6" type="text/html"/>
  397.    <content type="xhtml">
  398.      <div xmlns="http://www.w3.org/1999/xhtml"> </div>
  399.    </content>
  400.    <summary type="xhtml">
  401.      <div xmlns="http://www.w3.org/1999/xhtml">Create SVG timeline charts</div>
  402.    </summary>
  403.    <author>
  404.      <name>DAVECROSS</name>
  405.    </author>
  406.    <id>https://metacpan.org/release/DAVECROSS/SVG-Timeline-0.0.6</id>
  407.    <published>2017-08-19T16:16:52</published>
  408.    <updated>2017-08-19T16:16:52</updated>
  409.  </entry>
  410.  <entry xmlns:flickr="urn:flickr:user" xmlns:dc="http://purl.org/dc/elements/1.1/">
  411.    
  412.    <link rel="alternate" type="text/html" href="http://www.flickr.com/photos/davorg/36462886582/"/>
  413.    <id>tag:flickr.com,2005:/photo/36462886582</id>
  414.    <published>2017-08-17T16:26:15Z</published>
  415.    <updated>2017-08-17T16:26:15Z</updated>
  416.    <flickr:date_taken>2017-08-17T17:26:15-08:00</flickr:date_taken>
  417.    <dc:date.Taken>2017-08-17T17:26:15-08:00</dc:date.Taken>
  418.    <content type="html"> &lt;p&gt;&lt;a href="http://www.flickr.com/people/davorg/"&gt;Dave Cross&lt;/a&gt; posted a photo:&lt;/p&gt;
  419. &lt;p&gt;&lt;a href="http://www.flickr.com/photos/davorg/36462886582/" title="These dinosaur (?) footprints have appeared all over Courage Square"&gt;&lt;img src="http://farm5.staticflickr.com/4432/36462886582_79c9a8e5cb_m.jpg" width="240" height="240" alt="These dinosaur (?) footprints have appeared all over Courage Square" /&gt;&lt;/a&gt;&lt;/p&gt;
  420.  
  421. &lt;p&gt;via Instagram &lt;a href="http://ift.tt/2w5G5Ih" rel="nofollow"&gt;ift.tt/2w5G5Ih&lt;/a&gt;&lt;/p&gt;</content>
  422.    <author>
  423.      <name>Dave Cross</name>
  424.      <uri>http://www.flickr.com/people/davorg/</uri>
  425.      <flickr:nsid>[email protected]</flickr:nsid>
  426.      <flickr:buddyicon>http:[email protected][email protected]</flickr:buddyicon>
  427.    </author>
  428.    <link rel="license" type="text/html" href="https://creativecommons.org/licenses/by-nc-sa/2.0/deed.en"/>
  429.    <link rel="enclosure" type="image/jpeg" href="http://farm5.staticflickr.com/4432/36462886582_79c9a8e5cb_b.jpg"/>
  430.    <category term="ifttt" scheme="http://www.flickr.com/photos/tags/"/>
  431.    <category term="instagram" scheme="http://www.flickr.com/photos/tags/"/>
  432.    <displaycategories>
  433.            </displaycategories>
  434.    <title>flickr: These dinosaur (?) footprints have appeared all over Courage Square</title></entry>
  435.  <entry>
  436.    <title>goodreads: Garden Cities of To-morrow</title>
  437.    <link rel="alternate" href="http://www.goodreads.com/review/show/2036819770?utm_medium=api&amp;utm_source=rss" type="text/html"/>
  438.    <content type="xhtml">
  439.      <div xmlns="http://www.w3.org/1999/xhtml">
  440.      
  441.      <a href="http://www.goodreads.com/book/show/19205313-garden-cities-of-to-morrow?utm_medium=api&amp;utm_source=rss"><img alt="Garden Cities of To-morrow" src="http://images.gr-assets.com/books/1386247994s/19205313.jpg"/></a><br/>
  442.                                      author: Ebenezer Howard<br/>
  443.                                      name: David<br/>
  444.                                      average rating: 4.00<br/>
  445.                                      book published: 1898<br/>
  446.                                      rating: 0<br/>
  447.                                      read at: <br/>
  448.                                      date added: 2017/08/17<br/>
  449.                                      shelves: currently-reading<br/>
  450.                                      review: <br/><br/>
  451.                                      
  452.    </div>
  453.    </content>
  454.    <id>http://www.goodreads.com/review/show/2036819770?utm_medium=api&amp;utm_source=rss</id>
  455.    <published>2017-08-17T01:43:01-07:00</published>
  456.    <updated>2017-08-17T01:43:01-07:00</updated>
  457.  </entry>
  458.  <entry xmlns:flickr="urn:flickr:user" xmlns:dc="http://purl.org/dc/elements/1.1/">
  459.    
  460.    <link rel="alternate" type="text/html" href="http://www.flickr.com/photos/davorg/36542999976/"/>
  461.    <id>tag:flickr.com,2005:/photo/36542999976</id>
  462.    <published>2017-08-15T16:03:57Z</published>
  463.    <updated>2017-08-15T16:03:57Z</updated>
  464.    <flickr:date_taken>2017-08-15T17:03:57-08:00</flickr:date_taken>
  465.    <dc:date.Taken>2017-08-15T17:03:57-08:00</dc:date.Taken>
  466.    <content type="html"> &lt;p&gt;&lt;a href="http://www.flickr.com/people/davorg/"&gt;Dave Cross&lt;/a&gt; posted a photo:&lt;/p&gt;
  467. &lt;p&gt;&lt;a href="http://www.flickr.com/photos/davorg/36542999976/" title="Shad Thames Bridges"&gt;&lt;img src="http://farm5.staticflickr.com/4405/36542999976_07dcbd1e0b_m.jpg" width="240" height="240" alt="Shad Thames Bridges" /&gt;&lt;/a&gt;&lt;/p&gt;
  468.  
  469. &lt;p&gt;via Instagram &lt;a href="http://ift.tt/2watOSv" rel="nofollow"&gt;ift.tt/2watOSv&lt;/a&gt;&lt;/p&gt;</content>
  470.    <author>
  471.      <name>Dave Cross</name>
  472.      <uri>http://www.flickr.com/people/davorg/</uri>
  473.      <flickr:nsid>[email protected]</flickr:nsid>
  474.      <flickr:buddyicon>http:[email protected][email protected]</flickr:buddyicon>
  475.    </author>
  476.    <link rel="license" type="text/html" href="https://creativecommons.org/licenses/by-nc-sa/2.0/deed.en"/>
  477.    <link rel="enclosure" type="image/jpeg" href="http://farm5.staticflickr.com/4405/36542999976_07dcbd1e0b_b.jpg"/>
  478.    <category term="ifttt" scheme="http://www.flickr.com/photos/tags/"/>
  479.    <category term="instagram" scheme="http://www.flickr.com/photos/tags/"/>
  480.    <displaycategories>
  481.            </displaycategories>
  482.    <title>flickr: Shad Thames Bridges</title></entry>
  483.  <entry xmlns:flickr="urn:flickr:user" xmlns:dc="http://purl.org/dc/elements/1.1/">
  484.    
  485.    <link rel="alternate" type="text/html" href="http://www.flickr.com/photos/davorg/36189459750/"/>
  486.    <id>tag:flickr.com,2005:/photo/36189459750</id>
  487.    <published>2017-08-15T13:06:09Z</published>
  488.    <updated>2017-08-15T13:06:09Z</updated>
  489.    <flickr:date_taken>2017-08-15T14:06:09-08:00</flickr:date_taken>
  490.    <dc:date.Taken>2017-08-15T14:06:09-08:00</dc:date.Taken>
  491.    <content type="html"> &lt;p&gt;&lt;a href="http://www.flickr.com/people/davorg/"&gt;Dave Cross&lt;/a&gt; posted a photo:&lt;/p&gt;
  492. &lt;p&gt;&lt;a href="http://www.flickr.com/photos/davorg/36189459750/" title="Plastic Whale"&gt;&lt;img src="http://farm5.staticflickr.com/4386/36189459750_f7944fb273_m.jpg" width="240" height="240" alt="Plastic Whale" /&gt;&lt;/a&gt;&lt;/p&gt;
  493.  
  494. &lt;p&gt;via Instagram &lt;a href="http://ift.tt/2wLCkox" rel="nofollow"&gt;ift.tt/2wLCkox&lt;/a&gt;&lt;/p&gt;</content>
  495.    <author>
  496.      <name>Dave Cross</name>
  497.      <uri>http://www.flickr.com/people/davorg/</uri>
  498.      <flickr:nsid>[email protected]</flickr:nsid>
  499.      <flickr:buddyicon>http:[email protected][email protected]</flickr:buddyicon>
  500.    </author>
  501.    <link rel="license" type="text/html" href="https://creativecommons.org/licenses/by-nc-sa/2.0/deed.en"/>
  502.    <link rel="enclosure" type="image/jpeg" href="http://farm5.staticflickr.com/4386/36189459750_f7944fb273_b.jpg"/>
  503.    <category term="ifttt" scheme="http://www.flickr.com/photos/tags/"/>
  504.    <category term="instagram" scheme="http://www.flickr.com/photos/tags/"/>
  505.    <displaycategories>
  506.            </displaycategories>
  507.    <title>flickr: Plastic Whale</title></entry>
  508.  <entry xmlns:flickr="urn:flickr:user" xmlns:dc="http://purl.org/dc/elements/1.1/">
  509.    
  510.    <link rel="alternate" type="text/html" href="http://www.flickr.com/photos/davorg/36423522626/"/>
  511.    <id>tag:flickr.com,2005:/photo/36423522626</id>
  512.    <published>2017-08-09T21:15:07Z</published>
  513.    <updated>2017-08-09T21:15:07Z</updated>
  514.    <flickr:date_taken>2017-08-09T22:15:07-08:00</flickr:date_taken>
  515.    <dc:date.Taken>2017-08-09T22:15:07-08:00</dc:date.Taken>
  516.    <content type="html"> &lt;p&gt;&lt;a href="http://www.flickr.com/people/davorg/"&gt;Dave Cross&lt;/a&gt; posted a photo:&lt;/p&gt;
  517. &lt;p&gt;&lt;a href="http://www.flickr.com/photos/davorg/36423522626/" title="Kate Nash - Fingertips"&gt;&lt;img src="http://farm5.staticflickr.com/4388/36423522626_0ec42b1135_m.jpg" width="240" height="240" alt="Kate Nash - Fingertips" /&gt;&lt;/a&gt;&lt;/p&gt;
  518.  
  519. &lt;p&gt;via Instagram &lt;a href="http://ift.tt/2uqCY9y" rel="nofollow"&gt;ift.tt/2uqCY9y&lt;/a&gt;&lt;/p&gt;</content>
  520.    <author>
  521.      <name>Dave Cross</name>
  522.      <uri>http://www.flickr.com/people/davorg/</uri>
  523.      <flickr:nsid>[email protected]</flickr:nsid>
  524.      <flickr:buddyicon>http:[email protected][email protected]</flickr:buddyicon>
  525.    </author>
  526.    <link rel="license" type="text/html" href="https://creativecommons.org/licenses/by-nc-sa/2.0/deed.en"/>
  527.    <link rel="enclosure" type="image/jpeg" href="http://farm5.staticflickr.com/4388/36423522626_0ec42b1135_b.jpg"/>
  528.    <category term="ifttt" scheme="http://www.flickr.com/photos/tags/"/>
  529.    <category term="instagram" scheme="http://www.flickr.com/photos/tags/"/>
  530.    <displaycategories>
  531.            </displaycategories>
  532.    <title>flickr: Kate Nash - Fingertips</title></entry>
  533.  <entry xmlns:flickr="urn:flickr:user" xmlns:dc="http://purl.org/dc/elements/1.1/">
  534.    
  535.    <link rel="alternate" type="text/html" href="http://www.flickr.com/photos/davorg/36072118660/"/>
  536.    <id>tag:flickr.com,2005:/photo/36072118660</id>
  537.    <published>2017-08-09T21:01:44Z</published>
  538.    <updated>2017-08-09T21:01:44Z</updated>
  539.    <flickr:date_taken>2017-08-09T22:01:44-08:00</flickr:date_taken>
  540.    <dc:date.Taken>2017-08-09T22:01:44-08:00</dc:date.Taken>
  541.    <content type="html"> &lt;p&gt;&lt;a href="http://www.flickr.com/people/davorg/"&gt;Dave Cross&lt;/a&gt; posted a photo:&lt;/p&gt;
  542. &lt;p&gt;&lt;a href="http://www.flickr.com/photos/davorg/36072118660/" title="Kate Nash -Nicest Thing"&gt;&lt;img src="http://farm5.staticflickr.com/4430/36072118660_2d2d56b0ef_m.jpg" width="240" height="240" alt="Kate Nash -Nicest Thing" /&gt;&lt;/a&gt;&lt;/p&gt;
  543.  
  544. &lt;p&gt;via Instagram &lt;a href="http://ift.tt/2hKDEES" rel="nofollow"&gt;ift.tt/2hKDEES&lt;/a&gt;&lt;/p&gt;</content>
  545.    <author>
  546.      <name>Dave Cross</name>
  547.      <uri>http://www.flickr.com/people/davorg/</uri>
  548.      <flickr:nsid>[email protected]</flickr:nsid>
  549.      <flickr:buddyicon>http:[email protected][email protected]</flickr:buddyicon>
  550.    </author>
  551.    <link rel="license" type="text/html" href="https://creativecommons.org/licenses/by-nc-sa/2.0/deed.en"/>
  552.    <link rel="enclosure" type="image/jpeg" href="http://farm5.staticflickr.com/4430/36072118660_2d2d56b0ef_b.jpg"/>
  553.    <category term="ifttt" scheme="http://www.flickr.com/photos/tags/"/>
  554.    <category term="instagram" scheme="http://www.flickr.com/photos/tags/"/>
  555.    <displaycategories>
  556.            </displaycategories>
  557.    <title>flickr: Kate Nash -Nicest Thing</title></entry>
  558.  <entry>
  559.    <title>perl hacks: Timeline Diagrams with Perl</title>
  560.    <link rel="alternate" href="https://perlhacks.com/2017/08/timeline-diagrams-perl/" type="text/html"/>
  561.    <content type="html">&lt;p&gt;Two weeks ago, I introduced you to my new module SVG::TrafficLight and hinted that there were more SVG-based modules to follow. Today, I’d like to talk about the next one – SVG::Timeline.&lt;/p&gt;
  562. &lt;p&gt;It all started over a year ago when I was looking through some of the more ridiculous religious questions on Quora when I came across one &lt;a href="https://www.quora.com/Why-isnt-Adam-mentioned-in-the-Bible-later-on"&gt;asking why Adam wasn’t mentioned in the Bible after the first couple of books in Genesis&lt;/a&gt;. As part of &lt;a href="https://www.quora.com/Why-isnt-Adam-mentioned-in-the-Bible-later-on/answer/Dave-Cross"&gt;my answer&lt;/a&gt; I wanted to illustrate just how long a time &lt;a href="https://www.biblegateway.com/passage/?search=genesis+5&amp;version=KJV"&gt;Genesis 5&lt;/a&gt; covers.&lt;/p&gt;
  563. &lt;p&gt;I knew that SVG would be the best approach and it only took half an hour or so to whip up the image you can see in my answer (and there’s a newer version, generated with the current version of the code, at the top of this page). It’s important to note that  I didn’t hand-craft SVG that drew the diagram – I wrote code that generated the diagram from an input file.&lt;/p&gt;
  564. &lt;p&gt;I then realised that this could be a more generally useful tool, so I set about making the code more generic. It languished on &lt;a href="https://github.com/davorg/svg-timeline"&gt;Github&lt;/a&gt; for a year or so before I decided it was useful enough to clean it up and release it to &lt;a href="https://metacpan.org/pod/SVG::Timeline"&gt;CPAN&lt;/a&gt;. Let’s take a quick look at how it works.&lt;/p&gt;
  565. &lt;p&gt;As you can see from the example above, a timeline is made up of a number of events. An event has a start date, an end date and some text. So you can start a timeline diagram with code like this:&lt;/p&gt;&lt;pre class="crayon-plain-tag"&gt;use SVG::Timeline;
  566.  
  567. my $doctors = SVG::Timeline-&amp;gt;new;
  568.  
  569. $doctors-&amp;gt;add_event({
  570.  text  =&amp;gt; 'William Hartnell',
  571.  start =&amp;gt; 1963,
  572.  end   =&amp;gt; 1966,
  573. });
  574.  
  575. $doctors-&amp;gt; add_event({
  576.  text  =&amp;gt; 'Patrick Troughton',
  577.  start =&amp;gt; '1966,
  578.  end   =&amp;gt; '1969,
  579. });
  580.  
  581. ...&lt;/pre&gt;&lt;p&gt;And once you have added all of your events, you can produce the timeline using:&lt;/p&gt;&lt;pre class="crayon-plain-tag"&gt;print $doctors-&amp;gt;draw;&lt;/pre&gt;&lt;p&gt;That code writes the SVG document is written to STDOUT, so you’ll probably want to redirect that to a file.&lt;/p&gt;
  582. &lt;p&gt;That will draw a timeline of your events using all of the default settings (which, in most cases produce a useful diagram). There are plenty of options that you can pass to the object constructor to tweak things. The most useful are probably the aspect ratio (if your diagram is going to be particularly long or thing – the default is 16/9) and the number of years between gridlines in  the output (the default is ten and you might want to change that if your timeline covers a particularly large or small number of years – like the Genesis example above).&lt;/p&gt;
  583. &lt;p&gt;The default behaviour is to colour all of the events the same colour (which can be changed from the default in the constructor for the SVG::Timeline object). But you can also change it for each individual event by adding an optional “colour” parameter to the &lt;tt&gt;add_event()&lt;/tt&gt; call.&lt;/p&gt;
  584. &lt;p&gt;But that’s all a lot of work for the simple case. So the distribution also includes a command line program called &lt;tt&gt;timeline&lt;/tt&gt; which does all of that for you. It reads a datafile and produces a timeline diagram based on  the contents.&lt;/p&gt;
  585. &lt;p&gt;Each record in the input file has three or four fields separated by tabs. The fields are the parameters for the &lt;tt&gt;add_event()&lt;/tt&gt; call in the order: &lt;tt&gt;text&lt;/tt&gt;, &lt;tt&gt;start&lt;/tt&gt;, &lt;tt&gt;end&lt;/tt&gt; and (optionally) &lt;tt&gt;colour&lt;/tt&gt;.&lt;/p&gt;
  586. &lt;p&gt;There are &lt;a href="https://metacpan.org/source/DAVECROSS/SVG-Timeline-0.0.4/examples"&gt;example data files&lt;/a&gt; in the distribution for producing some of the timelines I’ve talked about in this article – along with shell scripts showing how to produce timeline diagrams using the command line program.&lt;/p&gt;
  587. &lt;p&gt;There are a few things I’d like to add. Support for events with unknown dates (perhaps fading the colour towards the unknown end). Diagrams that go vertically instead of horizontally and support for events that begin and end in the same year (currently, they are zero size and just vanish – I discovered that when I added Paul McGann and Christopher Eccleston to the Doctor Who example).&lt;/p&gt;
  588. &lt;p&gt;I find the program… well, if not exactly useful, it’s still fun to play with.&lt;/p&gt;
  589. &lt;p&gt;Please let me know if you produce any interesting timelines with it.&lt;/p&gt;
  590. &lt;p&gt;The post &lt;a rel="nofollow" href="https://perlhacks.com/2017/08/timeline-diagrams-perl/"&gt;Timeline Diagrams with Perl&lt;/a&gt; appeared first on &lt;a rel="nofollow" href="https://perlhacks.com"&gt;Perl Hacks&lt;/a&gt;.&lt;/p&gt;
  591. </content>
  592.    <summary type="xhtml">
  593.      <div xmlns="http://www.w3.org/1999/xhtml"><p>Two weeks ago, I introduced you to my new module SVG::TrafficLight and hinted that there were more SVG-based modules to follow. Today, I’d like to talk about the next one – SVG::Timeline. It all started over a year ago when I was looking through some of the more ridiculous religious questions on Quora when I … </p>
  594. <p class="link-more"><a href="https://perlhacks.com/2017/08/timeline-diagrams-perl/" class="more-link">Continue reading<span class="screen-reader-text"> "Timeline Diagrams with Perl"</span></a></p>
  595. <p>The post <a rel="nofollow" href="https://perlhacks.com/2017/08/timeline-diagrams-perl/">Timeline Diagrams with Perl</a> appeared first on <a rel="nofollow" href="https://perlhacks.com">Perl Hacks</a>.</p>
  596. </div>
  597.    </summary>
  598.    <author>
  599.      <name>Dave Cross</name>
  600.    </author>
  601.    <id>https://perlhacks.com/?p=1694</id>
  602.    <published>2017-08-06T10:17:09Z</published>
  603.    <updated>2017-08-06T10:17:09Z</updated>
  604.    <category term="CPAN"/>
  605.    <category term="cpan"/>
  606.    <category term="programming"/>
  607.    <category term="svg"/>
  608.    <category term="timelines"/>
  609.  </entry>
  610.  <entry>
  611.    <title>cpan: DAVECROSS has released SVG-TrafficLight-0.1.2</title>
  612.    <link rel="alternate" href="https://metacpan.org/release/DAVECROSS/SVG-TrafficLight-0.1.2" type="text/html"/>
  613.    <content type="xhtml">
  614.      <div xmlns="http://www.w3.org/1999/xhtml"> </div>
  615.    </content>
  616.    <summary type="xhtml">
  617.      <div xmlns="http://www.w3.org/1999/xhtml">Perl extension to produce SVG diagrams of traffic lights.</div>
  618.    </summary>
  619.    <author>
  620.      <name>DAVECROSS</name>
  621.    </author>
  622.    <id>https://metacpan.org/release/DAVECROSS/SVG-TrafficLight-0.1.2</id>
  623.    <published>2017-07-24T14:48:43</published>
  624.    <updated>2017-07-24T14:48:43</updated>
  625.  </entry>
  626.  <entry>
  627.    <title>perl hacks: Drawing Traffic Lights With Perl</title>
  628.    <link rel="alternate" href="https://perlhacks.com/2017/07/drawing-traffic-lights-perl/" type="text/html"/>
  629.    <content type="html">&lt;p&gt;For a thing (that you may hear more about at some point in the future) I needed diagrams of traffic lights. But &lt;a href="https://www.google.co.uk/search?q=traffic+lights&amp;tbm=isch"&gt;Google Image Search&lt;/a&gt; didn’t really have what I was looking for. Everything was either too realistic or not CC-licensed so I could use the images how I wanted.&lt;/p&gt;
  630. &lt;p&gt;So I decided to do it myself. But I’m not exactly artistic. I far prefer it when I can get computers to draw images for me. I’ve dabbled with SVG before and it seemed like the perfect tool for the job. And there’s &lt;a href="https://metacpan.org/pod/SVG"&gt;a module from CPAN&lt;/a&gt; that makes it simple to create SVG images from Perl.&lt;/p&gt;
  631. &lt;p&gt;It only took an hour or so before I was drawing images like the one above – which was exactly what I was looking for.&lt;/p&gt;
  632. &lt;p&gt;Initially, I &lt;a href="https://gist.github.com/davorg/b550a07384813ac19217def4d37d1ef3"&gt;shared my code as a Gist&lt;/a&gt;, but since then I’ve extracted the useful bits into a module which I’ve uploaded to CPAN as &lt;a href="https://metacpan.org/pod/SVG::TrafficLight"&gt;SVG::TrafficLight&lt;/a&gt;. I’ve tried to make it as configurable as possible, so you should be able to use it for all your traffic light drawing needs as well.&lt;/p&gt;
  633. &lt;p&gt;Starting to use it is pretty simple.&lt;/p&gt;&lt;pre class="crayon-plain-tag"&gt;use SVG::TrafficLight;
  634.  
  635. my $tl = SVG::TrafficLight-&amp;gt;new; # default image
  636. print $some_file_handle $tl-&amp;gt;xmlify;&lt;/pre&gt;&lt;p&gt;The default sequence of lights shows the UK’s standard traffic light sequence (green,  amber, red, red and amber, green) but it’s simple enough to produce a different sequence (even one that you would never see on the roads).&lt;/p&gt;&lt;pre class="crayon-plain-tag"&gt;my $tl2 = SVG::TrafficLight-&amp;gt;new({
  637.  sequence =&amp;gt; [
  638.    { red =&amp;gt; 1, amber =&amp;gt; 1, green =&amp;gt; 1 }, # all lights on
  639.    { red =&amp;gt; 0, amber =&amp;gt; 0, green =&amp;gt; 0 }, # all lights off
  640.  ],
  641. });&lt;/pre&gt;&lt;p&gt;If you &lt;a href="https://metacpan.org/pod/SVG::TrafficLight"&gt;read the documentation&lt;/a&gt;, you’ll see how you can customise pretty much anything in the diagram – the size of the lights, the padding between them, even the colours used.&lt;/p&gt;
  642. &lt;p&gt;Let me know if you find it all at useful. SVG is fun. I’ll think I’ll investigate it some more.&lt;/p&gt;
  643. &lt;p&gt; &lt;/p&gt;
  644. &lt;p&gt;The post &lt;a rel="nofollow" href="https://perlhacks.com/2017/07/drawing-traffic-lights-perl/"&gt;Drawing Traffic Lights With Perl&lt;/a&gt; appeared first on &lt;a rel="nofollow" href="https://perlhacks.com"&gt;Perl Hacks&lt;/a&gt;.&lt;/p&gt;
  645. </content>
  646.    <summary type="xhtml">
  647.      <div xmlns="http://www.w3.org/1999/xhtml"><p>For a thing (that you may hear more about at some point in the future) I needed diagrams of traffic lights. But Google Image Search didn’t really have what I was looking for. Everything was either too realistic or not CC-licensed so I could use the images how I wanted. So I decided to do … </p>
  648. <p class="link-more"><a href="https://perlhacks.com/2017/07/drawing-traffic-lights-perl/" class="more-link">Continue reading<span class="screen-reader-text"> "Drawing Traffic Lights With Perl"</span></a></p>
  649. <p>The post <a rel="nofollow" href="https://perlhacks.com/2017/07/drawing-traffic-lights-perl/">Drawing Traffic Lights With Perl</a> appeared first on <a rel="nofollow" href="https://perlhacks.com">Perl Hacks</a>.</p>
  650. </div>
  651.    </summary>
  652.    <author>
  653.      <name>Dave Cross</name>
  654.    </author>
  655.    <id>https://perlhacks.com/?p=1689</id>
  656.    <published>2017-07-22T13:59:41Z</published>
  657.    <updated>2017-07-22T13:59:41Z</updated>
  658.    <category term="CPAN"/>
  659.    <category term="cpan"/>
  660.    <category term="module"/>
  661.    <category term="perl"/>
  662.    <category term="programming"/>
  663.    <category term="svg"/>
  664.    <category term="svg::trafficlight"/>
  665.    <category term="traffic lights"/>
  666.  </entry>
  667.  <entry>
  668.    <title>cpan: DAVECROSS has released Perlanet-v1.1.0</title>
  669.    <link rel="alternate" href="https://metacpan.org/release/DAVECROSS/Perlanet-v1.1.0" type="text/html"/>
  670.    <content type="xhtml">
  671.      <div xmlns="http://www.w3.org/1999/xhtml"> </div>
  672.    </content>
  673.    <summary type="xhtml">
  674.      <div xmlns="http://www.w3.org/1999/xhtml">A program for creating programs that aggregate web feeds (both</div>
  675.    </summary>
  676.    <author>
  677.      <name>DAVECROSS</name>
  678.    </author>
  679.    <id>https://metacpan.org/release/DAVECROSS/Perlanet-v1.1.0</id>
  680.    <published>2017-07-02T09:48:26</published>
  681.    <updated>2017-07-02T09:48:26</updated>
  682.  </entry>
  683.  <entry>
  684.    <title>cpan: DAVECROSS has released Template-Provider-Pandoc-0.0.2</title>
  685.    <link rel="alternate" href="https://metacpan.org/release/DAVECROSS/Template-Provider-Pandoc-0.0.2" type="text/html"/>
  686.    <content type="xhtml">
  687.      <div xmlns="http://www.w3.org/1999/xhtml"> </div>
  688.    </content>
  689.    <summary type="xhtml">
  690.      <div xmlns="http://www.w3.org/1999/xhtml">expand Markdown templates to HTML</div>
  691.    </summary>
  692.    <author>
  693.      <name>DAVECROSS</name>
  694.    </author>
  695.    <id>https://metacpan.org/release/DAVECROSS/Template-Provider-Pandoc-0.0.2</id>
  696.    <published>2017-06-28T16:17:46</published>
  697.    <updated>2017-06-28T16:17:46</updated>
  698.  </entry>
  699.  <entry>
  700.    <title>davblog: Previously on Game of Thrones</title>
  701.    <link rel="alternate" href="http://feedproxy.google.com/~r/realdavblog/~3/OAnV-9I6nwQ/previously-game-thrones.html" type="text/html"/>
  702.    <content type="html">&lt;p&gt;In just a few weeks, HBO will start to broadcast the seventh series of &lt;em&gt;Game of Thrones&lt;/em&gt;. The show has a large cast, so I thought it would be useful to take a look at who’s still alive, where they are and what they are doing.&lt;/p&gt;
  703. &lt;p&gt;To start, I’ve looked at all of the forty-two actors who have appeared in the main credits for the show. Twelve of these characters had died before the start of series six, so let’s get started with those.&lt;/p&gt;
  704. &lt;p&gt;(In case it’s not obvious, this article assumes you have seen all six previous series of Game of Thrones – so there will be spoilers for the first six series. I should also point out that I’m only considering the TV show here – I won’t be talking about the books at all.)&lt;/p&gt;
  705. &lt;h2&gt;Viserys Targaryen&lt;/h2&gt;
  706. &lt;p&gt;Viserys has the honour of being the first major character to be killed off in  the show. In episode six of the first series, he was killed by Khal Drogo by having molten gold poured over his head.&lt;/p&gt;
  707. &lt;h2&gt;Robert Baratheon&lt;/h2&gt;
  708. &lt;p&gt;In the very next episode, Robert died after being gored by a boar while on a hunt. It was his death that lead directly to the War of the Five Kings.&lt;/p&gt;
  709. &lt;h2&gt;Eddard Stark&lt;/h2&gt;
  710. &lt;p&gt;Ned Stark was beheaded at the order of King Joffery in the ninth episode of the first series. Things started to go very badly for the Starks from that point.&lt;/p&gt;
  711. &lt;h2&gt;Jeor Mormont&lt;/h2&gt;
  712. &lt;p&gt;The next major character death wasn’t until episode four of the third series. Jeor Mormont got involved in a fight with wildlings at Craster’s Keep and it didn’t end well for him.&lt;/p&gt;
  713. &lt;h2&gt;Robb Stark, Catelyn Stark &amp; Talisa Maegyr&lt;/h2&gt;
  714. &lt;p&gt;The Red Wedding took place in episode nine of series three. The Freys and the Boltons plotted together and killed Robb Stark (along with his mother and his wife). That’s what you get for breaking a promise, I suppose.&lt;/p&gt;
  715. &lt;h2&gt;Joffery Baratheon&lt;/h2&gt;
  716. &lt;p&gt;Of all the major character deaths in the show, this probably got the biggest cheers (certainly in my house). Joffery has poisoned at the feast following his wedding to Margaery Tyrell. This was in series four episode two.&lt;/p&gt;
  717. &lt;h2&gt;Ygritte&lt;/h2&gt;
  718. &lt;p&gt;The wildlings were attacking Castle Black. Jon Snow knew nothing, but Olly took the shot and killed Ygritte in the ninth episode of series four.&lt;/p&gt;
  719. &lt;h2&gt;Shae &amp; Tywin Lannister&lt;/h2&gt;
  720. &lt;p&gt;In the last episode of series four, Tyrion goes on a bit of a killing spree. Having found his lover, Shae, in his father’s bed, he strangles her and then shoots his father with a crossbow.&lt;/p&gt;
  721. &lt;h2&gt;Stannis Baratheon&lt;/h2&gt;
  722. &lt;p&gt;By any reasonable criteria, Stannis was Robert Baratheon’s true heir. But instead of being crowned king, he got involved in a bloody and pointless war and eventually got himself killed by Brienne of Tarth after his army failed to take Winterfell&lt;/p&gt;
  723. &lt;p&gt; &lt;/p&gt;
  724. &lt;p&gt;So that was all the major character deaths up to the end of series five. Series six took it all up a notch.&lt;/p&gt;
  725. &lt;h2&gt;Roose Bolton&lt;/h2&gt;
  726. &lt;p&gt;Roose legitimised his bastard son, Ramsay back in series four. But that did stop Ramsay being very suspicious when his stepmother gave birth to another potential Bolton heir. Ramsay’s solution, in episode two, was to kill his father, his step-mother and his half-brother.&lt;/p&gt;
  727. &lt;h2&gt;Ramsey Bolton&lt;/h2&gt;
  728. &lt;p&gt;But Ramsay didn’t last long as Lord Bolton. When Jon Snow’s army, with help from the Lords of the Vale, took Winterfell in episode nine, Ramsay must have realised that his life expectancy was rather short. But it still rather took him by surprise when his wife, Sansa, fed him to his own hounds in revenge for the way he had treated her.&lt;/p&gt;
  729. &lt;h2&gt;Margaery Tyrell &amp; The High Sparrow&lt;/h2&gt;
  730. &lt;p&gt;The number of casualties from the Red Wedding took some beating, but Cersei Lannister managed it in episode ten when she blew up the Sept of Baelor when it was full of people waiting for her trial. Pretty much anyone who was anyone in King’s Landing was there. And they all died.&lt;/p&gt;
  731. &lt;h2&gt;Tommen Baratheon&lt;/h2&gt;
  732. &lt;p&gt;One of the few named characters in King’s Landing who wasn’t blown up in the Sept of Baelor was King Tommen. But he was watching from his room and when he saw what had happened, he was so appalled that he killed himself by jumping out of the window.&lt;/p&gt;
  733. &lt;h2&gt;Other Series Six Deaths&lt;/h2&gt;
  734. &lt;p&gt;But it wasn’t just major characters who died in series six. Many other characters died too. This is a list of the other named characters who died during the series.&lt;/p&gt;
  735. &lt;p&gt;In episode one we have a clean-up of Dornish characters. Elleria and Tyene Sand kill Doran Martell along with his guard Areo Hotah and Obara and Nymeria Sand kill Doran’s son, Trystane .&lt;/p&gt;
  736. &lt;p&gt;In episode four, the wildling Osha attempts to kill Ramsay Bolton while seducing him. He sees through this and kills her instead.&lt;/p&gt;
  737. &lt;p&gt;In episode five, one of the saddest deaths so far was Hodor’s. He died holding a door so that Bran and Meera could escape. We also saw that the reason he could only say “Hodor” was that while this was going on in the present, Bran was watching him in the past and the shouted instructions to “hold the door” somehow leaked through time and affected his brain.&lt;/p&gt;
  738. &lt;p&gt;In episode eight, Lady the Crane (the actress who Arya has befriended) is killed by the Waif. Arya responds by kill the Waif.&lt;/p&gt;
  739. &lt;p&gt;In episode nine, Rickon Stark is killed by Ramsay Bolton just before the Battle of the Bastards. And the giant, Wun Wun, is killed breaking down the doors to Winterfell.&lt;/p&gt;
  740. &lt;p&gt;In episode ten,  Plenty more people die in the explosion at the Sept of Baelor. These include Mace Tyrell and his son, Loras, and Kevan Lannister with his son, Lancel. Qyburn has Pycelle killed and in the Twins, Arya kills Walder frey.&lt;/p&gt;
  741. &lt;p&gt;So, all in all, that’s quite a clearing of the board. Who’s still around? And what are they doing?&lt;/p&gt;
  742. &lt;h2&gt;Daenerys Targaryen&lt;/h2&gt;
  743. &lt;p&gt;After six series of shilly-shallying around on Essos, Daenerys has finally got a fleet together and is sailing towards Westeros to claim her crown. On the ship with her, we see Tyrion, Missandei and Varys. Theon Greyjoy (with his sister, Yara) are on another ship.&lt;/p&gt;
  744. &lt;h2&gt;Jon Snow&lt;/h2&gt;
  745. &lt;p&gt;Jon had an interesting series six. He came back from the dead, was reunited with his half-sister Sansa (the first time two members of the Stark family have been together since the Red Wedding),  gave up his command of the Night’s Watch and took back Winterfell from the Boltons. The series ends with him in Winterfell, being proclaimed King in the North. The other main characters we see at the proclamation are Sansa Stark, Davos Seaworth, Peter Baelish and Tormund Giantsbane.&lt;/p&gt;
  746. &lt;p&gt;Oh, and we’ve just found out that Jon isn’t Ned Stark’s bastard son at all. He’s the son of Ned’s sister, Lyanna, and Rhaegar Targaryen. He doesn’t know this yet.&lt;/p&gt;
  747. &lt;h2&gt;Cersei Lannister&lt;/h2&gt;
  748. &lt;p&gt;Having destroyed the Sept of Baelor and killed all of her rivals, Cersei has been crowned Queen of the Seven Kingdoms. Her brother Jaime (who returned, with Bronn, from the Siege of Riverrun in time to see the aftermath of the explosion in  the Sept) watches from the side of the room.&lt;/p&gt;
  749. &lt;h2&gt;Samwell Tarly and Gilly&lt;/h2&gt;
  750. &lt;p&gt;Sam and Gilly have arrived at the Citadel where Sam hopes to be trained as a Maester. He has been invited explore the library. Gilly (as a woman) had to wait outside.&lt;/p&gt;
  751. &lt;h2&gt;Bran Stark&lt;/h2&gt;
  752. &lt;p&gt;Bran Stark is just about to go back south through the wall with Meera Reed. He has become the “One-Eyed Raven” and is having lots of visions that explain the back-story of the show.&lt;/p&gt;
  753. &lt;h2&gt;Arya Stark&lt;/h2&gt;
  754. &lt;p&gt;Arya finished her training as a Faceless Man in the House of Black and White, but she turned her back on their mission and took back her identity. It appears she has gone back to working her way through her list as she was last seen killing Walder Frey at the Twins.&lt;/p&gt;
  755. &lt;h2&gt;Others&lt;/h2&gt;
  756. &lt;p&gt;Melisandre was exiled from Winterfell by Jon Snow. She left on a horse, but we don’t know where she is going.&lt;/p&gt;
  757. &lt;p&gt;Brienne of Tarth was last seen escaping from  the Siege of Riverrun on a boat with Podrick Payne.&lt;/p&gt;
  758. &lt;p&gt;Jorah Mormant was sent off by Daenerys to find a cure for his greyscale.&lt;/p&gt;
  759. &lt;p&gt;Elleria Sand was last seen plotting with Olenna Tyrell and Varys and agreeing to support Daenerys’ invasion of Westeros.&lt;/p&gt;
  760. &lt;p&gt;Daario Naharis was left behind in Meereen by Daenerys. He has be told to keep the peace in Slaver’s Bay.&lt;/p&gt;
  761. &lt;p&gt;Sandor Clegane is wandering around the Riverlands with the Brotherhood Without Banners.&lt;/p&gt;
  762. &lt;p&gt;Jaqen H’ghar was last seen in the House of Black and White.&lt;/p&gt;
  763. &lt;p&gt;And then there’s Gendry. Gendry was last seen back in series three when Davos helped him escape from Dragonstone by putting him on a boat to King’s Landing. Who knows if he got there of if we’ll ever see him again.&lt;/p&gt;
  764. &lt;p&gt; &lt;/p&gt;
  765. &lt;p&gt;So that’s where we’ve got to. Now read on…&lt;/p&gt;
  766. &lt;p&gt;The post &lt;a rel="nofollow" href="https://blog.dave.org.uk/2017/06/previously-game-thrones.html"&gt;Previously on Game of Thrones&lt;/a&gt; appeared first on &lt;a rel="nofollow" href="https://blog.dave.org.uk"&gt;Davblog&lt;/a&gt;.&lt;/p&gt;
  767. &lt;img src="http://feeds.feedburner.com/~r/realdavblog/~4/OAnV-9I6nwQ" height="1" width="1" alt=""/&gt;</content>
  768.    <summary type="xhtml">
  769.      <div xmlns="http://www.w3.org/1999/xhtml"><p>In just a few weeks, HBO will start to broadcast the seventh series of Game of Thrones. The show has a large cast, so I thought it would be useful to take a look at who’s still alive, where they are and what they are doing. To start, I’ve looked at all of the forty-two … </p>
  770. <p class="link-more"><a href="https://blog.dave.org.uk/2017/06/previously-game-thrones.html" class="more-link">Continue reading<span class="screen-reader-text"> "Previously on Game of Thrones"</span></a></p>
  771. <p>The post <a rel="nofollow" href="https://blog.dave.org.uk/2017/06/previously-game-thrones.html">Previously on Game of Thrones</a> appeared first on <a rel="nofollow" href="https://blog.dave.org.uk">Davblog</a>.</p>
  772. </div>
  773.    </summary>
  774.    <author>
  775.      <name>Dave Cross</name>
  776.    </author>
  777.    <id>https://blog.dave.org.uk/?p=3609</id>
  778.    <published>2017-06-18T10:25:44Z</published>
  779.    <updated>2017-06-18T10:25:44Z</updated>
  780.    <category term="culture"/>
  781.    <category term="game of thrones"/>
  782.    <category term="got"/>
  783.    <category term="tv"/>
  784.  </entry>
  785. </feed>
  786.  
Copyright © 2002-9 Sam Ruby, Mark Pilgrim, Joseph Walton, and Phil Ringnalda