<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/css" href="/stylesheets/rss.css"?>
<rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:trackback="http://madskills.com/public/xml/rss/module/trackback/">
  <channel>
    <title>Chris Ball</title>
    <link>http://blog.printf.net</link>
    <language>en-us</language>
    <ttl>40</ttl>
    <description></description>
    <item>
      <title>Letting Go</title>
      <description>&lt;p&gt;My attempt at Letting Go, by Andrew York:&lt;/p&gt;

&lt;div align="center"&gt;
 &lt;object width="493" height="302"&gt;&lt;param name="movie" value="http://www.youtube.com/v/hbvR3RSa1_k&amp;ap=%2526fmt%3D22"&gt;&lt;/param&gt;&lt;param name="allowFullScreen" value="true"&gt;&lt;/param&gt;&lt;param name="allowscriptaccess" value="always"&gt;&lt;/param&gt;&lt;embed src="http://www.youtube.com/v/hbvR3RSa1_k&amp;hd=1" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" width="528" height="324"&gt;&lt;/embed&gt;&lt;/object&gt;
&lt;br&gt;
 &lt;i&gt;Andrew York - Letting Go (&lt;a href="http://www.youtube.com/watch?v=hbvR3RSa1_k&amp;hd=1"&gt;youtube&lt;/a&gt; / &lt;a href="http://chris.printf.net/letting-go.webm"&gt;download as WebM, CC-BY-SA 3.0&lt;/a&gt;)&lt;/i&gt;
&lt;/div&gt;</description>
      <pubDate>Sun, 06 May 2012 16:31:00 +0100</pubDate>
      <guid isPermaLink="false">urn:uuid:efe2c076-8d33-4b8d-98e4-1fcda2db97af</guid>
      <author>Chris Ball</author>
      <link>http://blog.printf.net/articles/2012/05/06/letting-go</link>
      <category>guitar</category>
    </item>
    <item>
      <title>Time; Cambridge, MA</title>
      <description>&lt;div align="center"&gt;
&lt;a href="http://www.flickr.com/photos/madprime/7089176893/"&gt;&lt;img src="http://chris.printf.net/time-500px.jpg"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;

</description>
      <pubDate>Wed, 18 Apr 2012 12:16:00 +0100</pubDate>
      <guid isPermaLink="false">urn:uuid:495790db-6408-4393-97ee-30313592c6fa</guid>
      <author>Chris Ball</author>
      <link>http://blog.printf.net/articles/2012/04/18/time-cambridge-ma</link>
      <category>photography</category>
    </item>
    <item>
      <title>Ohanami 2012, Cambridge MA</title>
      <description>&lt;p&gt;(&lt;i&gt;Ohanami&lt;/i&gt; refers to the Japanese festival of cherry-blossom viewing, celebrated during the week or or two in which the trees bloom each year.  We've been getting together with friends to sit under the trees here for the last few years.)&lt;/p&gt;

&lt;div align="center"&gt;
&lt;a href="http://www.flickr.com/photos/madprime/6909368314/sizes/l/in/photostream/"&gt;&lt;img src="http://farm8.staticflickr.com/7093/6909368314_2c294fd3e0.jpg"&gt;&lt;/a&gt;
&lt;br&gt;&lt;br&gt;
&lt;a href="http://www.flickr.com/photos/madprime/7055451731/sizes/l/in/photostream/"&gt;&lt;img src="http://farm6.staticflickr.com/5200/7055451731_2049acc792.jpg"&gt;&lt;/a&gt;
&lt;br&gt;&lt;br&gt;
&lt;a href="http://www.flickr.com/photos/madprime/6909358224/sizes/l/in/photostream/"&gt;&lt;img src="http://farm6.staticflickr.com/5234/6909358224_6ffa06a5b8.jpg"&gt;&lt;/a&gt;
&lt;br&gt;&lt;br&gt;
&lt;a href="http://www.flickr.com/photos/madprime/7055461735/sizes/l/in/photostream/"&gt;&lt;img src="http://farm8.staticflickr.com/7207/7055461735_2088739dc0_z.jpg"&gt;
&lt;br&gt;&lt;br&gt;
&lt;a href="http://www.flickr.com/photos/madprime/7055462899/sizes/l/in/photostream/"&gt;&lt;img src="http://farm6.staticflickr.com/5196/7055462899_a06d05393d.jpg"&gt;&lt;/a&gt;
&lt;/div&gt;</description>
      <pubDate>Mon, 09 Apr 2012 03:50:00 +0100</pubDate>
      <guid isPermaLink="false">urn:uuid:4cf75e0c-452c-4746-a0fd-935b5a2b73d5</guid>
      <author>Chris Ball</author>
      <link>http://blog.printf.net/articles/2012/04/09/ohanami-2012-cambridge-ma</link>
      <category>photography</category>
    </item>
    <item>
      <title>Sports</title>
      <description>&lt;p&gt;I didn't pay much attention to sports when I lived in England.  They're much harder to ignore now that I live in the US, especially in a competitive town like Boston where each of the national titles in basketball, American football,  ice hockey and baseball have been won by a local team at least once since 2000.
&lt;br&gt;&lt;br&gt;
&lt;a href="http://madprime.org"&gt;Mad&lt;/a&gt; just won her lab's March Madness bracket (this involves making predictions on the winners and losers of 63 college basketball games, and getting more of them correct than the other people who are competing with you) so we've watched a lot of basketball games recently, and I like to watch my countryman&lt;a href="#footnote-1"&gt;&lt;sup&gt;1&lt;/sup&gt;&lt;/a&gt; &lt;a href="http://en.wikipedia.org/wiki/Andy_Murray"&gt;Andy Murray&lt;/a&gt; play tennis when I can.
&lt;br&gt;&lt;br&gt;
I've also been trying to decide what my favorite sport is.  Sometimes people ask you things like that here.  I think they're mainly asking to see whether I say something "outlandish" about soccer being better than American Football, or cricket being the zenith of physical competition between teams.  I find that I enjoy watching basically all of them, especially with friends.  My actual answer is long and complicated, so I'll write it out here.  I'm going to concentrate on popular sports in the US, since that's where I live now.
&lt;br&gt;&lt;/p&gt;

&lt;h3&gt;Basketball&lt;/h3&gt;

&lt;p&gt;As &lt;a href="http://mako.cc/"&gt;Mako&lt;/a&gt; pointed out to me, it's rarely worth tuning in to a basketball game before the last five to ten minutes.  A 10-15 point deficit is by no means insurmountable with ten minutes left to play, and teams are rarely more than 20 points ahead by then.  You generally won't have missed the decisive portion of the game if you wait until the last quarter to start watching, which makes watching the first three quarters feel unsatisfying somehow.
&lt;br&gt;&lt;br&gt;
The NBA tries to make the league more competitive between teams by having a &lt;a href="http://en.wikipedia.org/wiki/National_Basketball_Association_Draft"&gt;draft&lt;/a&gt; where the teams that didn't make the playoffs in the previous season get the first choice of upcoming college players in the new season; it also has a salary cap and luxury tax.  I like these ideas in principle, but they don't seem to be working in practice yet: the NBA has teams that repeat championship wins &lt;a href="http://en.wikipedia.org/wiki/Salary_cap#Salary_cap_in_the_NBA"&gt;more often than the NFL&lt;/a&gt;, showing that these rules are not working to break up domination by a few teams.&lt;br/&gt;
&lt;br&gt;
Morale seems to be a particularly visible aspect of basketball given the frequent scoring &amp;mdash; one team going on a 10-0 run is common, often with the other team coming back with a reversed run later, and that's satisfying to watch.
&lt;br&gt;&lt;br&gt;
Basketball seems especially prone to having games be decided by controversial referee decisions, most of which can not be appealed or corrected. 
&lt;br&gt;&lt;/p&gt;

&lt;h3&gt;Baseball&lt;/h3&gt;

&lt;p&gt;Baseball has no salary cap, and has the far worse equivalent of a &lt;a href="http://en.wikipedia.org/wiki/Salary_cap#Luxury_tax_in_Major_League_Baseball"&gt;luxury tax&lt;/a&gt; which sends money to the MLB organization itself when a team pays over a salary limit.  This does not bother teams like the New York Yankees or Boston Red Sox, which continue to spend ridiculous amounts on players undeterred.  The last game of the 2011 season, between the Red Sox and the Tampa Bay Rays, was between a team with a $156M payroll and a team with a $37M payroll&lt;a href="#footnote-2"&gt;&lt;sup&gt;2&lt;/sup&gt;&lt;/a&gt;.  Why is that supposed to be fun or fair to watch?  I guess it could be fun if you always cheer for the team that is vastly outperforming its payroll (as Tampa Bay did against Boston that night!), but otherwise I don't see the point.
&lt;br&gt;&lt;br&gt;
As for Mako's &lt;i&gt;decisive-moment&lt;/i&gt; metric, baseball almost has the inverse problem to basketball &amp;mdash; a bases-loaded homer in the 3rd inning (for example) can often decide the game right there, so you have to start watching at the beginning to be confident of not missing a decisive play.  The games are pretty long too.  I think there's a middle ground between early-decisiveness and last-minute-decisiveness that I prefer instead.
&lt;br&gt;&lt;/p&gt;

&lt;h3&gt;American (NFL) Football&lt;/h3&gt;

&lt;p&gt;I like that the NFL has a direct &lt;a href="http://en.wikipedia.org/wiki/Salary_cap#Salary_cap_in_the_NFL"&gt;salary cap&lt;/a&gt;, so no team can spend many times more on players than another team as they do in baseball.  I also like the amazing speed, agility and split-second instincts that NFL players exhibit.  The decisiveness seems about right.  The system for appealing rulings and referring to instant replays works well.
&lt;br&gt;&lt;br&gt;
But I hate that the NFL has a problem with &lt;a href="http://en.wikipedia.org/wiki/Chronic_traumatic_encephalopathy"&gt;chronic traumatic encephalopathy&lt;/a&gt; that it is basically doing nothing about.  Many veteran players are suffering from this form of early-onset dementia.  This &lt;a href="http://www.gq.com/sports/profiles/200909/nfl-players-brain-dementia-study-memory-concussions?currentPage=all"&gt;expos&#233;&lt;/a&gt; by GQ in 2009 (GQ, really?!) is completely damning, and I think it should be required reading for anyone who watches NFL football.  There's also Malcolm Gladwell's article in the New Yorker &lt;a href="http://www.newyorker.com/reporting/2009/10/19/091019fa_fact_gladwell?currentPage=all"&gt;directly comparing American football to dogfighting&lt;/a&gt;, which seems sound to me.
&lt;br&gt;&lt;br&gt;
But wait, you say!  This season the NFL instituted &lt;a href="http://www.theatlanticwire.com/entertainment/2010/10/will-the-nfl-s-new-hitting-rules-ruin-football/22619/"&gt;new rules&lt;/a&gt; on what type of hits are allowed.  These rules entirely miss the point &amp;mdash; as you'll read in the GQ article, professional footballers take the equivalent of multiple car crashes of sub-concussion &lt;i&gt;every game&lt;/i&gt;, and none of the plays that cause these sub-concussions were illegal before the new rules &lt;i&gt;or&lt;/i&gt; are illegal after them.  The new "devastating tackle" rule bans tackles that look gruesome, while leaving alone the hits that are known to cause permanent brain injury when repeated as they are on almost every play.  It's a cover up, and the player-safety equivalent of security theater.
&lt;br&gt;&lt;br&gt;
We also don't get to see NFL teams practice, yet the HITS data referred to by the GQ article suggests that practices contain many sub-concussions too, and can be as damaging as the games themselves.  If the players spend 80% of their time practicing and 20% playing in season games, then practice could be responsible for 80% of the brain injuries due to concussion they get, and we don't even see it happening.
&lt;br&gt;&lt;br&gt;
My preferred solution is to remove helmets altogether, as rugby does.  Faced with the option of colliding heads at 100 &lt;i&gt;g&lt;/i&gt;s of force but without a helmet, it seems likely that players would just decide not to do something so ridiculous with their heads.
&lt;br&gt;&lt;/p&gt;

&lt;h3&gt;Ice Hockey&lt;/h3&gt;

&lt;p&gt;I'm not at all expert in ice hockey, but it seems to me that it has the same safety problems as football, plus legalized and celebrated fighting between players.  Gross.
&lt;br&gt;&lt;/p&gt;

&lt;h3&gt;Tennis&lt;/h3&gt;

&lt;p&gt;It's nice to have an individual sport as well as team ones.  Psychology and willpower often seem to become the dominant factor in who wins a game, and that's exciting to watch.  I guess it ties back into my experience playing Chess and Go, and individual tennis might be my favorite sport for that reason alone.
&lt;br&gt;&lt;br&gt;
At first glance it seems like tennis has the same decisiveness problems as baseball, with it being hard to come back from an early deficit, but it doesn't really.  Tennis doesn't keep an absolute cumulative score in the same way as baseball &amp;mdash; you can lose the first set in a 1-6 blowout and win the second set 7-6, and then everything's all square again even though you only won 8 games and your opponent won 12.  The baseball equivalent would be something like if you could make up for your opponent's third-inning bases-loaded homer with a well-timed single run afterwards, and that would certainly keep the games closer.
&lt;br&gt;&lt;br&gt;
Tennis refereeing decisions can be appealed with a &lt;a href="http://en.wikipedia.org/wiki/Tennis#Officials"&gt;challenge system&lt;/a&gt; that works well.
&lt;br&gt;&lt;/p&gt;

&lt;h3&gt;Soccer&lt;/h3&gt;

&lt;p&gt;Has the "beginning of the game can decide the match" problem of baseball.  Clubs refuse to institute a salary cap, leading to the same kind of disparity that baseball has between teams &amp;mdash; in 2008, the median Premier League total team salary was $44M/year, yet Chelsea spent&lt;a href="#footnote-3"&gt;&lt;sup&gt;3&lt;/sup&gt;&lt;/a&gt; $172M/year!
&lt;br&gt;&lt;br&gt;
Worse, continuing to refuse to use instant replay to correct poor referee decisions (in 2012!) is basically unforgivable, and caused significant &lt;a href="http://uk.reuters.com/article/2009/11/20/uk-soccer-world-ireland-politics-idUKSP41482420091120?sp=true"&gt;international dispute&lt;/a&gt; during the last World Cup.  &lt;a href="http://en.wikipedia.org/wiki/Peter_Singer"&gt;Peter Singer&lt;/a&gt; wrote an &lt;a href="http://www.project-syndicate.org/commentary/is-it-okay-to-cheat-in-football-"&gt;article&lt;/a&gt; about the ethics of cheating in football that I agree with wholeheartedly; I don't think soccer players make good role models under the current rules (with the &lt;i&gt;possible&lt;/i&gt; exception of Lionel Messi's &lt;a href="http://www.youtube.com/watch?v=9S7hlL4sJek"&gt;refusal to flop&lt;/a&gt;).&lt;/p&gt;

&lt;p&gt;Singer looks for an instance of overtly ethical play in soccer, but even the one example he manages to find is not a good one.  He mentions Robbie Fowler in 1997 being awarded a penalty which he tries to decline, but the referee insists that he take it.  Singer says that Fowler takes the penalty "in a manner that enables the goalkeeper to save it", but that's not &lt;a href="http://www.youtube.com/watch?v=8mofSgbY8JE"&gt;what happens&lt;/a&gt; &amp;mdash; the keeper does get a hand to the shot, but then it spills back out and one of Fowler's teammates puts in the rebound for a goal.  If Fowler actually wanted to decline the penalty, he could have simply not aimed it at the inside of the goal.  Fowler &lt;a href="http://www.guardian.co.uk/football/2007/sep/05/theknowledge.sport"&gt;says&lt;/a&gt; that he was not intending to miss, and was playing with acceptance of the referee's decision even though he didn't agree with it.
&lt;br&gt;&lt;br&gt;&lt;br&gt;
Okay, so I have complaints and likes about every sport.  How do I decide which one is my favorite?  In the true spirit of utilitarianism, I have a nerdy idea about comparing sports against each other using the axes I care about directly:  the satisfyingness of Mako's &lt;i&gt;decisive moment&lt;/i&gt;'s timing, the long term &lt;i&gt;safety of the players&lt;/i&gt;, the &lt;i&gt;impact of referee decisions on the outcome&lt;/i&gt; and the &lt;i&gt;impact that money has&lt;/i&gt; on the strength of each team; but I'll break this post up here and wait until my next post to detail my calculation.  Of course, these variables might be much more important to me than to you.  What do you think?  Are there more variables that you'd add for consideration?  How does your favorite sport stack up in these metrics?  Do you want to set me straight on ice hockey?
&lt;br&gt;
&lt;br&gt;
&lt;p id="footnote-1"&gt;&lt;sup&gt;1&lt;/sup&gt;: No, I'm not trying to claim that Andy Murray is English like me; he is Scottish.  But apparently the United Kingdom is a country that consists of countries, even though that makes no sense, so he's still my countryman.
&lt;br&gt;
&lt;p id="footnote-2"&gt;&lt;sup&gt;2&lt;/sup&gt;: Figures are from &lt;a href="http://baseballplayersalaries.com/"&gt;http://baseballplayersalaries.com/&lt;/a&gt;.
&lt;br&gt;
&lt;p id="footnote-3"&gt;&lt;sup&gt;3&lt;/sup&gt;: Stats from &lt;a href="http://www.trophy4toon.co.uk/salaries.html"&gt;http://www.trophy4toon.co.uk/salaries.html&lt;/a&gt;.  I can't find total salary data that's newer than 2008.&lt;/p&gt;</description>
      <pubDate>Mon, 02 Apr 2012 05:52:00 +0100</pubDate>
      <guid isPermaLink="false">urn:uuid:b947ecf2-c8ea-4619-8c47-e25f224f1bf4</guid>
      <author>Chris Ball</author>
      <link>http://blog.printf.net/articles/2012/04/02/sports</link>
      <category>sports</category>
    </item>
    <item>
      <title>Armand Coeck - Lamento</title>
      <description>&lt;p&gt;Catching up on more guitar pieces that I hadn't recorded yet -- this lament is by a Belgian composer, Armand Coeck:&lt;/p&gt;

&lt;div align="center"&gt;
 &lt;object width="493" height="302"&gt;&lt;param name="movie" value="http://www.youtube.com/v/X-sjtHAW30o&amp;ap=%2526fmt%3D22"&gt;&lt;/param&gt;&lt;param name="allowFullScreen" value="true"&gt;&lt;/param&gt;&lt;param name="allowscriptaccess" value="always"&gt;&lt;/param&gt;&lt;embed src="http://www.youtube.com/v/X-sjtHAW30o&amp;hd=1" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" width="528" height="324"&gt;&lt;/embed&gt;&lt;/object&gt;
&lt;br&gt;
 &lt;i&gt;Armand Coeck - Lamento (&lt;a href="http://www.youtube.com/watch?v=X-sjtHAW30o&amp;hd=1"&gt;youtube&lt;/a&gt; / &lt;a href="http://chris.printf.net/lamento.webm"&gt;download WebM version, CC-BY-SA 3.0&lt;/a&gt;)&lt;/i&gt;
&lt;/div&gt;</description>
      <pubDate>Sun, 25 Mar 2012 22:33:00 +0100</pubDate>
      <guid isPermaLink="false">urn:uuid:3f1d27bd-eae7-4a61-805a-757e37cdc226</guid>
      <author>Chris Ball</author>
      <link>http://blog.printf.net/articles/2012/03/25/armand-coeck-lamento</link>
      <category>guitar</category>
      <category>classical</category>
    </item>
    <item>
      <title>Boston St. Patrick's Day Parade 2012</title>
      <description>&lt;p&gt;&lt;a href="http://mad.printf.net/"&gt;Mad&lt;/a&gt; and I went to the Boston St. Patrick's Day Parade today for the first time, along with a bunch of friendly photowalkers I met on Google+.  Here are a few photos I took, the rest are in &lt;a href="https://plus.google.com/112938759017605010116/posts/7Q9gT5wUZiN"&gt;this Google+ album&lt;/a&gt; or &lt;a href="http://www.flickr.com/photos/madprime/sets/72157629616514357/detail/"&gt;this Flickr set&lt;/a&gt;, available under CC-BY-SA 2.0:&lt;/p&gt;

&lt;div align="center"&gt;
 &lt;img src="http://chris.printf.net/6849378456_a7f828b7f3.jpg"&gt;&lt;br&gt;&lt;br&gt;
 &lt;img src="http://chris.printf.net/6849388534_10f102f1f8.jpg"&gt;&lt;br&gt;&lt;br&gt;
 &lt;img src="http://chris.printf.net/6849390646_4a7eca7828.jpg"&gt;&lt;br&gt;&lt;br&gt;
 &lt;img src="http://chris.printf.net/6849419152_bc223f3d07.jpg"&gt;&lt;br&gt;&lt;br&gt;
 &lt;img src="http://chris.printf.net/6849400710_d8694b96c8.jpg"&gt;&lt;br&gt;&lt;br&gt;
 &lt;img src="http://chris.printf.net/6849406024_b273eac3d0.jpg"&gt;&lt;br&gt;&lt;br&gt;
 &lt;img src="http://chris.printf.net/6995514667_27a2d547d2.jpg"&gt;&lt;br&gt;&lt;br&gt;
 &lt;img src="http://chris.printf.net/6995517947_69f79fb62f.jpg"&gt;&lt;br&gt;
&lt;/div&gt;</description>
      <pubDate>Mon, 19 Mar 2012 04:00:00 +0000</pubDate>
      <guid isPermaLink="false">urn:uuid:019de7b1-8539-44ae-9b83-9907133f6575</guid>
      <author>Chris Ball</author>
      <link>http://blog.printf.net/articles/2012/03/19/boston-st-patricks-day-parade-2012</link>
      <category>photography</category>
    </item>
    <item>
      <title>New guitar piece</title>
      <description>&lt;p&gt;Time for a new guitar recording &amp;mdash; here's Thierry Tisserand's composition "&lt;i&gt;D&#232;s l'aube&lt;/i&gt;" ("At Dawn"), from his triptych "&lt;i&gt;Folk Songes&lt;/i&gt;".&lt;/p&gt;

&lt;div align="center"&gt;
 &lt;object width="493" height="302"&gt;&lt;param name="movie" value="http://www.youtube.com/v/UwK8BJvByPg&amp;ap=%2526fmt%3D22"&gt;&lt;/param&gt;&lt;param name="allowFullScreen" value="true"&gt;&lt;/param&gt;&lt;param name="allowscriptaccess" value="always"&gt;&lt;/param&gt;&lt;embed src="http://www.youtube.com/v/UwK8BJvByPg&amp;hd=1" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" width="528" height="324"&gt;&lt;/embed&gt;&lt;/object&gt;
&lt;br&gt;
 &lt;i&gt;Thierry Tisserand - D&#232;s l'aube (&lt;a href="http://www.youtube.com/watch?v=UwK8BJvByPg&amp;hd=1"&gt;youtube&lt;/a&gt;, &lt;a href="http://chris.printf.net/des-laube.webm"&gt;download WebM version&lt;/a&gt;)&lt;/i&gt;
&lt;/div&gt;</description>
      <pubDate>Sun, 11 Mar 2012 00:33:00 +0000</pubDate>
      <guid isPermaLink="false">urn:uuid:25bb891b-05fb-4de6-9604-1cc7b8e7acec</guid>
      <author>Chris Ball</author>
      <link>http://blog.printf.net/articles/2012/03/11/new-guitar-piece</link>
      <category>music</category>
      <category>guitar</category>
      <category>classical</category>
    </item>
    <item>
      <title>Photo projects</title>
      <description>&lt;p&gt;I love a good photo project.  Here are some favourites -- feel free to suggest any that you've enjoyed in the comments.
&lt;br&gt;&lt;br&gt;
Pierre Beteille's &lt;a href="http://www.flickr.com/photos/pookhy/sets/72157622508636799/detail/"&gt;Books/Livres&lt;/a&gt;:&lt;/p&gt;

&lt;div align="center"&gt;
&lt;a href="http://www.flickr.com/photos/pookhy/6049203399/"&gt;&lt;img src="http://farm7.staticflickr.com/6186/6049203399_33ddb26269.jpg" width="500" height="450"&lt;/img&gt;&lt;br&gt;&lt;caption&gt;&lt;i&gt;Books #13: George Orwell 1984&lt;/i&gt; by Pierre Beteille on Flickr&lt;/caption&gt;&lt;/a&gt;&lt;/div&gt;
&lt;br&gt;&lt;br&gt;
Irina Werning's &lt;a href="http://irinawerning.com/back-to-the-fut/back-to-the-future/"&gt;Back To The Future&lt;/a&gt; and &lt;a href="http://irinawerning.com/bttf2/back-to-the-future-2-2011/"&gt;Back To The Future 2&lt;/a&gt;:

&lt;div align="center"&gt;
&lt;a href="http://irinawerning.com/bttf2/back-to-the-future-2-2011/"&gt;&lt;img src="http://irinawerning.com/files/gimgs/11_back232.jpg"&gt;&lt;/img&gt;&lt;br&gt;&lt;caption&gt;&lt;i&gt;The Zurbanos 1999 &amp; 2011 Buenos Air&lt;/i&gt; by Irina Werning&lt;/caption&gt;&lt;/a&gt;
&lt;/div&gt;

&lt;p&gt;&lt;br&gt;&lt;br&gt;
Natsumi Hayashi's &lt;a href="http://yowayowacamera.com/"&gt;Levitating Girl&lt;/a&gt;:&lt;/p&gt;

&lt;div align="center"&gt;
&lt;a href="http://yowayowacamera.com/"&gt;&lt;img src="http://yowayowacamera.com/1img/banana_img/img_8b64651ffae7fc65a7380ad4828ec335350c38fb.jpg"&gt;&lt;/img&gt;&lt;br&gt;
&lt;caption&gt;&lt;i&gt;Today's Levitation, Fri.05.06.2011&lt;/i&gt; by Natsumi Hayashi&lt;/caption&gt;&lt;/a&gt;
&lt;/div&gt;

&lt;p&gt;&lt;br&gt;&lt;br&gt;&lt;/p&gt;

&lt;p&gt;Adele Enersen's &lt;a href="http://www.etsy.com/blog/en/2012/when-my-baby-dreams/"&gt;When My Baby Dreams&lt;/a&gt;:&lt;/p&gt;

&lt;div align="center"&gt;
&lt;a href="http://www.etsy.com/blog/en/2012/when-my-baby-dreams/"&gt;&lt;img src="http://www.etsy.com/blog/en/files/2012/01/WMBD_Beginning_forest2.jpg"&gt;&lt;/img&gt;&lt;br&gt;&lt;caption&gt;&lt;i&gt;Beginning Forest&lt;/i&gt; by Adele Enersen&lt;/caption&gt;&lt;/a&gt;&lt;/div&gt;

&lt;p&gt;&lt;br&gt;&lt;br&gt;&lt;/p&gt;

&lt;p&gt;Carli Davidson's &lt;a href="http://www.carlidavidsonphotography.com/#/Portfolio/Pets%20with%20Disabilities%20/1/"&gt;Portraits of loving pets with disabilities&lt;/a&gt;:&lt;/p&gt;

&lt;div align="center"&gt;
&lt;a href="http://www.carlidavidsonphotography.com/#/Portfolio/Pets%20with%20Disabilities%20/5/thumbs"&gt;&lt;img src="http://files.petapixel.com/assets/uploads/2011/10/pwd3_mini.jpg"&gt;&lt;/img&gt;&lt;br&gt;&lt;caption&gt;
&lt;i&gt;Portraits of loving pets with disabilities&lt;/i&gt; by Carli Davidson&lt;/caption&gt;&lt;/a&gt;&lt;/div&gt;

&lt;p&gt;&lt;br&gt;&lt;br&gt;&lt;/p&gt;

&lt;p&gt;Adde Adesokan&#8217;s &lt;a href="http://www.flickr.com/photos/theblackstar/sets/72157626117942754/detail/"&gt;Triptychs of Strangers&lt;/a&gt;:&lt;/p&gt;

&lt;div align="center"&gt;
&lt;a href="http://www.flickr.com/photos/theblackstar/6172045186/"&gt;&lt;img src="http://farm7.staticflickr.com/6166/6172045186_d1beb3b9e5.jpg" width="351" height="500"&gt;&lt;/img&gt;&lt;br&gt;&lt;caption&gt;&lt;i&gt;Triptychs of Strangers #23, The Kharise Francis herself - London&lt;/i&gt; by Adde Adesokan&lt;/caption&gt;&lt;/a&gt;&lt;/div&gt;</description>
      <pubDate>Mon, 05 Mar 2012 01:52:00 +0000</pubDate>
      <guid isPermaLink="false">urn:uuid:6bd8d1e8-6e26-4002-bf28-d1bf9d068e0c</guid>
      <author>Chris Ball</author>
      <link>http://blog.printf.net/articles/2012/03/05/photo-projects</link>
      <category>photography</category>
    </item>
    <item>
      <title>Computers are very good at the game of Go</title>
      <description>&lt;div align="center"&gt;
&lt;a href="http://chris.printf.net/speedgo.jpg"&gt;&lt;img src="http://chris.printf.net/speedgo-500px.jpg"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;br&gt;&lt;i&gt;MIT Speed Go tournament, Jan 2012&lt;/i&gt;
&lt;/div&gt;
&lt;br&gt;
There's an attraction between computer programmers and the Asian game of &lt;a href="http://en.wikipedia.org/wiki/Go_(game)"&gt;Go&lt;/a&gt;.  I think there's a lot to like about the game &amp;mdash; it has very simple rules, high complexity (it's "deeper" than chess) and pleasing symmetry and aesthetics.  I think the real reason programmers are so drawn to it might be a little more self-involved, though:  being good at things that computers aren't good at tends to make programmers happy, and computers are &lt;i&gt;terrible&lt;/i&gt; at Go.&lt;a href="#footnote-1"&gt;&lt;sup&gt;1&lt;/sup&gt;&lt;/a&gt;
&lt;br&gt;&lt;br&gt;
Or at least, that's the folk knowledge that's been true for most of my life.  Computers have always been worse than an average amateur with a few years of experience, and incomparably bad to true professionals of the game.  Someone I was talking to brought up the ineptitude of computers at Go a few days ago, talking about new ideas for CAPTCHAs: &lt;i&gt;"just make the human solve Go problems"&lt;/i&gt;, they said, and you're done; computers can't do that, right?
&lt;br&gt;&lt;br&gt;
So, I've enjoyed this feeling of technological superiority to computers as much as anyone, and it hurts me a little to say this, but here I go:  &lt;b&gt;the idea that computers are bad at Go is not remotely true anymore&lt;/b&gt;.  Computers are excellent at Go now.  To illustrate this, there's some history we should go into:
&lt;br&gt;&lt;br&gt;
Back in 1997 &amp;mdash; the year that Deep Blue beat chess world champion Garry Kasparov for the first time &amp;mdash; Darren Cook &lt;a href="http://dcook.org/gobet/mail.19970901.txt"&gt;asked Computer Go enthusiasts&lt;/a&gt; for predictions on when computers will get to &lt;i&gt;shodan&lt;/i&gt; (a strong amateur level) and when they'll beat World Champion players.  &lt;a href="http://homepages.cwi.nl/~tromp/"&gt;John Tromp&lt;/a&gt;, an academic researcher and approximately &lt;i&gt;shodan&lt;/i&gt;-level amateur, noticed the optimism of the guesses and wondered aloud whether the bets would continue to be optimistic if money were on the line, culminating in:
&lt;blockquote&gt;John Tromp: &lt;i&gt;"I would happily bet that I won't be beaten in a 10 game match before the year 2011."&lt;/i&gt;&lt;/blockquote&gt;
&lt;br&gt;
Darren Cook took the bet for $1000, and waited until 2010 before conducting the match against the "Many Faces of Go" program:  Tromp won by 4 games to 0.  That seemed to settle things, but the challenge was repeated last month, from January 13th-18th 2012, and things happened rather differently.  This time Tromp was playing a rising star of a program named &lt;a href="http://soft.mycom.co.jp/pcigo/tencho3/index.html"&gt;Zen19&lt;/a&gt;, which won first place at the Computer Go Olympiad in 2009 and 2011.  The results are in, and:
&lt;br&gt;&lt;br&gt;
&lt;b&gt;Zen19 won by 3 games to 1.&lt;/b&gt;  (For more reading on the challenge, see &lt;a href="http://gogameguru.com/man-machine-showdown-board-game-go/"&gt;David Ormerod's page&lt;/a&gt; or &lt;a href="http://dcook.org/gobet/"&gt;Darren Cook's&lt;/a&gt;.)
&lt;br&gt;&lt;br&gt;
Beating an amateur &lt;i&gt;shodan&lt;/i&gt;-level player is shocking by itself &amp;mdash; that's my strength too, and I wasn't expecting a computer to be able to beat me anytime soon &amp;mdash; but that isn't nearly the limit of Zen19's accomplishments: its progress on the &lt;a href="http://gokgs.com/"&gt;KGS&lt;/a&gt; Go server looks something like this:
&lt;br&gt;&lt;br&gt;
&lt;a href="http://www.gokgs.com/graphPage.jsp?user=zen19"&gt;&lt;img src="http://www.gokgs.com/servlet/graph/zen19-en_US.png" align="right" width=380&gt;&lt;/img&gt;&lt;/a&gt;
&lt;table border="0"&gt;
&lt;th&gt;Year&lt;/th&gt;&lt;th&gt;KGS Rank&lt;/th&gt;
&lt;tr&gt;&lt;td&gt;2009&lt;/td&gt;&lt;td&gt;1-dan&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td&gt;2010&lt;/td&gt;&lt;td&gt;3-dan&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td&gt;2011&lt;/td&gt;&lt;td&gt;4-dan&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td&gt;2012&lt;/td&gt;&lt;td&gt;5-dan&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;
&lt;br&gt;
To put the 5-dan rank in perspective:  amongst the players who played &lt;a href="http://usgo.org/"&gt;American Go Association&lt;/a&gt; rated games in 2011, there were only 105 players that are 6-dan and above.&lt;a href="#footnote-2"&gt;&lt;sup&gt;2&lt;/sup&gt;&lt;/a&gt;  This suggests that there are only around 100 active tournament players in the US who are significantly stronger than Zen19.  I'm sure I'll never become that strong myself.&lt;a href="#footnote-3"&gt;&lt;sup&gt;3&lt;/sup&gt;&lt;/a&gt;
&lt;br&gt;&lt;br&gt;
Being able to gain four dan-level ranks in three years is incredible, and there's no principled reason to expect that Zen19 will stop improving &amp;mdash; it seems to have aligned itself on a path where it just continues getting better the more CPU time you throw at it, which is very reminiscent of the story with computer chess.  Even more reminiscent (and frustrating!) is the technique used to get it to 5-dan.  Before I explain how it works, I'll explain how an older Go program worked, using my favorite example:  &lt;a href="http://webdocs.cs.ualberta.ca/~emarkus/neurogo/neurogo1996.html"&gt;NeuroGo&lt;/a&gt;.
&lt;br&gt;&lt;br&gt;
NeuroGo dates back to 1996, and has what seems like a very plausible design:  it's a hierarchical set of neural networks, containing a set of "Experts" that each get a chance to look at the board and evaluate moves.  It's also possible for an expert to override the other evaluators &amp;mdash; for example, a "Life and Death Expert" module could work out whether there's a way to "kill" a large group, and an "Opening Expert" could play the first moves of the game where balance and global position are most important.  This seems to provide a nice balance to the tension of different priorities when considering what to play.
&lt;br&gt;&lt;br&gt;
Zen19, on the other hand, incorporates almost &lt;b&gt;no&lt;/b&gt; knowledge about how to make strong Go moves!  It's implemented using &lt;a href="http://en.wikipedia.org/wiki/Monte_Carlo_method#Games"&gt;Monte Carlo Tree Search&lt;/a&gt;, as are all of the recent strong Go programs.  Monte Carlo methods involve, at the most basic level, choosing between moves by generating many thousands of random games that stem from each possible move and picking the move that leads to the games where you have the highest score; you wouldn't expect such a random technique to work for a game as deep as Go, but it does.  This makes me sad because while I wasn't foolish enough to believe that humans would always be better at Go than computers, I did think that the process of making a computer that is very good at Go might be equivalent to the process of acquiring a powerful understanding of how human cognition works; that the failure of brute-force solutions to Go would mean that we'd need a way to approximate how humans approach Go before we'd start to be able to beat strong human players reliably by implementing that same approach &lt;i&gt;in silico&lt;/i&gt;.
&lt;br&gt;&lt;br&gt;
&lt;i&gt;Update&lt;/i&gt;: "bitti" comments below that Zen19 is choosing which move to play based on maximizing win probability, not maximizing score.
&lt;br&gt;&lt;br&gt;
I think that programs like Zen19 have actually learned &lt;i&gt;even less&lt;/i&gt; about how to play good Go than computer chess programs have learned about how to play good chess; at least the chess programs contain heuristics about how to play positionally and how to value different pieces (in the absence of overriding information like a path to checkmate that involves sacrificing them).  This lack of inbuilt Go knowledge shows up in Zen19's games &amp;mdash; it regularly makes moves that look obviously bad, breaking proverbs about good play and stone connectivity, leaving you scratching your head at how it's making decisions.  You can read a &lt;a href="http://gogameguru.com/man-machine-match-final-results-game-commentary/"&gt;commented version of one of its wins against Tromp&lt;/a&gt; at GoGameGuru, or you could even play against it yourself on KGS.
&lt;br&gt;&lt;br&gt;
&lt;i&gt;Update&lt;/i&gt;: Matthew Woodcraft comments below that Zen19 does contain significant domain knowledge about Go.  It's hard to know exactly how much; it's closed-source.&lt;br&gt;&lt;br&gt;
Zen19 is beating extremely strong amateurs, but it hasn't beaten professionals in games with no handicap yet.  That said, now that we know that Zen19 is using Monte Carlo strategies, the reason why it seems to be getting stronger as it's fed more CPU time is revealed:  these strategies are the most obviously parallelizable algorithms out there, and for all we know this exact version of Zen19 could end up becoming World Champion if a few more orders of magnitude of CPU time were made available to it.
&lt;br&gt;&lt;br&gt;
Which would feel like a shame, because I was really looking forward to seeing us figure out how brains work.
&lt;br&gt;
&lt;hr&gt;
&lt;p id="footnote-1"&gt;&lt;small&gt;&lt;sup&gt;1&lt;/sup&gt;: I think this is probably why I've never been interested in puzzles like &lt;a href="http://en.wikipedia.org/wiki/Sudoku"&gt;Sudoku&lt;/a&gt;; I can't escape the feeling of "I could write a Perl script that does this for me".  If I wouldn't put up with such manual labor in my work life, why should I put up with it for fun?&lt;/small&gt;
&lt;p id="footnote-2"&gt;&lt;small&gt;&lt;sup&gt;2&lt;/sup&gt;: Here is &lt;a href="http://usgo.org/ratings/RatingsQuery.php?PlayerID=&amp;NamesLike=&amp;Month=01&amp;Year=2011&amp;TextOpt=HTML100&amp;Unrated=yes&amp;Download=0&amp;RLower=6&amp;RUpper=0&amp;SortField=NAME&amp;SortDescending=0&amp;Precision=5&amp;NewOpts%5B%5D=ID&amp;NewOpts%5B%5D=Name&amp;NewOpts%5B%5D=Rating&amp;NewOpts%5B%5D=Sigma&amp;NewOpts%5B%5D=Date&amp;NewOpts%5B%5D=Chapter&amp;NewOpts%5B%5D=State&amp;NewOpts%5B%5D=MExp&amp;NewOpts%5B%5D=MType&amp;NewOpts%5B%5D=AGAGD"&gt;the query&lt;/a&gt; I used to come up with the 105 number.&lt;/small&gt;
&lt;p id="footnote-3"&gt;&lt;small&gt;&lt;sup&gt;3&lt;/sup&gt;: In fact, KGS ranks are stronger than the same-numbered AGA rank, so the correct number of active players in the US who are stronger than Zen19 may be even smaller.  Being stronger than US players isn't the same as being stronger than professional players, though &amp;mdash; there are many players that are much stronger than amateur 5-dan in Asia, because there are high-value tournaments and incentives to dedicating your life to mastering Go there that don't exist elsewhere.&lt;/small&gt;

</description>
      <pubDate>Thu, 23 Feb 2012 13:07:00 +0000</pubDate>
      <guid isPermaLink="false">urn:uuid:0b280518-e97f-43fc-a7cc-9d018390ff34</guid>
      <author>Chris Ball</author>
      <link>http://blog.printf.net/articles/2012/02/23/computers-are-very-good-at-the-game-of-go</link>
      <category>go</category>
    </item>
    <item>
      <title>Lawrence Lessig interviews Jack Abramoff</title>
      <description>&lt;div align="center"&gt;
&lt;a href="http://www.flickr.com/photos/madprime/6474959611/in/photostream/"&gt;&lt;img src="http://farm8.staticflickr.com/7156/6474959611_916157e938_d.jpg"&gt;&lt;/a&gt;
&lt;/div&gt;

&lt;p&gt;&lt;br&gt;
Last week I went to the first in a new series of events called "In the Dock" -- Harvard Law professor Lawrence Lessig interviewed Jack Abramoff on the topic of Abramoff's illegal lobbying in specific, and the state of corruption in US politics in general. I took some photos (CC-BY-SA 3.0), you can watch a video of the talk &lt;a href="http://www.law.harvard.edu/news/2011/12/09_jack_abramoff_talks_about_corruption.html"&gt;here&lt;/a&gt;, and my friend &lt;a href="http://bemasc.net/wordpress/2011/12/07/in-the-dock/"&gt;Ben Schwartz&lt;/a&gt; also has a write-up including some great quotes.&lt;/p&gt;

&lt;div align="center"&gt;
&lt;a href="http://www.flickr.com/photos/madprime/6474960221/in/photostream/"&gt;&lt;img src="http://farm8.staticflickr.com/7173/6474960221_933ec16b8c_d.jpg"&gt;&lt;/a&gt;
&lt;/div&gt;

&lt;p&gt;&lt;br&gt;
I went in willing to detest what Abramoff had done, and him by extension -- and it's not that I ended up liking or trusting him, or that I was unexpecting his "Look, you put a few guys in jail, it doesn't mean the problem's been solved and everything's okay now" argument for why assigning a disproportionate amount of blame to him is unproductive, but he did manage to convince me that he's uniquely placed to be an ally to help fix the system; that he's someone who knows all of its intricacies and is sincere about achieving a sense of redemption by working on stopping other people from doing exactly what he did.&lt;/p&gt;

&lt;div align="center"&gt;
&lt;a href="http://www.flickr.com/photos/madprime/6474960983/in/photostream/"&gt;&lt;img src="http://farm8.staticflickr.com/7173/6474960983_c3fb26e254_d.jpg"&gt;&lt;/a&gt;
&lt;/div&gt;

&lt;p&gt;&lt;br&gt;
His argument for how his book tour isn't a cynical attempt to make money is convincing, too: to the small extent that he's able to make money from books and speaking, he's forced to use it to repay a $40m restitution order to the government and his victims.&lt;/p&gt;

&lt;div align="center"&gt;
&lt;a href="http://www.flickr.com/photos/madprime/6474961691/in/photostream/"&gt;&lt;img src="http://farm8.staticflickr.com/7164/6474961691_bfba179160_d.jpg"&gt;&lt;/a&gt;
&lt;/div&gt;

&lt;p&gt;&lt;br&gt;
The most surprising thing I learned was that the crimes he went to jail for were not the particularly objectionable democracy-perverting forms of corruption that we ascribe to him -- those are totally legal (even more so than before, thanks to Citizens United) and still happening today across Washington's 30,000 lobbyists -- but instead mostly unrelated charges, like mail fraud. He thinks that the only way to stop bribery in Congress is to ban political contributions from anyone who stands to benefit from public funds (which Lessig criticized as being far too ambiguous and broad: who &lt;b&gt;doesn't&lt;/b&gt; stand to benefit from public funds?), and to ban lawmakers and their staff from later working for lobbyists for the rest of their lives. He described how, before his downfall, he would agree to hire a lawmaker's staffers later while they were still working for the lawmaker, and would then have control over them from that point onwards, even though no money had changed hands -- not only is this movement from being congressional staff to becoming a lobbyist still legal, it's daily routine.&lt;/p&gt;

&lt;div align="center"&gt;
&lt;a href="http://www.flickr.com/photos/madprime/6474962659/in/photostream/"&gt;&lt;img src="http://farm8.staticflickr.com/7031/6474962659_39c699b8f7_d.jpg"&gt;&lt;/a&gt;
&lt;/div&gt;

&lt;p&gt;&lt;br&gt;
I hope this talk series continues. I can't think of many other examples of powerful figures being brave enough to open themselves up and engage in an extended ethical (rather than legal or technical) critique and cross-examination by their peers and the public, and it was powerful to watch and learn from.&lt;/p&gt;

&lt;p&gt;(This is reposted from my &lt;a href="https://plus.google.com/112938759017605010116/posts/7XLFszTxdc6"&gt;Google+&lt;/a&gt; stream.)&lt;/p&gt;</description>
      <pubDate>Sun, 11 Dec 2011 21:20:00 +0000</pubDate>
      <guid isPermaLink="false">urn:uuid:6d0ff321-ddc4-42ea-94ae-3c819ddc0356</guid>
      <author>Chris Ball</author>
      <link>http://blog.printf.net/articles/2011/12/11/lawrence-lessig-interviews-jack-abramoff</link>
      <category>ethics</category>
    </item>
    <item>
      <title>Charity, 2011 edition</title>
      <description>&lt;p&gt;Oops, only three blog posts in the last year.  I've mostly been posting over at &lt;a href="https://plus.google.com/112938759017605010116/posts"&gt;Google+&lt;/a&gt;, wherein I met a bunch of photographers and picked up a fledgling &lt;a href="https://plus.google.com/u/0/photos/112938759017605010116/albums/5637573932501306529"&gt;photography obsession&lt;/a&gt; of my own.  I'll try to write a "what I did in the last year" blog post at some point.&lt;/p&gt;

&lt;p&gt;This post isn't about that, though -- like &lt;a href="http://blog.printf.net/articles/2010/11/26/giving-thanks"&gt;last year&lt;/a&gt;, this year Madeleine and I are again donating &lt;i&gt;N&lt;/i&gt;% of our joint pre-tax income to effective charities for each year that we've been married, and this year &lt;i&gt;N&lt;/i&gt; is equal to 6.  Mad has a &lt;a href="https://plus.google.com/100533872344198336746/posts/dVNB1LEUQ41"&gt;post&lt;/a&gt; outlining why we're doing this and which groups she's chosen, and here's a writeup of who I decided to donate my half of the 6% to:&lt;/p&gt;

&lt;p&gt;&lt;b&gt;40% to Schistosomiasis Control Initiative&lt;/b&gt;&lt;/p&gt;

&lt;p&gt;It's very common to think about international aid in terms of "lives saved", but it makes more sense to talk about something like "number of disability-adjusted life years increased" (&lt;a href="http://en.wikipedia.org/wiki/Disability-adjusted_life_year"&gt;DALY&lt;/a&gt;s). GiveWell thinks that &lt;a href="http://www3.imperial.ac.uk/schisto"&gt;this charity&lt;/a&gt; -- which concentrates on the "Neglected Tropical Diseases" which are usually worms/parasites -- offers an extremely effective intervention at improving DALYs; because these infections are readily treatable using very inexpensive drugs, yet often come with debilitating symptoms that don't quite kill the "host".&lt;/p&gt;

&lt;p&gt;&lt;b&gt;25% to Give Directly&lt;/b&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="http://www.givedirectly.org/"&gt;Give Directly&lt;/a&gt; is a fascinating project. The charity simply finds the poorest people in an area (currently they're working in Kenya) and transfers money to them via mobile phone. This leaves the charity itself with very little overhead -- all the charity has to do is identify who the poorest people are, which they often do by looking at what kind of place they live in. The claim is that this outperforms many other attempts at aid; there's nowhere for the effect of the money to get diluted or misappropriated along the way.&lt;/p&gt;

&lt;p&gt;I should be clear that I don't think this is the best possible aid intervention. But, as GiveWell points out, it should be the intervention that we treat as the baseline that other interventions are measured against -- if you think you have a better idea, then you should be able to prove it by comparing outcomes against this method. Give Directly has a commitment to measuring the quantitative effects of its work; I want to support finding out how well this intervention works, even though the optimist in me hopes we can do much better!&lt;/p&gt;

&lt;p&gt;&lt;b&gt;15% to GiveWell&lt;/b&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="http://www.givewell.org/"&gt;GiveWell&lt;/a&gt; has dramatically changed how I think about and evaluate charitable giving. This year I've been pleased to see them doing things like exposing errors in commonly referenced DALY calculations, and generally acting as the quantitative sanity-checker for development charities.&lt;/p&gt;

&lt;p&gt;&lt;b&gt;15% to the Tor Project&lt;/b&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="http://torproject.org/"&gt;Tor&lt;/a&gt; is a technology that helps its users achieve anonymous access to the Internet over a connection that may be being monitored; as a side-effect of this, it allows its users to get around filtering of their connections. I think this pairs up nicely with Madeleine's choice of donating to the Wikimedia Foundation -- it's important to have the world's knowledge available to everyone, not just the people who are lucky enough to have an unfiltered and unmonitored connection. I increased my donation to Tor this year after seeing how effective the Internet has been as a pro-democracy tool this year, and how many regimes tried to filter communication using it when it was being used by citizens to coordinate with each other.&lt;/p&gt;

&lt;p&gt;&lt;b&gt;5% to the EFF&lt;/b&gt;&lt;/p&gt;

&lt;p&gt;While Tor works on "exporting" the Internet that we use to regimes that wish to block or filter it, the &lt;a href="http://eff.org/"&gt;EFF&lt;/a&gt; is helping to keep the network itself safe from becoming controlled by groups like governments or media companies; attempting to preserve the freedoms that the net provides today.&lt;/p&gt;</description>
      <pubDate>Thu, 01 Dec 2011 15:57:00 +0000</pubDate>
      <guid isPermaLink="false">urn:uuid:94d58f66-8be3-44a5-82cd-3811905e90f9</guid>
      <author>Chris Ball</author>
      <link>http://blog.printf.net/articles/2011/12/01/charity-2011-edition</link>
      <category>ethics</category>
      <category>charity</category>
    </item>
    <item>
      <title>Narrative Interfaces</title>
      <description>As &lt;a href="http://cananian.livejournal.com/64747.html"&gt;Scott's preview post explained&lt;/a&gt;, today was "Narrative Interfaces" day at OLPC &amp;mdash; the general motivation for this work is that the current Sugar interface leaves you able to do lots of different activities with your XO laptop, but doesn't have any strong opinions about which you *should* do, or which order you should do them in.  Wouldn't it be better if we could come up with a plot/narrative behind the activities that can be explored on an XO?
&lt;br&gt;&lt;br&gt;
I've uploaded videos of the talks now.  They are:
&lt;br&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="http://www.dailymotion.com/video/xjdaev_diamond-age_tech"&gt;C. Scott Ananian's talk&lt;/a&gt; on the lessons OLPC can learn from Neal Stephenson's book &lt;a href="http://en.wikipedia.org/wiki/The_Diamond_Age"&gt;&lt;i&gt;The Diamond Age&lt;/i&gt;&lt;/a&gt;.&lt;/li&gt;
&lt;li&gt;&lt;a href="http://www.dailymotion.com/video/xjdaak_tinkerbooks_tech"&gt;Angela Chang's demo&lt;/a&gt; of her system for early literacy work called &lt;i&gt;Tinkerbooks&lt;/i&gt;.&lt;/li&gt;
&lt;li&gt;&lt;a href="http://www.dailymotion.com/video/xjdanu_an-overview-of-curveship_tech"&gt;Nick Montfort's talk&lt;/a&gt; introducing his interactive fiction system, &lt;a href="http://curveship.com/"&gt;&lt;i&gt;Curveship&lt;/i&gt;&lt;/a&gt;.&lt;/li&gt;
&lt;li&gt;&lt;a href="http://www.dailymotion.com/video/xjdalz_a-gui-for-curveship_tech"&gt;My demo&lt;/a&gt; of one possible way to add a GUI on top of Curveship's world model.  (Source is &lt;a href="http://github.com/cjb/curveship"&gt;here&lt;/a&gt;, and includes pygame code and art from Radomir Dopieralski's &lt;a href="http://wiki.sheep.art.pl/Junk%20Lab"&gt;&lt;i&gt;Junk Lab&lt;/i&gt;&lt;/a&gt; demo.)&lt;/li&gt;
&lt;/ul&gt;
In the discussion afterwards we chatted about comics that do a good job of presenting non-fiction, as an alternative way of using narrative to present ideas &amp;mdash; here's our reading list:
&lt;ul&gt;
&lt;li&gt;&lt;a href="http://www.amazon.com/dp/1596914521/ref=cm_sw_em_r_am_ip_am_us?ie=UTF8"&gt;Logicomix: An Epic Search for Truth&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://www.amazon.com/dp/1596090782/ref=cm_sw_em_r_am_ip_am_us?ie=UTF8"&gt;99 Ways to Tell a Story: Exercises in Style&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://www.amazon.com/dp/0062731009/ref=cm_sw_em_r_am_ip_am_us?ie=UTF8"&gt;The Cartoon Guide to Physics&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://www.amazon.com/dp/0345505298/ref=cm_sw_em_r_am_ip_am_us?ie=UTF8"&gt;Syncopated: An Anthology of Nonfiction Picto-Essays&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://www.amazon.com/dp/0805087443/ref=cm_sw_em_r_am_ip_am_us?ie=UTF8"&gt;A People's History of American Empire&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://www.amazon.com/dp/0978803744/ref=cm_sw_em_r_am_ip_am_us?ie=UTF8"&gt;Two Fisted Science: Stories About Scientists&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://www.amazon.com/dp/0809094819/ref=cm_sw_em_r_am_ip_am_us?ie=UTF8"&gt;The Cartoon Introduction to Economics: Volume One: Microeconomics&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://www.amazon.com/dp/0809089386/ref=cm_sw_em_r_am_ip_am_us?ie=UTF8"&gt;The Stuff of Life: A Graphic Guide to Genetics and DNA&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://www.amazon.com/dp/0262510375/ref=cm_sw_em_r_am_ip_am_us?ie=UTF8"&gt;Turtle Geometry: The Computer as a Medium for Exploring Mathematics&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://www.amazon.com/Dignifying-Science-Stories-About-Scientists/dp/0978803736/ref=sr_1_1?ie=UTF8"&gt;Dignifying Science: Stories About Women Scientists&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
If you'd prefer to download the videos directly, you can find the raw files &lt;a href="http://download.laptop.org/content/conf/20110617-narrative-interfaces/"&gt;here&lt;/a&gt;.
&lt;br&gt;&lt;br&gt;
Thanks to everyone who participated!  If you weren't able to attend in person but have comments after watching the videos, feel free to jump in with your thoughts on the Sugar Labs &lt;a href="http://lists.sugarlabs.org/listinfo/iaep"&gt;IAEP list&lt;/a&gt;.

</description>
      <pubDate>Sat, 18 Jun 2011 05:05:00 +0100</pubDate>
      <guid isPermaLink="false">urn:uuid:e25b3750-4e5e-4a31-87d7-249cc24f4247</guid>
      <author>Chris Ball</author>
      <link>http://blog.printf.net/articles/2011/06/18/narrative-interfaces</link>
      <category>narrative</category>
      <category>sugar</category>
      <category>olpc</category>
    </item>
    <item>
      <title>EduJam 2011</title>
      <description>I'm home from the &lt;a href="http://wiki.sugarlabs.org/go/EduJAM/2011"&gt;EduJam&lt;/a&gt; conference in Montevideo, Uruguay &amp;mdash; huge thanks to the organizers for a fun and productive event with around 80 Sugar and OLPC community members.  We also got to spend some days before the conference visiting school deployments in Uruguay and asking about how they're using their XOs (Uruguay is the first country to have implemented One Laptop Per Child for each of its children!), what they enjoy, and what they're frustrated by.
&lt;br&gt;&lt;br&gt;
I recorded video in the talks I attended, and collected video from people who recorded talks I didn't, and have started to upload them to the Dailymotion &lt;a href="http://dailymotion.com/sugarlabs"&gt;Sugarlabs account&lt;/a&gt;.  Here's what I've got so far, and I'll keep adding to the list as I collect more:
&lt;br&gt;&lt;br&gt;
&lt;h4&gt;Talks in both English and Spanish&lt;/h4&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="http://www.dailymotion.com/video/xinwz4_en-es-aprendizaje-y-evalucion-con-sugar-sugar-camp-opening_tech"&gt;Sugar Camp opening&lt;/a&gt; (First speaker in English, rest in Spanish)
&lt;li&gt;&lt;a href="http://www.dailymotion.com/video/xipgu2_en-panel-deployment-round-table_tech"&gt;Panel: Deployment round table&lt;/a&gt; (Nepal, Rwanda, Paraguay, Uganda, Argentina, Nosy Komba)
&lt;li&gt;&lt;a href="http://www.dailymotion.com/video/xip01e_en-es-sugar-education-and-tablets_tech"&gt;Sugar, Education and Tablets&lt;/a&gt; (slides have Spanish subtitles)
&lt;li&gt;&lt;a href="http://www.dailymotion.com/video/xinumo_en-es-maintainership-in-an-open-source-community-mantenimiento-de-actividades-en-una-comunidad-open_tech"&gt;Maintainership in an open source community&lt;/a&gt;
&lt;li&gt;&lt;a href="http://www.dailymotion.com/video/xiof12_en-es-robots-and-the-xo_tech"&gt;Robots and the XO&lt;/a&gt;
&lt;li&gt;&lt;a href="http://www.dailymotion.com/video/xip3at_en-es-olpc-xo-1-75_tech"&gt;OLPC XO-1.75&lt;/a&gt;
&lt;/ul&gt;

&lt;h4&gt;Talks in English only&lt;/h4&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="http://www.dailymotion.com/video/xinwyk_en-life-in-the-sugar-olpc-multiverse-vida-en-el-sugar-olpc-multiverso_tech"&gt;Life in the OLPC Multiverse&lt;/a&gt;
&lt;li&gt;&lt;a href="http://www.dailymotion.com/video/xinz0m_en-sugar-future_tech"&gt;Sugar Future&lt;/a&gt;
&lt;li&gt;&lt;a href="http://www.dailymotion.com/video/xiobli_en-advanced-topics-on-etoys-temas-avanzados-en-etoys_tech"&gt;Advanced topics on Etoys&lt;/a&gt;
&lt;li&gt;&lt;a href="http://www.dailymotion.com/video/xip6dw_en-internationalization-everywhere_tech"&gt;Internationalization Everywhere&lt;/a&gt;
&lt;li&gt;&lt;a href="http://www.dailymotion.com/video/xip6ep_en-the-diamond-age_tech"&gt;The Diamond Age&lt;/a&gt;
&lt;li&gt;&lt;a href="http://www.dailymotion.com/video/xinx14_en-android-and-native-client_tech"&gt;Android and Native Client&lt;/a&gt;
&lt;li&gt;&lt;a href="http://www.dailymotion.com/video/xip6qk_en-learning-from-past-and-present-experiences_tech"&gt;Panel: Learning from past and present experiences&lt;/a&gt;
&lt;/ul&gt;

&lt;h4&gt;Talks in Spanish only&lt;/h4&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="http://www.dailymotion.com/video/xinwzs_es-videojuegos-videogames_tech"&gt;Videojuegos&lt;/a&gt;
&lt;li&gt;&lt;a href="http://www.dailymotion.com/video/xinwzh_es-exposicion-del-plan-ceibal-plan-ceibal-exposed_tech"&gt;Exposicion del Plan Ceibal&lt;/a&gt;
&lt;li&gt;&lt;a href="http://www.dailymotion.com/video/xip3yf_es-sugar-para-ninos-con-descapacidades_tech"&gt;Sugar para ni&#241;os con descapacidades&lt;/a&gt;
&lt;li&gt;&lt;a href="http://www.dailymotion.com/video/xiog8v_es-sugar-actividades-para-la-web-sugar-activities-for-the-web_tech"&gt;Sugar actividades para la web&lt;/a&gt;
&lt;/ul&gt;&lt;p&gt;
(Please let me know in the comments if there are problems with any of the videos.  Thanks to Bert Freudenberg for help with encoding them.)

</description>
      <pubDate>Sat, 14 May 2011 19:39:00 +0100</pubDate>
      <guid isPermaLink="false">urn:uuid:ba0e608a-17a4-4c3f-8249-f9e87017ecce</guid>
      <author>Chris Ball</author>
      <link>http://blog.printf.net/articles/2011/05/14/edujam-2011</link>
      <category>edujam</category>
      <category>sugar</category>
      <category>olpc</category>
    </item>
    <item>
      <title>MIT Mystery Hunt 2011</title>
      <description>Well, that was unexpected &amp;mdash; the &lt;a href="http://en.wikipedia.org/wiki/MIT_Mystery_Hunt"&gt;Mystery Hunt&lt;/a&gt; team I've hunted with for the past three years, Codex, won the hunt this year!  It's the team's tenth year of competing and our first win.  Congrats to everyone!  Here's a &lt;a href="http://www.boston.com/news/local/massachusetts/articles/2011/01/17/at_mit_mystery_hunt_teams_labor_to_solve_elaborate_puzzles/"&gt;Boston Globe&lt;/a&gt; article about the whole thing.
&lt;p&gt;&lt;p&gt;
The hunt organizers did a beautiful job putting together the hunt (it took an estimated 20,000 person-hours), and the laser-etched "coin" we won the hunt by finding at 6am on Sunday morning was a reflection of how much effort had gone into the hunt in general:
&lt;p&gt;
&lt;div align="center"&gt;
 &lt;a href="http://www.flickr.com/photos/16838219@N00/5364190449/"&gt; &lt;img src="http://chris.printf.net/2011-coin.jpg" alt="The coin!"&gt;&lt;/img&gt;&lt;/a&gt;
 &lt;br&gt;&lt;i&gt;The coin!&lt;/i&gt;
&lt;/div&gt;
&lt;p&gt;&lt;p&gt;
Of course, this means that now it's our turn to write the hunt &amp;mdash; as &lt;a href="http://cananian.livejournal.com/61919.html"&gt;Scott&lt;/a&gt; says, our free time for the next year has just vanished.  It'll be fun, though; it's always sad when the hunt ends and you realize you aren't going to get to hang out with the awesome people you just spent a sleepless weekend solving puzzles with until next year, but having to meet up regularly to write and test the puzzles for next year will fix that.  We've got a very high bar to live up to, and a thirty-year-old tradition to keep alive.
&lt;p&gt;&lt;p&gt;
(Oh, yeah, geekiest moment of the hunt: one of the puzzles  &amp;mdash; &lt;a href="http://ihavetofindpeach.com/puzzles/mega_man/redundant_obsolescence/answer/"&gt;Redundant Obsolescence&lt;/a&gt; &amp;mdash; involved plugging an Iomega Zip drive into my desktop PC via parallel port and reading files back off it, in Linux.  I couldn't believe it worked.)
&lt;p&gt;&lt;p&gt;

While I'm here and blogging, here's a guitar video I recorded over Christmas.  I'm happy I finally got to record a Kaki King piece.

&lt;div align="center"&gt;
 &lt;object width="528" height="324"&gt;&lt;param name="movie" value="http://www.youtube.com/v/5MTiXDunjEU&amp;ap=%2526fmt%3D22"&gt;&lt;/param&gt;&lt;param name="allowFullScreen" value="true"&gt;&lt;/param&gt;&lt;param name="allowscriptaccess" value="always"&gt;&lt;/param&gt;&lt;embed src="http://www.youtube.com/v/5MTiXDunjEU&amp;hd=1" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" width="528" height="324"&gt;&lt;/embed&gt;&lt;/object&gt;
&lt;br&gt;
 &lt;i&gt;Kaki King - Goby (&lt;a href="http://www.youtube.com/watch?v=5MTiXDunjEU&amp;hd=1"&gt;youtube&lt;/a&gt;, &lt;a href="http://chris.printf.net/goby.ogv"&gt;download in Ogg Theora&lt;/a&gt;)
 &lt;/i&gt; 
&lt;/div&gt;

</description>
      <pubDate>Tue, 18 Jan 2011 19:01:00 +0000</pubDate>
      <guid isPermaLink="false">urn:uuid:52add30e-85a2-418e-bb19-bd2cbc2bf6d5</guid>
      <author>Chris Ball</author>
      <link>http://blog.printf.net/articles/2011/01/18/mit-mystery-hunt-2011</link>
      <category>guitar</category>
      <category>puzzles</category>
      <category>hunt</category>
      <category>mystery</category>
      <category>mit</category>
    </item>
    <item>
      <title>Giving Thanks</title>
      <description>&lt;p&gt;It's easy to find a multitude of things to be thankful for, and I like that the US has a holiday for reflecting on how lucky we've been.  Today we've been hanging out with friends and cooking up a vegetarian/vegan feast, including a tofurducken:&lt;/p&gt;

&lt;div align="center"&gt;
 &lt;img src="http://chris.printf.net/thanksgiving_1.jpg" width=500&gt;
&lt;/div&gt;

&lt;p&gt;&lt;p&gt;&lt;/p&gt;

&lt;div align="center"&gt;
 &lt;img src="http://chris.printf.net/thanksgiving_2.jpg" width=500&gt;
&lt;/div&gt;

&lt;p&gt;&lt;br&gt;
&lt;a href="http://madprime.org/"&gt;Mad&lt;/a&gt; and I had our five-year wedding anniversary last month; last year we decided to donate &lt;i&gt;N&lt;/i&gt;% of our joint gross yearly income to effective charities each year for our anniversary, where &lt;i&gt;N&lt;/i&gt; is the number of years we've been married, so we're up to 5% this year.  We decided to publish the list of charities we've chosen, both to show which charities we like donating to and to encourage others to consider doing something similar.  My choices this year are:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;30%, &lt;a href="http:///www.oxfam.org/"&gt;Oxfam America&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Oxfam has an excellent reputation for fighting poverty in developing countries.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;15%, &lt;a href="http://www.givewell.org/international/top-charities/villagereach"&gt;VillageReach&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;a href="http://www.givewell.net/"&gt;Givewell&lt;/a&gt; is a non-profit attempting to apply quantitative rigor to measuring how effective charities are, and VillageReach is in their #1 spot; they've proven themselves reliably able to save the lives of infants for under $1000 per child.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;15%, &lt;a href="http://www.givewell.org/international/top-charities/psi"&gt;PSI&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;PSI works on global health, including HIV/AIDS, malaria and family planning.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;15%, &lt;a href="http://www.fistulafoundation.org/"&gt;The Fistula Foundation&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;10%, &lt;a href="http://www.resurge.org/"&gt;ReSurge&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;The Fistula Foundation and ReSurge (formerly Interplast) treat health problems that we don't see much of ourselves because they're far more common in the developing world &amp;mdash; a &lt;a href="http://en.wikipedia.org/wiki/Obstetric_fistula"&gt;fistula&lt;/a&gt; operation, for example, is clearly life-transforming, and can be funded for $450.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;10%, &lt;a href="http://eff.org/"&gt;Electronic Frontier Foundation&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;5%, &lt;a href="http://torproject.org/"&gt;The Tor Project&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;The EFF and Tor Project fall under the banner of helping people to use technology to demand better government and uncensored access to information.&lt;/p&gt;</description>
      <pubDate>Fri, 26 Nov 2010 03:52:00 +0000</pubDate>
      <guid isPermaLink="false">urn:uuid:e502c97d-014f-4144-9076-8925f52fc905</guid>
      <author>Chris Ball</author>
      <link>http://blog.printf.net/articles/2010/11/26/giving-thanks</link>
      <category>giving</category>
      <category>poverty</category>
    </item>
    <item>
      <title>Git patches in Gnus</title>
      <description>&lt;p&gt;I took over maintaining the Linux kernel's MMC/SD/SDIO subsystem recently, and quickly found that I was spending too much time saving, applying and compile-testing submitted patches (and trying to remember which of these I'd done for a given patch).  The following Emacs/Gnus function helps with that &amp;mdash; with a single keypress when looking at a mail that contains a patch, it applies the patch to my git tree, runs the kernel's "checkpatch" tool to check for common errors, and kicks off a compile test in the background.  I'm not much of an elisp coder, so feel free to critique it if you can.&lt;/p&gt;

&lt;pre style='color:#000000;background:#ffffff;'&gt;&lt;span style='color:#808030; '&gt;(&lt;/span&gt;&lt;span style='color:#800000; font-weight:bold; '&gt;defun&lt;/span&gt; apply-mmc-patch &lt;span style='color:#808030; '&gt;(&lt;/span&gt;&lt;span style='color:#808030; '&gt;)&lt;/span&gt;
    &lt;span style='color:#0000e6; '&gt;"Take a gnus patch: apply; compile-test; checkpatch."&lt;/span&gt;
    &lt;span style='color:#808030; '&gt;(&lt;/span&gt;&lt;span style='color:#800000; font-weight:bold; '&gt;interactive&lt;/span&gt;&lt;span style='color:#808030; '&gt;)&lt;/span&gt;
    &lt;span style='color:#808030; '&gt;(&lt;/span&gt;&lt;span style='color:#800000; font-weight:bold; '&gt;setq&lt;/span&gt; default-directory &lt;span style='color:#0000e6; '&gt;"/home/cjb/git/mmc/"&lt;/span&gt;&lt;span style='color:#808030; '&gt;)&lt;/span&gt;
    &lt;span style='color:#808030; '&gt;(&lt;/span&gt;&lt;span style='color:#800000; font-weight:bold; '&gt;setq&lt;/span&gt; compilation-directory &lt;span style='color:#0000e6; '&gt;"/home/cjb/git/mmc/"&lt;/span&gt;&lt;span style='color:#808030; '&gt;)&lt;/span&gt;
    &lt;span style='color:#696969; '&gt;; First, apply the patch.&lt;/span&gt;
    &lt;span style='color:#808030; '&gt;(&lt;/span&gt;&lt;span style='color:#800000; font-weight:bold; '&gt;dvc-gnus-article-apply-patch&lt;/span&gt; &lt;span style='color:#008c00; '&gt;2&lt;/span&gt;&lt;span style='color:#808030; '&gt;)&lt;/span&gt;
    &lt;span style='color:#696969; '&gt;; Run 'git format-patch', and save the filename.&lt;/span&gt;
    &lt;span style='color:#808030; '&gt;(&lt;/span&gt;&lt;span style='color:#800000; font-weight:bold; '&gt;let&lt;/span&gt; &lt;span style='color:#808030; '&gt;(&lt;/span&gt;&lt;span style='color:#808030; '&gt;(&lt;/span&gt;&lt;span style='color:#800000; font-weight:bold; '&gt;patchfile&lt;/span&gt; &lt;span style='color:#808030; '&gt;(&lt;/span&gt;&lt;span style='color:#800000; font-weight:bold; '&gt;dvc-run-dvc-sync&lt;/span&gt;
        &lt;span style='color:#800080; '&gt;'xgit&lt;/span&gt; &lt;span style='color:#808030; '&gt;(&lt;/span&gt;&lt;span style='color:#800000; font-weight:bold; '&gt;delq&lt;/span&gt; &lt;span style='color:#7d0045; '&gt;nil&lt;/span&gt; &lt;span style='color:#808030; '&gt;(&lt;/span&gt;&lt;span style='color:#800000; font-weight:bold; '&gt;list&lt;/span&gt; &lt;span style='color:#0000e6; '&gt;"format-patch"&lt;/span&gt; &lt;span style='color:#0000e6; '&gt;"-k"&lt;/span&gt; &lt;span style='color:#0000e6; '&gt;"-1"&lt;/span&gt;&lt;span style='color:#808030; '&gt;)&lt;/span&gt;&lt;span style='color:#808030; '&gt;)&lt;/span&gt;
        &lt;span style='color:#400000; '&gt;:finished&lt;/span&gt; &lt;span style='color:#800080; '&gt;'dvc-output-buffer-handler&lt;/span&gt;&lt;span style='color:#808030; '&gt;)&lt;/span&gt;&lt;span style='color:#808030; '&gt;)&lt;/span&gt;&lt;span style='color:#808030; '&gt;)&lt;/span&gt;
      &lt;span style='color:#696969; '&gt;; Compile the result.&lt;/span&gt;
      &lt;span style='color:#808030; '&gt;(&lt;/span&gt;&lt;span style='color:#800000; font-weight:bold; '&gt;compile&lt;/span&gt; &lt;span style='color:#0000e6; '&gt;"make modules"&lt;/span&gt;&lt;span style='color:#808030; '&gt;)&lt;/span&gt; 
      &lt;span style='color:#696969; '&gt;; Now run checkpatch.&lt;/span&gt;
      &lt;span style='color:#808030; '&gt;(&lt;/span&gt;&lt;span style='color:#800000; font-weight:bold; '&gt;let&lt;/span&gt; &lt;span style='color:#808030; '&gt;(&lt;/span&gt;&lt;span style='color:#808030; '&gt;(&lt;/span&gt;&lt;span style='color:#800000; font-weight:bold; '&gt;exit-code&lt;/span&gt; &lt;span style='color:#808030; '&gt;(&lt;/span&gt;&lt;span style='color:#800000; font-weight:bold; '&gt;call-process&lt;/span&gt; &lt;span style='color:#0000e6; '&gt;"perl"&lt;/span&gt; &lt;span style='color:#7d0045; '&gt;nil&lt;/span&gt; &lt;span style='color:#7d0045; '&gt;nil&lt;/span&gt; &lt;span style='color:#7d0045; '&gt;nil&lt;/span&gt;
                     &lt;span style='color:#0000e6; '&gt;"scripts/checkpatch.pl"&lt;/span&gt;
                     patchfile&lt;span style='color:#808030; '&gt;)&lt;/span&gt;&lt;span style='color:#808030; '&gt;)&lt;/span&gt;&lt;span style='color:#808030; '&gt;)&lt;/span&gt;
    &lt;span style='color:#808030; '&gt;(&lt;/span&gt;&lt;span style='color:#800000; font-weight:bold; '&gt;if&lt;/span&gt; &lt;span style='color:#808030; '&gt;(&lt;/span&gt;&lt;span style='color:#800000; font-weight:bold; '&gt;eq&lt;/span&gt; exit-code &lt;span style='color:#008c00; '&gt;0&lt;/span&gt;&lt;span style='color:#808030; '&gt;)&lt;/span&gt;
        &lt;span style='color:#808030; '&gt;(&lt;/span&gt;&lt;span style='color:#800000; font-weight:bold; '&gt;message&lt;/span&gt; &lt;span style='color:#0000e6; '&gt;"Checkpatch: OK"&lt;/span&gt;&lt;span style='color:#808030; '&gt;)&lt;/span&gt;
      &lt;span style='color:#808030; '&gt;(&lt;/span&gt;&lt;span style='color:#800000; font-weight:bold; '&gt;message&lt;/span&gt; &lt;span style='color:#0000e6; '&gt;"Checkpatch: Failed"&lt;/span&gt;&lt;span style='color:#808030; '&gt;)&lt;/span&gt;&lt;span style='color:#808030; '&gt;)&lt;/span&gt;&lt;span style='color:#808030; '&gt;)&lt;/span&gt;&lt;span style='color:#808030; '&gt;)&lt;/span&gt;&lt;span style='color:#808030; '&gt;)&lt;/span&gt;

&lt;span style='color:#808030; '&gt;(&lt;/span&gt;&lt;span style='color:#800000; font-weight:bold; '&gt;define-key&lt;/span&gt; gnus-summary-mode-map &lt;span style='color:#0000e6; '&gt;"A"&lt;/span&gt; &lt;span style='color:#800080; '&gt;'apply-mmc-patch&lt;/span&gt;&lt;span style='color:#808030; '&gt;)&lt;/span&gt;&lt;/pre&gt;</description>
      <pubDate>Mon, 04 Oct 2010 19:18:00 +0100</pubDate>
      <guid isPermaLink="false">urn:uuid:b6315efe-3200-4ca9-b9fb-54f8e4c3c115</guid>
      <author>Chris Ball</author>
      <link>http://blog.printf.net/articles/2010/10/04/git-patches-in-gnus</link>
      <category>gnus</category>
      <category>emacs</category>
      <category>git</category>
      <category>kernel</category>
      <category>linux</category>
    </item>
    <item>
      <title>KDB+KMS for nouveau/radeon</title>
      <description>First, some background:  &lt;a href="https://kgdb.wiki.kernel.org/index.php/Main_Page"&gt;KDB&lt;/a&gt; (a kernel debugger shell) and &lt;a href="https://fedoraproject.org/wiki/Features/KernelModesetting"&gt;KMS&lt;/a&gt; (kernel mode-setting) combine to let you drop into a graphical shell when something debugger-worthy happens on your Linux machine.  That thing  might be a panic, or a breakpoint, or a hardware trap, or a manual entry into the kdb shell.  Inside the shell you can, for example: get a backtrace, inspect &lt;code&gt;dmesg&lt;/code&gt; or &lt;code&gt;ps&lt;/code&gt;, look at memory contents, and kill tasks.
&lt;br&gt;&lt;br&gt;
This is a big improvement over the previous model of "something bad happens to your laptop while it's in X, and the keyboard LEDs start blinking, and you hard-reboot and wonder what happened and wish your laptop had a serial port".
&lt;br&gt;&lt;br&gt;
Here's a video of KDB+KMS in action &amp;mdash; it's from Jason Wessel at Wind River, who deserves massive kudos for having enough patience to get all of this debugging code merged into mainline Linux to everyone's satisfaction:
&lt;br&gt;&lt;br&gt;
&lt;div align="center"&gt;
&lt;object width="425" height="344"&gt;&lt;param name="movie" value="http://www.youtube.com/watch?v=PDds73yDCNo&amp;ap=%2526fmt%3D18&amp;hl=en&amp;fs=1"&gt;
&lt;/param&gt;&lt;param name="allowFullScreen" value="true"&gt;&lt;/param&gt;&lt;param name="allowscriptaccess" value="always"&gt;&lt;/param&gt;&lt;embed src="http://www.youtube.com/v/PDds73yDCNo&amp;ap=%2526fmt%3D18&amp;hl=en&amp;fs=1" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" width="425" height="344"&gt;&lt;/embed&gt;&lt;/object&gt;
&lt;/div&gt;
&lt;br&gt;&lt;br&gt;
&lt;a href="http://virtuousgeek.org/blog/index.php/jbarnes/2010/08/02/using_kdb_on_kms"&gt;Jesse&lt;/a&gt; recently wrote about how to give KDB+KMS a spin on Intel graphics chipsets, and now I've written patches that allow &lt;a href="http://dev.laptop.org/~cjb/kdb-radeon.patch"&gt;radeon&lt;/a&gt; and &lt;a href="http://dev.laptop.org/~cjb/kdb-nouveau.patch"&gt;nouveau&lt;/a&gt; users to join in too.  The method for testing them is similar to Jesse's:
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;git clone git://dev.laptop.org/users/cjb/linux-2.6&lt;/code&gt;
&lt;/li&gt;
&lt;li&gt;&lt;code&gt;cd linux-2.6&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;git checkout kgdb-next&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;Config the kernel as in Jesse's post, and build/install it.&lt;/li&gt;
&lt;li&gt;Boot with &lt;code&gt;kgdboc=kms,kbd&lt;/code&gt; kernel arguments.&lt;/li&gt;
&lt;li&gt;Enter KDB with sysrq-g, or &lt;code&gt;echo g &gt; /proc/sysrq-trigger&lt;/code&gt;, and type &lt;code&gt;go&lt;/code&gt; to leave KDB.&lt;/li&gt;
&lt;/ul&gt;
If you test with radeon or nouveau, please let me know what hardware you tested on, and whether everything worked.  Thanks!

</description>
      <pubDate>Thu, 19 Aug 2010 18:52:00 +0100</pubDate>
      <guid isPermaLink="false">urn:uuid:acef250e-880a-4739-bf76-53593661f344</guid>
      <author>Chris Ball</author>
      <link>http://blog.printf.net/articles/2010/08/19/kdb-kms-for-nouveau-radeon</link>
      <category>kernel</category>
      <category>linux</category>
    </item>
    <item>
      <title>Peru, OLPC, and Wikipedia</title>
      <description>It's incredibly rewarding to see videos like this one.  I think working on the &lt;a href="http://blog.printf.net/articles/2008/06/02/wikipedia-on-xo"&gt;Wikipedia activity&lt;/a&gt; might be the most important thing I've ever done:
&lt;br&gt;&lt;br&gt;
&lt;div align="center"&gt;
&lt;object width="480" height="270"&gt;&lt;param name="movie" value="http://www.dailymotion.com/swf/video/xby2uj?width=&amp;theme=none&amp;foreground=%23F7FFFD&amp;highlight=%23FFC300&amp;background=%23171D1B&amp;start=&amp;animatedTitle=&amp;iframe=0&amp;additionalInfos=0&amp;autoPlay=0&amp;hideInfos=0"&gt;&lt;/param&gt;&lt;param name="allowFullScreen" value="true"&gt;&lt;/param&gt;&lt;param name="allowScriptAccess" value="always"&gt;&lt;/param&gt;&lt;embed type="application/x-shockwave-flash" src="http://www.dailymotion.com/swf/video/xby2uj?width=&amp;theme=none&amp;foreground=%23F7FFFD&amp;highlight=%23FFC300&amp;background=%23171D1B&amp;start=&amp;animatedTitle=&amp;iframe=0&amp;additionalInfos=0&amp;autoPlay=0&amp;hideInfos=0" width="480" height="270" allowfullscreen="true" allowscriptaccess="always"&gt;&lt;/embed&gt;&lt;/object&gt;&lt;br /&gt;&lt;b&gt;&lt;a href="http://www.dailymotion.com/video/xby2uj_web-la-selva_tech"&gt;Web: La Selva&lt;/a&gt;&lt;/b&gt;&lt;br /&gt;&lt;i&gt;Uploaded by &lt;a href="http://www.dailymotion.com/WebFilm"&gt;WebFilm&lt;/a&gt;.&lt;/i&gt;
&lt;/div&gt;
&lt;br&gt;
(via &lt;a href="http://twitter.com/jimmy_wales/status/13433267823"&gt;Jimmy Wales&lt;/a&gt;)
&lt;br&gt;&lt;br&gt;
&lt;i&gt;Update, 2010-02-10&lt;/i&gt;: The video on Vimeo became password-protected, so I've switched the embedded video over to a copy on Dailymotion.

</description>
      <pubDate>Sun, 09 May 2010 21:30:00 +0100</pubDate>
      <guid isPermaLink="false">urn:uuid:80cce33f-f30f-4d10-b677-ac84945f9bf4</guid>
      <author>Chris Ball</author>
      <link>http://blog.printf.net/articles/2010/05/09/peru-olpc-and-wikipedia</link>
      <category>wikipedia</category>
      <category>olpc</category>
    </item>
    <item>
      <title>An e-mail counting t-shirt</title>
      <description>I've been wanting to get into electronics for a while now (it seems like a sensible thing for someone who works for a &lt;a href="http://laptop.org"&gt;laptop manufacturer&lt;/a&gt; to do) but haven't known where to start.  Back in January, the fine people at &lt;a href="http://sparkfun.com/"&gt;Sparkfun Electronics&lt;/a&gt; helped out with that by running a &lt;a href="http://www.sparkfun.com/commerce/news.php?id=305"&gt;Free Day&lt;/a&gt; where they gave away electronics worth USD $100k:  $100 free, to 1000 people.  I was lucky to be one of the 1000 people, which put some electronics ideas within my reach that I otherwise would have found it hard to justify spending money on.
&lt;br&gt;&lt;br&gt;
And, here's the result &amp;mdash; &lt;a href="http://madprime.org/"&gt;Madeleine&lt;/a&gt; and I made a t-shirt together that displays how much unread e-mail I have using an &lt;a href="http://www.sparkfun.com/commerce/product_info.php?products_id=9266"&gt;Arduino Lilypad&lt;/a&gt; and &lt;a href="http://www.sparkfun.com/commerce/product_info.php?products_id=9358"&gt;Bluetooth dongle&lt;/a&gt;, and an Android phone to send the number of unread mails to the shirt.  Here's an image of the center of the shirt, and a video showing it in action:
&lt;br&gt;&lt;br&gt;
&lt;div align="center"&gt;
 &lt;img src="http://chris.printf.net/lilypad-closeup.jpg"&gt;
 &lt;br&gt;&lt;br&gt;
 &lt;object width="528" height="324"&gt;&lt;param name="movie" value="http://www.youtube.com/v/0X-hPEZWWo8&amp;ap=%2526fmt%3D22&amp;rel=0"&gt;&lt;/param&gt;&lt;param name="allowFullScreen" value="true"&gt;&lt;/param&gt;&lt;param name="allowscriptaccess" value="always"&gt;&lt;/param&gt;&lt;embed src="http://www.youtube.com/v/0X-hPEZWWo8&amp;ap=%2526fmt%3D22&amp;rel=0" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" width="528" height="324"&gt;&lt;/embed&gt;&lt;/object&gt;
&lt;/div&gt;&lt;p&gt;

&lt;div align="center"&gt;
 &lt;i&gt;Lilypad t-shirt (&lt;a href="http://www.youtube.com/watch?v=0X-hPEZWWo8"&gt;youtube&lt;/a&gt;, &lt;a href="http://chris.printf.net/lilypad.ogv"&gt;download in Ogg Theora&lt;/a&gt;)
 &lt;/i&gt; 
&lt;/div&gt;

&lt;br&gt;
I've uploaded the source code that runs on the Lilypad and the python script that I'm running on the Android phone &lt;a href="http://github.com/cjb/lilypad-email-shirt"&gt;to my github account&lt;/a&gt;.

</description>
      <pubDate>Tue, 30 Mar 2010 14:10:00 +0100</pubDate>
      <guid isPermaLink="false">urn:uuid:ce2f5b57-2da8-478e-b42f-59f11b5b24ac</guid>
      <author>Chris Ball</author>
      <link>http://blog.printf.net/articles/2010/03/30/email-counting-tshirt</link>
      <category>electronics</category>
      <category>arduino</category>
      <category>lilypad</category>
    </item>
    <item>
      <title>Computers that aren't computers</title>
      <description>&lt;p&gt;&lt;i&gt;Me&lt;/i&gt;: "I think I'm done buying computers that I can't run my own code on."&lt;br&gt;
&lt;i&gt;Friend&lt;/i&gt;: "Just think of the iPad as being a pile of books.  You can't run your code on those either."&lt;br&gt;
&lt;i&gt;Me&lt;/i&gt;: "Thinking of a computer as being a pile of books is like thinking of a guitar as being Abbey Road by the Beatles."&lt;/p&gt;</description>
      <pubDate>Sun, 07 Feb 2010 02:02:00 +0000</pubDate>
      <guid isPermaLink="false">urn:uuid:4d42467c-4bd9-4f93-ae44-5ce4f70c4af7</guid>
      <author>Chris Ball</author>
      <link>http://blog.printf.net/articles/2010/02/07/computers-that-arent-computers</link>
      <category>apple</category>
      <category>drm</category>
    </item>
  </channel>
</rss>

