<?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en">
 <head>
  <title>Blog-o!</title>
  <link rel="stylesheet" href="/static/font/font.css" type="text/css" media="screen" />
  <link rel="stylesheet" href="/static/blog.css" type="text/css"
    media="screen and (min-device-width: 481px)" />
  <link rel="stylesheet" href="/static/iTouch.css" type="text/css"
    media="only screen and (max-device-width: 480px)" />
  <link rel="alternate" type="application/atom+xml" title="Atom"
    href="http://weblog.latte.ca/index.xml" />
  <link rel="stylesheet" href="/static/pygments.css" type="text/css" />
  <link rel="apple-touch-icon" href="/images/iPhoneMug.png"/>
  <meta name="viewport" content="initial-scale=1.0" />
 </head>
 <body>
  <div class="title">
   <span class="title">Blog-o!</span><br />
   <span class="description">Notes from latte.ca<br /><a href="http://weblog.latte.ca/blake">blake</a> :: <a href="http://weblog.latte.ca/blake/tech">tech</a> :: <a href="http://weblog.latte.ca/blake/tech/drproject">drproject</a> :: codeSprint.txt</span>
  </div>
  <div class="content">
<div class="blosxomFirstDayDiv">
<div class="blosxomDate">Sun, 06 Jan 2008</div>
<div class="story">
<div class="xfolkentry">
<div class="storyTitle"><a class="taggedlink" name="codeSprint" href="http://weblog.latte.ca/blake/tech/drproject/codeSprint.html"><b>Sprinting on DrProject.</b></a>
<div class="storyCategory">[/]</div></div>
<div class="storyBody"><p>On Friday and Saturday afternoon this week, I took some time out of my
day to go down to the University of Toronto and participate in the <a
href="https://www.drproject.org/">DrProject</a> <a
href="https://www.drproject.org/DrProject/mail/5059" >Code Sprint</a>.  It
was a lot of fun, and I managed to fix a couple of bugs, and get a better
understanding of one of <a
href="https://www.drproject.org/DrProject/browser/trunk/drproject?file=wiki"
>the hairier parts</a> of DrProject.  At least I hope it’s one of the
hairier parts of DrProject, since if the whole codebase is as ugly as the
wiki parts, we’re in some serious trouble.  To be fair, it’s a
not-entirely-deterministic parser for a not-entirely-deterministic
language, so when something goes wrong, it’s kind of, uh, tricky to figure
out what’s just happened.  For example, after parsing a link surrounded in
square brackets, the following character seems to be <a
href="https://www.drproject.org/DrProject/ticket/1075" >treated as
text</a>.  Why?  Who knows.  As someone new to the wiki parser, I’ld love
to have the code be simpler to understand, but I’m starting to suspect that
the complexity is inherent in what it’s trying to do.</p>

<p>The two bugfixes/feature additions I did, although they seem sort of unrelated, both work
together to let people create a bibliography/set of footnotes to pages,
which is something <a href="http://pyre.third-bit.com/blog/">Greg</a> said
that he’s been wanting for a while, so that was kind of cool.  It’s nice to
be able to go somewhere, be surrounded by smart people, and concentrate on
making something better without interruptions.</p>

<p>Speaking of the bugfixes, they were:
  <ul>
    <li><a href="https://www.drproject.org/DrProject/ticket/870" >adding
support for dl/dt/dd</a> in the wiki syntax, which turned out to be
surprisingly hard, since it seemed to be the first bit of syntax that
wanted to either return more than one tag or insert a tag into the
already-generated stream, so I had to figure out which option to go with,
and how to get it working, and</li>
    <li>coming up with and implementing a wiki syntax for <a
href="https://www.drproject.org/DrProject/ticket/1038"
>creating and referring to anchors</a> in a page, which I think I did a
pretty decent job on.  The syntax uses [wiki:#foo] as an anchor, and
[wiki:MyPage#foo] as a link to that anchor</li>
  </ul>
</p>
</div>
<div class="storyFoot">[Posted at 21:14 by <span class="vcard"><a class="url fn" href="http://bwinton.latte.ca/">Blake Winton</a></span>] <a href="http://weblog.latte.ca/blake/tech/drproject/codeSprint.html">link and comments</a> (0 comments) </div>
</div>
</div>
    <div class="blosxomComments">
<div class="blosxomCommentForm">
  <p><b></b></p>
  <form method="post" action="http://weblog.latte.ca/blake/tech/drproject/codeSprint" name="comments_form">
  <p>
  <input type="hidden" name="secretToken" value="pleaseDontSpam"/>
  <input name="parent" type="hidden" value="blake/tech/drproject/codeSprint"/>
  <input name="title" type="hidden" value="blake/tech/drproject/codeSprint"/>
  Name:<br/>
  <input maxlength="50" name="author" size="50" type="text" value=""/><br/>
  <br/>
  E-mail:<br/>
  <input maxlength="75" name="email" size="50" type="text" value=""/><br/>
  <br/>
  URL:<br/>

  <input maxlength="100" name="url" size="50" type="text" value=""/><br/>
  <br/>
  Comment:<br/>
  <textarea cols="50" name="body" rows="12"></textarea><br/>
  <br/>
  Note: Comments on entries older than one month won’t be accepted due to spam
  controls.  Please <a href="mailto:bwinton@latte.ca">email me</a> if you have
  something you’ld like posted.<br/>
  <input name="Submit" type="submit" value="Submit"/>
  <input name="preview" type="submit" value="Preview"/>
  </p>
  </form>
  </div>

</div>
</div>
  </div>
  <div class="footer">
   <div class="footBox">
    <div class="footTitle">Categories:</div><br />
    <a href="http://weblog.latte.ca/">/</a> (641)<br /><a href="http://weblog.latte.ca/amy">amy/</a> (337)<br />&#160;&#160;<a href="http://weblog.latte.ca/amy/books">books/</a> (83)<br />&#160;&#160;&#160;&#160;<a href="http://weblog.latte.ca/amy/books/_2005">_2005/</a> (31)<br />&#160;&#160;&#160;&#160;<a href="http://weblog.latte.ca/amy/books/_2006">_2006/</a> (13)<br />&#160;&#160;&#160;&#160;<a href="http://weblog.latte.ca/amy/books/_2007">_2007/</a> (6)<br />&#160;&#160;&#160;&#160;<a href="http://weblog.latte.ca/amy/books/_2008">_2008/</a> (6)<br />&#160;&#160;&#160;&#160;<a href="http://weblog.latte.ca/amy/books/_2009">_2009/</a> (23)<br />&#160;&#160;&#160;&#160;&#160;&#160;<a href="http://weblog.latte.ca/amy/books/_2009/covers">covers/</a><br />&#160;&#160;&#160;&#160;<a href="http://weblog.latte.ca/amy/books/_2010">_2010/</a> (3)<br />&#160;&#160;&#160;&#160;<a href="http://weblog.latte.ca/amy/books/children">children/</a> (1)<br />&#160;&#160;<a href="http://weblog.latte.ca/amy/career">career/</a> (4)<br />&#160;&#160;<a href="http://weblog.latte.ca/amy/cordelia">cordelia/</a><br />&#160;&#160;&#160;&#160;<a href="http://weblog.latte.ca/amy/cordelia/conversations">conversations/</a><br />&#160;&#160;<a href="http://weblog.latte.ca/amy/delphine">delphine/</a><br />&#160;&#160;&#160;&#160;<a href="http://weblog.latte.ca/amy/delphine/conversations">conversations/</a><br />&#160;&#160;&#160;&#160;<a href="http://weblog.latte.ca/amy/delphine/pictures">pictures/</a><br />&#160;&#160;&#160;&#160;<a href="http://weblog.latte.ca/amy/delphine/sleeping">sleeping/</a><br />&#160;&#160;&#160;&#160;<a href="http://weblog.latte.ca/amy/delphine/writes">writes/</a><br />&#160;&#160;&#160;&#160;&#160;&#160;<a href="http://weblog.latte.ca/amy/delphine/writes/images">images/</a><br />&#160;&#160;<a href="http://weblog.latte.ca/amy/diversions">diversions/</a> (36)<br />&#160;&#160;<a href="http://weblog.latte.ca/amy/everythingelse">everythingelse/</a> (96)<br />&#160;&#160;<a href="http://weblog.latte.ca/amy/food">food/</a> (10)<br />&#160;&#160;<a href="http://weblog.latte.ca/amy/girls">girls/</a> (22)<br />&#160;&#160;&#160;&#160;<a href="http://weblog.latte.ca/amy/girls/positiveParenting">positiveParenting/</a> (3)<br />&#160;&#160;<a href="http://weblog.latte.ca/amy/houseandhome">houseandhome/</a> (38)<br />&#160;&#160;&#160;&#160;<a href="http://weblog.latte.ca/amy/houseandhome/garden">garden/</a> (5)<br />&#160;&#160;&#160;&#160;<a href="http://weblog.latte.ca/amy/houseandhome/reno">reno/</a> (18)<br />&#160;&#160;&#160;&#160;&#160;&#160;<a href="http://weblog.latte.ca/amy/houseandhome/reno/deck">deck/</a> (12)<br />&#160;&#160;<a href="http://weblog.latte.ca/amy/letters">letters/</a> (4)<br />&#160;&#160;<a href="http://weblog.latte.ca/amy/news">news/</a> (6)<br />&#160;&#160;<a href="http://weblog.latte.ca/amy/running">running/</a> (16)<br />&#160;&#160;<a href="http://weblog.latte.ca/amy/stuff">stuff/</a> (3)<br />&#160;&#160;<a href="http://weblog.latte.ca/amy/unsolicited advice">unsolicited advice/</a> (10)<br />&#160;&#160;&#160;&#160;<a href="http://weblog.latte.ca/amy/unsolicited advice/food">food/</a> (2)<br />&#160;&#160;<a href="http://weblog.latte.ca/amy/whingeing">whingeing/</a> (5)<br />&#160;&#160;<a href="http://weblog.latte.ca/amy/writing">writing/</a> (2)<br /><a href="http://weblog.latte.ca/blake">blake/</a> (147)<br />&#160;&#160;<a href="http://weblog.latte.ca/blake/camera">camera/</a> (2)<br />&#160;&#160;<a href="http://weblog.latte.ca/blake/employment">employment/</a> (9)<br />&#160;&#160;&#160;&#160;<a href="http://weblog.latte.ca/blake/employment/mozilla">mozilla/</a> (1)<br />&#160;&#160;&#160;&#160;&#160;&#160;<a href="http://weblog.latte.ca/blake/employment/mozilla/thunderbird">thunderbird/</a><br />&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;<a href="http://weblog.latte.ca/blake/employment/mozilla/thunderbird/ucosp">ucosp/</a><br />&#160;&#160;<a href="http://weblog.latte.ca/blake/family">family/</a> (8)<br />&#160;&#160;<a href="http://weblog.latte.ca/blake/random">random/</a> (51)<br />&#160;&#160;&#160;&#160;<a href="http://weblog.latte.ca/blake/random/biking">biking/</a> (29)<br />&#160;&#160;&#160;&#160;<a href="http://weblog.latte.ca/blake/random/bread">bread/</a> (1)<br />&#160;&#160;<a href="http://weblog.latte.ca/blake/reviews">reviews/</a> (3)<br />&#160;&#160;<a href="http://weblog.latte.ca/blake/tech">tech/</a> (74)<br />&#160;&#160;&#160;&#160;<a href="http://weblog.latte.ca/blake/tech/basie">basie/</a> (2)<br />&#160;&#160;&#160;&#160;<a href="http://weblog.latte.ca/blake/tech/bzr">bzr/</a> (3)<br />&#160;&#160;&#160;&#160;<a href="http://weblog.latte.ca/blake/tech/drproject">drproject/</a> (2)<br />&#160;&#160;&#160;&#160;<a href="http://weblog.latte.ca/blake/tech/iTouch">iTouch/</a> (9)<br />&#160;&#160;&#160;&#160;<a href="http://weblog.latte.ca/blake/tech/mac">mac/</a> (3)<br />&#160;&#160;&#160;&#160;<a href="http://weblog.latte.ca/blake/tech/opengl">opengl/</a> (1)<br />&#160;&#160;&#160;&#160;<a href="http://weblog.latte.ca/blake/tech/pEdit">pEdit/</a> (1)<br />&#160;&#160;&#160;&#160;<a href="http://weblog.latte.ca/blake/tech/progect">progect/</a> (1)<br />&#160;&#160;&#160;&#160;<a href="http://weblog.latte.ca/blake/tech/python">python/</a> (2)<br />&#160;&#160;&#160;&#160;<a href="http://weblog.latte.ca/blake/tech/scheme">scheme/</a> (3)<br />&#160;&#160;&#160;&#160;<a href="http://weblog.latte.ca/blake/tech/thunderbird">thunderbird/</a> (14)<br />&#160;&#160;&#160;&#160;&#160;&#160;<a href="http://weblog.latte.ca/blake/tech/thunderbird/ucosp">ucosp/</a> (1)<br />&#160;&#160;&#160;&#160;<a href="http://weblog.latte.ca/blake/tech/weblog">weblog/</a> (7)<br /><a href="http://weblog.latte.ca/callOuts">callOuts/</a> (3)<br /><a href="http://weblog.latte.ca/charity">charity/</a> (2)<br /><a href="http://weblog.latte.ca/cordelia">cordelia/</a> (52)<br />&#160;&#160;<a href="http://weblog.latte.ca/cordelia/conversations">conversations/</a> (2)<br /><a href="http://weblog.latte.ca/delphine">delphine/</a> (94)<br />&#160;&#160;<a href="http://weblog.latte.ca/delphine/conversations">conversations/</a> (26)<br />&#160;&#160;<a href="http://weblog.latte.ca/delphine/pictures">pictures/</a> (8)<br />&#160;&#160;<a href="http://weblog.latte.ca/delphine/sleeping">sleeping/</a> (1)<br />&#160;&#160;<a href="http://weblog.latte.ca/delphine/writes">writes/</a> (2)<br />&#160;&#160;&#160;&#160;<a href="http://weblog.latte.ca/delphine/writes/images">images/</a><br /><a href="http://weblog.latte.ca/images">images/</a><br /><a href="http://weblog.latte.ca/template">template/</a><br /><a href="http://weblog.latte.ca/woody">woody/</a> (3)<br /><a href="http://weblog.latte.ca/yearInReview">yearInReview/</a>
   </div>
   <div class="footBox">
    <div class="footTitle">Links:</div><br />
     Local<br/>
     <ul class="sidebar">
      <li><a href="http://weblog.latte.ca/2004/01/15#about">About Blog-o!</a></li>
      <li><a href="http://arbrown.latte.ca/">Amy’s home page</a></li>
      <li><a href="http://bwinton.latte.ca/">Blake’s home page</a></li>
      <li><a href="http://delphine.latte.ca/">Delphine’s home page</a></li>
      <li><a href="http://baby.latte.ca/">Cordelia’s home page</a></li>
      <li><a href="http://arbrown.latte.ca/me.html">About Amy</a></li>
      <li><a href="http://arbrown.latte.ca/reading.html">Amy’s Book Log</a></li>
     </ul>
     Amy’s Journals<br/>
     <ul class="sidebar">
      <li><a href="http://www.tantastik.org/">Tan</a></li>
      <li><a href="http://www.darn-tootin.com/">Rob</a></li>
      <li><a href="http://www.whatsthefuss.com/">Fussy</a></li>
      <li><a href="http://www.eileene.net/">Iko</a></li>
      <li><a href="http://www.xeney.com/">Beth</a></li>
      <li><a href="http://mayaroo.diary-x.com/">mayaroo</a></li>
      <li><a href="http://fluff328.diaryland.com/">Ellie</a></li>
      <li><a href="http://www.analecta.net/">Stacey</a></li>
      <li><a href="http://www.hashai.com/">Anna Beth</a></li>
      <li><a href="http://leontinemay.blogspot.com/">Leontine</a></li>
      <li><a href="http://littleowl.com/thursday/">Other Beth</a></li>
      <li><a href="http://www.aproposofnothing.net/apropos/">Sasha</a></li>
     </ul>
     Amy’s Fun<br/>
     <ul class="sidebar">
      <li><a href="http://movie-reviews.colossus.net/movies.html">James
          Berardinelli's New Movie Reviews page</a></li>
      <li><a href="http://www.theusuals.net">The Usual Suspects</a></li>
     </ul>
    <a href="http://twitter.com/amyrhoda">amyrhoda's Twitter</a> (caching for another 0:20:41)<br />
<ul class="sidebar">
<li><a href="http://twitter.com/CopperLeafSt/status/19960174668">@CopperLeafSt</a> Yes, I do, perversely enough. Thanks!</li>
<li>Feel I did absolutely nothing of use today. Reading Twitter is not helping. Why must you all be so achieve-y?</li>
<li><a href="http://twitter.com/Shmuel510/status/19953219652">@Shmuel510</a> we're dans la maison, I hope the smoking man's in this one. (I know all the words because I'm Canadian. I have to.)</li>
<li><a href="http://twitter.com/hyfen/status/19846785663">@hyfen</a> I think cigarettes might be more fun.</li>
<li>Raccoons have established a latrine in the corner of my deck. #fuckingnature</li>
<li>The girl who cut my hair today is very excited to go to the Justin Bieber concert for her 19th birthday. #ifeelreallyreallyoooold</li>
<li>Just devoured a book in one gulp: Camp Nurse by Tilda somebody. Love me some nitty gritty medical stories.</li>
<li><a href="http://twitter.com/gvwilson/status/19770769991">@gvwilson</a> Cool pictures! I like the first one best. But don't read the comments. (How many times do I have to relearn that?!)</li>
<li><a href="http://twitter.com/caffekat/status/19758571267">@caffekat</a> I hope they all fall in love with it and start a bidding war!</li>
<li><a href="http://twitter.com/311Toronto/status/19748652893">@311Toronto</a> Fabulous! I will take someone small to test it out tomorrow. Thank you so much, you guys are the best!</li>
</ul>

    <a href="http://del.icio.us/bwinton">bwinton's Del.icio.us</a> (caching for another 0:31:37)<br />
<a href="http://del.icio.us/network?add=bwinton">Add me to your network</a><br/>
<ul class="sidebar">
<li><img src="http://markdownr.com/favicon.ico" height="16" width="16"/><a href="http://markdownr.com/">Markdownr</a><br/>Yeah, I should figure out how to do something like this for my blog posts.</li>
<li><img src="https://wiki.mozilla.org/favicon.ico" height="16" width="16"/><a href="https://wiki.mozilla.org/Raindrop/Install">Raindrop/Install - MozillaWiki</a><br/>It's like all the cool stuff I've worked with, all mashed together.</li>
<li><img src="http://www.adamatomic.com/favicon.ico" height="16" width="16"/><a href="http://www.adamatomic.com/canabalt/">Canabalt Widescreen!</a><br/></li>
<li><img src="http://www.canabalt.com/favicon.ico" height="16" width="16"/><a href="http://www.canabalt.com/">Canabalt!</a><br/></li>
<li><img src="http://arrenbrecht.ch/favicon.ico" height="16" width="16"/><a href="http://arrenbrecht.ch/mercurial/pbranch/index.htm">Patch Branches for Mercurial (pbranch)</a><br/>pbranch is the new mq!</li>
</ul>

    <a href="http://twitter.com/bwinton">bwinton's Twitter</a> (caching for another 0:20:41)<br />
<ul class="sidebar">
<li><a href="http://twitter.com/EccentricFlower/status/19928923709">@EccentricFlower</a> I've just queued the new entry up in a Firefox tab.  If you continue to reload, eventually I'll have commented…</li>
<li><a href="http://twitter.com/alanQuatermain/status/19921488518">@alanQuatermain</a> Wow, which one?  I wonder if they have any left?</li>
<li><a href="http://twitter.com/alanQuatermain/status/19921123548">@alanQuatermain</a> That's not what the reports I've heard were.  All the Rogers stores seemed to be sold out before they even opened.</li>
<li><a href="http://twitter.com/hyfen/status/19919568572">@hyfen</a> I didn't think Sherbourne was that bad for potholes or drivers, as an alternate route…</li>
<li>Finally got to bike down the Jarvis bike lanes this morning.  They were quite nice, and I saw more pedestrians than usual, too.</li>
<li><a href="http://twitter.com/KuraFire/status/19917167409">@KuraFire</a> Yeah!  And the keys to move to the unread channels, and the little window at the bottom showing me other channels…  It's all good!</li>
<li><a href="http://twitter.com/KuraFire/status/19908975717">@KuraFire</a> Thanks for the recommendation!  I just switched from Colloquy, and I'm liking LimeChat much more so far.</li>
<li><a href="http://twitter.com/Jayran/status/19869630992">@Jayran</a> I dunno, who's Selena?</li>
<li><a href="http://twitter.com/lmorchard/status/19867874508">@lmorchard</a> You're joining the Order of the Red Panda, right?  (I'm waiting until September, personally, cause I'm lazy like that.)</li>
<li>For @amyrhoda: RT @Shmuel510: Ramona and Beezus (2010): 5 stars out of 5. Worthy of the source material. No higher praise is possible.</li>
</ul>

   </div>

   <div class="footBox">
    <div class="footTitle">Archives:</div>
    <!-- div style="text-align:center">
     <table class="blosxomCalendar">
<tr>
<td align="left"><a href="http://weblog.latte.ca/2007/Dec">&lt;</a></td>
<td colspan="5" align="center" class="blosxomCalendarHead">January 2008</td>
<td align="right"><a href="http://weblog.latte.ca/2008/Feb">&gt;</a></td>
</tr>
<tr><td class="blosxomCalendarWeekHeader">Su</td><td class="blosxomCalendarWeekHeader">Mo</td><td class="blosxomCalendarWeekHeader">Tu</td><td class="blosxomCalendarWeekHeader">We</td><td class="blosxomCalendarWeekHeader">Th</td><td class="blosxomCalendarWeekHeader">Fr</td><td class="blosxomCalendarWeekHeader">Sa</td></tr>
<tr><td class="blosxomCalendarEmpty">&#160;</td><td class="blosxomCalendarEmpty">&#160;</td><td class="blosxomCalendarCell"> 1</td><td class="blosxomCalendarCell"> 2</td><td class="blosxomCalendarCell"> 3</td><td class="blosxomCalendarCell"> 4</td><td class="blosxomCalendarCell"> 5</td></tr>
<tr><td class="blosxomCalendarBlogged"><a href="http://weblog.latte.ca/2008/Jan/06"> 6</a></td><td class="blosxomCalendarBlogged"><a href="http://weblog.latte.ca/2008/Jan/07"> 7</a></td><td class="blosxomCalendarCell"> 8</td><td class="blosxomCalendarCell"> 9</td><td class="blosxomCalendarCell">10</td><td class="blosxomCalendarCell">11</td><td class="blosxomCalendarCell">12</td></tr>
<tr><td class="blosxomCalendarBlogged"><a href="http://weblog.latte.ca/2008/Jan/13">13</a></td><td class="blosxomCalendarBlogged"><a href="http://weblog.latte.ca/2008/Jan/14">14</a></td><td class="blosxomCalendarCell">15</td><td class="blosxomCalendarBlogged"><a href="http://weblog.latte.ca/2008/Jan/16">16</a></td><td class="blosxomCalendarCell">17</td><td class="blosxomCalendarBlogged"><a href="http://weblog.latte.ca/2008/Jan/18">18</a></td><td class="blosxomCalendarBlogged"><a href="http://weblog.latte.ca/2008/Jan/19">19</a></td></tr>
<tr><td class="blosxomCalendarCell">20</td><td class="blosxomCalendarCell">21</td><td class="blosxomCalendarCell">22</td><td class="blosxomCalendarCell">23</td><td class="blosxomCalendarBlogged"><a href="http://weblog.latte.ca/2008/Jan/24">24</a></td><td class="blosxomCalendarBlogged"><a href="http://weblog.latte.ca/2008/Jan/25">25</a></td><td class="blosxomCalendarBlogged"><a href="http://weblog.latte.ca/2008/Jan/26">26</a></td></tr>
<tr><td class="blosxomCalendarCell">27</td><td class="blosxomCalendarCell">28</td><td class="blosxomCalendarBlogged"><a href="http://weblog.latte.ca/2008/Jan/29">29</a></td><td class="blosxomCalendarCell">30</td><td class="blosxomCalendarBlogged"><a href="http://weblog.latte.ca/2008/Jan/31">31</a></td><td class="blosxomCalendarEmpty">&#160;</td><td class="blosxomCalendarEmpty">&#160;</td></tr>
</table>
    </div -->
    <div><a href="http://weblog.latte.ca/2010/Jul">2010-Jul</a><br />
<a href="http://weblog.latte.ca/2010/Jun">2010-Jun</a><br />
<a href="http://weblog.latte.ca/2010/Apr">2010-Apr</a><br />
<a href="http://weblog.latte.ca/2010/Mar">2010-Mar</a><br />
<a href="http://weblog.latte.ca/2010/Feb">2010-Feb</a><br />
<a href="http://weblog.latte.ca/2010/Jan">2010-Jan</a><br />
<a href="http://weblog.latte.ca/2009/Dec">2009-Dec</a><br />
<a href="http://weblog.latte.ca/2009/Nov">2009-Nov</a><br />
<a href="http://weblog.latte.ca/2009/Oct">2009-Oct</a><br />
<a href="http://weblog.latte.ca/2009/Sep">2009-Sep</a><br />
<a href="http://weblog.latte.ca/2009/Aug">2009-Aug</a><br />
<a href="http://weblog.latte.ca/2009/Jul">2009-Jul</a><br />
<a href="http://weblog.latte.ca/2009/Jun">2009-Jun</a><br />
<a href="http://weblog.latte.ca/2009/May">2009-May</a><br />
<a href="http://weblog.latte.ca/2009/Apr">2009-Apr</a><br />
<a href="http://weblog.latte.ca/2009/Mar">2009-Mar</a><br />
<a href="http://weblog.latte.ca/2009/Feb">2009-Feb</a><br />
<a href="http://weblog.latte.ca/2009/Jan">2009-Jan</a><br />
<a href="http://weblog.latte.ca/2008/Dec">2008-Dec</a><br />
<a href="http://weblog.latte.ca/2008/Nov">2008-Nov</a><br />
<a href="http://weblog.latte.ca/2008/Oct">2008-Oct</a><br />
<a href="http://weblog.latte.ca/2008/Sep">2008-Sep</a><br />
<a href="http://weblog.latte.ca/2008/Aug">2008-Aug</a><br />
<a href="http://weblog.latte.ca/2008/Jul">2008-Jul</a><br />
<a href="http://weblog.latte.ca/2008/Jun">2008-Jun</a><br />
<a href="http://weblog.latte.ca/2008/May">2008-May</a><br />
<a href="http://weblog.latte.ca/2008/Apr">2008-Apr</a><br />
<a href="http://weblog.latte.ca/2008/Mar">2008-Mar</a><br />
<a href="http://weblog.latte.ca/2008/Feb">2008-Feb</a><br />
<a href="http://weblog.latte.ca/2008/Jan">2008-Jan</a><br />
<a href="http://weblog.latte.ca/2007/Dec">2007-Dec</a><br />
<a href="http://weblog.latte.ca/2007/Nov">2007-Nov</a><br />
<a href="http://weblog.latte.ca/2007/Oct">2007-Oct</a><br />
<a href="http://weblog.latte.ca/2007/Sep">2007-Sep</a><br />
<a href="http://weblog.latte.ca/2007/Aug">2007-Aug</a><br />
<a href="http://weblog.latte.ca/2007/Jul">2007-Jul</a><br />
<a href="http://weblog.latte.ca/2007/Jun">2007-Jun</a><br />
<a href="http://weblog.latte.ca/2007/May">2007-May</a><br />
<a href="http://weblog.latte.ca/2007/Apr">2007-Apr</a><br />
<a href="http://weblog.latte.ca/2007/Mar">2007-Mar</a><br />
<a href="http://weblog.latte.ca/2007/Feb">2007-Feb</a><br />
<a href="http://weblog.latte.ca/2007/Jan">2007-Jan</a><br />
<a href="http://weblog.latte.ca/2006/Dec">2006-Dec</a><br />
<a href="http://weblog.latte.ca/2006/Nov">2006-Nov</a><br />
<a href="http://weblog.latte.ca/2006/Oct">2006-Oct</a><br />
<a href="http://weblog.latte.ca/2006/Sep">2006-Sep</a><br />
<a href="http://weblog.latte.ca/2006/Aug">2006-Aug</a><br />
<a href="http://weblog.latte.ca/2006/Jul">2006-Jul</a><br />
<a href="http://weblog.latte.ca/2006/Jun">2006-Jun</a><br />
<a href="http://weblog.latte.ca/2006/May">2006-May</a><br />
<a href="http://weblog.latte.ca/2006/Apr">2006-Apr</a><br />
<a href="http://weblog.latte.ca/2006/Mar">2006-Mar</a><br />
<a href="http://weblog.latte.ca/2006/Feb">2006-Feb</a><br />
<a href="http://weblog.latte.ca/2006/Jan">2006-Jan</a><br />
<a href="http://weblog.latte.ca/2005/Dec">2005-Dec</a><br />
<a href="http://weblog.latte.ca/2005/Nov">2005-Nov</a><br />
<a href="http://weblog.latte.ca/2005/Oct">2005-Oct</a><br />
<a href="http://weblog.latte.ca/2005/Sep">2005-Sep</a><br />
<a href="http://weblog.latte.ca/2005/Aug">2005-Aug</a><br />
<a href="http://weblog.latte.ca/2005/Jul">2005-Jul</a><br />
<a href="http://weblog.latte.ca/2005/Jun">2005-Jun</a><br />
<a href="http://weblog.latte.ca/2005/May">2005-May</a><br />
<a href="http://weblog.latte.ca/2005/Apr">2005-Apr</a><br />
<a href="http://weblog.latte.ca/2005/Mar">2005-Mar</a><br />
<a href="http://weblog.latte.ca/2005/Jan">2005-Jan</a><br />
<a href="http://weblog.latte.ca/2004/Dec">2004-Dec</a><br />
<a href="http://weblog.latte.ca/2004/Nov">2004-Nov</a><br />
<a href="http://weblog.latte.ca/2004/Oct">2004-Oct</a><br />
<a href="http://weblog.latte.ca/2004/Sep">2004-Sep</a><br />
<a href="http://weblog.latte.ca/2004/Aug">2004-Aug</a><br />
<a href="http://weblog.latte.ca/2004/Jul">2004-Jul</a><br />
<a href="http://weblog.latte.ca/2004/May">2004-May</a><br />
<a href="http://weblog.latte.ca/2004/Apr">2004-Apr</a><br />
<a href="http://weblog.latte.ca/2004/Mar">2004-Mar</a><br />
<a href="http://weblog.latte.ca/2004/Feb">2004-Feb</a><br />
<a href="http://weblog.latte.ca/2004/Jan">2004-Jan</a><br />
<a href="http://weblog.latte.ca/2003/Nov">2003-Nov</a><br />
<a href="http://weblog.latte.ca/2003/Oct">2003-Oct</a><br />
<a href="http://weblog.latte.ca/2003/Sep">2003-Sep</a><br />
<a href="http://weblog.latte.ca/2003/Jul">2003-Jul</a><br />
<a href="http://weblog.latte.ca/2003/Mar">2003-Mar</a><br />
<a href="http://weblog.latte.ca/2003/Feb">2003-Feb</a><br />
<a href="http://weblog.latte.ca/2003/Jan">2003-Jan</a><br /></div>
   </div>
   <div class="footBox">
    <div class="footTitle">Blake's Wishlist:</div><br />
    <ul class="sidebar">
      <li><a
        href="http://www.amazon.ca/exec/obidos/ASIN/1430219483/adamgoucher-20/"
        >Coders at Work</a></li>
      <li><a
        href="http://www.amazon.ca/exec/obidos/ASIN/B000098XJQ/adamgoucher-20/"
        >Diablo II: Lord of Destruction expansion pack (for Mac)</a></li>
    </ul>
   </div>
   <div class="footBox">
    <div class="footTitle">Blake's Current Tunes:</div><br />
    <a href="http://www.last.fm/user/bwinton/">bwinton's current tunes (caching for another 0:31:37)</a><br />
<a href="http://www.last.fm/music/CBC+Radio+3/_/Doug+Paisley+-+Broken+In+Two">CBC Radio 3 - Doug Paisley - Broken In Two</a><br />
<a href="http://www.last.fm/music/CBC+Radio+3/_/Bedouin+Soundclash+-+Stand+Alone">CBC Radio 3 - Bedouin Soundclash - Stand Alone</a><br />
<a href="http://www.last.fm/music/CBC+Radio+3/_/K%27naan+World+Cup+Trophy+Tour+LIVE">CBC Radio 3 - K'naan World Cup Trophy Tour LIVE</a><br />
<a href="http://www.last.fm/music/commandN/_/commandN+216%3A+A+billionaire+and+his+social+media%2C+snoop+on+me%2C+and+Jeff+with+a+tricked+out+iTunes.">commandN - commandN 216: A billionaire and his social media, snoop on me, and Jeff with a tricked out iTunes.</a><br />
<a href="http://www.last.fm/music/Dinosaur+Train/_/Valley%2Bof%2Bthe%2BStygimolochs%2B%252F%2BTiny%2BLoves%2BFish">Dinosaur Train - Valley of the Stygimolochs / Tiny Loves Fish</a><br />
<a href="http://www.last.fm/music/CBC+Radio+3/_/R3-30%3A+Chart+199">CBC Radio 3 - R3-30: Chart 199</a><br />
<a href="http://www.last.fm/music/CBC+Radio+3/_/Dinosaur+Bones+-+Royalty">CBC Radio 3 - Dinosaur Bones - Royalty</a><br />
<a href="http://www.last.fm/music/CBC+Radio+3/_/Luke+Doucet+-+Broken+One">CBC Radio 3 - Luke Doucet - Broken One</a><br />
<a href="http://www.last.fm/music/CBC+Radio+3/_/Dan+Mangan+-+Tina%27s+Glorious+Comeback">CBC Radio 3 - Dan Mangan - Tina's Glorious Comeback</a><br />
<a href="http://www.last.fm/music/CBC+Radio+3/_/Breakfast%2BClub%2B%252325%2B-%2BD-Sisive">CBC Radio 3 - Breakfast Club #25 - D-Sisive</a><br />

   </div>
   <div class="footBox">
    <div class="footTitle">Blake's Last 7 Bike Trips:</div><br />
    <table border="1">
     <tr><td>date</td><td>time</td><td>dist</td><td>ave</td><td>max</td><td>odo</td></tr>
      <tr><td>18/08</td><td>1.11.12</td><td>25.72</td><td>21.6</td><td>55.4</td><td>5036.5<!-- Good to be back on the bike again.--></td></tr><tr><td>19/08</td><td>0.59.27</td><td>22.53</td><td>22.7</td><td>55.7</td><td>5059.0<!-- --></td></tr><tr><td>20/08</td><td>1.01.09</td><td>22.57</td><td>22.1</td><td>54.6</td><td>5081.6<!-- --></td></tr><tr><td>22/08</td><td>1.05.32</td><td>24.97</td><td>22.8</td><td>55.3</td><td>5106.6<!-- --></td></tr><tr><td>25/08</td><td>1.30.39</td><td>27.35</td><td>18.1</td><td>58.0</td><td>5133.9<!-- --></td></tr><tr><td>26/08</td><td>1.06.22</td><td>25.00</td><td>22.6</td><td>55.3</td><td>5158.9<!-- --></td></tr><tr><td>27/08</td><td>0.59.41</td><td>22.94</td><td>23.0</td><td>55.5</td><td>5181.9<!-- Going up Mt. Pleasant is hard and unsatisfying.--></td></tr>
    </table>
    <img src="data:image/png,%89PNG%0D%0A%1A%0A%00%00%00%0DIHDR%00%00%00%D2%00%00%00%16%08%06%00%00%00%B5%E0%C2%E0%00%00%02%C3IDATx%9Cb%FC%CF0%0AF%C1%28%A0%14%00%00%00%00%FF%FFb%1Ah%07%0C%010Z%D6%8C%02%82%00%00%00%00%FF%FF%1A%94%19%89%F1%0C%C3%7F%06%0A%120%E3%19%86%FF0%8C%CD%1CR%C4%19%CF00P%E2%96Q%403%80%1E%27%03%1AG%00%00%00%00%FF%FF%82%A7%1C%12%F0%7FR%D51%9Ca%F8%0F%C3%84%F4C%D5%20%9BA%AC%7D%D8%F4cu%0B%B1%E2%B8%D4%0Er%3CT%DCI%B6%3F%90%E2%05%3D%FE%F0%C6%3D%B1%E1%83n%166%B3%D1%D24%03%00%00%00%FF%FF%C2j0.Ga%F3%00%21%C7%E0J%D8%D82%16%0E%B5%28%EA%09eH%7C%19%09%8B%1C%C9%E2%C4%16%08%94%60B%E6%13%19%3F%24%EB%C7%A6%0E%9F%7Fi%15%0E%E8%E9%0CK%DC%E3%8A%27%82nDN%97%B82%08z%7Cc3%1B%3Dm%00%00%00%00%FF%FFb%40W%84%AF%14%26PB%13%93%21pa%5C%19%8E%A0%3E%3C%91%40%13ql%F6%E3Kh%A4%14%008%12%0AF%CDNB%98c%D8O%28%D1%E1p%07Q%E9%04%9F%3F%09%85%03.%7B%89%88%07b%C2%04W%C1H%28%8D%E3%8Bo%149%00%00%00%00%FF%FF%22%AC%00w%C0bs%00%3E%07%D3%02%13%9D%91H%C5%C4%9ACb%C2FVGJ%C1%837aS%E0gR%0B%3F%BC%E9%84%88%F4A%A9%FD%C4%C6%136w%12%2C%1C%88%8C7%ACj%00%00%00%00%FF%FF%A2%24%01bu%00%1D3%11%D5%22%83%DAn%21%C1%1D%14%87%19%85%7E%269%ECH%B4%8F%90%FFh%95f0%CC%25%E4%06b%FD%87K%1E%00%00%00%FF%FF%A2%D8%B1T%8AP%AA%B8c%10d%24%92%DD0%C0n%A6u%E1G%8C%F9%E46%EB%A9%19%AED%87%03.5%00%00%00%00%FF%FF%A2d%F8%9B%11f%F6%28%40%80%FF%26%0C%8C%B4T%3F%DC%00%E3%99%A1%15%06%B8%DC%0A%00%00%00%FF%FF%A2%CA%3C%12%E3%19%86%FFC%290F%01%1C0%D28%EE%08%9AO%2B%BB%E9%9D%1E%01%00%00%00%FF%FF%1A%94%13%B2%24%82%D1%9Aq%14%0C8%00%00%00%00%FF%FF%1A%0E%19i%14P%00h%5Dr%8F%94%96%0A%00%00%00%FF%FF%1A%CDH%A3%60%14P%01%00%00%00%00%FF%FF%1A6%19i%B4%9F6%0A%06%12%00%00%00%00%FF%FF%1A.%19i4%03%8D%02J%00%C5%83.%00%00%00%00%FF%FF%1A.%19i%14%8C%82%01%05%00%00%00%00%FF%FF%A24%23%8D%8E%98%8D%82Q%C0%C0%C0%00%00%00%00%FF%FF%A2%B8F%1A%2C%13j%83%C1%0D%A3%60%E4%02%00%00%00%00%FF%FF%1Am%DA%8D%82Q%C0%40yA%0C%00%00%00%FF%FF%1A%CDH%A3%60%14P%01%00%00%00%00%FF%FF%1A%CDH%A3%60%14P%01%00%00%00%00%FF%FF%03%00%C6%A2%F5%A5%84%D9%CC%F8%00%00%00%00IEND%AEB%60%82"/><br />
    <img src="data:image/png,%89PNG%0D%0A%1A%0A%00%00%00%0DIHDR%00%00%00%D2%00%00%00%16%08%06%00%00%00%B5%E0%C2%E0%00%00%02%2AIDATx%9Cb%FC%CF0%0AF%C1%28%A0%14%00%00%00%00%FF%FFb%1Ah%07%0Cv%C0x%86%E1%3F%E3%19%86%D1%F2f%14%E0%05%00%00%00%00%FF%FFb%19h%07%E0%02%B0%C4%FB%DF%84%81%91%12%FD0%80n%0E.%F3%29%B5w%14%D0%07%A0%C7%D3%40%C7%1B%00%00%00%FF%FF%229%23%11%EB%60%5C%1E%85%01%5C%FA%D1%D5%91%1A%40%84j%0F%5C%F2%C4%EA%1B%EC%19l%A8%B8%93%10%A0%96%3F%C8%CDp%84%F4%A1%A7%17%00%00%00%00%FF%FFb%A1u%C9Ll%C2%25%D6c%E8%80%DE%09%86TwSj%0F%A1%02%87V%F2%E8%EA%60%60%A0jpj7%AFq%F9%0BWAN%08%00%00%00%00%FF%FF%C2V%23%11%EB%60%98%3AF%1C%7CR%01%AD%FB%21%B8%CC%A7%96%BD%B8%FC%8F%CB%7Cb%D5%E1%0Ag%5C%EA%88%15%C7%05H%8D%7FB%E2%84%DCM%AE%BFp%01J%D3%21Y%00%00%00%00%FF%FF%22%A6i7R%3B%DA%D4NP%B8%E4%89%8D%F0%81%2Ah%E8%A5%7F%A8%D9%8B%02%00%00%00%00%FF%FFB%CEH%D4.%99G%01%7D%00%BD%C3%7B%A8%C6/M%DD%0D%00%00%00%FF%FF%1A%B4%A3v%C4%02F%86%FF%906%3A%03%E3%A0%E8%5C%23%B9%87%26%EAG%C1%C0%02X%7C%A17%24%00%00%00%00%FF%FF%1A%F2%19i%14%0Cm%40%AB%82%04W%82%A7%15%00%00%00%00%FF%FF%1A%9D%90%1D%05%A3%80%0A%00%00%00%00%FF%FF%A2%B8F%1A%2CM%13z%97%40%C3%05%D0%3A%FE%06K%FA%20%04%28M%3F%00%00%00%00%FF%FFb%A4%B4%076X%FA%28%83%C5%1D%A3%60h%02J%D3%0F%00%00%00%FF%FF%1Am%DA%8D%82Q%40%05%00%00%00%00%FF%FF%1A%CDH%A3%60%14P%01%00%00%00%00%FF%FF%1A%CDH%A3%60%14P%01%00%00%00%00%FF%FF%1A%CDH%A3%60%14P%01%00%00%00%00%FF%FF%1A%CDH%A3%60%14P%01%00%00%00%00%FF%FF%1A6%13%B2%A3%A3u%A3%60%20%01%00%00%00%FF%FF%1A6%19i%14%8C%02J%00%A5%051%00%00%00%FF%FF%1Am%DA%8D%82Q%40%05%00%00%00%00%FF%FF%1A%CDH%A3%60%14P%01%00%00%00%00%FF%FF%03%007d%B6%E6%B0.%AD%C9%00%00%00%00IEND%AEB%60%82"/>
   </div>
   <div class="footBox">
     <div class="footTitle">Metadata:</div><br />
     <a href="http://roughingit.subtlehints.net/pyblosxom"><img
       src="/images/pb_pyblosxom.png" alt="Get Blosxom!"
       /></a><br />
     <a href="http://creativecommons.org/licenses/by/1.0"><img
       alt="Creative Commons License" border="0"
       src="http://creativecommons.org/images/public/somerights.gif"
       /></a><br />
     This work is licensed under a<br />
     <a href="http://creativecommons.org/licenses/by/1.0">Creative
       Commons License</a>.
     <!--
     <rdf:RDF xmlns="http://web.resource.org/cc/"
       xmlns:dc="http://purl.org/dc/elements/1.1/"
       xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#">
       <Work rdf:about="">
         <license rdf:resource="http://creativecommons.org/licenses/by/1.0" />
       </Work>

       <License rdf:about="http://creativecommons.org/licenses/by/1.0">
         <requires rdf:resource="http://web.resource.org/cc/Attribution" />
         <permits rdf:resource="http://web.resource.org/cc/Reproduction" />
         <permits rdf:resource="http://web.resource.org/cc/Distribution" />
         <permits rdf:resource="http://web.resource.org/cc/DerivativeWorks" />
         <requires rdf:resource="http://web.resource.org/cc/Notice" />
       </License>
     </rdf:RDF>
     -->
   </div>
  </div>
  <div style="clear:both;"> 
  </div> 
  <script type="text/javascript">
    var gaJsHost = (("https:" == document.location.protocol) ? "https://ssl." : "http://www.");
    document.write(unescape("%3Cscript src='" + gaJsHost + "google-analytics.com/ga.js' type='text/javascript'%3E%3C/script%3E"));
  </script>
  <script type="text/javascript">
    try {
      var pageTracker = _gat._getTracker("UA-5805429-2");
      pageTracker._trackPageview();
    } catch(err) {}</script>
 </body>
</html>

