<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" media="screen" href="/~d/styles/atom10full.xsl"?><?xml-stylesheet type="text/css" media="screen" href="http://feeds.simonwillison.net/~d/styles/itemcontent.css"?><feed xmlns="http://www.w3.org/2005/Atom" xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0" xml:lang="en-gb"><title>Simon Willison's Links</title><link href="http://simonwillison.net/" rel="alternate" /><id>http://simonwillison.net/</id><updated>2009-07-06T21:02:02Z</updated><author><name>Simon Willison</name></author><link rel="self" href="http://feeds.simonwillison.net/swn-links" type="application/atom+xml" /><feedburner:browserFriendly></feedburner:browserFriendly><entry><title>A quote from Assaf Arkin
</title><link href="http://simonwillison.net/2009/Jul/6/labnotes/" rel="alternate" /><updated>2009-07-06T21:02:02Z</updated><id>http://simonwillison.net/2009/Jul/6/labnotes/</id><summary type="html">



&lt;div class="quote segment"&gt;&lt;blockquote cite="http://blog.labnotes.org/2009/07/06/rounded-corners-236-%u2014-loose-tweets-sink-fleets/"&gt;&lt;p&gt;Turns out, a lot of people are saddened by the loss of a spec they don’t understand, and if they did, would not bother using.&lt;/p&gt;&lt;/blockquote&gt;&lt;p class="cite"&gt; - &lt;a href="http://blog.labnotes.org/2009/07/06/rounded-corners-236-%u2014-loose-tweets-sink-fleets/"&gt;Assaf Arkin&lt;/a&gt;&lt;/p&gt;
&lt;/div&gt;


</summary><category term="assafarkin" /><category term="html5" /><category term="webstandards" /><category term="xhtml" /><category term="xhtml2" /></entry><entry><title>Tips on using python's datetime module
</title><link href="http://simonwillison.net/2009/Jul/6/datetime/" rel="alternate" /><updated>2009-07-06T14:20:12Z</updated><id>http://simonwillison.net/2009/Jul/6/datetime/</id><summary type="html">

&lt;div class="blogmark segment"&gt;&lt;p&gt;&lt;a href="http://www.enricozini.org/2009/debian/using-python-datetime/"&gt;Tips on using python’s datetime module&lt;/a&gt;. Wow. I’ve run in to problems with datetime and timezones before, but I had no idea how intrinsic those problems were to the design of the library.&lt;/p&gt;
&lt;/div&gt;




</summary><category term="dates" /><category term="datetime" /><category term="python" /><category term="times" /></entry><entry><title>A quote from Henri Sivonen
</title><link href="http://simonwillison.net/2009/Jul/6/xhtml/" rel="alternate" /><updated>2009-07-06T12:46:23Z</updated><id>http://simonwillison.net/2009/Jul/6/xhtml/</id><summary type="html">



&lt;div class="quote segment"&gt;&lt;blockquote cite="http://hsivonen.iki.fi/xhtml2-html5-q-and-a/"&gt;&lt;p&gt;There are two meanings to XHTML: technical and marketing. The technical kind (XHTML served using the application/xhtml xml MIME type) is a formulation of HTML as an XML vocabulary. The marketing kind (XHTML served using the text/html MIME type) is processed just like HTML by browsers but the authors attempt to observe slightly different syntax rules in order to make it seem that they are doing something newer and shinier compared to HTML.&lt;/p&gt;&lt;/blockquote&gt;&lt;p class="cite"&gt; - &lt;a href="http://hsivonen.iki.fi/xhtml2-html5-q-and-a/"&gt;Henri Sivonen&lt;/a&gt;&lt;/p&gt;
&lt;/div&gt;


</summary><category term="buzzwords" /><category term="henrisivonen" /><category term="xhtml" /></entry><entry><title>An Unnofficial Q&amp;A about the Discontinuation of the XHTML2 WG
</title><link href="http://simonwillison.net/2009/Jul/6/unnofficial/" rel="alternate" /><updated>2009-07-06T12:27:18Z</updated><id>http://simonwillison.net/2009/Jul/6/unnofficial/</id><summary type="html">

&lt;div class="blogmark segment"&gt;&lt;p&gt;&lt;a href="http://hsivonen.iki.fi/xhtml2-html5-q-and-a/"&gt;An Unnofficial Q&amp;amp;A about the Discontinuation of the XHTML2 WG&lt;/a&gt;. By Henri Sivonen.&lt;/p&gt;
&lt;/div&gt;




</summary><category term="faq" /><category term="henrisivonen" /><category term="html" /><category term="html2" /><category term="html5" /><category term="w3c" /><category term="webstandards" /><category term="xhtml" /></entry><entry><title>Evidence of OpenID at Amazon
</title><link href="http://simonwillison.net/2009/Jul/6/amazonopenid/" rel="alternate" /><updated>2009-07-06T01:25:17Z</updated><id>http://simonwillison.net/2009/Jul/6/amazonopenid/</id><summary type="html">

&lt;div class="blogmark segment"&gt;&lt;p&gt;&lt;a href="http://bit.ly/amazon-openid-demo"&gt;Evidence of OpenID at Amazon&lt;/a&gt;. It looks like Amazon are using OpenID for SSO between their different properties—I clicked a link to sign in to AWS and the URL had OpenID query string parameters.&lt;/p&gt;
&lt;/div&gt;




</summary><category term="amazon" /><category term="aws" /><category term="openid" /><category term="sso" /></entry><entry><title>A quote from Alan Storm
</title><link href="http://simonwillison.net/2009/Jul/4/alan/" rel="alternate" /><updated>2009-07-04T12:51:15Z</updated><id>http://simonwillison.net/2009/Jul/4/alan/</id><summary type="html">



&lt;div class="quote segment"&gt;&lt;blockquote cite="http://simonwillison.net/2009/Jul/4/xhtml/#c47024"&gt;&lt;p&gt;Yes, it’d be nice if everyone kept up to date on the progress of the various W3C working groups. They don’t. There are a lot of people who asked what professional markup looked like and were told (right or wrong) that XHTML was the future. So they went ahead and learned XHTML, built their websites and chose watching a DVD or spending time with their kids over watching Mark Pilgrim and Sam Ruby do battle over Postel’s Law. Now all of a sudden they’re told XHTML is dead. Some wailing and gnashing of teeth is to be expected. What’s needed is less “boy aren’t I smarter than them” snideness, and more Hey, here’s what’s up.&lt;/p&gt;&lt;/blockquote&gt;&lt;p class="cite"&gt; - &lt;a href="http://simonwillison.net/2009/Jul/4/xhtml/#c47024"&gt;Alan Storm&lt;/a&gt;&lt;/p&gt;
&lt;/div&gt;


</summary><category term="alanstorm" /><category term="html5" /><category term="markpilgrim" /><category term="postelslaw" /><category term="samruby" /><category term="w3c" /><category term="webstandards" /><category term="xhtml" /><category term="xhtml2" /></entry><entry><title>Jeffrey Zeldman: XHTML WTF
</title><link href="http://simonwillison.net/2009/Jul/4/xhtml/" rel="alternate" /><updated>2009-07-04T01:22:47Z</updated><id>http://simonwillison.net/2009/Jul/4/xhtml/</id><summary type="html">

&lt;div class="blogmark segment"&gt;&lt;p&gt;&lt;a href="http://www.zeldman.com/2009/07/02/xhtml-wtf/"&gt;Jeffrey Zeldman: XHTML WTF&lt;/a&gt;. Reading the comments, it’s scary how many people are totally ill-informed about HTML5 and XHTML5.&lt;/p&gt;
&lt;/div&gt;




</summary><category term="education" /><category term="html5" /><category term="jeffreyzeldman" /><category term="webstandards" /><category term="xhtml5" /></entry><entry><title>FAQs about the future of XHTML
</title><link href="http://simonwillison.net/2009/Jul/3/xhtml/" rel="alternate" /><updated>2009-07-03T01:37:51Z</updated><id>http://simonwillison.net/2009/Jul/3/xhtml/</id><summary type="html">

&lt;div class="blogmark segment"&gt;&lt;p&gt;&lt;a href="http://www.w3.org/2009/06/xhtml-faq"&gt;FAQs about the future of XHTML&lt;/a&gt;. The XHTML 2 Working Group charter will not be renewed after 2009—as far as the W3C are concerned, XHTML5 is the future of XHTML.&lt;/p&gt;
&lt;/div&gt;




</summary><category term="w3c" /><category term="webstandards" /><category term="xhtml" /><category term="xhtml2" /><category term="xhtml5" /></entry><entry><title>Newspaper Club - A work in progress
</title><link href="http://simonwillison.net/2009/Jul/2/newspaperclub/" rel="alternate" /><updated>2009-07-02T19:34:02Z</updated><id>http://simonwillison.net/2009/Jul/2/newspaperclub/</id><summary type="html">

&lt;div class="blogmark segment"&gt;&lt;p&gt;&lt;a href="http://blog.newspaperclub.co.uk/"&gt;Newspaper Club—A work in progress&lt;/a&gt;. “We’re building a service to help people make their own newspapers. This is the blog where we’re alarmingly honest about where it’s all going wrong.”&lt;/p&gt;
&lt;/div&gt;




</summary><category term="newspaperclub" /><category term="newspapers" /><category term="tomtaylor" /></entry><entry><title>Video for Everybody!
</title><link href="http://simonwillison.net/2009/Jul/2/camen/" rel="alternate" /><updated>2009-07-02T19:33:02Z</updated><id>http://simonwillison.net/2009/Jul/2/camen/</id><summary type="html">

&lt;div class="blogmark segment"&gt;&lt;p&gt;&lt;a href="http://camendesign.com/code/video_for_everybody#video-code"&gt;Video for Everybody!&lt;/a&gt;. Reminiscent of the early days of Web Standards, Kroc Camen has created a fiendishly clever chunk of HTML which can play a video on any browser, starting with HTML5 video then falling back on Flash and eventually just an HTML message telling the user where they can download the file. No JavaScript to be seen, but conditional comments abound. Requires you to encode as both Ogg and H.264, but Kroc includes details instructions for doing that using Handbrake.&lt;/p&gt;
&lt;/div&gt;




</summary><category term="codecs" /><category term="encoding" /><category term="h264" /><category term="hacks" /><category term="handbrake" /><category term="html" /><category term="html5" /><category term="kroccamen" /><category term="ogg" /><category term="video" /></entry><entry><title>Modernizr
</title><link href="http://simonwillison.net/2009/Jul/2/modernizr/" rel="alternate" /><updated>2009-07-02T10:56:47Z</updated><id>http://simonwillison.net/2009/Jul/2/modernizr/</id><summary type="html">

&lt;div class="blogmark segment"&gt;&lt;p&gt;&lt;a href="http://www.modernizr.com/"&gt;Modernizr&lt;/a&gt; (&lt;a href="http://ajaxian.com/archives/modernizr-html5-and-css3-detection" title="Ajaxian"&gt;via&lt;/a&gt;). Neat idea and an unobtrusive implementation: a JavaScript library that runs feature tests for various HTML5 features (canvas, box shadow, CSS transforms and so on) and adds classes to the HTML body element, allowing you to write CSS selectors that only apply if a feature is present. Detected features are exposed to JavaScript as boolean properties, e.g. Modernizer.multiplebgs.&lt;/p&gt;
&lt;/div&gt;




</summary><category term="css" /><category term="farukates" /><category term="html5" /><category term="javascript" /><category term="modernizr" /></entry><entry><title>Codecs for &lt;audio&gt; and &lt;video&gt;
</title><link href="http://simonwillison.net/2009/Jul/2/codecs/" rel="alternate" /><updated>2009-07-02T10:16:58Z</updated><id>http://simonwillison.net/2009/Jul/2/codecs/</id><summary type="html">

&lt;div class="blogmark segment"&gt;&lt;p&gt;&lt;a href="http://lists.whatwg.org/htdig.cgi/whatwg-whatwg.org/2009-June/020620.html"&gt;Codecs for &amp;lt;audio&amp;gt; and &amp;lt;video&amp;gt;&lt;/a&gt;. HTML 5 will not be requiring support for specific audio and video codecs—Ian Hickson explains why, in great detail. Short version: Apple won’t implement Theora due to lack of hardware support and an “uncertain patent landscape”, while open source browsers (Chromium and Mozilla) can’t support H.264 due to the cost of the licenses.&lt;/p&gt;
&lt;/div&gt;




</summary><category term="audio" /><category term="chromium" /><category term="codecs" /><category term="google" /><category term="h264" /><category term="html5" /><category term="ianhickson" /><category term="mozilla" /><category term="ogg" /><category term="patents" /><category term="theora" /><category term="video" /></entry><entry><title>PubSub-over-Webhooks with RabbitHub
</title><link href="http://simonwillison.net/2009/Jul/1/pubsuboverwebhooks/" rel="alternate" /><updated>2009-07-01T20:22:52Z</updated><id>http://simonwillison.net/2009/Jul/1/pubsuboverwebhooks/</id><summary type="html">

&lt;div class="blogmark segment"&gt;&lt;p&gt;&lt;a href="http://www.lshift.net/blog/2009/06/30/pubsub-over-webhooks-with-rabbithub"&gt;PubSub-over-Webhooks with RabbitHub&lt;/a&gt;. RabbitMQ, the Erlang-powered AMQP message queue, is growing an HTTP interface based on webhooks and PubSubHubBub.&lt;/p&gt;
&lt;/div&gt;




</summary><category term="amqp" /><category term="erlang" /><category term="http" /><category term="messagequeues" /><category term="pubsubhubbub" /><category term="rabbitmq" /><category term="webhooks" /></entry><entry><title>Address Extractor
</title><link href="http://simonwillison.net/2009/Jul/1/address/" rel="alternate" /><updated>2009-07-01T20:03:11Z</updated><id>http://simonwillison.net/2009/Jul/1/address/</id><summary type="html">

&lt;div class="blogmark segment"&gt;&lt;p&gt;&lt;a href="http://addressextract.appspot.com/"&gt;Address Extractor&lt;/a&gt;. Running on App Engine, an address extractor web service using code from the EveryBlock open source release.&lt;/p&gt;
&lt;/div&gt;




</summary><category term="addressextractor" /><category term="appengine" /><category term="everyblock" /><category term="python" /></entry><entry><title>EveryBlock source code released
</title><link href="http://simonwillison.net/2009/Jul/1/everyblock/" rel="alternate" /><updated>2009-07-01T20:01:23Z</updated><id>http://simonwillison.net/2009/Jul/1/everyblock/</id><summary type="html">

&lt;div class="blogmark segment"&gt;&lt;p&gt;&lt;a href="http://blog.everyblock.com/2009/jun/30/source/"&gt;EveryBlock source code released&lt;/a&gt;. EveryBlock’s Knight Foundation grant required them to release the source code after two years, under the GPL. Lots of neat Django / PostgreSQL / GIS tricks to be found within.&lt;/p&gt;
&lt;/div&gt;




</summary><category term="django" /><category term="everyblock" /><category term="gis" /><category term="gpl" /><category term="opensource" /><category term="postgresql" /><category term="python" /></entry></feed>
