<?xml version="1.0" encoding="utf-8"?>
<!-- If you are running a bot please visit this policy page outlining rules you must respect. http://www.livejournal.com/bots/ -->
<feed xmlns="http://www.w3.org/2005/Atom" xmlns:lj="http://www.livejournal.com">
  <id>urn:lj:livejournal.com:atom1:maradydd</id>
  <title>Radio Free Meredith</title>
  <subtitle>science keeps me warm at night</subtitle>
  <author>
    <email>clonearmy@gmail.com</email>
    <name>Meredith L. Patterson</name>
  </author>
  <link rel="alternate" type="text/html" href="http://maradydd.livejournal.com/"/>
  <link rel="self" type="text/xml" href="http://maradydd.livejournal.com/data/atom"/>
  <updated>2009-11-29T21:19:17Z</updated>
  <lj:journal userid="17180" username="maradydd" type="personal"/>
  <link rel="service.feed" type="application/x.atom+xml" href="http://maradydd.livejournal.com/data/atom" title="Radio Free Meredith"/>
  <link rel="hub" href="http://pubsubhubbub.appspot.com/"/>
  <entry>
    <id>urn:lj:livejournal.com:atom1:maradydd:489843</id>
    <link rel="alternate" type="text/html" href="http://maradydd.livejournal.com/489843.html"/>
    <link rel="self" type="text/xml" href="http://maradydd.livejournal.com/data/atom/?itemid=489843"/>
    <title>maradydd @ 2009-11-29T22:19:00</title>
    <published>2009-11-29T21:19:17Z</published>
    <updated>2009-11-29T21:19:17Z</updated>
    <category term="stuff i found on the internet"/>
    <category term="wikipedia bingo"/>
    <content type="html">I did not know that there were so many &lt;a href="http://en.wikipedia.org/wiki/Alternative_lyrics_to_Frère_Jacques"&gt;alternative lyrics to Frère Jacques&lt;/a&gt; out there, including ones in many different languages.</content>
  </entry>
  <entry>
    <id>urn:lj:livejournal.com:atom1:maradydd:489507</id>
    <link rel="alternate" type="text/html" href="http://maradydd.livejournal.com/489507.html"/>
    <link rel="self" type="text/xml" href="http://maradydd.livejournal.com/data/atom/?itemid=489507"/>
    <title>added to this week's reading list</title>
    <published>2009-11-22T03:47:36Z</published>
    <updated>2009-11-22T03:47:36Z</updated>
    <category term="money"/>
    <content type="html">Max Weber's &lt;a href="http://xroads.virginia.edu/~HYPER/WEBER/toc.html"&gt;The Protestant Ethic and the Spirit of Capitalism&lt;/a&gt;, recommended by &lt;span class='ljuser  ljuser-name_shabda' lj:user='shabda' style='white-space: nowrap;'&gt;&lt;a href='http://shabda.livejournal.com/profile'&gt;&lt;img src='http://l-stat.livejournal.com/img/userinfo.gif' alt='[info]' width='17' height='17' style='vertical-align: bottom; border: 0; padding-right: 1px;' /&gt;&lt;/a&gt;&lt;a href='http://shabda.livejournal.com/'&gt;&lt;b&gt;shabda&lt;/b&gt;&lt;/a&gt;&lt;/span&gt; and available free on the web from the University of Virginia.&lt;br /&gt;&lt;br /&gt;On that note, what's a good serious economic analysis of post-scarcity systems? This &lt;a href="http://web.archive.org/web/20060512163521/http://www.pa.msu.edu/people/mulhall/mist/PSE-COA.html"&gt;reading list&lt;/a&gt; is rather long, but also dates to 2000, and a lot has happened between then and now. Soddy's &lt;a href="http://en.wikipedia.org/wiki/Wealth,_Virtual_Wealth_and_Debt"&gt;Wealth, Virtual Wealth and Debt&lt;/a&gt; looks like required reading, especially these days, but only has bearing on what I'm looking for. Also, emphasis on serious; goshwow predictions and wouldn't-it-be-neat-if have their place, but Vernor Vinge, Cory Doctorow and Murray Bookchin are all too handwavy.</content>
  </entry>
  <entry>
    <id>urn:lj:livejournal.com:atom1:maradydd:489241</id>
    <link rel="alternate" type="text/html" href="http://maradydd.livejournal.com/489241.html"/>
    <link rel="self" type="text/xml" href="http://maradydd.livejournal.com/data/atom/?itemid=489241"/>
    <title>scenes from my living room</title>
    <published>2009-11-21T17:16:12Z</published>
    <updated>2009-11-21T17:18:47Z</updated>
    <category term="cuteness"/>
    <category term="playlets"/>
    <category term="creatures"/>
    <content type="html">(SCENE: the couch. SASHA, the cat, is asleep across my forearms while I code.)&lt;br /&gt;&lt;br /&gt;(&lt;span class='ljuser  ljuser-name_maradydd' lj:user='maradydd' style='white-space: nowrap;'&gt;&lt;a href='http://maradydd.livejournal.com/profile'&gt;&lt;img src='http://l-stat.livejournal.com/img/userinfo.gif' alt='[info]' width='17' height='17' style='vertical-align: bottom; border: 0; padding-right: 1px;' /&gt;&lt;/a&gt;&lt;a href='http://maradydd.livejournal.com/'&gt;&lt;b&gt;maradydd&lt;/b&gt;&lt;/a&gt;&lt;/span&gt; frees an arm from under the cat and pops open a can of Red Bull.)&lt;br /&gt;RED BULL CAN: *crrrack*&lt;br /&gt;SASHA: Mrap!&lt;br /&gt;(SASHA wakes up and starts nosing at the can, with intent.)&lt;br /&gt;&lt;span class='ljuser  ljuser-name_maradydd' lj:user='maradydd' style='white-space: nowrap;'&gt;&lt;a href='http://maradydd.livejournal.com/profile'&gt;&lt;img src='http://l-stat.livejournal.com/img/userinfo.gif' alt='[info]' width='17' height='17' style='vertical-align: bottom; border: 0; padding-right: 1px;' /&gt;&lt;/a&gt;&lt;a href='http://maradydd.livejournal.com/'&gt;&lt;b&gt;maradydd&lt;/b&gt;&lt;/a&gt;&lt;/span&gt;: Sasha. You're a cat. Cats don't need caffeine.&lt;br /&gt;SASHA, attempting to bite the bottom of the can: Ack mrack.&lt;br /&gt;&lt;span class='ljuser  ljuser-name_maradydd' lj:user='maradydd' style='white-space: nowrap;'&gt;&lt;a href='http://maradydd.livejournal.com/profile'&gt;&lt;img src='http://l-stat.livejournal.com/img/userinfo.gif' alt='[info]' width='17' height='17' style='vertical-align: bottom; border: 0; padding-right: 1px;' /&gt;&lt;/a&gt;&lt;a href='http://maradydd.livejournal.com/'&gt;&lt;b&gt;maradydd&lt;/b&gt;&lt;/a&gt;&lt;/span&gt;: No. You don't get Red Bull because you don't have opposable thumbs to open the can with.&lt;br /&gt;SASHA: Hrrrf. *gives up and lies down again*</content>
  </entry>
  <entry>
    <id>urn:lj:livejournal.com:atom1:maradydd:488919</id>
    <link rel="alternate" type="text/html" href="http://maradydd.livejournal.com/488919.html"/>
    <link rel="self" type="text/xml" href="http://maradydd.livejournal.com/data/atom/?itemid=488919"/>
    <title>Living in the future</title>
    <published>2009-11-17T01:24:13Z</published>
    <updated>2009-11-17T03:03:49Z</updated>
    <category term="keep doing that thing you&amp;apos;re doing"/>
    <category term="science!"/>
    <category term="hacking"/>
    <category term="fabulous reality"/>
    <category term="stuff i found on the internet"/>
    <content type="html">An enterprising open-source hacker who goes by the moniker Famulus, using &lt;a href="http://en.wikipedia.org/wiki/Polywell"&gt;polywell plasma confinement&lt;/a&gt;, has achieved &lt;a href="http://prometheusfusionperfection.com/"&gt;desktop-scale nuclear fusion&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;There are some really lovely photos of plasmas and lab equipment on the blog, and all the STL files for the polywell itself, plus Ruby source code for running the thing, are &lt;a href="http://github.com/famulus/decawell"&gt;available on github&lt;/a&gt;. Go to.&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;ETA:&lt;/strong&gt; That's fusion &lt;em&gt;full stop&lt;/em&gt;, not "a sustained fusion reaction producing more energy than is consumed by plasma containment". I'd wager my left temporal lobe that he's running at a net energy loss. However, polywell confinement is one of the more promising technologies out there for net-gain fusion; interested parties should check out the work that &lt;a href="http://www.emc2fusion.org/"&gt;EMC2 Fusion&lt;/a&gt; is doing.</content>
  </entry>
  <entry>
    <id>urn:lj:livejournal.com:atom1:maradydd:488513</id>
    <link rel="alternate" type="text/html" href="http://maradydd.livejournal.com/488513.html"/>
    <link rel="self" type="text/xml" href="http://maradydd.livejournal.com/data/atom/?itemid=488513"/>
    <title>yippie-ki-yay, motherfuckers!</title>
    <published>2009-11-14T16:56:56Z</published>
    <updated>2009-11-14T16:56:56Z</updated>
    <category term="academia"/>
    <category term="game over i fucking win"/>
    <content type="html">In my email this morning:&lt;br /&gt;&lt;br /&gt;&lt;blockquote&gt;Dear Meredith Patterson,&lt;br /&gt;&lt;br /&gt;I am delighted to inform you that your submission&lt;br /&gt;127 - PKI Layer Cake: New Collision Attacks Against the Global X.509 Infrastructure&lt;br /&gt;has been accepted to appear as a FULL PAPER at FC 2010.&lt;br /&gt;&lt;br /&gt;Out of 130 submissions we accepted 19 as FULL papers (acceptance&lt;br /&gt;rate: 14.6%) and 15 as SHORT papers (acceptance rate: 26.1%).&lt;/blockquote&gt;It's shepherded, meaning that we get to do some back-and-forth with an editor to beat some of the rougher bits of the paper into shape, but that is totally okay. I'll post publicly with a link to the tech-report version once the camera-ready is done, which will be no later than 15 December.&lt;br /&gt;&lt;br /&gt;Mad props to my coauthors, Dan Kaminsky and Len Sassaman. Now, if you'll pardon me, I'm going to go dig that bottle of champagne out of the back of the fridge -- this is the most competitive conference I've ever been accepted to.</content>
  </entry>
  <entry>
    <id>urn:lj:livejournal.com:atom1:maradydd:488211</id>
    <link rel="alternate" type="text/html" href="http://maradydd.livejournal.com/488211.html"/>
    <link rel="self" type="text/xml" href="http://maradydd.livejournal.com/data/atom/?itemid=488211"/>
    <title>Well, shit.</title>
    <published>2009-11-09T14:25:16Z</published>
    <updated>2009-11-09T14:25:16Z</updated>
    <category term="money"/>
    <category term="we are so fucked"/>
    <content type="html">By way of &lt;span class='ljuser  ljuser-name_ernunnos' lj:user='ernunnos' style='white-space: nowrap;'&gt;&lt;a href='http://ernunnos.livejournal.com/profile'&gt;&lt;img src='http://l-stat.livejournal.com/img/userinfo.gif' alt='[info]' width='17' height='17' style='vertical-align: bottom; border: 0; padding-right: 1px;' /&gt;&lt;/a&gt;&lt;a href='http://ernunnos.livejournal.com/'&gt;&lt;b&gt;ernunnos&lt;/b&gt;&lt;/a&gt;&lt;/span&gt;, &lt;a href="http://market-ticker.denninger.net/archives/1600-So-Its-Official-IMF-Carry-Trades.html"&gt;the dollar is now the currency of choice&lt;/a&gt; for &lt;a href="http://en.wikipedia.org/wiki/Carry_(investment)"&gt;carry trades&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;&lt;div&gt;&lt;a href="http://www.livejournal.com/poll/?id=1482906"&gt;View Poll: #1482906&lt;/a&gt;&lt;/div&gt;</content>
  </entry>
  <entry>
    <id>urn:lj:livejournal.com:atom1:maradydd:487554</id>
    <link rel="alternate" type="text/html" href="http://maradydd.livejournal.com/487554.html"/>
    <link rel="self" type="text/xml" href="http://maradydd.livejournal.com/data/atom/?itemid=487554"/>
    <title>Waking up is hard</title>
    <published>2009-11-04T22:02:05Z</published>
    <updated>2009-11-04T22:02:05Z</updated>
    <category term="boy"/>
    <category term="married life"/>
    <category term="playlets"/>
    <content type="html">(SCENE: our bedroom, this morning)&lt;br /&gt;&lt;span class='ljuser  ljuser-name_maradydd' lj:user='maradydd' style='white-space: nowrap;'&gt;&lt;a href='http://maradydd.livejournal.com/profile'&gt;&lt;img src='http://l-stat.livejournal.com/img/userinfo.gif' alt='[info]' width='17' height='17' style='vertical-align: bottom; border: 0; padding-right: 1px;' /&gt;&lt;/a&gt;&lt;a href='http://maradydd.livejournal.com/'&gt;&lt;b&gt;maradydd&lt;/b&gt;&lt;/a&gt;&lt;/span&gt;: Sweetie, it's time to get up. You've got a doctor's appointment this morning.&lt;br /&gt;&lt;span class='ljuser  ljuser-name_enochsmiles' lj:user='enochsmiles' style='white-space: nowrap;'&gt;&lt;a href='http://enochsmiles.livejournal.com/profile'&gt;&lt;img src='http://l-stat.livejournal.com/img/userinfo.gif' alt='[info]' width='17' height='17' style='vertical-align: bottom; border: 0; padding-right: 1px;' /&gt;&lt;/a&gt;&lt;a href='http://enochsmiles.livejournal.com/'&gt;&lt;b&gt;enochsmiles&lt;/b&gt;&lt;/a&gt;&lt;/span&gt;, not opening eyes: Can't the doctor come here?&lt;br /&gt;&lt;span class='ljuser  ljuser-name_maradydd' lj:user='maradydd' style='white-space: nowrap;'&gt;&lt;a href='http://maradydd.livejournal.com/profile'&gt;&lt;img src='http://l-stat.livejournal.com/img/userinfo.gif' alt='[info]' width='17' height='17' style='vertical-align: bottom; border: 0; padding-right: 1px;' /&gt;&lt;/a&gt;&lt;a href='http://maradydd.livejournal.com/'&gt;&lt;b&gt;maradydd&lt;/b&gt;&lt;/a&gt;&lt;/span&gt;, suppressing giggles: No, sweetie, he doesn't do that. It's time to drink a Red Bull.&lt;br /&gt;&lt;span class='ljuser  ljuser-name_enochsmiles' lj:user='enochsmiles' style='white-space: nowrap;'&gt;&lt;a href='http://enochsmiles.livejournal.com/profile'&gt;&lt;img src='http://l-stat.livejournal.com/img/userinfo.gif' alt='[info]' width='17' height='17' style='vertical-align: bottom; border: 0; padding-right: 1px;' /&gt;&lt;/a&gt;&lt;a href='http://enochsmiles.livejournal.com/'&gt;&lt;b&gt;enochsmiles&lt;/b&gt;&lt;/a&gt;&lt;/span&gt;, still not opening eyes: Can't the doctor drink a Red Bull?&lt;br /&gt;&lt;span class='ljuser  ljuser-name_maradydd' lj:user='maradydd' style='white-space: nowrap;'&gt;&lt;a href='http://maradydd.livejournal.com/profile'&gt;&lt;img src='http://l-stat.livejournal.com/img/userinfo.gif' alt='[info]' width='17' height='17' style='vertical-align: bottom; border: 0; padding-right: 1px;' /&gt;&lt;/a&gt;&lt;a href='http://maradydd.livejournal.com/'&gt;&lt;b&gt;maradydd&lt;/b&gt;&lt;/a&gt;&lt;/span&gt;: No, baby. C'mon, open your eyes...&lt;br /&gt;&lt;span class='ljuser  ljuser-name_enochsmiles' lj:user='enochsmiles' style='white-space: nowrap;'&gt;&lt;a href='http://enochsmiles.livejournal.com/profile'&gt;&lt;img src='http://l-stat.livejournal.com/img/userinfo.gif' alt='[info]' width='17' height='17' style='vertical-align: bottom; border: 0; padding-right: 1px;' /&gt;&lt;/a&gt;&lt;a href='http://enochsmiles.livejournal.com/'&gt;&lt;b&gt;enochsmiles&lt;/b&gt;&lt;/a&gt;&lt;/span&gt;: Will we play chess?&lt;br /&gt;&lt;span class='ljuser  ljuser-name_maradydd' lj:user='maradydd' style='white-space: nowrap;'&gt;&lt;a href='http://maradydd.livejournal.com/profile'&gt;&lt;img src='http://l-stat.livejournal.com/img/userinfo.gif' alt='[info]' width='17' height='17' style='vertical-align: bottom; border: 0; padding-right: 1px;' /&gt;&lt;/a&gt;&lt;a href='http://maradydd.livejournal.com/'&gt;&lt;b&gt;maradydd&lt;/b&gt;&lt;/a&gt;&lt;/span&gt;: While wearing &lt;a href="http://maradydd.livejournal.com/317944.html"&gt;cheese pants&lt;/a&gt;?&lt;br /&gt;&lt;span class='ljuser  ljuser-name_enochsmiles' lj:user='enochsmiles' style='white-space: nowrap;'&gt;&lt;a href='http://enochsmiles.livejournal.com/profile'&gt;&lt;img src='http://l-stat.livejournal.com/img/userinfo.gif' alt='[info]' width='17' height='17' style='vertical-align: bottom; border: 0; padding-right: 1px;' /&gt;&lt;/a&gt;&lt;a href='http://enochsmiles.livejournal.com/'&gt;&lt;b&gt;enochsmiles&lt;/b&gt;&lt;/a&gt;&lt;/span&gt;: You have &lt;em&gt;cheese&lt;/em&gt;?&lt;br /&gt;(at this point I picked him up bodily, and he woke up)</content>
  </entry>
  <entry>
    <id>urn:lj:livejournal.com:atom1:maradydd:486926</id>
    <link rel="alternate" type="text/html" href="http://maradydd.livejournal.com/486926.html"/>
    <link rel="self" type="text/xml" href="http://maradydd.livejournal.com/data/atom/?itemid=486926"/>
    <title>C'mon, guys, it isn't 1989 anymore</title>
    <published>2009-11-02T21:43:38Z</published>
    <updated>2009-11-02T21:48:40Z</updated>
    <category term="i hate c"/>
    <content type="html">Those screams of rage you heard over the last few hours were me relocating several hundred inline-declared variables to the top of their scope in order to convince a library to compile under Visual Studio. And that was &lt;em&gt;after&lt;/em&gt; I spent half an hour finding out that "error C2143: syntax error : missing ';' before 'type'" means that a variable was declared inline. Thanks a whole fucking lot, Microsoft.&lt;br /&gt;&lt;br /&gt;Some day I will find the person whose decision it was to make VS2005's C compiler enforce the C89 standard and refuse C99. When he's discovered lying in a dark alley with a dozen copies of Kernighan and Ritchie's &lt;em&gt;The C Programming Language&lt;/em&gt; forced down his throat, well, y'all will know who to send the cops after.</content>
  </entry>
  <entry>
    <id>urn:lj:livejournal.com:atom1:maradydd:486904</id>
    <link rel="alternate" type="text/html" href="http://maradydd.livejournal.com/486904.html"/>
    <link rel="self" type="text/xml" href="http://maradydd.livejournal.com/data/atom/?itemid=486904"/>
    <title>Experimental cooking awesome</title>
    <published>2009-11-02T15:50:08Z</published>
    <updated>2009-11-02T16:04:42Z</updated>
    <category term="hacking"/>
    <category term="cooking"/>
    <content type="html">Sometimes when I'm hungry but don't feel like making anything complicated, I'll whip up a batch of fry bread. It's one of the simplest things I know how to make, consisting of a 16:2:1 ratio by volume of flour, shortening (or other non-dairy hard fat, e.g. lard or coconut oil) and baking powder, with a dash of salt for every tablespoon of baking powder. (Blend dry ingredients well, work in shortening, knead in some water until dough sticks together, knead till smooth, make into fist-sized balls, squish balls flat, fry in oil till golden brown on both sides, drain and serve.) As it's such a simple recipe, it lends itself well to being a carrier for other flavours; you can add shredded cheese, herbs, crumbled bacon, or pretty much anything savoury and not too wet to the dough, or you can serve the plain breads with jam, molasses, maple syrup, chocolate sauce, or just about anything sweet. Also they keep for days and you can warm them in the oven or, if you've just woken up and are too bleary to work the oven, on the radiator.&lt;br /&gt;&lt;br /&gt;Today's experiment was a simple one: while frying, add a couple of dashes of Worcestershire sauce to the hot oil. I was frying in a blend of olive and coconut oil (ran out of olive oil -- I know, I know, inexcusable), and did not expect the Worcestershire sauce to cause the oil to &lt;em&gt;foam&lt;/em&gt;, which was a little startling. However, it did not foam over, and I am pleased to report that the sauce adds a very pleasant tamarind-and-anchovy tang to the crust which goes very well with the ginger tea I am drinking right now. Next time I find a ridiculously sharp Cheddar, I'm going to try grating it extremely fine, adding it to the dough with some rosemary, and doing the Worcestershire trick again.</content>
  </entry>
  <entry>
    <id>urn:lj:livejournal.com:atom1:maradydd:486520</id>
    <link rel="alternate" type="text/html" href="http://maradydd.livejournal.com/486520.html"/>
    <link rel="self" type="text/xml" href="http://maradydd.livejournal.com/data/atom/?itemid=486520"/>
    <title>Busted!</title>
    <published>2009-11-02T13:32:52Z</published>
    <updated>2009-11-02T13:32:52Z</updated>
    <content type="html">The obvious text-mining homework I posted about yesterday is in fact an assignment for the Pattern Processing course at the University of Sheffield, as confirmed by one of the professors for the course. Somebody's going down.</content>
  </entry>
  <entry>
    <id>urn:lj:livejournal.com:atom1:maradydd:486290</id>
    <link rel="alternate" type="text/html" href="http://maradydd.livejournal.com/486290.html"/>
    <link rel="self" type="text/xml" href="http://maradydd.livejournal.com/data/atom/?itemid=486290"/>
    <title>How can you tell that the end of the semester is coming up?</title>
    <published>2009-11-01T00:44:00Z</published>
    <updated>2009-11-01T00:44:00Z</updated>
    <category term="protip"/>
    <category term="programming"/>
    <category term="you&amp;apos;re doing it wrong"/>
    <content type="html">Because the rent-a-coder websites become clogged with bullshit requests like &lt;a href="http://www.scriptlance.com/projects/1256951128.shtml"&gt;this&lt;/a&gt; and &lt;a href="http://www.scriptlance.com/projects/1257031083.shtml"&gt;this&lt;/a&gt;. &lt;br /&gt;&lt;br /&gt;Protip: if you're so incompetent that you have to outsource your &lt;em&gt;homework assignments&lt;/em&gt; to an Indian codemonkey for $50 a pop, maybe CS is not the major for you.</content>
  </entry>
  <entry>
    <id>urn:lj:livejournal.com:atom1:maradydd:485252</id>
    <link rel="alternate" type="text/html" href="http://maradydd.livejournal.com/485252.html"/>
    <link rel="self" type="text/xml" href="http://maradydd.livejournal.com/data/atom/?itemid=485252"/>
    <title>Imagine what I could do with one of these</title>
    <published>2009-10-27T10:05:04Z</published>
    <updated>2009-10-27T10:05:04Z</updated>
    <category term="and a pony"/>
    <category term="hacking"/>
    <content type="html">Well, I know &lt;a href="http://www.contraptor.org/"&gt;what I want for Christmas now&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;It would be so cool if McMaster.com had a wishlist feature like Amazon's. Absent that, however, I really ought to check out &lt;a href="http://www.wishlistr.com/"&gt;wishlistr&lt;/a&gt; and pop all the parts into that.</content>
  </entry>
  <entry>
    <id>urn:lj:livejournal.com:atom1:maradydd:485080</id>
    <link rel="alternate" type="text/html" href="http://maradydd.livejournal.com/485080.html"/>
    <link rel="self" type="text/xml" href="http://maradydd.livejournal.com/data/atom/?itemid=485080"/>
    <title>Foot, meet gun</title>
    <published>2009-10-25T05:15:25Z</published>
    <updated>2009-10-25T05:40:25Z</updated>
    <category term="fail"/>
    <category term="code"/>
    <category term="don&amp;apos;t do this"/>
    <category term="python"/>
    <category term="improvise adapt and overcome"/>
    <content type="html">Google Analytics does some pretty cool stuff, but has one major drawback for mobile web application developers: it's Javascript-based, meaning that hits from mobile devices that don't speak Javascript silently go untracked. Recently, the Analytics team released &lt;a href="http://www.google.com/analytics/googleanalyticsformobile.zip"&gt;some code&lt;/a&gt; that does server-side tracking; the linked ZIP file contains source and examples in ASP, JSP, PHP and Perl. Why not Python, you might wonder? I wondered too, particularly since an AppEngine project I'm working on is at least somewhat intended for phones (hey, you never know when you might be away from your desk but &lt;em&gt;really&lt;/em&gt; want to know if a certain BioBrick exists), so I did a little poking around to see if it was possible to instrument an AppEngine application using server-side Mobile Analytics.&lt;br /&gt;&lt;br /&gt;&lt;a name="cutid1"&gt;&lt;/a&gt;So, the core of the Analytics server-side code is a routine that calls out to &lt;tt&gt;www.google-analytics.com/__utm.gif?[a bunch of parameters]&lt;/tt&gt; and renders a 1x1 GIF as a web-bug. At first glance, this seems pretty straightforward: write a handler that makes the call to Google's web-bug and produces the $your-server web-bug. AppEngine even &lt;a href="http://code.google.com/appengine/docs/python/images/"&gt;supports a subset of the Python Imaging Library&lt;/a&gt;, which means that you can build the web-bug programmatically in much the same way as the PHP/Perl/&amp;c code does (although AppEngine's subset of PIL doesn't actually speak GIF, only JPG and PNG, so you have to render a PNG instead). Porting the samples from PHP was easy enough, with occasional references to the Perl to clarify things. (I still can't write Perl, but I can read it relatively well. So much for it being a write-only language!) However, I was surprised to find that the call out to Google's web-bug failed. What was going on there?&lt;br /&gt;&lt;br /&gt;I dropped into the interpreter and tried a simple &lt;tt&gt;httplib&lt;/tt&gt; call. No dice; it came up 404. Given that Google's using successful hits to this URL in order to register hits, that was no good -- it meant that requests from my web-bug were simply vanishing into the ether. However, placing the same request from a web browser retrieved the image just fine. What was going on there?&lt;br /&gt;&lt;br /&gt;To find out, I opened up &lt;a href="http://www.wireshark.org"&gt;wireshark&lt;/a&gt;, reissued the request from my browser, and beheld the details of a packet with many lovely headers:&lt;blockquote&gt;&lt;pre&gt;GET /__utm.gif?utmwv=utmac=MO-11263623-1&amp;utmwv=4.4sp&amp;utmip=&amp;utmn=1277580264&amp;utmhn=localhost&amp;utmp=http%3A%2F%2Fmaradyddtestapp.appspot.com%2F&amp;utmr=-&amp;utmcc=__utma%253D999.999.999.999.999.1%253B&amp;utmvid=0x01234567890abcdef HTTP/1.1
Host: www.google-analytics.com
Connection: keep-alive
User-Agent: Mozilla/5.0 (X11; U; Linux i686; en-US) AppleWebKit/532.2 (KHTML, like Gecko) Chrome/4.0.222.5 Safari/532.2
Cache-Control: max-age=0
Accept: application/xml,application/xhtml+xml,text/html;q=0.9,text/plain;q=0.8,image/png,*/*;q=0.5
Accept-Encoding: gzip,deflate
Accept-Language: en-US,en;q=0.8
Accept-Charset: ISO-8859-1,utf-8;q=0.7,*;q=0.3
If-Modified-Since: Wed, 21 Jan 2004 19:50:30 GMT&lt;/pre&gt;&lt;/blockquote&gt;Replicating this request, headers and all, in the interpreter gave me back a 200 OK. Time for some differential diagnosis: what headers were optional, and which ones couldn't it live without?&lt;br /&gt;&lt;br /&gt;As luck would have it, I struck gold on the first try -- passing every header except the &lt;tt&gt;Host&lt;/tt&gt; header resulted in the 404 I'd gotten earlier. As long as the &lt;tt&gt;Host&lt;/tt&gt; header was in the request, everything was fine. In fact, passing nothing &lt;em&gt;but&lt;/em&gt; the request-body and the &lt;tt&gt;Host&lt;/tt&gt; header worked perfectly ... in the interpreter. In AppEngine, not so much.&lt;br /&gt;&lt;br /&gt;See, AppEngine does a lot of sandboxing, for security purposes. To this end, they've rolled their own versions of a lot of Python standard library modules, including httplib and urllib (and, I expect, anything that involves a network socket). Part of this sandboxing involves stripping "untrusted" headers from any network request generated by AppEngine code -- including &lt;tt&gt;Host&lt;/tt&gt;. Ha ha!&lt;br /&gt;&lt;br /&gt;Except ... &lt;tt&gt;Host&lt;/tt&gt; is a &lt;em&gt;mandatory&lt;/em&gt; header in HTTP 1.1. It can be empty, but it has to be there. They're supposed to return 400 Bad Request, not 404 Not Found, if no &lt;tt&gt;Host&lt;/tt&gt; header is present at all ... but surely they wouldn't have a URL fetcher that was so badly standards-nonconforming as to fail to send a required header?&lt;br /&gt;&lt;br /&gt;Well, actually, they don't, which is always nice. &lt;tt&gt;url_fetch.py&lt;/tt&gt; does in fact set the &lt;tt&gt;Host&lt;/tt&gt; header, right there on line 170. And this is where things get weird.&lt;br /&gt;&lt;br /&gt;See, the error that was showing up in the AppEngine logs wasn't a 404 Not Found -- it was a -2, 'Name or service not known'. If that doesn't sound like an HTTP error to you, you're right: it's a DNS error.&lt;br /&gt;&lt;br /&gt;Those of you scratching your heads may now scratch them harder: swap out 'www.google-analytics.com' for whatever IP address you get when you &lt;tt&gt;dig&lt;/tt&gt; that hostname, and &lt;em&gt;it still fails&lt;/em&gt;. There is absolutely no reason for DNS to be involved, because &lt;em&gt;there is nothing for it to have to resolve&lt;/em&gt;, and yet we get back a DNS resolution error, on both the dev server and on appspot.com (so it's not an issue with my /etc/hosts, which was my first thought).&lt;br /&gt;&lt;br /&gt;Oh, but I can fetch &lt;em&gt;other&lt;/em&gt; stuff -- f'rinstance, the front page of this-here blog -- just fine. No trouble whatsoever. How ya like them apples?&lt;br /&gt;&lt;br /&gt;So, for the time being, I'm not sure whether Analytics has shot AppEngine in the foot or vice versa, but someone sure is gimping around saying "ow" a lot.</content>
  </entry>
  <entry>
    <id>urn:lj:livejournal.com:atom1:maradydd:484488</id>
    <link rel="alternate" type="text/html" href="http://maradydd.livejournal.com/484488.html"/>
    <link rel="self" type="text/xml" href="http://maradydd.livejournal.com/data/atom/?itemid=484488"/>
    <title>The most horrible case of operator overloading I've ever heard of</title>
    <published>2009-10-21T01:37:06Z</published>
    <updated>2009-10-21T01:37:06Z</updated>
    <category term="code"/>
    <category term="don&amp;apos;t do this"/>
    <category term="stuff i found on the internet"/>
    <content type="html">Oh, don't get me wrong, I laughed, but &lt;a href="http://stackoverflow.com/questions/1597211/whats-the-most-evil-way-of-subverting-a-language-that-youve-seen/1597250#1597250"&gt;it's horrible&lt;/a&gt;:&lt;blockquote&gt;I once saw a C++ filesystem driver that overrode the / operator to mean "append". So you could do something like:&lt;br /&gt;&lt;br /&gt;&lt;pre&gt;directory = "/tmp/subdir1";
filename  = "myfile.txt";
full_path = directory/filename;&lt;/pre&gt;&lt;br /&gt;and end up with full_path being "&lt;tt&gt;/tmp/subdir1/myfile.txt&lt;/tt&gt;"&lt;/blockquote&gt;And no, Stroustrup's not going to hell for designing a language that lets people do this. The sheer fact that people &lt;em&gt;can&lt;/em&gt; do this means he's already there. And so are we.</content>
  </entry>
  <entry>
    <id>urn:lj:livejournal.com:atom1:maradydd:484221</id>
    <link rel="alternate" type="text/html" href="http://maradydd.livejournal.com/484221.html"/>
    <link rel="self" type="text/xml" href="http://maradydd.livejournal.com/data/atom/?itemid=484221"/>
    <title>Furball in a fur bowl</title>
    <published>2009-10-19T12:55:13Z</published>
    <updated>2009-10-19T12:55:13Z</updated>
    <category term="cuteness"/>
    <content type="html">&lt;a href="http://pics.livejournal.com/maradydd/pic/00021e4d/"&gt;&lt;img src="http://pics.livejournal.com/maradydd/pic/00021e4d/s320x240" width="300" height="240" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Man, I feel tired just looking at him.</content>
  </entry>
  <entry>
    <id>urn:lj:livejournal.com:atom1:maradydd:483677</id>
    <link rel="alternate" type="text/html" href="http://maradydd.livejournal.com/483677.html"/>
    <link rel="self" type="text/xml" href="http://maradydd.livejournal.com/data/atom/?itemid=483677"/>
    <title>A bill I have a hard time imagining anyone objecting to</title>
    <published>2009-10-16T16:22:08Z</published>
    <updated>2009-10-16T16:22:08Z</updated>
    <category term="politics"/>
    <content type="html">Via &lt;span class='ljuser  ljuser-name_mellowtigger' lj:user='mellowtigger' style='white-space: nowrap;'&gt;&lt;a href='http://mellowtigger.livejournal.com/profile'&gt;&lt;img src='http://l-stat.livejournal.com/img/userinfo.gif' alt='[info]' width='17' height='17' style='vertical-align: bottom; border: 0; padding-right: 1px;' /&gt;&lt;/a&gt;&lt;a href='http://mellowtigger.livejournal.com/'&gt;&lt;b&gt;mellowtigger&lt;/b&gt;&lt;/a&gt;&lt;/span&gt;, up before Congress this session we have &lt;a href="http://thomas.loc.gov/cgi-bin/query/z?c111:H.R.3501:"&gt;H.R. 3501&lt;/a&gt;, the Humanity and Pets Partnered Through the Years Act. It's super short -- you can read it in the time it takes me to explain it -- but I'll summarize anyway: if this bill passes, if you itemise deductions you can deduct pet care expenses up to $3500. This means vet bills, food, litter, a cage, &amp;c for your cat, dog, bird, lizard, fish, hedgehog, whatever -- it just has to be domesticated and alive. Buying the pet does not count as a qualified expense, research animals and animals "utilized in conjunction with a trade or business" (uh, a mascot?) don't count, and you can't double-dip if you've claimed deductions for the animal in the last three years, but that's it.&lt;br /&gt;&lt;br /&gt;It's a tax cut that helps individuals first and foremost. It encourages people to take good care of animals. I like these things. If you do too, write your representative and ask him or her to support this bill.</content>
  </entry>
  <entry>
    <id>urn:lj:livejournal.com:atom1:maradydd:483449</id>
    <link rel="alternate" type="text/html" href="http://maradydd.livejournal.com/483449.html"/>
    <link rel="self" type="text/xml" href="http://maradydd.livejournal.com/data/atom/?itemid=483449"/>
    <title>maradydd @ 2009-10-14T13:28:00</title>
    <published>2009-10-14T11:28:53Z</published>
    <updated>2009-10-14T11:28:53Z</updated>
    <category term="humor"/>
    <content type="html">Two antennas got married.&lt;br /&gt;&lt;br /&gt;The ceremony was nothing to write home about, but the reception was outstanding.</content>
  </entry>
  <entry>
    <id>urn:lj:livejournal.com:atom1:maradydd:483218</id>
    <link rel="alternate" type="text/html" href="http://maradydd.livejournal.com/483218.html"/>
    <link rel="self" type="text/xml" href="http://maradydd.livejournal.com/data/atom/?itemid=483218"/>
    <title>*insert Imperial March here*</title>
    <published>2009-10-14T07:29:11Z</published>
    <updated>2009-10-14T08:08:35Z</updated>
    <category term="wearable computing"/>
    <category term="electronics"/>
    <category term="hacking"/>
    <category term="evil robot vacuum cleaner army"/>
    <category term="geek"/>
    <category term="improvise adapt and overcome"/>
    <category term="hardware"/>
    <content type="html">Good hacking night last night. D came over so that we could hack on owen, my little NSLU2 box that's been on the shelf for, oh, a few years. After a few false starts (involving things like having to remember passwords I haven't used since 2005), we threw together a quick LAN off my laptop, got owen on that network, and successfully logged in. We then figured out that trying to configure a bridge between eth0 and ra0 was more trouble than it was worth, so no updating owen straight from the package server for now. I'll need to get the switch set up before I can actually drop owen on the main network, and I don't have the furniture for that right now, but owen clearly still works like a charm and now speaks DHCP, so overall I'll call that a win.&lt;br /&gt;&lt;br /&gt;Our eventual goal is to set up &lt;a href="http://www.pokylinux.org"&gt;pokylinux&lt;/a&gt;, as a "just to see if we can, since there's not a pokylinux build for this particular hardware yet" project, which will probably involve doing some compilation on the box itself. That's going to be slightly hilarious; I haven't done a multi-day toolchain build since, oh, 2001 or thereabouts. Good times.&lt;br /&gt;&lt;br /&gt;Laterish today I'm going to pop round to the electronics store that also sells RC cars, planes and helicopters to see what my battery options are; I assume it's easier these days to supply 5V/500mA off something rechargeable than it was four years ago. (I need to be gainfully employed before I can actually &lt;em&gt;buy&lt;/em&gt; one, as I expect sticker shock, but this is how budgets are made.)&lt;br /&gt;&lt;br /&gt;I also dug up the little USB-to-Roomba-serial-interface circuit I was assembling some time back, and found the ostensibly Linux-compatible Bluetooth and 802.11g dongles that have been waiting ever so patiently. Yep, that's right -- after far too long on the shelf, the Evil Robot Vacuum Cleaner Army project is rolling once more.</content>
  </entry>
  <entry>
    <id>urn:lj:livejournal.com:atom1:maradydd:482842</id>
    <link rel="alternate" type="text/html" href="http://maradydd.livejournal.com/482842.html"/>
    <link rel="self" type="text/xml" href="http://maradydd.livejournal.com/data/atom/?itemid=482842"/>
    <title>PSA: use alternate email</title>
    <published>2009-10-13T11:55:37Z</published>
    <updated>2009-10-13T13:22:05Z</updated>
    <category term="psa"/>
    <content type="html">The box that thesmartpolitenerd.com sits on appears to have fallen off the internet. (DNS believes it exists, but it's not answering pings.) It may be a little bit before it's fixed, as one of the lovely and talented folks who maintains it is currently in the hospital with an icky case of cellulitis, and I don't expect him or his equally lovely and talented wife to be pulling sysadmin duty when they have more pressing things to worry about. &lt;br /&gt;&lt;br /&gt;For the meantime, please direct personal email to clonearmy at gmail, work email to the usual place work email goes. (If you should know it, you probably already do.)&lt;br /&gt;&lt;br /&gt;Thanks, and sorry for the hassle.&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;ETA:&lt;/strong&gt; Looks like it's back up and running as of approximately 6AM PST.</content>
  </entry>
  <entry>
    <id>urn:lj:livejournal.com:atom1:maradydd:482703</id>
    <link rel="alternate" type="text/html" href="http://maradydd.livejournal.com/482703.html"/>
    <link rel="self" type="text/xml" href="http://maradydd.livejournal.com/data/atom/?itemid=482703"/>
    <title>Accursed insects.</title>
    <published>2009-10-10T21:20:17Z</published>
    <updated>2009-10-10T21:20:17Z</updated>
    <category term="fail"/>
    <category term="knitting"/>
    <content type="html">Moths got into my knitting box and ate everything.&lt;br /&gt;&lt;br /&gt;All my handmade socks, all my handmade gloves (minus the chording glove), the lace shawl I was making for my mom -- all of it, gone. (I suspect that for a knitter there is not much more horrifying than picking up a piece made from 2-ply yarn and &lt;em&gt;watching it disintegrate in your hands&lt;/em&gt;.)&lt;br /&gt;&lt;br /&gt;The only pieces of my own knitting left intact are my winter hat, which was in the pocket of my winter coat, and the baby alpaca slipper-socks I knitted for &lt;span class='ljuser  ljuser-name_enochsmiles' lj:user='enochsmiles' style='white-space: nowrap;'&gt;&lt;a href='http://enochsmiles.livejournal.com/profile'&gt;&lt;img src='http://l-stat.livejournal.com/img/userinfo.gif' alt='[info]' width='17' height='17' style='vertical-align: bottom; border: 0; padding-right: 1px;' /&gt;&lt;/a&gt;&lt;a href='http://enochsmiles.livejournal.com/'&gt;&lt;b&gt;enochsmiles&lt;/b&gt;&lt;/a&gt;&lt;/span&gt;, which he takes with him whenever he travels. The first thing I ever knitted -- a chunky Dr. Who-style scarf that I made under the tutelage of &lt;span class='ljuser  ljuser-name_meowmeowcatchow' lj:user='meowmeowcatchow' style='white-space: nowrap;'&gt;&lt;a href='http://meowmeowcatchow.livejournal.com/profile'&gt;&lt;img src='http://l-stat.livejournal.com/img/userinfo.gif' alt='[info]' width='17' height='17' style='vertical-align: bottom; border: 0; padding-right: 1px;' /&gt;&lt;/a&gt;&lt;a href='http://meowmeowcatchow.livejournal.com/'&gt;&lt;b&gt;meowmeowcatchow&lt;/b&gt;&lt;/a&gt;&lt;/span&gt; -- might have survived, as it wasn't in the box and I haven't found it yet, but I have a bad feeling about this.&lt;br /&gt;&lt;br /&gt;Nothing to do but start over, I guess.</content>
  </entry>
  <entry>
    <id>urn:lj:livejournal.com:atom1:maradydd:482390</id>
    <link rel="alternate" type="text/html" href="http://maradydd.livejournal.com/482390.html"/>
    <link rel="self" type="text/xml" href="http://maradydd.livejournal.com/data/atom/?itemid=482390"/>
    <title>Everyone else is whinging about the Nobel Prize so I will too</title>
    <published>2009-10-10T11:11:14Z</published>
    <updated>2009-10-10T11:11:14Z</updated>
    <category term="science"/>
    <content type="html">Here's what I want to know: why did Physiology/Medicine go to the people who figured out how telomeres work, and Chemistry to the people who figured out how the ribosome works, and not the other way around?&lt;br /&gt;&lt;br /&gt;Telomeres are the little chemical caps on the end of chromosomes which protect chromosomes from degradation during cell division, and telomerase is the enzyme which builds them and keeps them stable from cellular generation to generation. Ribosomes are the organelles in your cells which are the little factory workers of molecular biology's Central Dogma: when we say "DNA makes RNA makes protein", it's the ribosomes which physically &lt;em&gt;do&lt;/em&gt; the "RNA makes protein" piece of the puzzle, translating messenger RNA into amino acids codon by codon and then assembling the amino acids into proteins.&lt;br /&gt;&lt;br /&gt;Given the ribosome's role in protein construction, if they'd asked me to decide (hah!), I would have given Physiology/Medicine to the ribosome scientists, and given that the telomere/telomerase interaction is a narrower chemical process, I would have given Chemistry to the telomere scientists. &lt;br /&gt;&lt;br /&gt;I have this mental image of the Nobel committee arguing long into the night about which award to give to whom, and finally saying "Okay, heads Chemistry goes to the ribosome, tails to the telomere," then flipping the Chemistry medal. Both discoveries explain fundamental chemical building blocks of the biology of every living organism on this planet, from the lowliest &lt;em&gt;Archaeobacteria&lt;/em&gt; to you and me. It's difficult to say "well, this one is &lt;em&gt;obviously&lt;/em&gt; chemistry and this one is &lt;em&gt;obviously&lt;/em&gt; biology," and I'm curious what the reasoning is. The &lt;a href="http://nobelprize.org/nobel_prizes/medicine/laureates/2009/press.html"&gt;press&lt;/a&gt; &lt;a href="http://nobelprize.org/nobel_prizes/chemistry/laureates/2009/press.html"&gt;releases&lt;/a&gt; do shed some light on the subject, however; the Medicine one focuses on telomeres' role in aging, and the incredibly important discovery that cancer cells' telomeres don't degrade the way that normal cells' telomeres do (making cancerous cells effectively immortal), and the Chemistry one makes special mention of how Ramakrishnan, Steitz and Yonath used X-ray crystallography to map out every atom of the ribosome. So that makes a bit more sense.&lt;br /&gt;&lt;br /&gt;Regardless, however, both groups' work is incredibly important, has advanced our understanding of How Life Works enormously, and is eminently worthy of the Nobel Prize. Heartfelt congratulations to Elizabeth H. Blackburn, Carol W. Greider and Jack W. Szostak, winners of the 2009 Nobel Prize in Medicine, and to Venkatraman Ramakrishnan, Thomas A. Steitz, and Ada E. Yonath, winners of the 2009 Nobel Prize in Chemistry, on their excellent work. May your discoveries continue, and may you continue to inspire future generations of scientists to further our understanding of the processes of life.</content>
  </entry>
  <entry>
    <id>urn:lj:livejournal.com:atom1:maradydd:481985</id>
    <link rel="alternate" type="text/html" href="http://maradydd.livejournal.com/481985.html"/>
    <link rel="self" type="text/xml" href="http://maradydd.livejournal.com/data/atom/?itemid=481985"/>
    <title>archaeology</title>
    <published>2009-10-09T04:32:15Z</published>
    <updated>2009-10-09T04:32:15Z</updated>
    <content type="html">While cleaning out the back room just now, I think I found my contact lenses!&lt;br /&gt;&lt;br /&gt;They were in a case which had gone bone dry, and were a bit leathery in texture, but I soaked them in rewetting solution, gave them a good cleaning and they softened right up. I'm pretty sure they're mine and not &lt;span class='ljuser  ljuser-name_enochsmiles' lj:user='enochsmiles' style='white-space: nowrap;'&gt;&lt;a href='http://enochsmiles.livejournal.com/profile'&gt;&lt;img src='http://l-stat.livejournal.com/img/userinfo.gif' alt='[info]' width='17' height='17' style='vertical-align: bottom; border: 0; padding-right: 1px;' /&gt;&lt;/a&gt;&lt;a href='http://enochsmiles.livejournal.com/'&gt;&lt;b&gt;enochsmiles&lt;/b&gt;&lt;/a&gt;&lt;/span&gt;', since they appear to be torics; he does not have astigmatism and thus can wear the 30-day ones that you can sleep in, so he never puts his in a case. &lt;br /&gt;&lt;br /&gt;Since I broke the right earpiece off my glasses a few weeks ago due to falling asleep with them on and rolling over on them, I popped in the contacts, and things seem about right; my close-in vision is a bit wonky, but then it always is when I switch from glasses to contacts, and my mid-range and distance vision seem perfect apart from the "wait, did I just grow six inches?" feeling that also accompanies the switch from glasses to contacts. This also leads me to believe that they are actually my contacts, since I am way more blind than &lt;span class='ljuser  ljuser-name_enochsmiles' lj:user='enochsmiles' style='white-space: nowrap;'&gt;&lt;a href='http://enochsmiles.livejournal.com/profile'&gt;&lt;img src='http://l-stat.livejournal.com/img/userinfo.gif' alt='[info]' width='17' height='17' style='vertical-align: bottom; border: 0; padding-right: 1px;' /&gt;&lt;/a&gt;&lt;a href='http://enochsmiles.livejournal.com/'&gt;&lt;b&gt;enochsmiles&lt;/b&gt;&lt;/a&gt;&lt;/span&gt;.&lt;br /&gt;&lt;br /&gt;I should really schedule my annual eye doctor visit, but this is a very happy discovery, because let me tell you, LJ, walking around in glasses that constantly tipped to the left was getting pretty old.</content>
  </entry>
  <entry>
    <id>urn:lj:livejournal.com:atom1:maradydd:481749</id>
    <link rel="alternate" type="text/html" href="http://maradydd.livejournal.com/481749.html"/>
    <link rel="self" type="text/xml" href="http://maradydd.livejournal.com/data/atom/?itemid=481749"/>
    <title>In which Kenya wins at advertising</title>
    <published>2009-10-08T20:23:22Z</published>
    <updated>2009-10-08T20:23:22Z</updated>
    <category term="stuff i found on the internet"/>
    <content type="html">SFW unless your work is irrational about condoms in a non-sexual context:&lt;br /&gt;&lt;br /&gt;&lt;lj-embed id="24" /&gt;</content>
  </entry>
  <entry>
    <id>urn:lj:livejournal.com:atom1:maradydd:481390</id>
    <link rel="alternate" type="text/html" href="http://maradydd.livejournal.com/481390.html"/>
    <link rel="self" type="text/xml" href="http://maradydd.livejournal.com/data/atom/?itemid=481390"/>
    <title>Better living through chemistry</title>
    <published>2009-10-08T18:19:05Z</published>
    <updated>2009-10-08T18:19:05Z</updated>
    <category term="science!"/>
    <content type="html">Whatever that stuff was that had carbonised onto my stove burners, it was no match for concentrated sodium hydroxide and a putty knife.</content>
  </entry>
  <entry>
    <id>urn:lj:livejournal.com:atom1:maradydd:480974</id>
    <link rel="alternate" type="text/html" href="http://maradydd.livejournal.com/480974.html"/>
    <link rel="self" type="text/xml" href="http://maradydd.livejournal.com/data/atom/?itemid=480974"/>
    <title>[LJ Genie] Hardware of the non-electronic kind</title>
    <published>2009-10-07T20:24:29Z</published>
    <updated>2009-10-07T20:24:29Z</updated>
    <category term="lj genie"/>
    <content type="html">Dear LJ Genie,&lt;br /&gt;&lt;br /&gt;What's the best way to hang a pegboard on an exposed (indoor) brick wall?</content>
  </entry>
</feed>
