<?xml version="1.0"?>
<rdf:RDF
	xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:foaf="http://xmlns.com/foaf/0.1/"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns="http://purl.org/rss/1.0/"
>
<channel rdf:about="http://cleanstick.net/planet/">
	<title>Planet Cleanstick</title>
	<link>http://cleanstick.net/planet/</link>
	<description>Planet Cleanstick - http://cleanstick.net/planet/</description>

	<items>
		<rdf:Seq>
			<rdf:li rdf:resource="http://www.wired.com/epicenter/2010/08/why-google-became-a-carrier-humping-net-neutrality-surrender-monkey/all/1" />
			<rdf:li rdf:resource="http://www.dilbert.com/blog/entry/the_bad_management_stimulus/" />
			<rdf:li rdf:resource="http://jason.cleanstick.net/post/930034665" />
			<rdf:li rdf:resource="http://jason.cleanstick.net/post/929008754" />
			<rdf:li rdf:resource="http://jason.cleanstick.net/post/925115499" />
			<rdf:li rdf:resource="http://jason.cleanstick.net/post/916717747" />
			<rdf:li rdf:resource="http://jason.cleanstick.net/post/915437989" />
			<rdf:li rdf:resource="http://jason.cleanstick.net/post/901813139" />
			<rdf:li rdf:resource="http://en.wikipedia.org/wiki/Stuart_Murdoch_(musician)" />
			<rdf:li rdf:resource="http://blog.fishsoup.net/2010/05/26/measuring-gnome-shell-performance/" />
			<rdf:li rdf:resource="http://johannhari.com//2010/04/15/the-great-bloody-hole-in-the-british-election-campaign-afghanistan" />
			<rdf:li rdf:resource="http://www.devx.com/SpecialReports/Article/38883/1954" />
			<rdf:li rdf:resource="http://bartoszmilewski.wordpress.com/2010/08/02/beyond-locks-and-messages-the-future-of-concurrent-programming/" />
			<rdf:li rdf:resource="http://farmsubsidy.org/GB" />
			<rdf:li rdf:resource="http://www.bbc.co.uk/news/10355205" />
			<rdf:li rdf:resource="http://johannhari.com//2010/07/02/how-goldman-sachs-gambling-on-starving-the-worlds-poor-and-won" />
			<rdf:li rdf:resource="http://news.slashdot.org/story/10/07/29/167253/Global-Warming-Undeniable-Report-Says" />
			<rdf:li rdf:resource="http://blog.mozilla.com/rob-sayre/2010/08/02/mozillas-new-javascript-value-representation/" />
			<rdf:li rdf:resource="http://abock.org/2010/08/02/banshee-gnome-amazon-mp3" />
			<rdf:li rdf:resource="http://www.deepamehta.de/" />
			<rdf:li rdf:resource="http://www.techdirt.com/articles/20100723/09055310339.shtml" />
			<rdf:li rdf:resource="http://git.clutter-project.org/?r=cluttersmith" />
			<rdf:li rdf:resource="http://es.wikipedia.org/wiki/Manu_Chao" />
			<rdf:li rdf:resource="http://jason.cleanstick.net/post/891865335" />
			<rdf:li rdf:resource="http://jason.cleanstick.net/post/890545839" />
			<rdf:li rdf:resource="http://thelastpsychiatrist.com/2008/04/the_dead_sea_effect_in_academi.html" />
			<rdf:li rdf:resource="http://yglesias.thinkprogress.org/2010/07/priorities-2/" />
			<rdf:li rdf:resource="http://www.theatlanticwire.com/features/view/feature/Are-Jedi-Knights-Libertarian-or-Socialist-1668" />
			<rdf:li rdf:resource="http://softwarecreation.org/2009/three-dimensions-of-a-software-programmer-how-to-get-things-done/" />
			<rdf:li rdf:resource="http://jason.cleanstick.net/post/866815695" />
			<rdf:li rdf:resource="http://kylebanker.com/blog/2010/04/30/mongodb-and-ecommerce/" />
			<rdf:li rdf:resource="http://gradients.glrzad.com/" />
			<rdf:li rdf:resource="http://www.mongodb.org/display/DOCS/Windows+Service" />
			<rdf:li rdf:resource="http://trueslant.com/erikkain/2010/07/22/freeways-and-the-death-of-the-great-american-city/" />
			<rdf:li rdf:resource="http://jseliger.com/2010/07/21/sex-at-dawn-christopher-ryan-and-cacilda-jetha/" />
			<rdf:li rdf:resource="http://jason.cleanstick.net/post/855875580" />
			<rdf:li rdf:resource="http://toucharcade.com/2009/07/10/enviro-bear-2010-the-best-bear-driving-simulator-in-the-app-store/" />
			<rdf:li rdf:resource="http://culturedcode.com/status/" />
			<rdf:li rdf:resource="http://my.opera.com/Vorlath/blog/another-c-link" />
			<rdf:li rdf:resource="http://apenwarr.ca/log/?m=201007?#18" />
			<rdf:li rdf:resource="http://jason.cleanstick.net/post/837356558" />
			<rdf:li rdf:resource="http://jason.cleanstick.net/post/836122509" />
			<rdf:li rdf:resource="http://jason.cleanstick.net/post/829116363" />
			<rdf:li rdf:resource="http://jason.cleanstick.net/post/825028406" />
			<rdf:li rdf:resource="http://jason.cleanstick.net/post/825010829" />
			<rdf:li rdf:resource="http://jonatkinson.co.uk/bcblackpool/" />
			<rdf:li rdf:resource="http://jason.cleanstick.net/post/788556997" />
			<rdf:li rdf:resource="http://jason.cleanstick.net/post/788534600" />
			<rdf:li rdf:resource="http://jason.cleanstick.net/post/788518416" />
			<rdf:li rdf:resource="http://jason.cleanstick.net/post/788516644" />
			<rdf:li rdf:resource="http://jason.cleanstick.net/post/788496832" />
			<rdf:li rdf:resource="http://ssam.livejournal.com/10635.html" />
			<rdf:li rdf:resource="http://jonatkinson.co.uk/obtaining-geoip-location-yql-using-python/" />
			<rdf:li rdf:resource="http://jonatkinson.co.uk/asboorguk-cakephp-and-datagovuk/" />
			<rdf:li rdf:resource="http://jonatkinson.co.uk/sikuli-desktop-automation/" />
			<rdf:li rdf:resource="http://jonatkinson.co.uk/django-project-base/" />
			<rdf:li rdf:resource="http://ssam.livejournal.com/10309.html" />
			<rdf:li rdf:resource="tag:flickr.com,2005:/photo/4123094713" />
			<rdf:li rdf:resource="tag:flickr.com,2005:/photo/3734585664" />
			<rdf:li rdf:resource="tag:flickr.com,2005:/photo/3733786047" />
		</rdf:Seq>
	</items>
</channel>

<item rdf:about="http://www.wired.com/epicenter/2010/08/why-google-became-a-carrier-humping-net-neutrality-surrender-monkey/all/1">
	<title>Jason Scheirer's del.icio.us: Why Google Became A Carrier-Humping, Net Neutrality Surrender Monkey (UPDATED) | Epicenter | Wired.com</title>
	<link>http://www.wired.com/epicenter/2010/08/why-google-became-a-carrier-humping-net-neutrality-surrender-monkey/all/1</link>
	<content:encoded>&quot;Carriers love Android because it’s free — in fact, it’s probably better than free, since Google is, in all likelihood, paying the mobile carriers for every Android phone that relies on Google Search as its default search engine.&lt;br&gt;
&lt;br&gt;
Android may be &amp;#039;open source,&amp;#039; but the Google services including navigation, integrated Gmail, and other things are not. This was made quite clear last year, when Google slapped the leading Android phone modder, Cyanogen, with a cease-and-desist notice for including Google’s proprietary software in his custom builds, which savvy Android users use to circumvent carriers’ crippling of their phones.&lt;br&gt;
&lt;br&gt;
In short, a generic Android phone that isn’t also a &amp;#039;Google-enhanced&amp;#039; Android phone isn’t worth selling. And you can’t make a Google-enhanced Android phone without Google’s permission.&quot;</content:encoded>
	<dc:date>2010-08-10T22:40:51+00:00</dc:date>
	<dc:creator>jasonscheirer</dc:creator>
</item>
<item rdf:about="http://www.dilbert.com/blog/entry/the_bad_management_stimulus/">
	<title>Jason Scheirer's del.icio.us: Scott Adams Blog: The Bad Management Stimulus 11/25/2009</title>
	<link>http://www.dilbert.com/blog/entry/the_bad_management_stimulus/</link>
	<content:encoded>&quot;I wonder if one if the prime drivers for entrepreneurship is bad management.  I have to think that bad management pushes a lot of capable people out of their day jobs, and those people go on to become entrepreneurs.&quot;</content:encoded>
	<dc:date>2010-08-10T06:41:32+00:00</dc:date>
	<dc:creator>jasonscheirer</dc:creator>
</item>
<item rdf:about="http://jason.cleanstick.net/post/930034665">
	<title>Jason Scheirer: Not until you appreciate what a jerk I am!</title>
	<link>http://jason.cleanstick.net/post/930034665</link>
	<content:encoded>&lt;br&gt;&lt;br&gt;&lt;p&gt;Not until you appreciate what a jerk I am!&lt;/p&gt;</content:encoded>
	<dc:date>2010-08-10T03:34:00+00:00</dc:date>
</item>
<item rdf:about="http://jason.cleanstick.net/post/929008754">
	<title>Jason Scheirer: Not with my greasy sausage fingers.</title>
	<link>http://jason.cleanstick.net/post/929008754</link>
	<content:encoded>Heather: I clearly need a new lipgloss, and someone to pawn off the one I got that is disappointing and the glitter is too chunky&lt;br&gt;&amp;#13;
Me: I probably agree&lt;br&gt;&amp;#13;
Heather: I'm wondering though if they'll let me trade it in if I explain how much it disappointed me&lt;br&gt;&amp;#13;
Heather: even though I bought it months and months ago&lt;br&gt;&amp;#13;
Me: #firstworldproblems&lt;br&gt;&amp;#13;
Heather: totally bitch!</content:encoded>
	<dc:date>2010-08-09T23:20:15+00:00</dc:date>
</item>
<item rdf:about="http://jason.cleanstick.net/post/925115499">
	<title>Jason Scheirer: theparasitichead:

The Roman Empire, 125 AD</title>
	<link>http://jason.cleanstick.net/post/925115499</link>
	<content:encoded>&lt;img src=&quot;http://24.media.tumblr.com/tumblr_l6nfhrYZUK1qb8zppo1_500.png&quot;&gt;&lt;br&gt;&lt;br&gt;&lt;p&gt;&lt;a href=&quot;http://theparasitichead.tumblr.com/post/904700181/the-roman-empire-125-ad&quot; class=&quot;tumblr_blog&quot;&gt;theparasitichead&lt;/a&gt;:&lt;/p&gt;

&lt;blockquote&gt;&lt;p&gt;&lt;strong&gt;The Roman Empire, 125 AD&lt;/strong&gt;&lt;/p&gt;&lt;/blockquote&gt;</content:encoded>
	<dc:date>2010-08-09T03:15:00+00:00</dc:date>
</item>
<item rdf:about="http://jason.cleanstick.net/post/916717747">
	<title>Jason Scheirer: So. God. Damn. Good.</title>
	<link>http://jason.cleanstick.net/post/916717747</link>
	<content:encoded>&lt;br&gt;&lt;br&gt;&lt;p&gt;So. God. Damn. Good.&lt;/p&gt;</content:encoded>
	<dc:date>2010-08-07T07:39:00+00:00</dc:date>
</item>
<item rdf:about="http://jason.cleanstick.net/post/915437989">
	<title>Jason Scheirer: Dat-daaaah-dah-daht! (baht baht) Dat-daaaah-dah-daht! (baht...</title>
	<link>http://jason.cleanstick.net/post/915437989</link>
	<content:encoded>&lt;br&gt;&lt;br&gt;&lt;p&gt;Dat-daaaah-dah-daht! (baht baht) Dat-daaaah-dah-daht! (baht baht)&lt;/p&gt;</content:encoded>
	<dc:date>2010-08-07T02:23:00+00:00</dc:date>
</item>
<item rdf:about="http://jason.cleanstick.net/post/901813139">
	<title>Jason Scheirer: Audio</title>
	<link>http://jason.cleanstick.net/post/901813139</link>
	<content:encoded>&lt;br&gt;&lt;br&gt;</content:encoded>
	<dc:date>2010-08-04T06:37:00+00:00</dc:date>
</item>
<item rdf:about="http://en.wikipedia.org/wiki/Stuart_Murdoch_(musician)">
	<title>Sam Thursfield's del.icio.us: Stuart Murdoch (musician) - Wikipedia, the free encyclopedia</title>
	<link>http://en.wikipedia.org/wiki/Stuart_Murdoch_(musician)</link>
	<content:encoded>&quot;I&amp;#039;m not actually a Christian with a capital C. I&amp;#039;m still asking questions. But I had this time when I found myself singing all these old hymns in my kitchen and I couldn&amp;#039;t work out why I was doing it. Then one Sunday morning I got up, looked at my watch, and thought, &amp;#039;I wonder if I could make it to a church service?&amp;#039; It was so welcoming. It just felt like you were coming home. Twelve years later, I&amp;#039;ve never left.&quot;</content:encoded>
	<dc:date>2010-08-03T20:50:22+00:00</dc:date>
	<dc:creator>ssam</dc:creator>
</item>
<item rdf:about="http://blog.fishsoup.net/2010/05/26/measuring-gnome-shell-performance/">
	<title>Sam Thursfield's del.icio.us: Measuring GNOME Shell Performance « fishsoup</title>
	<link>http://blog.fishsoup.net/2010/05/26/measuring-gnome-shell-performance/</link>
	<content:encoded>Gnome-shell takes an interestingly in-depth approach to optimisation, including some very comprehensive logging system apparently.</content:encoded>
	<dc:date>2010-08-03T18:43:31+00:00</dc:date>
	<dc:creator>ssam</dc:creator>
</item>
<item rdf:about="http://johannhari.com//2010/04/15/the-great-bloody-hole-in-the-british-election-campaign-afghanistan">
	<title>Sam Thursfield's del.icio.us: The great bloody hole in the British election campaign - Afghanistan : Johann Hari</title>
	<link>http://johannhari.com//2010/04/15/the-great-bloody-hole-in-the-british-election-campaign-afghanistan</link>
	<content:encoded>&quot;Hamid Karzai was picked by the US and British governments as the Afghan leader most likely to serve their interests, and his regime exists solely because of massive military support from them. Yet - in a sign of how Afghan opinion has tipped after eight years of war - even he now speaks with rage against them. He says the US and Britain&amp;#039;s planned military assault on Kandahar this summer must not go ahead because the local population strongly oppose it. He warns there is &quot;a fine line between resistance and revolt&quot; and soon &quot;this revolt will turn into a resistance and I will join it.&quot; &quot;</content:encoded>
	<dc:date>2010-08-03T17:07:01+00:00</dc:date>
	<dc:creator>ssam</dc:creator>
</item>
<item rdf:about="http://www.devx.com/SpecialReports/Article/38883/1954">
	<title>Sam Thursfield's del.icio.us: Simpler Multithreading in C++0x</title>
	<link>http://www.devx.com/SpecialReports/Article/38883/1954</link>
	<content:encoded>A textbook example on how to implement threads in the ugliest way you can think of. One good thing is the multiple simultaneous mutex locking,</content:encoded>
	<dc:date>2010-08-03T16:59:09+00:00</dc:date>
	<dc:creator>ssam</dc:creator>
</item>
<item rdf:about="http://bartoszmilewski.wordpress.com/2010/08/02/beyond-locks-and-messages-the-future-of-concurrent-programming/">
	<title>Sam Thursfield's del.icio.us: Beyond Locks and Messages: The Future of Concurrent Programming «   Bartosz Milewski’s Programming Cafe</title>
	<link>http://bartoszmilewski.wordpress.com/2010/08/02/beyond-locks-and-messages-the-future-of-concurrent-programming/</link>
	<content:encoded>If you were to implemented parallel computation using traditional methods, for instance MPI (Message Passing Interface), instead of allocating a single array you’d allocate multiple chunks. Instead of writing an algorithm to operate on this array you’d write an algorithm that operates on chunks, with a lot of code managing boundary cases and communication. Similarly, to parallelize a loop you’d have to partially unroll it and, again, take care of such details as the uneven tail, etc. These approaches results in fragmented view of the problem. &lt;br&gt;
&lt;br&gt;
What HPCS languages offer is global view programming... clearer programs that are easier to write and maintain.&lt;br&gt;
...&lt;br&gt;
None of the HPCS languages tried to tie sharing and synchronization to the type system in the way it is done, for instance, in the D programming language (see also my posts about race-free multithreading).&quot;</content:encoded>
	<dc:date>2010-08-03T16:34:48+00:00</dc:date>
	<dc:creator>ssam</dc:creator>
</item>
<item rdf:about="http://farmsubsidy.org/GB">
	<title>Sam Thursfield's del.icio.us: United Kingdom | FarmSubsidy.org</title>
	<link>http://farmsubsidy.org/GB</link>
	<content:encoded>An excellent site. Here&amp;#039;s how the EU agricultural subsidies are actually distributed, helping tiny struggling farmers such as Nestle (€1.2M) and Tate &amp;amp; Lyle (€135M).</content:encoded>
	<dc:date>2010-08-03T16:03:55+00:00</dc:date>
	<dc:creator>ssam</dc:creator>
</item>
<item rdf:about="http://www.bbc.co.uk/news/10355205">
	<title>Sam Thursfield's del.icio.us: BBC News - What the Higgs 'harmonic signatures' may sound like</title>
	<link>http://www.bbc.co.uk/news/10355205</link>
	<dc:date>2010-08-03T16:01:30+00:00</dc:date>
	<dc:creator>ssam</dc:creator>
</item>
<item rdf:about="http://johannhari.com//2010/07/02/how-goldman-sachs-gambling-on-starving-the-worlds-poor-and-won">
	<title>Sam Thursfield's del.icio.us: How Goldman Sachs gambled on starving the world's poor - and won : Johann Hari</title>
	<link>http://johannhari.com//2010/07/02/how-goldman-sachs-gambling-on-starving-the-worlds-poor-and-won</link>
	<content:encoded>&quot;My children stopped growing. I felt like battery acid had been poured into my stomach as I starved. I took my two daughters out of school and got into debt. If it had gone on much longer, I think my baby would have died.&quot; Another day on Wall Street and Canary Wharf.</content:encoded>
	<dc:date>2010-08-03T14:04:35+00:00</dc:date>
	<dc:creator>ssam</dc:creator>
</item>
<item rdf:about="http://news.slashdot.org/story/10/07/29/167253/Global-Warming-Undeniable-Report-Says">
	<title>Sam Thursfield's del.icio.us: Slashdot News Story | Global Warming 'Undeniable,' Report Says</title>
	<link>http://news.slashdot.org/story/10/07/29/167253/Global-Warming-Undeniable-Report-Says</link>
	<dc:date>2010-08-03T13:53:27+00:00</dc:date>
	<dc:creator>ssam</dc:creator>
</item>
<item rdf:about="http://blog.mozilla.com/rob-sayre/2010/08/02/mozillas-new-javascript-value-representation/">
	<title>Sam Thursfield's del.icio.us: Mozilla’s New JavaScript Value Representation &lt; Rob Sayre's Mozilla Blog</title>
	<link>http://blog.mozilla.com/rob-sayre/2010/08/02/mozillas-new-javascript-value-representation/</link>
	<content:encoded>Using 64 bits to store all values, that&amp;#039;s an interesting approach.</content:encoded>
	<dc:date>2010-08-03T13:01:22+00:00</dc:date>
	<dc:creator>ssam</dc:creator>
</item>
<item rdf:about="http://abock.org/2010/08/02/banshee-gnome-amazon-mp3">
	<title>Sam Thursfield's del.icio.us: Banshee, GNOME, &amp; Amazon MP3 « Aaron Bockover</title>
	<link>http://abock.org/2010/08/02/banshee-gnome-amazon-mp3</link>
	<content:encoded>&quot;During Gabriel&amp;#039;s talk at GUADEC, after working with members of the GNOME Foundation board, we were very excited to announce that the Amazon MP3 Store in Banshee would begin using an Amazon Affiliate ID, and that 100% of all revenue generated through this affiliate ID will go to the GNOME Foundation!&quot;</content:encoded>
	<dc:date>2010-08-03T00:10:44+00:00</dc:date>
	<dc:creator>ssam</dc:creator>
</item>
<item rdf:about="http://www.deepamehta.de/">
	<title>Sam Thursfield's del.icio.us: DeepaMehta -- Homepage</title>
	<link>http://www.deepamehta.de/</link>
	<content:encoded>&quot;DeepaMehta is a &quot;networked semantic desktop&quot; that replaces the traditional computer desktop. DeepaMehta rids the user from dealing with applications, files and directories. Instead, the DeepaMehta user arranges information of any kind and origin into supportive topic maps. Topics may be e.g. projects, emails, webpages, notes, articles, contacts, or meetings. Users define their own topic types. Old-fashioned applications, windows and files are no longer in the sight of the user, but the meaningful relationships between real world topics. The DeepaMehta desktop is never obscured by other windows. The DeepaMehta desktop serves as a visual cache of the users actual work context.&quot;</content:encoded>
	<dc:date>2010-08-02T20:14:03+00:00</dc:date>
	<dc:creator>ssam</dc:creator>
</item>
<item rdf:about="http://www.techdirt.com/articles/20100723/09055310339.shtml">
	<title>Sam Thursfield's del.icio.us: Intuit Still Lobbying Hard To Stop Governments From Making It Easy To File Taxes | Techdirt</title>
	<link>http://www.techdirt.com/articles/20100723/09055310339.shtml</link>
	<content:encoded>&quot;Intuit is lobbying hard for California to ditch this tremendously successful program that helps both tax payers and the state, and replace it with a different program that... helps Intuit. It would offer a much more limited offering to many fewer people, mostly designed as an upsell to get people to pay for TurboTax. And, while Intuit hasn&amp;#039;t been successful yet, it has been spending plenty of money supporting California state politicians on both sides of the aisle to try to find support for its efforts.&quot;</content:encoded>
	<dc:date>2010-08-02T18:47:49+00:00</dc:date>
	<dc:creator>ssam</dc:creator>
</item>
<item rdf:about="http://git.clutter-project.org/?r=cluttersmith">
	<title>Sam Thursfield's del.icio.us: cluttersmith - A visual UI and animation building tool</title>
	<link>http://git.clutter-project.org/?r=cluttersmith</link>
	<dc:date>2010-08-02T18:32:51+00:00</dc:date>
	<dc:creator>ssam</dc:creator>
</item>
<item rdf:about="http://es.wikipedia.org/wiki/Manu_Chao">
	<title>Sam Thursfield's del.icio.us: Manu Chao - Wikipedia, la enciclopedia libre</title>
	<link>http://es.wikipedia.org/wiki/Manu_Chao</link>
	<dc:date>2010-08-02T14:48:04+00:00</dc:date>
	<dc:creator>ssam</dc:creator>
</item>
<item rdf:about="http://jason.cleanstick.net/post/891865335">
	<title>Jason Scheirer: The lesson to take from this is to never date a musician. When...</title>
	<link>http://jason.cleanstick.net/post/891865335</link>
	<content:encoded>&lt;br&gt;&lt;br&gt;&lt;p&gt;The lesson to take from this is to never date a musician. When you break up she will write a super passive-aggressive song that tugs at the heartstrings of everyone in Sweden and you’ll look like a total dick even though it’s &lt;em&gt;her&lt;/em&gt; airing the dirty laundry.&lt;/p&gt;</content:encoded>
	<dc:date>2010-08-02T05:46:00+00:00</dc:date>
</item>
<item rdf:about="http://jason.cleanstick.net/post/890545839">
	<title>Jason Scheirer: Idiot Control Now!</title>
	<link>http://jason.cleanstick.net/post/890545839</link>
	<content:encoded>&lt;br&gt;&lt;br&gt;&lt;p&gt;Idiot Control Now!&lt;/p&gt;</content:encoded>
	<dc:date>2010-08-01T23:39:17+00:00</dc:date>
</item>
<item rdf:about="http://thelastpsychiatrist.com/2008/04/the_dead_sea_effect_in_academi.html">
	<title>Jason Scheirer's del.icio.us: The Last Psychiatrist: The Dead Sea Effect In Academia</title>
	<link>http://thelastpsychiatrist.com/2008/04/the_dead_sea_effect_in_academi.html</link>
	<content:encoded>&quot;Academia is a trap. It pays you with secure insecurity.   You settle in and think, I am never going to leave this.  It confuses you, it changes reality.  I make only 20% of my income from my university job, yet whenever anyone asks me what I do for a living, I tell them I work at university.  Worse-- I actually believe it, it&amp;#039;s part of my identity, even though it is factually incorrect.  Your focus is not on why you are there, but on how to stay there, or even to advance, in that irrelevant hierarchy.&quot;</content:encoded>
	<dc:date>2010-07-30T00:24:20+00:00</dc:date>
	<dc:creator>jasonscheirer</dc:creator>
</item>
<item rdf:about="http://yglesias.thinkprogress.org/2010/07/priorities-2/">
	<title>Jason Scheirer's del.icio.us: Matthew Yglesias » Priorities</title>
	<link>http://yglesias.thinkprogress.org/2010/07/priorities-2/</link>
	<content:encoded>&quot;Is the performance of a Provincial Reconstruction Team in Khost Province more important to the long-term interests of American citizens than the performance of the Riverside County Public Schools?&quot;&lt;br&gt;
&lt;br&gt;
My answer, as a graduate of Riverside County Public Schools (JUSD K-12, Jurupa Valley High Class of &amp;#039;01), is SURE WHY NOT THEY&amp;#039;RE ALL AWFUL KIDS ANYWAY.</content:encoded>
	<dc:date>2010-07-29T02:33:26+00:00</dc:date>
	<dc:creator>jasonscheirer</dc:creator>
</item>
<item rdf:about="http://www.theatlanticwire.com/features/view/feature/Are-Jedi-Knights-Libertarian-or-Socialist-1668">
	<title>Jason Scheirer's del.icio.us: Are Jedi Knights Libertarian or Socialist? | The Atlantic Wire</title>
	<link>http://www.theatlanticwire.com/features/view/feature/Are-Jedi-Knights-Libertarian-or-Socialist-1668</link>
	<content:encoded>Some hard-hitting journalism here, guys.</content:encoded>
	<dc:date>2010-07-28T06:10:16+00:00</dc:date>
	<dc:creator>jasonscheirer</dc:creator>
</item>
<item rdf:about="http://softwarecreation.org/2009/three-dimensions-of-a-software-programmer-how-to-get-things-done/">
	<title>Jason Scheirer's del.icio.us: Three Dimensions of a Software Programmer: How to get things done</title>
	<link>http://softwarecreation.org/2009/three-dimensions-of-a-software-programmer-how-to-get-things-done/</link>
	<dc:date>2010-07-28T03:48:08+00:00</dc:date>
	<dc:creator>jasonscheirer</dc:creator>
</item>
<item rdf:about="http://jason.cleanstick.net/post/866815695">
	<title>Jason Scheirer: Using Pylons</title>
	<link>http://jason.cleanstick.net/post/866815695</link>
	<content:encoded>&lt;p&gt;Just for giggles, this new web app I’m working on is in Pylons. So much of it is dependent on configuration (the paster creation script installs all kinds of code all over the project directory). I think I’m impatient enough at this point of my life that I actually prefer the shrink-wrapped bumper lanes of Django to this approach.&lt;/p&gt;</content:encoded>
	<dc:date>2010-07-27T17:50:00+00:00</dc:date>
</item>
<item rdf:about="http://kylebanker.com/blog/2010/04/30/mongodb-and-ecommerce/">
	<title>Jason Scheirer's del.icio.us: MongoDB and E-commerce | Kyle Banker</title>
	<link>http://kylebanker.com/blog/2010/04/30/mongodb-and-ecommerce/</link>
	<dc:date>2010-07-27T01:27:26+00:00</dc:date>
	<dc:creator>jasonscheirer</dc:creator>
</item>
<item rdf:about="http://gradients.glrzad.com/">
	<title>Jason Scheirer's del.icio.us: CSS3 Gradient Generator</title>
	<link>http://gradients.glrzad.com/</link>
	<dc:date>2010-07-26T22:46:45+00:00</dc:date>
	<dc:creator>jasonscheirer</dc:creator>
</item>
<item rdf:about="http://www.mongodb.org/display/DOCS/Windows+Service">
	<title>Jason Scheirer's del.icio.us: Windows Service - MongoDB</title>
	<link>http://www.mongodb.org/display/DOCS/Windows+Service</link>
	<content:encoded>Oh ok that&amp;#039;s easy. Thanks, Mongo. Thongo.</content:encoded>
	<dc:date>2010-07-26T17:48:19+00:00</dc:date>
	<dc:creator>jasonscheirer</dc:creator>
</item>
<item rdf:about="http://trueslant.com/erikkain/2010/07/22/freeways-and-the-death-of-the-great-american-city/">
	<title>Jason Scheirer's del.icio.us: Freeways and the death of the great American city - E.D. Kain - American Times - True/Slant</title>
	<link>http://trueslant.com/erikkain/2010/07/22/freeways-and-the-death-of-the-great-american-city/</link>
	<content:encoded>I can&amp;#039;t begin to state how much my quality of life improved by living in a (smaller) walkable town.</content:encoded>
	<dc:date>2010-07-25T08:21:22+00:00</dc:date>
	<dc:creator>jasonscheirer</dc:creator>
</item>
<item rdf:about="http://jseliger.com/2010/07/21/sex-at-dawn-christopher-ryan-and-cacilda-jetha/">
	<title>Jason Scheirer's del.icio.us: Sex at Dawn — Christopher Ryan and Cacilda Jethá « The Story's Story</title>
	<link>http://jseliger.com/2010/07/21/sex-at-dawn-christopher-ryan-and-cacilda-jetha/</link>
	<dc:date>2010-07-25T07:38:25+00:00</dc:date>
	<dc:creator>jasonscheirer</dc:creator>
</item>
<item rdf:about="http://jason.cleanstick.net/post/855875580">
	<title>Jason Scheirer: Video</title>
	<link>http://jason.cleanstick.net/post/855875580</link>
	<content:encoded>&lt;br&gt;&lt;br&gt;</content:encoded>
	<dc:date>2010-07-25T07:19:20+00:00</dc:date>
</item>
<item rdf:about="http://toucharcade.com/2009/07/10/enviro-bear-2010-the-best-bear-driving-simulator-in-the-app-store/">
	<title>Jason Scheirer's del.icio.us: 'Enviro-Bear 2010' – The Best Bear Driving Simulator in the App Store (Review) | Touch Arcade</title>
	<link>http://toucharcade.com/2009/07/10/enviro-bear-2010-the-best-bear-driving-simulator-in-the-app-store/</link>
	<content:encoded>I need to buy this when I get home</content:encoded>
	<dc:date>2010-07-24T23:34:21+00:00</dc:date>
	<dc:creator>jasonscheirer</dc:creator>
</item>
<item rdf:about="http://culturedcode.com/status/">
	<title>Jason Scheirer's del.icio.us: Arrivals | Development Status | Cultured Code</title>
	<link>http://culturedcode.com/status/</link>
	<content:encoded>I need one of these.</content:encoded>
	<dc:date>2010-07-23T18:52:56+00:00</dc:date>
	<dc:creator>jasonscheirer</dc:creator>
</item>
<item rdf:about="http://my.opera.com/Vorlath/blog/another-c-link">
	<title>Jason Scheirer's del.icio.us: Vorlath - Another C++ Link</title>
	<link>http://my.opera.com/Vorlath/blog/another-c-link</link>
	<dc:date>2010-07-22T16:50:38+00:00</dc:date>
	<dc:creator>jasonscheirer</dc:creator>
</item>
<item rdf:about="http://apenwarr.ca/log/?m=201007?#18">
	<title>Jason Scheirer's del.icio.us: apenwarr - Business is Programming</title>
	<link>http://apenwarr.ca/log/?m=201007?#18</link>
	<content:encoded>&quot;&amp;#039;Member Function Pointers Are Not Just Simple Addresses.&amp;#039; You might think, oh, of course not. They&amp;#039;re a &amp;#039;this&amp;#039; pointer plus an address, right? Ha ha! Ha ha ha ha!! No they&amp;#039;re not! They don&amp;#039;t have a this pointer! You still have to provide your own this pointer when you call it! But it does store all kinds of crazy other stuff instead so it can do call-time vtable lookups on multiply-inherited objects! Ha ha!)&quot;</content:encoded>
	<dc:date>2010-07-22T16:32:38+00:00</dc:date>
	<dc:creator>jasonscheirer</dc:creator>
</item>
<item rdf:about="http://jason.cleanstick.net/post/837356558">
	<title>Jason Scheirer: Photo</title>
	<link>http://jason.cleanstick.net/post/837356558</link>
	<content:encoded>&lt;img src=&quot;http://27.media.tumblr.com/tumblr_l5ve9jFS561qalp5do1_500.png&quot;&gt;&lt;br&gt;&lt;br&gt;</content:encoded>
	<dc:date>2010-07-20T19:03:19+00:00</dc:date>
</item>
<item rdf:about="http://jason.cleanstick.net/post/836122509">
	<title>Jason Scheirer: Can we talk about the mail?</title>
	<link>http://jason.cleanstick.net/post/836122509</link>
	<content:encoded>&lt;br&gt;&lt;br&gt;&lt;p&gt;Can we talk about the mail?&lt;/p&gt;</content:encoded>
	<dc:date>2010-07-20T11:52:11+00:00</dc:date>
</item>
<item rdf:about="http://jason.cleanstick.net/post/829116363">
	<title>Jason Scheirer: JAWSOME</title>
	<link>http://jason.cleanstick.net/post/829116363</link>
	<content:encoded>&lt;br&gt;&lt;br&gt;&lt;p&gt;JAWSOME&lt;/p&gt;</content:encoded>
	<dc:date>2010-07-18T21:20:39+00:00</dc:date>
</item>
<item rdf:about="http://jason.cleanstick.net/post/825028406">
	<title>Jason Scheirer: oldhollywood:

via Batman (1966, dir. Leslie Martinson)</title>
	<link>http://jason.cleanstick.net/post/825028406</link>
	<content:encoded>&lt;img src=&quot;http://29.media.tumblr.com/tumblr_l5nu9iNga21qzdvhio1_r1_500.jpg&quot;&gt;&lt;br&gt;&lt;br&gt;&lt;p&gt;&lt;a href=&quot;http://oldhollywood.tumblr.com/post/820155048/via-batman-1966-dir-leslie-martinson&quot; class=&quot;tumblr_blog&quot;&gt;oldhollywood&lt;/a&gt;:&lt;/p&gt;

&lt;blockquote&gt;&lt;p&gt;via &lt;em&gt;Batman &lt;/em&gt;(1966, dir. Leslie Martinson)&lt;/p&gt;&lt;/blockquote&gt;</content:encoded>
	<dc:date>2010-07-17T21:27:14+00:00</dc:date>
</item>
<item rdf:about="http://jason.cleanstick.net/post/825010829">
	<title>Jason Scheirer: Here is some code. For you.</title>
	<link>http://jason.cleanstick.net/post/825010829</link>
	<content:encoded>&lt;p&gt;Shell script I saved as &lt;em&gt;~/bin/m4rify&lt;/em&gt; to convert arbitrary audio files to iPhone ringtones:&lt;/p&gt;

&lt;pre&gt;&lt;code&gt;#! /bin/bash
if [ $1p == 'p' ]
then
  echo USAGE: $0 filename.mp3
  exit
fi
out_file=${1%%.*}.m4r
tmp_file=$1.converttemp
mplayer -ao pcm $1 -ao pcm:file=$tmp_file
faac $tmp_file -o $out_file -w
rm $tmp_file
&lt;/code&gt;&lt;/pre&gt;

&lt;p&gt;Works fine in Ubuntu.&lt;/p&gt;</content:encoded>
	<dc:date>2010-07-17T21:21:00+00:00</dc:date>
</item>
<item rdf:about="http://jonatkinson.co.uk/bcblackpool/">
	<title>Jon Atkinson: #bcblackpool</title>
	<link>http://jonatkinson.co.uk/bcblackpool/</link>
	<content:encoded>&lt;p&gt;I rather enjoyed Barcamp Blackpool this weekend. I've been to a lot of conferences and Barcamps this year, but I did particularly enjoy a Barcamp on my home soil.&lt;/p&gt;

&lt;p&gt;I made an effort this weekend to spend less time in talks, and more time talking to people, and I think it paid off. Along with giving my (now rather tired) session on pitching, I had some very rewarding one-to-ones with a some very smart people - so if I cornered you and wouldn't stop talking, take it as a compliment!&lt;/p&gt;

&lt;p&gt;I did, however spend time in some talks. &lt;a href=&quot;http://twitter.com/timhastings&quot;&gt;@timhastings&lt;/a&gt; talk on &lt;a href=&quot;http://tagwalk.com/&quot;&gt;TagWalk&lt;/a&gt; was very interesting, though I would have enjoyed more detail on the code running the site, but then I always like to skip ahead.&lt;/p&gt;

&lt;p&gt;&lt;a href=&quot;http://twitter.com/walterja/&quot;&gt;@walterja&lt;/a&gt;, whose talks have become the highlight of the last few Barcamp events  I've attended, presented a predictably fascinating look at sociometry, which I've had some experience with before, though with a very different intention. I think this talk brought together the most diverse members of the audience, it was great to see so many teachers in the audience.&lt;/p&gt;

&lt;p&gt;The evening was a lot of fun, and talking to people I was pleased with how many were talking about their own projects, startups and ideas for what is next; very invigorating.&lt;/p&gt;

&lt;p&gt;Most blog posts end with thanks for the sponsors, which I would like to echo, but I think someone needs to call out the excellent work of &lt;a href=&quot;http://twitter.com/ruby_gem&quot;&gt;@ruby_gem&lt;/a&gt;, who seems to have the ability to pull together these events, run them flawlessly and make it look incredibly easy. You are an asset to us all. Thank very much for your work.&lt;/p&gt;

&lt;p&gt;Oh, and I won the PadRacer tournament ;-)&lt;/p&gt;</content:encoded>
	<dc:date>2010-07-12T05:46:37+00:00</dc:date>
</item>
<item rdf:about="http://jason.cleanstick.net/post/788556997">
	<title>Jason Scheirer: Video</title>
	<link>http://jason.cleanstick.net/post/788556997</link>
	<content:encoded>&lt;br&gt;&lt;br&gt;</content:encoded>
	<dc:date>2010-07-09T07:05:24+00:00</dc:date>
</item>
<item rdf:about="http://jason.cleanstick.net/post/788534600">
	<title>Jason Scheirer: Starssssssssss</title>
	<link>http://jason.cleanstick.net/post/788534600</link>
	<content:encoded>&lt;br&gt;&lt;br&gt;&lt;p&gt;Starssssssssss&lt;/p&gt;</content:encoded>
	<dc:date>2010-07-09T06:57:45+00:00</dc:date>
</item>
<item rdf:about="http://jason.cleanstick.net/post/788518416">
	<title>Jason Scheirer: Daaaaaaaaanielllllllllllllllllllll</title>
	<link>http://jason.cleanstick.net/post/788518416</link>
	<content:encoded>&lt;br&gt;&lt;br&gt;&lt;p&gt;Daaaaaaaaanielllllllllllllllllllll&lt;/p&gt;</content:encoded>
	<dc:date>2010-07-09T06:52:12+00:00</dc:date>
</item>
<item rdf:about="http://jason.cleanstick.net/post/788516644">
	<title>Jason Scheirer: Not a Robot</title>
	<link>http://jason.cleanstick.net/post/788516644</link>
	<content:encoded>&lt;br&gt;&lt;br&gt;&lt;p&gt;Not a Robot&lt;/p&gt;</content:encoded>
	<dc:date>2010-07-09T06:51:34+00:00</dc:date>
</item>
<item rdf:about="http://jason.cleanstick.net/post/788496832">
	<title>Jason Scheirer: …I assure you.</title>
	<link>http://jason.cleanstick.net/post/788496832</link>
	<content:encoded>&lt;br&gt;&lt;br&gt;&lt;p&gt;…I assure you.&lt;/p&gt;</content:encoded>
	<dc:date>2010-07-09T06:44:54+00:00</dc:date>
</item>
<item rdf:about="http://ssam.livejournal.com/10635.html">
	<title>Sam Thursfield: Asus motherboards and USB boot</title>
	<link>http://ssam.livejournal.com/10635.html</link>
	<content:encoded>I'm writing this mainly for google's benefit. If you're trying to get an ASUS motherboard, such as the M3N78-VM I have, to boot from a memory stick, it turns out you have to do it in a weird way: turn on the PC with the memory stick plugged in, go into BIOS Setup and the Boot section and then go onto &lt;i&gt;Hard Disk Drives&lt;/i&gt;. Delete all the entries except USB (maybe you can just put it to the top, I didn't try). Now you can go to the normal &lt;i&gt;Boot Device Priority&lt;/i&gt; list, and &quot;USB&quot; will be an entry which you can put where you like.&lt;br&gt;&lt;br&gt;This is all pretty counterintuitive, because the boot device list has &quot;Removable media&quot; as an entry, which is apparently useless - in fact, worse than useless, or I might have worked this out faster. Hopefully writing about it will save others from wasting time ..&lt;br&gt;&lt;br&gt;&lt;br&gt;&lt;br&gt;&lt;br&gt;In other news, since here am I writing.. I finished my degree in music &amp; music technology recently (which is why i finally have time to fix my computer), it's been a fun ride and I achieved a bunch of things I always have wanted to do, like mixing for bad metal bands, writing and recording crazy dub tunes and playing sounds too quiet for anyone to hear in a gallery with some free wine. After a summer getting some programaction done (more on that later), mi novia y yo are going to South America for a while. We fly in to Buenos Aires in September and out of Lima in January (hopefully later) and so far that is the plan, I've never been out the UK for more than a few weeks before, i am really looking forward finally to some proper travelling in a very beautiful part of the world.</content:encoded>
	<dc:date>2010-05-08T21:30:51+00:00</dc:date>
</item>
<item rdf:about="http://jonatkinson.co.uk/obtaining-geoip-location-yql-using-python/">
	<title>Jon Atkinson: Obtaining GeoIP location with YQL using Python</title>
	<link>http://jonatkinson.co.uk/obtaining-geoip-location-yql-using-python/</link>
	<content:encoded>&lt;p&gt;I've a few projects coming up for &lt;a href=&quot;http://84labs.com&quot;&gt;84labs&lt;/a&gt; which required location awareness. Location awareness works great with any recent phone, but for traditional clients, I needed to fall-back to obtaining the location from the client's IP address.&lt;/p&gt;

&lt;p&gt;There is an excellent free IP location database hosted on &lt;a href=&quot;http://datatables.org/&quot;&gt;datatables.org&lt;/a&gt;, which offered the easiest way to get the data which I needed. This meant using &lt;a href=&quot;http://developer.yahoo.com/yql/&quot;&gt;YQL&lt;/a&gt;, which I haven't used before; YQL is &quot;an expressive SQL-like language that lets you query, filter, and join data across Web services&quot;.&lt;/p&gt;

&lt;p&gt;So here is the code. I was using Python, Django and &lt;a href=&quot;http://python-yql.org/&quot;&gt;Python YQL module&lt;/a&gt;, but the same query presumably works with any language you choose. I've removed a lot of exception handling for clarity.&lt;/p&gt;

&lt;p&gt;&lt;code&gt;# Get the current user's IP address.&lt;br&gt;client_ip_address = request.META['REMOTE_ADDR']&lt;/p&gt;

&lt;p&gt;# Create a YQL public query object.&lt;br&gt;y = yql.Public()&lt;/p&gt;

&lt;p&gt;# Build the query.&lt;br&gt;query = 'USE &quot;http://www.datatables.org/iplocation/ip.location.xml&quot; AS ip.location; select * from geo.places where woeid in (select place.woeid from flickr.places where (lat,lon) in(select Latitude,Longitude from ip.location where ip=&quot;%s&quot;))' % client_ip_address;&lt;/p&gt;

&lt;p&gt;# Execute the query.&lt;br&gt;result = y.execute(query)&lt;/p&gt;

&lt;p&gt;# ... et voila.&lt;br&gt;ip_place_name = result.rows['locality1']['content']&lt;br&gt;ip_location = result.rows['centroid']&lt;/code&gt;&lt;/p&gt;

&lt;p&gt;That's it. The query just performs a simple select against the 'iplocation' database, then retrieves the latitude and longitude from the flickr.places database (flickr.places is part of the standard YQL set of databases, which is why we don't need a specific USE statement to be able to access it).&lt;/p&gt;</content:encoded>
	<dc:date>2010-05-08T19:45:04+00:00</dc:date>
</item>
<item rdf:about="http://jonatkinson.co.uk/asboorguk-cakephp-and-datagovuk/">
	<title>Jon Atkinson: asbo.org.uk, CakePHP and data.gov.uk</title>
	<link>http://jonatkinson.co.uk/asboorguk-cakephp-and-datagovuk/</link>
	<content:encoded>&lt;p&gt;Yesterday, I wrote &lt;a href=&quot;http://asbo.org.uk&quot;&gt;asbo.org.uk&lt;/a&gt;, a site which provides really basic visualisation of the UK's anti-social behaviour order data from 1999-2007. This data was recently released by &lt;a href=&quot;http://data.gov.uk&quot;&gt;data.gov.uk&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;I wrote the whole site, wrangled the data, and deployed it yesterday afternoon, in about six hours. I've got some contract work coming up using CakePHP, so I wanted to try it out, and I wanted to see what I could do in such a short space of time. I'm quite pleased with the results. There's no analysis of the data, just presentation, but I was trying to see what I could do in the time I had, rather than develop features.&lt;/p&gt;

&lt;p&gt;Originally, I wanted to write a 'how safe am I' sort of application, which could offer data about the types of crime most likely to occur in a given area, but this idea was pretty much killed by the time I saw the actual data available. Maybe I don't know enough about Excel-scraping, but I considerably reduced the scope of this project because the data was such a mess - it's just not worth the time to extract information from arbitrarily formatted spreadsheets. Formatting the single table of data used on &lt;a href=&quot;http://asbo.org.uk&quot;&gt;asbo.org.uk&lt;/a&gt; took about three hours, which seems like a waste.&lt;/p&gt;

&lt;p&gt;I was generally quite impressed with CakePHP; it's laid out in a sane way, though coming from Python some of the automatic discovery of models in the controllers feels a little bit magic, and I'm not sure I'm comfortable passing around arrays of data rather than data objects themselves, but it's not a deal breaker. I do like the layout system, something I commonly implement with blocks in Django, but seeing it formalised as part of the recommended approach to application templating is nice.&lt;/p&gt;

&lt;p&gt;I put the &lt;a href=&quot;http://github.com/jonatkinson/asbo&quot;&gt;source on Github&lt;/a&gt;,if anyone is interested.&lt;/p&gt;</content:encoded>
	<dc:date>2010-05-08T19:45:04+00:00</dc:date>
</item>
<item rdf:about="http://jonatkinson.co.uk/sikuli-desktop-automation/">
	<title>Jon Atkinson: Sikuli desktop automation</title>
	<link>http://jonatkinson.co.uk/sikuli-desktop-automation/</link>
	<content:encoded>&lt;p&gt;There's quite a lot of &lt;a href=&quot;http://twitter.com/#search?q=sikuli&quot;&gt;buzz around&lt;/a&gt; &lt;a href=&quot;http://sikuli.csail.mit.edu/index.shtml&quot;&gt;Project Sikuli&lt;/a&gt; at the moment, so I spent time today playing with it.&lt;/p&gt;

&lt;p&gt;Sikuli is a GUI automation engine which uses a vision engine to identify elements on screen. In practise, it works well as a quick way to script repetitive desktop actions,  without having to learn the AppleScript actions an application provides, or how to hook into a desktop accessibility framework to manipulate applications. Instead, you tell the Sikuli engine how you expect regions of the screen to look, and then how to further manipulate them with clicks, key-presses and so on.&lt;/p&gt;

&lt;p&gt;That is quite an abstract explanation, so here is a practical example.&lt;/p&gt;

&lt;p&gt;Every morning, when I sit down at my desk, I do two things: I do some basic maintenance on my Mac, and I print out my day planner sheet. This only takes maybe 5 minutes, but I need to wait in front of the screen and click the right buttons at the right time. That's pretty dull, so here's how I'm using Sikuli to automate that.&lt;/p&gt;

&lt;p&gt;First of all, the maintenance script. I use &lt;a href=&quot;http://www.macpaw.com/cleanmymac&quot;&gt;CleanMyMac&lt;/a&gt; to perform one big system clean every morning, which requires a few steps; launching the application, scanning for files to clean, approving the list of files, running the cleaning process, then closing the application.&lt;/p&gt;

&lt;p&gt;My Sikuli script for doing this looks like this:&lt;/p&gt;

&lt;p&gt;&lt;img src=&quot;http://jonatkinson.co.uk/static/files/sikuli_clean_script.png&quot;&gt;&lt;/p&gt;

&lt;p&gt;The script is fairly self-explanatory. First, it switches to (or opens) the CleanMyMac application, then runs the scan process. The script sleeps for five seconds, the searches for the 'scan finished' message, and goes to sleep again until that message is displayed. Then it performs the clean operation, and again waits for the 'clean finished' message. After this, it closes the application.&lt;/p&gt;

&lt;p&gt;At no point is this script passing events directly to the application, nor is it querying the application to get information about its state; it's just examining the frame-buffer and looking for patterns which are similar to those specified in the script. On the Sikuli website, they claim their vision engine is smart enough to still work even if an application slightly changes it's visual style, but I haven't been able to test this.&lt;/p&gt;

&lt;p&gt;This is the script for printing my day planner:&lt;/p&gt;

&lt;p&gt;&lt;img src=&quot;http://jonatkinson.co.uk/static/files/sikuli_pages_script.png&quot;&gt;&lt;/p&gt;

&lt;p&gt;First, it closes then re-opens Pages so that it is in a predictable state. Then, the script manipulates the 'recent documents' drop-down, to open my 'Day Sheet 2' document. Notice that the script uses the 'wait' function frequently so that the vision engine isn't searching for an image before it has been drawn by the operating system. Once the document is open, we pass the operating system the &amp;#8984;P keyboard shortcut to open the print dialogue, then click 'print'. Finally, Pages is closed, and I check my printer tray. Here's a screen-cast of this in action. Note that I use the 'Run and show each action' button to start the script. This way, you can see the vision engine matching and highlighting each element on the screen:&lt;/p&gt;

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

&lt;p&gt;Sikuli does have some limitations; You can't copy and paste between scripts, which I think is due to how the IDE stores image region data on the filesystem. Also, scripts seem wedded to the IDE, so you can't launch a script without needing to click the 'run' button in the IDE, but as the IDE is really just a thin wrapper over an underlying Jython instance, I'm sure this would be possible with a little more digging.&lt;/p&gt;

&lt;p&gt;The obvious next step is to properly test how well Sikuli does deal with visual changes; using Sikuli to test web applications would be a great addition to the toolbox (and it would eliminate the problems with brittle tools like &lt;a href=&quot;http://seleniumhq.org/&quot;&gt;Selenium&lt;/a&gt;), and the IDE and language is simple enough for non-programmers to take some of the burden of writing tests.&lt;/p&gt;

&lt;p&gt;I'm quite looking forward to the future of Sikuli. I'd like to see this visual search technology make it into more traditional scripting environments like AppleScript, though I'm not sure that'll happen any time soon, but anything which reduces reliance on bending traditional accessibility frameworks to perform in this role is a step forward.&lt;/p&gt;</content:encoded>
	<dc:date>2010-05-08T19:45:04+00:00</dc:date>
</item>
<item rdf:about="http://jonatkinson.co.uk/django-project-base/">
	<title>Jon Atkinson: Django Project Base</title>
	<link>http://jonatkinson.co.uk/django-project-base/</link>
	<content:encoded>&lt;p&gt;&lt;em&gt;&quot;This is my project base. There are many like it, but this one is mine.&quot;&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;Today I finally got around to putting my &lt;a href=&quot;http://github.com/jonatkinson/project-base&quot;&gt;Django project base&lt;/a&gt; on &lt;a href=&quot;http://github.com&quot;&gt;Github&lt;/a&gt;. I've been using this base for about six months now, and after a lot of rewrites and different approaches, it's now reasonably stable. I've been starting a lot of new projects recently, and repeatedly fixing the same small bugs in this project template, so I decided to spend a few hours this afternoon cleaning it up and making it public.&lt;/p&gt;

&lt;p&gt;I'm not totally satisfied with my use of shell scripts to do some of the bootstrap actions (ideally I'd use Fabric for all of these tasks), and longer-term I want to make it easier to rename the django project rather than using search/replace in TextMate.&lt;/p&gt;

&lt;p&gt;I know there are a lot of similar projects to this on Github, but none of them worked exactly like I wanted (I think too many depend on zc.buildout and similar), and while I'm not crazy about re-inventing the wheel, I hope there are enough other people out there who share my preferences who will find this useful.&lt;/p&gt;</content:encoded>
	<dc:date>2010-05-08T19:45:04+00:00</dc:date>
</item>
<item rdf:about="http://ssam.livejournal.com/10309.html">
	<title>Sam Thursfield: On Cheapness</title>
	<link>http://ssam.livejournal.com/10309.html</link>
	<content:encoded>Both of my IBM Thinkpad power adapters are now working only because of ample solder and insulating tape. I have a third, but that's disintegrated altogether.&lt;br&gt;&lt;br&gt;How, after over 100 years of development can we not manufacture power cables properly? You'd think especially the Thinkpad might come with adapters and cables which could last more than a few years.</content:encoded>
	<dc:date>2010-01-08T00:54:33+00:00</dc:date>
</item>
<item rdf:about="tag:flickr.com,2005:/photo/4123094713">
	<title>Jason Scheirer's Flickr: I love lamp</title>
	<link>http://www.flickr.com/photos/jasonscheirer/4123094713/</link>
	<content:encoded>&lt;p&gt;&lt;a href=&quot;http://www.flickr.com/people/jasonscheirer/&quot;&gt;Jason Scheirer&lt;/a&gt; posted a photo:&lt;/p&gt;
&lt;p&gt;&lt;a href=&quot;http://www.flickr.com/photos/jasonscheirer/4123094713/&quot; title=&quot;I love lamp&quot;&gt;&lt;img src=&quot;http://farm3.static.flickr.com/2585/4123094713_62a6982b2b_m.jpg&quot; width=&quot;240&quot; height=&quot;180&quot; alt=&quot;I love lamp&quot; /&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;At LACMA&lt;/p&gt;&amp;lt;/content&amp;gt;</content:encoded>
	<dc:date>2010-01-02T07:33:39+00:00</dc:date>
	<dc:creator>Jason Scheirer</dc:creator>
</item>
<item rdf:about="tag:flickr.com,2005:/photo/3734585664">
	<title>Jason Scheirer's Flickr: OFF</title>
	<link>http://www.flickr.com/photos/jasonscheirer/3734585664/</link>
	<content:encoded>&lt;p&gt;&lt;a href=&quot;http://www.flickr.com/people/jasonscheirer/&quot;&gt;Jason Scheirer&lt;/a&gt; posted a photo:&lt;/p&gt;
&lt;p&gt;&lt;a href=&quot;http://www.flickr.com/photos/jasonscheirer/3734585664/&quot; title=&quot;OFF&quot;&gt;&lt;img src=&quot;http://farm3.static.flickr.com/2517/3734585664_ccbcdbea41_m.jpg&quot; width=&quot;240&quot; height=&quot;180&quot; alt=&quot;OFF&quot; /&gt;&lt;/a&gt;&lt;/p&gt;

&amp;lt;/content&amp;gt;</content:encoded>
	<dc:date>2009-11-02T18:20:40+00:00</dc:date>
	<dc:creator>Jason Scheirer</dc:creator>
</item>
<item rdf:about="tag:flickr.com,2005:/photo/3733786047">
	<title>Jason Scheirer's Flickr: Ante show</title>
	<link>http://www.flickr.com/photos/jasonscheirer/3733786047/</link>
	<content:encoded>&lt;p&gt;&lt;a href=&quot;http://www.flickr.com/people/jasonscheirer/&quot;&gt;Jason Scheirer&lt;/a&gt; posted a photo:&lt;/p&gt;
&lt;p&gt;&lt;a href=&quot;http://www.flickr.com/photos/jasonscheirer/3733786047/&quot; title=&quot;Ante show&quot;&gt;&lt;img src=&quot;http://farm3.static.flickr.com/2426/3733786047_575820fd59_m.jpg&quot; width=&quot;240&quot; height=&quot;180&quot; alt=&quot;Ante show&quot; /&gt;&lt;/a&gt;&lt;/p&gt;

&amp;lt;/content&amp;gt;</content:encoded>
	<dc:date>2009-11-02T18:20:40+00:00</dc:date>
	<dc:creator>Jason Scheirer</dc:creator>
</item>

</rdf:RDF>
