<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	>

<channel>
	<title>Code: Flickr Developer Blog</title>
	<atom:link href="http://code.flickr.com/blog/feed/" rel="self" type="application/rss+xml" />
	<link>http://code.flickr.com/blog</link>
	<description>Just another WordPress weblog</description>
	<pubDate>Fri, 18 Jul 2008 18:19:24 +0000</pubDate>
	<generator>http://wordpress.org/?v=2.6</generator>
	<language>en</language>
			<item>
		<title>Wildcard Machine Tag URLs</title>
		<link>http://code.flickr.com/blog/2008/07/18/wildcard-machine-tag-urls/</link>
		<comments>http://code.flickr.com/blog/2008/07/18/wildcard-machine-tag-urls/#comments</comments>
		<pubDate>Fri, 18 Jul 2008 18:19:24 +0000</pubDate>
		<dc:creator>aaron</dc:creator>
		
		<category><![CDATA[Uncategorized]]></category>

		<category><![CDATA[api]]></category>

		<category><![CDATA[machine tags]]></category>

		<category><![CDATA[tagging]]></category>

		<guid isPermaLink="false">http://code.flickr.com/blog/?p=38</guid>
		<description><![CDATA[
Photo by cackhanded
If you&#8217;re not already familiar with machine tags the easiest way to think of them is being like a plain old tag but with a special syntax that allows users to define additional structured data about that tag. In turn the magic space hamsters that run the site have been trained to recognize, [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://www.flickr.com/photos/mn_francis/418443679/" title="Machine tags! by cackhanded, on Flickr" ><img src="http://farm1.static.flickr.com/162/418443679_2bf88260fa.jpg" width="500" height="333" alt="Machine tags!" style="border:1px solid black;"/></a></p>
<p style="font-family:sans-serif;font-size:x-small;">Photo by <a href="http://flickr.com/photos/mn_francis/418443679/">cackhanded</a></p>
<p>If you&#8217;re not already familiar with machine tags the easiest way to think of them is being like a plain old tag but with a special syntax that allows users to define additional structured data about that tag. In turn the magic space hamsters that run the site have been trained to recognize, index and allow for searches across multiple facets of a given machine tag.</p>
<p>Machine tags have three parts : a <q>namespace</q> which is like a subject or a topic;  a <q>predicate</q> which is a like a property of that topic; a <q>value</q> which is &#8230; well, a value.</p>
<p>For a more thorough introduction to the subject I&#8217;d recommend reading the <a href="http://www.flickr.com/groups/api/discuss/72157594497877875">announcement<br />
we made in the Flickr API discussion group</a> when machine tags were first added to the site. If you&#8217;d like to know even more, after that, there is <a href="http://del.icio.us/tag/machinetags">good collection of links available on del.icio.us</a>.</p>
<p>Which brings us to the part where I tell you that we&#8217;ve added the ability to search for machine tagged photos in plain old tag URLs (as well as in tag searches on the <a href="http://www.flickr.com/search/">Flickr search page</a>) using the facetted <a href="http://www.flickr.com/services/api/flickr.photos.search.html">query syntax</a> that has always been available in the API. For example :</p>
<ul>
<li>
<p>All the photos tagged &#8220;flickr:user=bees&#8221;, aka <a href="http://www.flickr.com/photos/bees/">Cal</a> :</p>
<p style="text-indent:20px;margin-top:7px;margin-bottom:14px;font-family:sans-serif;font-size:small;"><a href="http://www.flickr.com/photos/tags/flickr:user=bees">http://www.flickr.com/photos/tags/flickr:user=bees</a></p>
</li>
</ul>
<p>That&#8217;s a trick, really. You&#8217;ve always been able to do this since machine tags are just<br />
tags. The New-New means you can be even more granular in what you are looking<br />
for. How about : </p>
<ul>
<li>
<p>All photos with Flickr users :</p>
<p style="text-indent:20px;margin-top:7px;margin-bottom:14px;font-family:sans-serif;font-size:small;"><a href="http://www.flickr.com/photos/tags/flickr:user=">http://www.flickr.com/photos/tags/flickr:user=</a></p>
</li>
<li>
<p>Or Upcoming.org users : </p>
<p style="text-indent:20px;margin-top:7px;margin-bottom:14px;font-family:sans-serif;font-size:small;"><a href="http://www.flickr.com/photos/tags/upcoming:user=">http://www.flickr.com/photos/tags/upcoming:user=</a></p>
</li>
<li>
<p>Or even Facebook users :</p>
<p style="text-indent:20px;margin-top:7px;margin-bottom:14px;font-family:sans-serif;font-size:small;"><a href="http://www.flickr.com/photos/tags/facebook:user=">http://www.flickr.com/photos/tags/facebook:user=</a></p>
</li>
<li>
<p>Or simply <em>all <q>users</q></em> regardless of service (or namespace) :</p>
<p style="text-indent:20px;margin-top:7px;margin-bottom:14px;font-family:sans-serif;font-size:small;"><a href="http://www.flickr.com/photos/tags/*:user=">http://www.flickr.com/photos/tags/*:user=</a></p>
</li>
<li>
<p>Maybe, all the photos in the <q>flickr</q> namespace :</p>
<p style="text-indent:20px;margin-top:7px;margin-bottom:14px;font-family:sans-serif;font-size:small;"><a href="http://www.flickr.com/photos/tags/flickr:*=">http://www.flickr.com/photos/tags/flickr:*=</a></p>
</li>
<li>
<p>But, seriously, back to Cal : Cal, across services (or namespaces) :</p>
<p style="text-indent:20px;margin-top:7px;margin-bottom:14px;font-family:sans-serif;font-size:small;"><a href="http://www.flickr.com/photos/tags/*:user=bees">http://www.flickr.com/photos/tags/*:user=bees</a></p>
</li>
<li>
<p>All Cal. All the time :</p>
<p style="text-indent:20px;margin-top:7px;margin-bottom:14px;font-family:sans-serif;font-size:small;"><a href="http://www.flickr.com/photos/tags/*:*=bees">http://www.flickr.com/photos/tags/*:*=bees</a></p>
</li>
<li>
<p>And no, you can not do this. No ponies for you if you try  :</p>
<p style="text-indent:20px;margin-top:7px;margin-bottom:14px;font-family:sans-serif;font-size:small;">http://www.flickr.com/photos/tags/*:*=</p>
</li>
</ul>
<p>The wildcard URL syntax is also available for an individual user&#8217;s tags :</p>
<ul>
<li>
<p>These are all my photos that have been machine tagged with either a <a href="http://www.geonames.org/">Geonames</a>, <a href="http://www.flickr.com/places/">Places</a> or <a href="http://developer.yahoo.com/geo/">GeoPlanet</a> (n&#233;e <a href="http://geobloggers.com/archives/2008/05/12/yahoo-woe-where-on-earth-that-is-ids/">Where on Earth</a>) locality ID :</p>
<p style="text-indent:20px;margin-top:7px;margin-bottom:14px;font-family:sans-serif;font-size:small;"><a href="http://flickr.com/photos/straup/tags/*:locality=">http://www.flickr.com/photos/straup/tags/*:locality=</a></p>
</li>
<li>
<p>Or photos in the <a href="http://flickr.com/photos/george_eastman_house/">George Eastman House&#8217;s photostream</a> that were developed using the daguerrotype process :</p>
<p style="text-indent:20px;margin-top:7px;margin-bottom:14px;font-family:sans-serif;font-size:x-small;"><a href="http://flickr.com/photos/george_eastman_house/tags/photo:process=daguerreotype">http://www.flickr.com/photos/george_eastman_house/tags/photo:process=daguerreotype</a></p>
</li>
</ul>
<p>Now for the list of caveats and Known-Knowns : </p>
<ul style="list-style-type:square;">
<li>
<p>At the moment it is still not possible to poke around the hierarchy of a given machine tag : all the predicates for a namespace; all the unique pairs of namespace and predicates; that sort of thing. It is On The List &trade; and hopefully we can offer up something for you to play with, even if it&#8217;s just in the API to start with, shortly.</p>
</li>
<li>
<p>Values in wildcard URLs should are treated the same way regular tags are in URLs. That is &#8220;san francisco&#8221; becomes &#8220;sanfrancisco&#8221; or in machine tag speak : <a href="http://flickr.com/photos/tags/*:*=sanfrancisco">*:*=sanfrancisco</a>.</p>
<li>
<p>In the examples above, I&#8217;ve illustrated namespaces that are used to denote one service or another. It is important to remember that <a href="http://factoryjoe.com/blog/2008/05/25/machine-tagging-relationships/">there are no rules</a> about what can or should be a namespace. Like tagging, the hope is that the various communities will arrive at and adapt a consensus according to their needs.</p>
</li>
<p><a href="http://www.flickr.com/photos/straup/418517249/" title="Untitled Souvenir #1173678685 by straup, on Flickr"><img src="http://farm1.static.flickr.com/175/418517249_43063c1acd.jpg" width="500" height="375" alt="Untitled Souvenir #1173678685" /></a></p>
<p style="font-family:sans-serif;font-size:x-small;">Photo by <a href="http://flickr.com/photos/straup/418517249/">straup</a></p>
<p>In the meantime, kick back and enjoy photos <a href="http://flickr.com/photos/tags/dopplr:trip=/interesting/">taken by people on their Dopplr trips</a>, photos by people who <a href="http://flickr.com/photos/tags/aero:*=">really really like airplanes</a> or photos by people who are interested in <a href="http://flickr.com/photos/tags/taxonomy:family=phalangeridae/">possums</a><br />
(not to mention <a href="http://flickr.com/photos/tags/taxonomy:subclass=marsupialia/">all manner of marsupials</a>) or whatever else comes to mind!</p>
]]></content:encoded>
			<wfw:commentRss>http://code.flickr.com/blog/2008/07/18/wildcard-machine-tag-urls/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Trickr, or Humanising the Developers (Part 2)</title>
		<link>http://code.flickr.com/blog/2008/06/30/trickr-or-humanising-the-developers-part-2/</link>
		<comments>http://code.flickr.com/blog/2008/06/30/trickr-or-humanising-the-developers-part-2/#comments</comments>
		<pubDate>Mon, 30 Jun 2008 10:22:41 +0000</pubDate>
		<dc:creator>waferbaby</dc:creator>
		
		<category><![CDATA[Uncategorized]]></category>

		<category><![CDATA[hardware]]></category>

		<category><![CDATA[people]]></category>

		<category><![CDATA[software]]></category>

		<guid isPermaLink="false">http://code.flickr.com/blog/?p=14</guid>
		<description><![CDATA[Back for more, my wee little tin miners? As we say &#8217;round these parts, Onwards!
But first thanks to Rafe, and Stephen for playing along.

Myles, POWER USER!
Testing on dev is for the unconfident.

Macbook Pro, Textmate, scp, Firefox, Firebug, ack, Quicksilver, iTerm, vi, Mail.app.

Norby, Ops Succubus
Sleep! What is it with you people and sleep?


Y!-issue MBP (upgraded to [...]]]></description>
			<content:encoded><![CDATA[<p>Back for more, my wee little tin miners? As we say &#8217;round these parts, <em>Onwards</em>!</p>
<p>But first thanks to <a href="http://rc3.org/2008/06/11/how-i-roll/">Rafe</a>, and <a href="http://redmonk.com/sogrady/2008/06/12/myarsenal/">Stephen</a> for playing along.</p>
<p class="flickr_buddy_icon">
<a href="http://flickr.com/people/mylesdgrant" title="We love mylesdgrant."><img src="http://farm1.static.flickr.com/1/buddyicons/35034347347@N01.jpg" class="flickr_badge_image" width="48" height="48" alt="mylesdgrant" /></a><br />
<b>Myles</b>, POWER USER!<br />
<i>Testing on dev is for the unconfident.</i>
</p>
<p>Macbook Pro, Textmate, scp, Firefox, Firebug, ack, Quicksilver, iTerm, vi, Mail.app.</p>
<p class="flickr_buddy_icon">
<a href="http://flickr.com/people/norby" title="We love norby."><img src="http://farm1.static.flickr.com/1/buddyicons/60065287@N00.jpg" class="flickr_badge_image" width="48" height="48" alt="norby" /></a><br />
<b>Norby</b>, Ops Succubus<br />
<i>Sleep! What is it with you people and sleep?</i>
</p>
<ul>
<li>Y!-issue MBP (upgraded to Leopard w/ spaces)</li>
<li>Terminal, ssh, Safari, Firefox, Nagios, vi</li>
<li>tunnels &gt;&gt; VPN, have more than one RSA key if you work remotely :)</li>
</ul>
<p class="flickr_buddy_icon">
<a href="http://flickr.com/people/laloyd" title="We love laloyd."><img src="http://farm1.static.flickr.com/1/buddyicons/37996631812@N01.jpg" class="flickr_badge_image" width="48" height="48" alt="laloyd" /></a><br />
<b>Paul L</b>, Roaming (not Roman) Yeti<br />
<i>Gngghhhghghhh</i>
</p>
<p>MacBook Pro, JDK 1.6, IntelliJ Idea 7.03, iTerm, one reliable crazy Canadian-Russian.</p>
<p class="flickr_buddy_icon">
<a href="http://flickr.com/people/schill" title="We love schill."><img src="http://farm1.static.flickr.com/4/buddyicons/12289718@N00.jpg" class="flickr_badge_image" width="48" height="48" alt="schill" /></a><br />
<b>Schill</b>, Lil&#8217; Javascript charmer<br />
<i>[ This space left intentionally blank ]</i>
</p>
<p>MBP, TextMate, A-grade (Fx/Safari/Opera) browsers, IE 6/7/8 + MS Script debugger via Parallels. GIMP for the odd image edit. Dell 24&#8243;.</p>
<p>Fun stuff: Beyerdynamic DT-880 headphones, iTunes + last.fm + SOMA FM for muzak. Finger rocket defense system. Grande dark roast in the AM.</p>
<p class="flickr_buddy_icon">
<a href="http://flickr.com/people/SilentObserver" title="We love SilentObserver."><img src="http://farm2.static.flickr.com/1110/buddyicons/8448115@N03.jpg" class="flickr_badge_image" width="48" height="48" alt="SilentObserver" /></a><br />
<b>Serguei</b>, Ex-KGB Field Agent<br />
<i>Comments are lying, code tells the truth!</i>
</p>
<p>PC laptop. JDK 1.6, IntelliJ Idea 7.03, FAR manager, SecureCRT ssh client. kill, especially in its most radical form kill -9. And tail -f , I can watch logs for hours, it&#8217;s better than TV.</p>
<p class="flickr_buddy_icon">
<a href="http://flickr.com/people/hitherto" title="We love hitherto."><img src="http://farm1.static.flickr.com/1/buddyicons/87944415@N00.jpg" class="flickr_badge_image" width="48" height="48" alt="hitherto" /></a><br />
<b>Simon</b>, Totally bi(linguisticalated)<br />
<i>Um, no, that won&#8217;t work in French</i>
</p>
<ul>
<li>MBP</li>
<li>Textmate</li>
<li>Firefox 3</li>
<li>Safari</li>
<li>Parallels (for testing in IE)</li>
<li>Apple Terminal</li>
<li>Apple Mail</li>
<li>Quicksilver</li>
</ul>
<p>grep, vi, perl, dozens of bash shortcuts. and my personal favourite for code review : &#8220;cvs diff | mate&#8221;</p>
]]></content:encoded>
			<wfw:commentRss>http://code.flickr.com/blog/2008/06/30/trickr-or-humanising-the-developers-part-2/feed/</wfw:commentRss>
		</item>
		<item>
		<title>WebMonkey, Flickr API and Python</title>
		<link>http://code.flickr.com/blog/2008/06/27/webmonkey-flickr-api-and-python/</link>
		<comments>http://code.flickr.com/blog/2008/06/27/webmonkey-flickr-api-and-python/#comments</comments>
		<pubDate>Fri, 27 Jun 2008 17:56:21 +0000</pubDate>
		<dc:creator>kellan</dc:creator>
		
		<category><![CDATA[Uncategorized]]></category>

		<category><![CDATA[api]]></category>

		<category><![CDATA[favorites]]></category>

		<category><![CDATA[flickr.favorites.getPublicList]]></category>

		<category><![CDATA[python]]></category>

		<guid isPermaLink="false">http://code.flickr.com/blog/2008/06/27/webmonkey-flickr-api-and-python/</guid>
		<description><![CDATA[The reborn-phoenix-like-from-the-ashes WebMonkey has a tutorial up on Getting Started with the Flickr API using the Python API library.
Covers fetching favorites (an under mashedup feature if there ever was one), and plotting geotagged photos on Google Maps.
]]></description>
			<content:encoded><![CDATA[<p>The reborn-phoenix-like-from-the-ashes <a href="http://www.webmonkey.com">WebMonkey</a> has a tutorial up on <a href="http://www.webmonkey.com/tutorial/Get_Started_With_the_Flickr_API">Getting Started with the Flickr API</a> using the <a href="http://flickrapi.sourceforge.net/">Python API library</a>.</p>
<p>Covers fetching favorites (an under mashedup feature if there ever was one), and plotting geotagged photos on Google Maps.</p>
]]></content:encoded>
			<wfw:commentRss>http://code.flickr.com/blog/2008/06/27/webmonkey-flickr-api-and-python/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Visualizing 4.5 years of Flickr development</title>
		<link>http://code.flickr.com/blog/2008/06/26/visualizing-flickr-development/</link>
		<comments>http://code.flickr.com/blog/2008/06/26/visualizing-flickr-development/#comments</comments>
		<pubDate>Thu, 26 Jun 2008 22:15:00 +0000</pubDate>
		<dc:creator>cal</dc:creator>
		
		<category><![CDATA[Uncategorized]]></category>

		<category><![CDATA[software]]></category>

		<category><![CDATA[visulaization]]></category>

		<guid isPermaLink="false">http://code.flickr.com/blog/?p=15</guid>
		<description><![CDATA[<p>We were impressed with Michael Ogawa's <a href="http://vis.cs.ucdavis.edu/~ogawa/codeswarm/">code_swarm project</a>, so were understandably excited when he made the source available (under the GPL v3). We sprang into action, avoiding the real work we were supposed to be doing and created some visualizations of the main Flickr subversion repository.</p>]]></description>
			<content:encoded><![CDATA[<p>We were impressed with Michael Ogawa&#8217;s <a href="http://vis.cs.ucdavis.edu/~ogawa/codeswarm/">code_swarm project</a>, so were understandably excited when he made the source available (under the GPL v3). We sprang into action, avoiding the real work we were supposed to be doing and created some visualizations of the main Flickr subversion repository.</p>
<p><object type="application/x-shockwave-flash" width="400" height="300" data="http://www.flickr.com/apps/video/stewart.swf?v=55430" classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000"><param name="flashvars" value="intl_lang=en-us&amp;photo_secret=e410bdd037&amp;photo_id=2611175163"></param><param name="movie" value="http://www.flickr.com/apps/video/stewart.swf?v=55430"></param><param name="bgcolor" value="#000000"></param><param name="allowFullScreen" value="true"></param><embed type="application/x-shockwave-flash" src="http://www.flickr.com/apps/video/stewart.swf?v=55430" bgcolor="#000000" allowfullscreen="true" flashvars="intl_lang=en-us&amp;photo_secret=e410bdd037&amp;photo_id=2611175163" height="300" width="400"></embed></object></p>
<p>In this visualization, blue represents PHP, green is HTML, red is Java, purple is CSS and JavaScript, Cyan is Flash and ActionScript, with yellow filling in for everything else.</p>
<p>Myles took it a step further, using the tool to visualize our internal bug tracking system. In this movie, each node represents an issue, flashing red as it was opened, orange as it was assigned, blue as we argued about what to do and final green when it was resolved.</p>
<p><object type="application/x-shockwave-flash" width="400" height="267" data="http://www.flickr.com/apps/video/stewart.swf?v=55430" classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000"><param name="flashvars" value="intl_lang=en-us&amp;photo_secret=a05f04e15a&amp;photo_id=2610882541"></param><param name="movie" value="http://www.flickr.com/apps/video/stewart.swf?v=55430"></param><param name="bgcolor" value="#000000"></param><param name="allowFullScreen" value="true"></param><embed type="application/x-shockwave-flash" src="http://www.flickr.com/apps/video/stewart.swf?v=55430" bgcolor="#000000" allowfullscreen="true" flashvars="intl_lang=en-us&amp;photo_secret=a05f04e15a&amp;photo_id=2610882541" height="267" width="400"></embed></object></p>
<p>This required a little modification of the software to allow for states on nodes, so that the node color can change as the state changes. Myles has also been working on some modifications to improve upon the abrupt endings. New movies might get posted here if they&#8217;re awesome enough.</p>
<p>We&#8217;re hard at work (well, sort-of-work) thinking up new things to visualize and new ways to present the data. If you have some bright ideas, why not post them in the <a href="http://flickr.com/groups/api">code forum</a>.</p>
]]></content:encoded>
			<wfw:commentRss>http://code.flickr.com/blog/2008/06/26/visualizing-flickr-development/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Trickr, or Humanising the Developers (Part 1)</title>
		<link>http://code.flickr.com/blog/2008/05/29/trickr-or-humanising-the-developers-part-1/</link>
		<comments>http://code.flickr.com/blog/2008/05/29/trickr-or-humanising-the-developers-part-1/#comments</comments>
		<pubDate>Thu, 29 May 2008 19:03:37 +0000</pubDate>
		<dc:creator>waferbaby</dc:creator>
		
		<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://code.flickr.com/blog/?p=13</guid>
		<description><![CDATA[We busy little nerds of Flickr may act and smell like a bunch of psychotic monkey-bots, but beneath our filth-drenched metal exteriors beat the fleshy hearts of a thousand delicate human flowers. We feel, we love.
Ever wondered what keeps us well-oiled? I did, so I asked people, &#8220;What do you use to get the job [...]]]></description>
			<content:encoded><![CDATA[<p>We busy little nerds of Flickr may act and smell like a bunch of psychotic monkey-bots, but beneath our filth-drenched metal exteriors beat the fleshy hearts of a thousand delicate human flowers. We feel, we <i>love</i>.</p>
<p>Ever wondered what keeps us well-oiled? I did, so I asked people, <i>&#8220;What do you use to get the job done?&#8221;</i></p>
<p>And this, my dubious friends, is how we (rick)roll. </p>
<p class="flickr_buddy_icon">
<a href="http://flickr.com/people/straup" title="We love straup."><img src="http://farm1.static.flickr.com/1/buddyicons/35034348999@N01.jpg" class="flickr_badge_image" width="48" height="48" alt="straup" /></a><br />
<b>Aaron</b>, Ce sera mauvais français parce que j&#8217;ai utilisé l&#8217;Internet<br />
<i>You&#8217;re still wrong</i>
</p>
<ul>
<li>Emacs (dired-mode and shell-mode and M-x goto-line)</li>
<li>Glimpse (and alias grep grep -n -r -e)</li>
<li>Tabs and virtual workspaces</li>
</ul>
<p class="flickr_buddy_icon">
<a href="http://flickr.com/people/bees" title="We love bees."><img src="http://farm1.static.flickr.com/122/buddyicons/12037949754@N01.jpg" class="flickr_badge_image" width="48" height="48" alt="bees" /></a><br />
<b>Cal</b>, Baconmeister<br />
<i>Fuck off and die</i>
</p>
<ul>
<li>shitty pc laptop w/ xp pro</li>
<li>twin 20&#8243; monitors</li>
<li>noted</li>
<li>explorer</li>
<li>ff &#038; thunderbird</li>
<li>putty / pageant / plink</li>
<li>winscp</li>
<li>cygwin</li>
<li>msys &#038; mingw</li>
<li>wireshark</li>
<li>paint shop pro 5</li>
<li>miranda</li>
<li>calc &#038; chamap</li>
<li>tortoise cvs/svn</li>
<li>beyond compare</li>
<li>apache/mysql/php</li>
<li>ms office w/ visio</li>
<li>itunes</li>
</ul>
<p class="flickr_buddy_icon">
<p><a href="http://flickr.com/people/revdancatt" title="We love revdancatt."><img src="http://farm1.static.flickr.com/1/buddyicons/35468159852@N01.jpg" class="flickr_badge_image" width="48" height="48" alt="revdancatt" /></a><br />
<b>Dan</b>, The Rev.<br />
<i>I don&#8217;t do quotes</i>
</p>
<p>2 Machine setup;</p>
<p>MacBook Pro for writing code, TextWrangler (off-white Lucida Grande 11pt font on blue background, for reduced eye-strain), Safari &#038; Opera for (final) testing.</p>
<p>PC for testing, with IE6,7,blah + MS Script debugger. Most testing takes place in Firefox + Firebug (cannot live without firebug). Monitor rotated 90 degrees to give Firebug more real estate for hacking around the dom, editing js script on the fly, etc.</p>
<p>Extras:</p>
<ul>
<li>Headphones</li>
<li><a href="http://www.blackholemedia.com/noise/">Pink noise generator</a> (volume set to one notch down from default) to drown out background noise.</li>
<li><a href="http://www.katsurashareware.com/pgs/oceanwaves.html">Ocean Waves generator</a> to take the edge off the pink noise.</li>
<li><a href="http://www.last.fm/listen/globaltags/ambient">last.fm radio tag search &#8220;ambient&#8221;</a> to take the edge off the pink noise and ocean waves.</li>
<li><a href="http://docs.blacktree.com/quicksilver/what_is_quicksilver">Quicksilver</a>, to get stuff done quickly.</li>
<li><a href="http://code.google.com/p/blacktree-visor/">Visor</a> for quick terminal access.</li>
<li><a href="http://hogbaysoftware.com/products/writeroom">WriteRoom</a>, for taking notes (again off-white text on a blue background).</li>
</ul>
<p class="flickr_buddy_icon">
<a href="http://flickr.com/people/dunstan" title="We love dunstan."><img src="http://farm1.static.flickr.com/4/buddyicons/68756453@N00.jpg" class="flickr_badge_image" width="48" height="48" alt="dunstan" /></a><br />
<b>Dunstan</b>, He&#8217;s like, got a dog and stuff<br />
<i>Mistakenly included on the engineering mailing list for 505 days and counting</i>
</p>
<ul>
<li>Macbook Pro</li>
<li>Textmate</li>
<li>Photoshop</li>
<li>Transmit</li>
<li>Safari</li>
<li>Firefox+Firebug</li>
<li>IE (in Parallels)</li>
<li>Quicksilver</li>
</ul>
<p class="flickr_buddy_icon">
<a href="http://flickr.com/people/eric" title="We love eric."><img src="http://farm1.static.flickr.com/1/buddyicons/12037949629@N01.jpg" class="flickr_badge_image" width="48" height="48" alt="eric" /></a><br />
<b>Eric</b>, Teenage Mutant Ninja Scripta<br />
<i>Please, just work</i>
</p>
<p>Powerbook, BBEdit, Perl scripts to manage scp+cvs+Flex+compression, Firefox w/ Firebug and Webdev toolbar, Flex 3 SDK, Terminal, nano, Parallels.</p>
<p class="flickr_buddy_icon">
<a href="http://flickr.com/people/kellan" title="We love kellan."><img src="http://farm1.static.flickr.com/54/buddyicons/51035734193@N01.jpg" class="flickr_badge_image" width="48" height="48" alt="kellan" /></a><br />
<b>Kellan</b>, Rebellious off-worlder<br />
<i>I&#8217;d rather be building cloud castles</i>
</p>
<p>MBP, a hot-rodded version of Textmate, QuickSilver+Terminal.app (what&#8217;s the Finder?), Thunderbird + keyconfig for threading and archiving, SSHKeychain, grep, awk, tree, QuickProxy for Firefox (2.x), Wordpress.com, last.fm, Pandora, and Adium. used to use PHPfi, but less lately.</p>
<p class="flickr_buddy_icon">
<a href="http://flickr.com/people/murphy_slaw" title="We love murphy_slaw."><img src="http://farm1.static.flickr.com/10/buddyicons/32295031@N00.jpg" class="flickr_badge_image" width="48" height="48" alt="murphy_slaw" /></a><br />
<b>Murphy</b>, Secret ops mole<br />
<i>&#8230; &#8211;force &#8211;yes &#8211;quiet &gt; /dev/null 2&gt;&amp;1</i>
</p>
<ul>
<li>MacBook Pro</li>
<li>iTerm</li>
<li>vim, kill, screen, awk, rsync, mtr, nmap, strace, gdb</li>
<li>Wireshark</li>
<li>SSH Agent</li>
<li>Thunderbird + Enigmail</li>
<li>Firefox + Firebug + SwitchProxy + Nagios Checker</li>
<li>Adium</li>
<li>Caffeine</li>
<li>Home Zone</li>
</ul>
<p>Coming soon: more responses!</p>
]]></content:encoded>
			<wfw:commentRss>http://code.flickr.com/blog/2008/05/29/trickr-or-humanising-the-developers-part-1/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Slides: Capacity Planning for Web Operations</title>
		<link>http://code.flickr.com/blog/2008/05/05/slides-capacity-planning-for-web-operations/</link>
		<comments>http://code.flickr.com/blog/2008/05/05/slides-capacity-planning-for-web-operations/#comments</comments>
		<pubDate>Mon, 05 May 2008 05:48:08 +0000</pubDate>
		<dc:creator>allspaw</dc:creator>
		
		<category><![CDATA[Uncategorized]]></category>

		<category><![CDATA[operations]]></category>

		<category><![CDATA[scalability]]></category>

		<category><![CDATA[slides]]></category>

		<guid isPermaLink="false">http://code.flickr.com/blog/?p=10</guid>
		<description><![CDATA[You can grab the slides as a PDF from my Web 2.0 Expo talk Capacity Planning for Web Operations, or flip through them below.

 &#124; View &#124; Upload your own

]]></description>
			<content:encoded><![CDATA[<p>You can grab <a href="http://www.kitchensoap.com/2008/04/29/slides-from-web-20-expo/">the slides as a PDF</a> from my Web 2.0 Expo talk <a href="http://en.oreilly.com/webexsf2008/public/schedule/detail/1024">Capacity Planning for Web Operations</a>, or flip through them below.</p>
<div style="width:425px;text-align:left" id="__ss_372867"><object style="margin:0px" width="425" height="355"><param name="movie" value="http://static.slideshare.net/swf/ssplayer2.swf?doc=web20expocapacityplanning-1209164375125178-9"/><param name="allowFullScreen" value="true"/><param name="allowScriptAccess" value="always"/><embed src="http://static.slideshare.net/swf/ssplayer2.swf?doc=web20expocapacityplanning-1209164375125178-9" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" width="425" height="355"></embed></object>
<div style="font-size:11px;font-family:tahoma,arial;height:26px;padding-top:2px;"><a href="http://www.slideshare.net/?src=embed"><img src="http://static.slideshare.net/swf/logo_embd.png" style="border:0px none;margin-bottom:-5px" alt="SlideShare"/></a> | <a href="http://www.slideshare.net/jallspaw/capacity-planning-for-web-operations-web20-expo-2008?src=embed" title="View 'Capacity Planning for Web Operations - Web20 Expo 2008' on SlideShare">View</a> | <a href="http://www.slideshare.net/upload?src=embed">Upload your own</a></div>
</div>
]]></content:encoded>
			<wfw:commentRss>http://code.flickr.com/blog/2008/05/05/slides-capacity-planning-for-web-operations/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Flickr at XTech (and slides from SXSW&#8230;)</title>
		<link>http://code.flickr.com/blog/2008/05/03/flickr-at-xtech-and-slides-from-sxsw/</link>
		<comments>http://code.flickr.com/blog/2008/05/03/flickr-at-xtech-and-slides-from-sxsw/#comments</comments>
		<pubDate>Sat, 03 May 2008 17:00:40 +0000</pubDate>
		<dc:creator>sb</dc:creator>
		
		<category><![CDATA[Uncategorized]]></category>

		<category><![CDATA[conference]]></category>

		<category><![CDATA[internationalization]]></category>

		<category><![CDATA[locaization]]></category>

		<category><![CDATA[oauth]]></category>

		<category><![CDATA[sxsw]]></category>

		<category><![CDATA[talks]]></category>

		<category><![CDATA[xtech]]></category>

		<guid isPermaLink="false">http://code.flickr.com/blog/?p=12</guid>
		<description><![CDATA[Once upon a time, webheads used to talk about &#8220;conference season&#8221;, but it seems that these days there&#8217;s always a conference running somewhere. Having dispensed with Web 2.0, we&#8217;re now turning our attention to XTech 2008, which takes place in Dublin, Ireland from Tuesday May 6th to Friday May 9th.
The Flickr team has two talks [...]]]></description>
			<content:encoded><![CDATA[<p>Once upon a time, webheads used to talk about &#8220;conference season&#8221;, but it seems that these days there&#8217;s always a conference running somewhere. Having dispensed with <a href="http://www.web2expo.com/">Web 2.0</a>, we&#8217;re now turning our attention to <a href="http://2008.xtech.org/">XTech 2008</a>, which takes place in Dublin, Ireland from Tuesday May 6th to Friday May 9th.</p>
<p>The Flickr team has two talks lined up for those attending XTech. Through a freak scheduling accident they&#8217;re back-to-back, giving attendees the exciting opportunity to experience one and a half straight hours of pure Flickr-related goodness:</p>
<ul>
<li>11:00am, Thu May 8th, Goldsmiths 1, Kellan Elliott-McCrea talks about <a href="http://2008.xtech.org/public/schedule/detail/645">Advanced OAuth Wrangling</a></li>
<li>11:45am, Thu May 8th, Goldsmiths 2, Simon Batistoni (that&#8217;s me&#8230;) presents <a href="http://2008.xtech.org/public/schedule/detail/534">&#8220;Ni Hao, Monde: Connecting communities across cultural and linguistic boundaries&#8221;</a></li>
</ul>
<p>Hopefully we&#8217;ll see some of you there!</p>
<p>Looking backwards for a moment, this is also a chance to re-post the slides from my previous internationalization-themed talk, &#8220;Taking Over the World, The Flickr Way&#8221; which I gave at South by Southwest in March. This hour-long session was a high-level overview of some of the challenges and solutions we stumbled upon during the internationalization and localization of Flickr.com which we undertook in the first half of 2007:</p>
<div style="width:425px;text-align:left" id="__ss_383615"><object style="margin:0px" width="425" height="355"><param name="movie" value="http://static.slideshare.net/swf/ssplayer2.swf?doc=sxsw2008flickrintl-1209664326606634-8"/><param name="allowFullScreen" value="true"/><param name="allowScriptAccess" value="always"/><embed src="http://static.slideshare.net/swf/ssplayer2.swf?doc=sxsw2008flickrintl-1209664326606634-8" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" width="425" height="355"></embed></object></div>
<p>Versions of the slides in other formats (keynote, swf, pdf) are available <a href="http://hitherto.net/talks">here</a>.</p>
<p>As for Web 2.0 Expo, some of the team&#8217;s presentations should be showing up here in the next week or so, starting with slides from the delectable John Allspaw.</p>
]]></content:encoded>
			<wfw:commentRss>http://code.flickr.com/blog/2008/05/03/flickr-at-xtech-and-slides-from-sxsw/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Videos in the Flickr API</title>
		<link>http://code.flickr.com/blog/2008/05/01/videos-in-the-flickr-api/</link>
		<comments>http://code.flickr.com/blog/2008/05/01/videos-in-the-flickr-api/#comments</comments>
		<pubDate>Thu, 01 May 2008 20:22:26 +0000</pubDate>
		<dc:creator>kellan</dc:creator>
		
		<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://code.flickr.com/blog/?p=11</guid>
		<description><![CDATA[It isn&#8217;t just you, the pictures really did start moving, some of them at least. Which is an attempt at humor to cover the fact that this post is very belated.


Presumably you&#8217;ve noticed that folks are uploading videos to Flickr, and you&#8217;re wondering how to work with video in the API?  I&#8217;ll try to [...]]]></description>
			<content:encoded><![CDATA[<p>It isn&#8217;t just you, the pictures really did start moving, some of them at least. Which is an attempt at humor to cover the fact that this post is very belated.
</p>
<p>
Presumably you&#8217;ve noticed that folks are uploading videos to Flickr, and you&#8217;re wondering how to work with video in the API?  I&#8217;ll try to recap, and expand upon the info in <a href="http://flickr.com/groups/api/discuss/72157604450378243/">this thread in the API group</a>.</p>
<p><object type="application/x-shockwave-flash" width="400" height="300" data="http://www.flickr.com/apps/video/stewart.swf?v=49235" classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000"><param name="flashvars" value="intl_lang=en-us&amp;photo_secret=846d9c1be9&amp;photo_id=2345938910"></param><param name="movie" value="http://www.flickr.com/apps/video/stewart.swf?v=49235"></param><param name="bgcolor" value="#000000"></param><param name="allowFullScreen" value="true"></param><embed type="application/x-shockwave-flash" src="http://www.flickr.com/apps/video/stewart.swf?v=49235" bgcolor="#000000" allowfullscreen="true" flashvars="intl_lang=en-us&amp;photo_secret=846d9c1be9&amp;photo_id=2345938910" height="300" width="400"></embed></object></p>
<h3 id="long_photos">Long Photos</h3>
<p>First thing to understand is as far as Flickr is concerned videos are just a funny type of photo.  Your API application can ignore that video exists and everything should go on working.  This means:</p>
<ul>
<li>you can display a preview of a video by treating it exactly like any other photo on Flickr.</li>
<li>photos AND videos are returned by any method which used to return just photos</li>
<li>you can get info about a video like you would a photo.</li>
</ul>
<h3 id="videos_photos_and_8220media8221">Videos, photos, and &#8220;media&#8221;</h3>
<p>If you&#8217;re calling one of the dozens of API methods including <a href="http://www.flickr.com/services/api/flickr.photos.search.html"><code>flickr.photos.search()</code></a> and &#8230; that return what we call a &#8220;standard photo response&#8221; then that API method takes an &#8220;extras&#8221; argument.  <code>extras</code> is a comma separated list of additional metadata you would like included in the API response.
</p>
<p>
With the launch of video we&#8217;ve added a new extra: &#8220;media&#8221;.  Included <code>media</code> in your list of requested <code>extras</code> and we&#8217;ll include a new attribute <code>media=photo</code> or <code>media=video</code> with each photo element. Like so:</p>
<pre><code>&lt;photo id="2345938910" owner="35468159852@N01" secret="846d9c1be9" server="1423" farm="2" title="Naughty Dandelion" ispublic="1" isfriend="0" isfamily="0" media="video"/&gt;
</code></pre>
<p>Additionally if you&#8217;re calling <a href="http://www.flickr.com/services/api/flickr.photos.search.html"><code>flickr.photos.search()</code></a> you can filter your results by media type by passing `media=photos` or `media=videos` as an additional search argument. (not to be confused with the <code>extras</code> of the same name) </p>
<p>Default is &#8220;media=both&#8221; returning both photos and videos.</p>
<h3 id="displaying_videos_just_funny_photos">Displaying videos: just funny photos</h3>
<p>For each uploaded video we generate a JPG preview in a <a href="http://www.flickr.com/services/api/misc.urls.html">range of sizes</a>. Identical to what we do for photos.</p>
<p>Read the <a href="http://flickr.com/services/api/flickr.photos.getSizes.html">documentation for <code>flickr.photos.getSizes()</code></a> to get you started on how to display Flickr photos.</p>
<h3 id="playing_videos_constructing_the_embed_code">Playing videos: constructing the embed code</h3>
<p>We don&#8217;t currently provide a way to get to the FLV for a video. (the Flash encoded video file)  We&#8217;re looking into making this possible.  In the mean time if you want to display watch-able videos you&#8217;ll need to embed our video player.  </p>
<p>In addition to the photo height and width of the preview images, videos also have a stream height and stream width which we set when we process videos during upload.  While you can make the video player any size you want the videos are going to look much better if displayed at the proper size.</p>
<p>You can get the stream height and stream width and the URL for the video player using the standard <a href="http://flickr.com/services/api/flickr.photos.getSizes.html"><code>flickr.photos.getSizes()</code></a> method:</p>
<pre><code>&lt;sizes canblog="1" canprint="1" candownload="1"&gt;
&lt;size label="Square" width="75" height="75" source="http://farm2.static.flickr.com/1423/2345938910_846d9c1be9_s.jpg" url="http://www.flickr.com/photos/revdancatt/2345938910/sizes/sq/" media="photo"/&gt;
... standard getSizes stuff ...
&lt;size label="Video Player" width="500" height="375" source="http://www.flickr.com/apps/video/stewart.swf?v=49235&amp;photo_id=2345938910&amp;photo_secret=846d9c1be9" url="http://www.flickr.com/photos/revdancatt/2345938910/" media="video"/&gt;
&lt;/sizes&gt;
</code></pre>
<p>Alternately the stream width and height are included in the new <code>video</code> element returned by <a href="http://flickr.com/services/api/flickr.photos.getInfo.html"><code>flickr.photos.getInfo()</code></a><br />
:</p>
<pre><code>...
&lt;video ready="1" failed="0" pending="0" duration="14" width="500" height="375" /&gt;
&lt;/photo&gt;
....
</code></pre>
<h3 id="generating_embed_code">Generating Embed Code</h3>
<p>The player takes a height, a width, a photo id, a photo secret (required for playing non-public videos), and the argument <code>flickr_show_info_box</code>, which when set to layers over top of the video videographer, and video title info when the video isn&#8217;t playing.</p>
<p>I&#8217;m not going to go over in depth the markup for the player, but here is a quick and dirty PHP function for generating it:</p>
<pre><code>#
# takes a "Video Player" source from flickr.photos.getSizes() and optional display arguments
#

function flickr_video_embed($video_url, $width="400", $height="300", $info_box="true") {

    $markup = &lt;&lt;&lt;EOD
&lt;object type="application/x-shockwave-flash" width="$width" height="$height" data="$video_url"  classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000"&gt; &lt;param name="flashvars" value="flickr_show_info_box=$info_box"&gt;&lt;/param&gt; &lt;param name="movie" value="$video_url"&gt;&lt;/param&gt;&lt;param name="bgcolor" value="#000000"&gt;&lt;/param&gt;&lt;param name="allowFullScreen" value="true"&gt;&lt;/param&gt;&lt;embed type="application/x-shockwave-flash" src="$video_url" bgcolor="#000000" allowfullscreen="true" flashvars="flickr_show_info_box=$info_box" height="$height" width="$width"&gt;&lt;/embed&gt;&lt;/object&gt;
EOD;
    return $markup;

}
</code></pre>
<h3 id="videos_in_the_feeds">Videos in the feeds</h3>
<p>Videos, unsurprisingly, are included in all of the <a href="http://www.flickr.com/services/feeds/">various RSS and Atom feeds</a> which contain photos.  For each video entry we include a <a href="http://search.yahoo.com/mrss">MediaRSS</a> content element that points to the SWF player, and has a content type of &#8220;application/x-shockwave-flash&#8221;.  Additional we include the stream height and width as the height and width elements in the content element.</p>
<p>In RSS 2.0 feed we also include an <code>enclosure</code> element.</p>
<h3 id="uploading_videos">Uploading Videos</h3>
<p>Upload videos just like you would a photo.  We&#8217;ll do the magic to figure out whether the uploaded file is a video or a photo.  You&#8217;ll generally want to use the asynchronous upload methods as videos tend to be larger, and take more time to upload.</p>
<p>Videos need to be &#8220;transcoded&#8221; &#8212; turned into an FLV which is playable on the Web.  As this takes time videos aren&#8217;t always immediately available for viewing.  You can check the processing status of a video using <code>flickr.photos.getInfo()</code>, and examining the video element.</p>
<pre><code>&lt;video ready="1" failed="0" pending="0" duration="14" width="0" height="0"/&gt;
</code></pre>
<p><code>ready</code> is watchable, <code>pending</code> is still being transcoded, and <code>failed</code> videos need to be re-uploaded. (possibly in a different format)</p>
<h3 id="more_questions">More Questions?</h3>
<p>We&#8217;ve got an <a href="http://flickr.com/groups/api/discuss/72157604450378243/">open thread</a> in the <a href="http://flickr.com/groups/api">Flickr API group</a> discussing video.</p>
]]></content:encoded>
			<wfw:commentRss>http://code.flickr.com/blog/2008/05/01/videos-in-the-flickr-api/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Twitter API updates, FireEagle and new Flickr API fun</title>
		<link>http://code.flickr.com/blog/2008/04/30/twitter-api-updates-fireeagle-and-new-flickr-api-fun/</link>
		<comments>http://code.flickr.com/blog/2008/04/30/twitter-api-updates-fireeagle-and-new-flickr-api-fun/#comments</comments>
		<pubDate>Wed, 30 Apr 2008 17:48:05 +0000</pubDate>
		<dc:creator>revdancatt</dc:creator>
		
		<category><![CDATA[Uncategorized]]></category>

		<category><![CDATA[api]]></category>

		<category><![CDATA[fireeagle]]></category>

		<category><![CDATA[geotags]]></category>

		<category><![CDATA[gps]]></category>

		<category><![CDATA[places]]></category>

		<category><![CDATA[tools]]></category>

		<category><![CDATA[twitter]]></category>

		<guid isPermaLink="false">http://code.flickr.com/blog/?p=9</guid>
		<description><![CDATA[Last night twitter released their next batch of API improvements, of course the one that caught my eye was &#8230;
&#8220;[NEW] /account/update_location.[xml&#124;json] - sets the location for the
authenticated user to the string passed in a &#8220;location&#8221; parameter.
Nothing fancy, no geocoding or normalization.  Just putting this out
there so developers can start playing with how geolocation might [...]]]></description>
			<content:encoded><![CDATA[<p>Last night twitter released their <a href="http://groups.google.com/group/twitter-development-talk/browse_thread/thread/722b8cb5925563de">next batch of API improvements</a>, of course the one that caught my eye was &#8230;</p>
<blockquote><p>&#8220;[NEW] /account/update_location.[xml|json] - sets the location for the<br />
authenticated user to the string passed in a &#8220;location&#8221; parameter.<br />
Nothing fancy, no geocoding or normalization.  Just putting this out<br />
there so developers can start playing with how geolocation might fit<br />
into their Twitter applications.&#8221;</p></blockquote>
<p><a href="http://www.flickr.com/photos/35468159852@N01/2454112540" title="View 'saving woeids in the location field' on Flickr.com"><img src="http://farm3.static.flickr.com/2112/2454112540_2a27e357a4.jpg" alt="saving woeids in the location field" border="0" width="448" height="289" /></a></p>
<p>&#8230; which is nice as it&#8217;s just thrown in there as a &#8216;what if&#8217; type of thing. There&#8217;s no direct reason for twitter to have location stuff, (well no more than Flickr I guess)  but everyone knows that everyone wants it.</p>
<p>It&#8217;d be great if you didn&#8217;t have to update twitter yourself and there was something else out there that could do it for us.</p>
<p>Read <a href="http://geobloggers.com/archives/2008/04/29/twitter-api-updates-fireeagle-and-new-flickr-api-fun/">the rest of &#8220;Twitter API updates, FireEagle and new Flickr API fun&#8221;</a> for more on Twitter&#8217;s location API, FireEagle, and Flickr&#8217;s not-a-geocoder.</p>
]]></content:encoded>
			<wfw:commentRss>http://code.flickr.com/blog/2008/04/30/twitter-api-updates-fireeagle-and-new-flickr-api-fun/feed/</wfw:commentRss>
		</item>
		<item>
		<title>FireDopplGängEaglr</title>
		<link>http://code.flickr.com/blog/2008/04/30/firedopplgangeaglr/</link>
		<comments>http://code.flickr.com/blog/2008/04/30/firedopplgangeaglr/#comments</comments>
		<pubDate>Wed, 30 Apr 2008 17:27:04 +0000</pubDate>
		<dc:creator>aaron</dc:creator>
		
		<category><![CDATA[Uncategorized]]></category>

		<category><![CDATA[api]]></category>

		<category><![CDATA[dopplr]]></category>

		<category><![CDATA[fireeagle]]></category>

		<category><![CDATA[geo]]></category>

		<category><![CDATA[mobile]]></category>

		<guid isPermaLink="false">http://code.flickr.com/blog/?p=8</guid>
		<description><![CDATA[First, there was filtr but that&#8217;s another story entirely. The point being that I gave up carrying around a capital-C camera a few years ago choosing instead to make do with cameraphones and the availability of cheap, unlimited data-plans in the U.S.
I am mostly lazy and can&#8217;t really be bothered to shuttle photos around from [...]]]></description>
			<content:encoded><![CDATA[<p>First, there was filtr but <a href="http://www.aaronland.info/weblog/2006/07/31/baconmelon/#filtr">that&#8217;s another story entirely</a>. The point being that I gave up carrying around a capital-C camera a few years ago choosing instead to make do with cameraphones and the availability of cheap, unlimited data-plans in the U.S.</p>
<p>I am mostly lazy and can&#8217;t really be bothered to shuttle photos around from one device to another only to move them again to the giant device in the sky called Flickr. Before filtr I relied on the <a href="http://flickr.com/account/uploadbyemail/?from=email">upload by email</a> feature to snag a photo and quickly share it with the future-past but the desire to touch up — or filter — the photos before upload meant that I needed to write my own service to accept, process and then <a href="http://www.flickr.com/services/api/upload.api.html">upload pictures to Flickr using the API</a>.</p>
<p><a href="http://flickr.com/photos/straup/2443803186/"><img src="http://farm3.static.flickr.com/2137/2443803186_0cc144be0f.jpg?v=0" height="375" width="500" alt="ph:camera=n82" /></a></p>
<p>Which is what I want to talk about. Sort of.</p>
<p>Read <a href="http://www.aaronland.info/weblog/2008/04/30/warstories/#firedopplr">the rest of &#8220;FireDopplGängEaglr&#8221;</a> for thoughts on FireEagle, Dopplr, place, and the DWIM engine.</p>
]]></content:encoded>
			<wfw:commentRss>http://code.flickr.com/blog/2008/04/30/firedopplgangeaglr/feed/</wfw:commentRss>
		</item>
	</channel>
</rss>
