<?xml version="1.0" encoding="utf-8"?>
<?xml-stylesheet type="text/xsl" href="atom.xsl"?>
	<feed xmlns="http://www.w3.org/2005/Atom">
	<id>tag:www.splintered.co.uk,2005:/experiments/</id>
	<lat xmlns="http://www.w3.org/2003/01/geo/wgs84_pos#">53.506786</lat> 
	<long xmlns="http://www.w3.org/2003/01/geo/wgs84_pos#">-2.314479</long>
	<title>splintered - random sparks of creative insight - experiments</title>
	<subtitle>the portfolio and experimental playground of patrick h. lauke aka redux</subtitle>
	<rights>Copyright Patrick H. Lauke, all rights reserved</rights>
	<link rel="alternate" type="text/html" href="http://www.splintered.co.uk/experiments/"/>
	<link rel="self" type="application/atom+xml" href="http://www.splintered.co.uk/feeds/experiments.xml"/>
	<updated>2010-02-13T01:33:45+00:00</updated>
	<author>
		<name>Patrick H. Lauke</name>
	</author>

	<entry>
		<title>hello cthulhu opera widget</title>
		<subject xmlns="http://purl.org/dc/elements/1.1/"></subject>
		<link rel="alternate" type="text/html" href="http://www.splintered.co.uk/experiments/104"/>
		<id>tag:www.splintered.co.uk,2010-02-13:/experiments/104</id>
		<published>2010-02-13T01:22:00+00:00</published><updated>2010-02-13T01:22:00+00:00</updated><content type="xhtml" xml:lang="en">
			<div xmlns="http://www.w3.org/1999/xhtml"><p>tired of the usual "hello world" demos, i made a trivially simple "hello cthulhu" widget to show <a href="http://www.opera.com/browser/next/">opera 10.50</a>'s <a href="http://dev.opera.com/articles/view/widgets-as-standalone-applications/">standalone widget engine</a>.</p>
<p><small><cite>Hello Cthulhu</cite> image found at <a href="http://www.nyder.com/cthulhu/cthulhucomic.html">www.nyder.com/cthulhu/cthulhucomic.html</a>...apparently it's by <a href="http://www.meathouse.com/">Meathouse Audio Grafik</a>.</small></p><p>tags: opera widget</p></div>
		</content></entry>
	<entry>
		<title>paranoid</title>
		<subject xmlns="http://purl.org/dc/elements/1.1/"></subject>
		<link rel="alternate" type="text/html" href="http://www.splintered.co.uk/experiments/103"/>
		<id>tag:www.splintered.co.uk,2009-10-09:/experiments/103</id>
		<published>2009-10-09T00:00:00+00:00</published><updated>2009-10-09T02:26:28+00:00</updated><content type="xhtml" xml:lang="en">
			<div xmlns="http://www.w3.org/1999/xhtml"><p>following the recent custom of nostalgically recreating vintage games to show that our web browsers are now as powerful as an old amiga, here's my first proper play with the HTML5 <code class="inline">&lt;canvas&gt;</code> element.</p>
<p>at this stage it's of course nowhere near a proper game, but i thought i'd release this early version for now...</p><p>tags: html5 html canvas game</p></div>
		</content></entry>
	<entry>
		<title>native tap to unlock theme for iphone</title>
		<subject xmlns="http://purl.org/dc/elements/1.1/"></subject>
		<link rel="alternate" type="text/html" href="http://www.splintered.co.uk/experiments/102"/>
		<id>tag:www.splintered.co.uk,2008-12-25:/experiments/102</id>
		<published>2008-12-24T00:00:00+00:00</published><updated>2008-12-25T23:23:43+00:00</updated><content type="xhtml" xml:lang="en">
			<div xmlns="http://www.w3.org/1999/xhtml"><!-- Generated by XStandard version 2.0.0.0 on 2008-12-25T23:24:05 --><p>a small <a href="http://www.saurik.com/id/9">winterboard</a> theme for use on jailbroken iphones that replaces the <cite>unlock</cite>, <cite>answer</cite> and <cite>power off</cite> sliders with buttons that can simply be tapped to activate.</p><p>although there are already a few <cite>tap to unlock</cite> winterboard themes out there, i wanted something that looked a bit more &quot;native&quot; to the default iphone user interface...here's a <a href="http://www.splintered.co.uk/experiments/archives/native_tap_to_unlock/native_tap_to_unlock.jpg">screenshot of the result</a>.</p><p>to install, unpack the zip archive, SSH into your iphone, copy the <code class="inline">Native Tap to Unlock.theme</code> folder to <code class="inline">/private/var/stash/Themes.xxxxxx</code> and activate the theme in winterboard.</p><p><strong>update:</strong> this theme is now <a href="http://www.flickr.com/photos/redux/3136752922/">available from the iphone-planets repository</a> via cydia.</p><p>tags: iphone winterboard theme</p></div>
		</content></entry>
	<entry>
		<title>google analytics tracker</title>
		<subject xmlns="http://purl.org/dc/elements/1.1/"></subject>
		<link rel="alternate" type="text/html" href="http://www.splintered.co.uk/experiments/101"/>
		<id>tag:www.splintered.co.uk,2008-09-21:/experiments/101</id>
		<published>2008-09-21T00:00:00+00:00</published><updated>2008-09-21T00:00:00+00:00</updated><content type="xhtml" xml:lang="en">
			<div xmlns="http://www.w3.org/1999/xhtml"><!-- Generated by XStandard version 2.0.0.0 on 2008-09-21T23:23:57 --><p><a href="https://www.google.com/analytics/">google analytics</a> is a pretty powerful, and free, tool for website stats analysis. however, one of its main drawbacks is that it can only track pages that specifically call its tracking script. links to documents (Word, PDF, etc) and links to external websites are not tracked out-of-the-box.</p><p>this small script dynamically attaches the necessary explicit calls to google's tracker functions to any document or external links found in a page.</p><p>by specifying a prefix for external and document links it's possible to log any clicks in specific &quot;fake&quot; directories in the analytics reports.</p><p>for instance, with a prefix for external links set to <var>/stats/external/</var>, a link to <var>http://www.foo.com/somedir/</var> will appear in google analytics as a click to <var>/stats/external/http/www.foo.com/somedir/</var>. by default, the prefix for document links is simply <var>/</var>, meaning that a link to <var>/somedir/file.pdf</var> on your site will be logged in its &quot;native&quot; location. if you prefer to see all documents logged separately, it is of course possible to change the prefix to something like <var>/stats/documents/</var>, so the above document would appear in the stats under <var>/stats/documents/somedir/file.pdf</var>.</p><p>in addition, this script fixes google analytics' <cite>site overlay</cite> view. if the overlay is detected (given away by the presence of a <code class="inline">script</code> element with <code class="inline">id=&quot;_gasojs&quot;</code>), the <code class="inline">href</code> of document and external links is rewritten dynamically, ensuring that the correct percentage and click count are displayed in the overlay. the links are also &quot;neutered&quot; (their default behaviour is suppressed), so you don't accidentally click away from the overlay.</p><p>for debugging purposes, if you're running <a href="http://getfirebug.com/">firebug</a> in <a href="http://www.mozilla.com/firefox/">firefox</a>, the script also writes to the console when a tracked link is clicked. this feature is commented out by default.</p><p>i originally wrote this back in april 2008, and it has since been used in production on a few high-traffic sites with excellent and reliable results. many thanks to <a href="http://www.kryogenix.org">stuart langridge</a> for giving it a quick code review and suggesting some excellent optimisations.</p><p>tags: analytics javascript google</p></div>
		</content></entry>
	<entry>
		<title>ambilight</title>
		<subject xmlns="http://purl.org/dc/elements/1.1/"></subject>
		<link rel="alternate" type="text/html" href="http://www.splintered.co.uk/experiments/100"/>
		<id>tag:www.splintered.co.uk,2008-09-20:/experiments/100</id>
		<published>2008-09-20T00:00:00+00:00</published><updated>2008-09-20T21:33:10+00:00</updated><content type="xhtml" xml:lang="en">
			<div xmlns="http://www.w3.org/1999/xhtml"><!-- Generated by XStandard version 2.0.0.0 on 2008-09-20T21:57:56 --><p>a quick eyecandy experiment, inspired by <a href="http://www.brendandawes.com/sketches/ambiflickr">brendan dawes' <cite>ambiflickr</cite> sketch</a> and <a href="http://mezzoblue.com/archives/2006/12/14/fountain/">dave shea's <cite>fountain</cite> redesign</a> (both strangely from 2006).</p><p>it uses <a href="http://jquery.com/">jQuery</a>, the <a href="http://plugins.jquery.com/project/color">jQuery Color plugin</a> and <a href="http://www.php.net/gd">PHP's GD library functions</a>.</p><p><a href="/experiments/archives/ambilight/average.phps">average.php</a> is a small PHP script that loads an image, resizes it down to a single pixel (thus averaging all the of the original image colours down to a single colour), and then outputs the RGB values of this pixel as a <a href="http://www.json.org/">JSON</a> object.</p><p>this PHP script is called by the <a href="/experiments/archives/ambilight/ambilight.js">ambilight.js</a> function. when given an image DOM object and a speed value in milliseconds, this function makes a JSON call to the PHP script, receives the JSON object with the average colour for that particular image, and then animates the background colour of the image's parent object at the specified speed.</p><p>in the example page, jQuery iterates over all images with an <code class="inline">ambilight</code> class once the page has finished loading, and fires off the ambilight function for each of them. however, the function could be called at any time (for instance, on focus/hover or click).</p><p>if the page of images was generated dynamically from a database or set of known images, it would of course be far more efficient to pre-calculate the average values necessary for the animation. this is mostly a little thought experiment, but could also be used when the images themselves are not known at the outset (for instance when pulling images from a third-party site like <a href="http://www.flickr.com">flickr</a>, as in <a href="http://www.brendandawes.com">brendan</a>'s original sketch).</p><p>tags: ambilight javascript jquery php gd</p></div>
		</content></entry>
	<entry>
		<title>twitter</title>
		<subject xmlns="http://purl.org/dc/elements/1.1/"></subject>
		<link rel="alternate" type="text/html" href="http://www.splintered.co.uk/experiments/99"/>
		<id>tag:www.splintered.co.uk,2008-06-03:/experiments/99</id>
		<published>2008-06-03T00:00:00+00:00</published><updated>2008-06-03T00:00:00+00:00</updated><content type="xhtml" xml:lang="en">
			<div xmlns="http://www.w3.org/1999/xhtml"><!-- Generated by XStandard version 2.0.0.0 on 2008-06-03T00:16:18 --><p>another simple aggregation experiment which uses my <a href="http://www.splintered.co.uk/experiments/69/"><acronym title="PHP Hypertext Processor">PHP</acronym> feedreader class</a> to fetch the latest tweets from my <a href="http://twitter.com/patrick_h_lauke">twitter account</a> via the simple <a href="http://twitter.com/help/api">twitter <abbr title="Application Programming Interface">API</abbr></a> functions and present them using a <a href="http://www.splintered.co.uk/experiments/archives/twitter/twitter.xsl">custom <abbr title="eXtensible Stylesheet Language Transformation">XSLT</abbr></a></p><p>tags: twitter experiment xml xslt</p></div>
		</content></entry>
	<entry>
		<title>last.fm recent tracks</title>
		<subject xmlns="http://purl.org/dc/elements/1.1/"></subject>
		<link rel="alternate" type="text/html" href="http://www.splintered.co.uk/experiments/98"/>
		<id>tag:www.splintered.co.uk,2008-02-12:/experiments/98</id>
		<published>2008-02-12T00:00:00+00:00</published><updated>2008-02-12T00:00:00+00:00</updated><content type="xhtml" xml:lang="en">
			<div xmlns="http://www.w3.org/1999/xhtml"><!-- Generated by XStandard version 2.0.0.0 on 2008-03-15T15:45:17 --><p>out of boredom, yet another experiment using uses my <a href="http://www.splintered.co.uk/experiments/69/"><acronym title="PHP Hypertext Processor">PHP</acronym> feedreader class</a>, running the <a href="http://ws.audioscrobbler.com/1.0/user/patrick_h_lauke/recenttracks.xml">audioscrobbler <cite>recent tracks</cite> feed</a> of <a href="http://www.last.fm/user/patrick_h_lauke/">my last.fm account</a> through a <a href="http://www.splintered.co.uk/experiments/archives/last.fm/lastfm.xsl">custom <abbr title="eXtensible Stylesheet Language Transformation">XSLT</abbr></a> to output the last 10 tracks played.</p><p>tags: lastfm experiment xml xslt</p></div>
		</content></entry>
	<entry>
		<title>firefox 3 zoom toolbar extension</title>
		<subject xmlns="http://purl.org/dc/elements/1.1/"></subject>
		<link rel="alternate" type="text/html" href="http://www.splintered.co.uk/experiments/97"/>
		<id>tag:www.splintered.co.uk,2008-03-12:/experiments/97</id>
		<published>2007-12-01T00:00:00+00:00</published><updated>2008-03-12T00:00:00+00:00</updated><content type="xhtml" xml:lang="en">
			<div xmlns="http://www.w3.org/1999/xhtml"><!-- Generated by XStandard version 2.0.0.0 on 2008-03-12T19:22:10 --><p>a simple firefox extension that lets you add buttons for firefox 3's built-in zoom functionality to the toolbar, for easier user access. this is a redevelopment of my <a href="http://www.splintered.co.uk/experiments/70/">firefox text size toolbar</a> - sadly, text resizing itself has been removed from version 3 altogether...</p><p>the magnifying glass icon is part of <a href="http://jonas.seph.ws/">jonas rask</a>'s <cite>danish royalty free icons</cite> set.</p><p>tags: firefox extension</p></div>
		</content></entry>
	<entry>
		<title>forcing RSS Bandit into passive FTP mode</title>
		<subject xmlns="http://purl.org/dc/elements/1.1/"></subject>
		<link rel="alternate" type="text/html" href="http://www.splintered.co.uk/experiments/96"/>
		<id>tag:www.splintered.co.uk,2007-09-17:/experiments/96</id>
		<published>2007-09-17T00:00:00+00:00</published><updated>2007-09-17T00:00:00+00:00</updated><content type="xhtml" xml:lang="en">
			<div xmlns="http://www.w3.org/1999/xhtml"><!-- Generated by XStandard version 2.0.0.0 on 2007-09-17T03:25:55 --><p><a href="http://www.rssbandit.org">RSS Bandit</a> offers built-in functionality to store its feed list remotely (though it still insists on a proprietary format, instead of using/extending standard <a href="http://www.opml.org/"><abbr title="Outline Processor Markup Language">OPML</abbr></a>). i not only use this option to keep my reading habits synchronised between various desktops, but also to provide the raw behind-the-scenes data for this site's <a href="http://www.splintered.co.uk/externals/">externals</a> list.</p><p>unfortunately, RSS Bandit's <abbr title="File Transfer Protocol">FTP</abbr> settings don't provide an explicit option to force the program into passive <abbr title="File Transfer Protocol">FTP</abbr> mode, opting instead for autodetection. this works...most of the time, but can cause major problems with certain routers - such as my little linksys WAG54GX2 - which pretend to support active <abbr title="File Transfer Protocol">FTP</abbr> but attempt to do address translation (of things like PORT commands) on the fly.</p><p>while i certainly hope that a future version of the bandit will include a simple checkbox that just says <q>Use passive FTP</q>, the current hackish way to force a passive connection is to close the application, open your settings file (usually <code class="inline">C:\Documents and Settings\[YOUR USERNAME]\Application Data\RssBandit\.settings.xml</code>), find the line</p><pre>
<code>&lt;property name=&quot;remotefeedlist/ftp.connectionmode.passive&quot;&gt;False&lt;/property&gt;
</code></pre><p>and manually change it to</p><pre>
<code>&lt;property name=&quot;remotefeedlist/ftp.connectionmode.passive&quot;&gt;True&lt;/property&gt;
</code></pre><p>tags: rssbandit xml</p></div>
		</content></entry>
	<entry>
		<title>youtube</title>
		<subject xmlns="http://purl.org/dc/elements/1.1/"></subject>
		<link rel="alternate" type="text/html" href="http://www.splintered.co.uk/experiments/93"/>
		<id>tag:www.splintered.co.uk,2007-07-21:/experiments/93</id>
		<published>2007-07-21T00:00:00+00:00</published><updated>2007-07-21T00:00:00+00:00</updated><content type="xhtml" xml:lang="en">
			<div xmlns="http://www.w3.org/1999/xhtml"><!-- Generated by XStandard version 2.0.0.0 on 2007-07-21T22:47:34 --><p>an experiment that uses my <a href="http://www.splintered.co.uk/experiments/69/"><acronym title="PHP Hypertext Processor">PHP</acronym> feedreader class</a> to fetch the latest 10 items from my <a href="http://uk.youtube.com/profile?user=reduxphl">youtube account</a> via the simple <a href="http://uk.youtube.com/dev_docs">youtube developer</a> <abbr title="Representational State Transfer">REST</abbr> <abbr title="Application Programming Interface">API</abbr> functions and present them using a custom <abbr title="eXtensible Stylesheet Language Transformation">XSLT</abbr>.</p><p>tags: youtube video experiment API XML XSLT</p></div>
		</content></entry>
	<entry>
		<title>yahoo! upcoming events</title>
		<subject xmlns="http://purl.org/dc/elements/1.1/"></subject>
		<link rel="alternate" type="text/html" href="http://www.splintered.co.uk/experiments/94"/>
		<id>tag:www.splintered.co.uk,2007-07-21:/experiments/94</id>
		<published>2007-07-21T00:00:00+00:00</published><updated>2007-07-21T00:00:00+00:00</updated><content type="xhtml" xml:lang="en">
			<div xmlns="http://www.w3.org/1999/xhtml"><!-- Generated by XStandard version 2.0.0.0 on 2007-07-21T22:47:02 --><p>an experiment that uses my <a href="http://www.splintered.co.uk/experiments/69/"><acronym title="PHP Hypertext Processor">PHP</acronym> feedreader class</a> to fetch all events, past and future, currently in my <a href="http://upcoming.yahoo.com/user/111908/">upcoming events list</a> via the <a href="http://upcoming.yahoo.com/services/api/">upcoming developer <abbr title="Application Programming Interface">API</abbr></a> functions, and present them using a custom <abbr title="eXtensible Stylesheet Language Transformation">XSLT</abbr>.</p><p>also includes (slightly inelegant) code to quickly hack around upcoming's <a href="http://upcoming.yahoo.com/services/api/token_auth.php">token-based authentication</a>.</p><p>tags: upcoming experiment API XML XSLT</p></div>
		</content></entry>
	<entry>
		<title>rename.pl, ActivePerl and windows</title>
		<subject xmlns="http://purl.org/dc/elements/1.1/"></subject>
		<link rel="alternate" type="text/html" href="http://www.splintered.co.uk/experiments/92"/>
		<id>tag:www.splintered.co.uk,2007-07-08:/experiments/92</id>
		<published>2007-07-07T00:00:00+00:00</published><updated>2007-07-08T00:00:00+00:00</updated><content type="xhtml" xml:lang="en">
			<div xmlns="http://www.w3.org/1999/xhtml"><!-- Generated by XStandard version 2.0.0.0 on 2007-07-08T01:50:49 --><p>not a full experiment, but something of note for those like me starting with perl on windows...</p><p>i recently needed to get a simple method for batch-renaming a large number of files, with a flexible way of controlling the new filenames. after a bit of searching, i came across larry wall's <cite>rename.pl</cite> script:</p><pre>
<code>$op = shift or die &quot;Usage: rename expr [files]\n&quot;;
chomp(@ARGV = ) unless @ARGV;
for ( @ARGV ) 
{
  $was = $_;
  eval $op;
  die $@ if $@;
  rename ( $was, $_ ) unless $was eq $_;
}

</code></pre><p>the script allows for the use of regular expressions, or any other bits of perl code, to create filename replacements.</p><p>unfortunately, despite a fresh install of <a href="http://www.activestate.com/Products/activeperl/">ActivePerl</a>, this code didn't seem to do anything. after some lengthy searching, it turns out that windows' <cite>command.com</cite> doesn't support wildcard expansion, leaving it up to scripts to handle it instead. if you plan on doing a lot of perl scripting on windows, there's a permanent workaround for this in the <a href="http://aspn.activestate.com/ASPN/docs/ActivePerl-5.6/lib/Pod/perlwin32.html"><cite>Perl under Win32</cite></a> documentation ... but for a quick fix, the script needs to be modified to emulate the wildcard expansion as follows:</p><pre>
<code><strong>use File::DosGlob;</strong>
<strong>@ARGV = map {</strong>
<strong>  my @g = File::DosGlob::glob($_) if /[*?]/;</strong>
<strong>  @g ? @g : $_;</strong>
<strong>} @ARGV;</strong>

$op = shift or die &quot;Usage: rename expr [files]\n&quot;;
chomp(@ARGV = ) unless @ARGV;
for ( @ARGV ) 
{
  $was = $_;
  eval $op;
  die $@ if $@;
  rename ( $was, $_ ) unless $was eq $_;
}

</code></pre><p>i'm a bit surprised that ActiePerl didn't cater for this already in its vanilla install, but no matter ... from the command line, it's now possible to do simple, yet powerful things like</p><pre>
<code>rename.pl &quot;tr/A-Z/a-z/&quot; *

</code></pre><p>to change all filenames in the current directory to lowercase. in my particular case, i had a huge number of images from my recent visit to prague, all with <code class="inline">IMG_XXXX.jpg</code> filenames. using</p><pre>
<code>rename.pl &quot;s/IMG_/prague-june2007_/&quot; *.jpg

</code></pre><p>i could simply replace the <code class="inline">IMG_ part</code>, resulting in files with a far more useful filename of <code class="inline">prague-june2007_XXXX.jpg</code>.</p><p>oh, one final note on windows-specific quirks of the command line: always use double quotes for your arguments, as single quotes get passed as literal characters to the script.</p><p>tags: perl windows</p></div>
		</content></entry>
	<entry>
		<title>laptop connections at PQ07</title>
		<subject xmlns="http://purl.org/dc/elements/1.1/"></subject>
		<link rel="alternate" type="text/html" href="http://www.splintered.co.uk/experiments/95"/>
		<id>tag:www.splintered.co.uk,2007-06-18:/experiments/95</id>
		<published>2007-06-18T00:00:00+00:00</published><updated>2007-06-18T00:00:00+00:00</updated><content type="xhtml" xml:lang="en">
			<div xmlns="http://www.w3.org/1999/xhtml"><!-- Generated by XStandard version 2.0.0.0 on 2007-07-28T18:50:22 --><blockquote><p>The OISTAT Sound Working Group is pleased to announce the Laptop Connections Installation, to take place at the Masarykovo Railway Station during <a href="http://www.pq.cz/"><abbr title="Prague Quadriennale">PQ</abbr>07</a>. The installation/performance will include eight to ten pairs of sound designers, one member of each team onsite and the other member in a remote location, performing a live soundscore in the Railway Station. Each onsite designers will be strategically positioned around the station with their laptops, connected to a WiFi network, amplified through a pair of powered computer speakers and perform their contribution into the unique environment that is the Masarykovo Station.</p><p>The time for the event is 1700-1900 hours on Monday June 18th</p><p>The performance content is to be developed by each team, using the idea of &quot;Bridging Cultures&quot; as a jumping off point. The content could be streamed from the remote location to the Masarykovo Station to the partner onsite, where it is broadcast. Or it could be first manipulated or augmented by the onsite designer. Or it could be manipulated and folded back to the first designer for broadcast in their location. Or none of those things. Or all of those things. The possibilities are open and will only be limited by technology.</p><p>[...]</p><p>Team 4 - Karen Hay (UK) and Kris Popat (UK) Patrick Lauke / Prague and Leeds / Investigation of language, place and space involving verbal information passed between groups of live participants in both locations.</p></blockquote><p>this experiment is a small extract of the audio (MP3) we produced in team 4, mixed together by <a href="http://www.soundvalley.co.uk/">karen hay</a>. technically, this experiment involved the use of <a href="http://www.puredata.org">puredata</a> and <a href="http://www.cycling74.com/">max/msp</a>, with a live connection between masarykovo nádraží and leeds via <a href="http://www.ninjam.com/">ninjam</a> (via <a href="http://www.asio4all.com/">ASIO4ALL</a> and <a href="http://www.ntonyx.com/vac.htm">virtual audio cable</a> for the two WinXP laptops on location at the trainstation).</p><p>photographs from the event are available in my <a href="http://www.flickr.com/photos/redux/sets/72157600568967661/"><cite>laptop connections project at PQ07</cite> flickr set</a>.</p><p>tags: pq pq07 pq2007 prague quadriennale project experiment audio laptop puredata max/msp ninjam</p></div>
		</content></entry>
	<entry>
		<title>dreamweaver additional tags extension</title>
		<subject xmlns="http://purl.org/dc/elements/1.1/"></subject>
		<link rel="alternate" type="text/html" href="http://www.splintered.co.uk/experiments/88"/>
		<id>tag:www.splintered.co.uk,2006-12-30:/experiments/88</id>
		<published>2006-12-30T00:00:00+00:00</published><updated>2006-12-30T00:00:00+00:00</updated><content type="xhtml" xml:lang="en">
			<div xmlns="http://www.w3.org/1999/xhtml"><p>as I frequently need access to a few <abbr title="(eXtensible) HyperText Markup Language">(X)HTML</abbr> elements not readily available in Dreamweaver's default toolbar/menu, I quickly threw together this simple extension.</p>
<p>the current version includes:</p>
<ul>
<li><code class="inline">code</code></li>
<li>inline quote (<code class="inline">q</code>)</li>
<li><code class="inline">address</code></li>
<li>citation source (<code class="inline">cite</code>)</li>
<li>insertion (<code class="inline">ins</code>)</li>
<li>deletion (<code class="inline">del</code>)</li>
<li>defining instance (<code class="inline">dfn</code>)</li>
<li>heading 4/5/6 (<code class="inline">h4</code>/<code class="inline">h5</code>/<code class="inline">h6</code>)</li>
</ul>
<p>once installed, these objects can be accessed from the "Additional Tags" category of the Insert Bar or from the "Insert &gt; HTML &gt; Additional Tags" menu.</p><p>tags: dreamweaver extension html</p></div>
		</content></entry>
	<entry>
		<title>amazon wishlist</title>
		<subject xmlns="http://purl.org/dc/elements/1.1/"></subject>
		<link rel="alternate" type="text/html" href="http://www.splintered.co.uk/experiments/85"/>
		<id>tag:www.splintered.co.uk,2006-06-26:/experiments/85</id>
		<published>2006-06-26T00:00:00+00:00</published><updated>2006-06-26T00:00:00+00:00</updated><content type="xhtml" xml:lang="en">
			<div xmlns="http://www.w3.org/1999/xhtml"><!-- Generated by XStandard version 1.7.0.0 on 2006-06-26T01:12:55 --><p>an experiment that uses my <a href="http://www.splintered.co.uk/experiments/69/"><acronym title="PHP Hypertext Processor">PHP</acronym> feedreader class</a> to fetch the latest 10 items from <a href="http://www.amazon.co.uk/gp/registry/3G6SU2STNMA82">my wishlist</a> via the <a href="http://aws.amazon.com/">amazon web services</a> <abbr title="Representational State Transfer">REST</abbr> <abbr title="Application Programming Interface">API</abbr> functions and present them using a custom <abbr title="eXtensible Stylesheet Language Transformation">XSLT</abbr>.</p><p>a stripped down version of this experiment is used on this site's experimental <a href="/wishlist/">amazon wishlist</a> section.</p><p>tags: </p></div>
		</content></entry>
</feed>