<?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.feedburner.com/~d/styles/itemcontent.css"?><feed xmlns="http://www.w3.org/2005/Atom" xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0">
 
  <title>aidanf.net</title>
  <subtitle>Aidan Finn's home page</subtitle>
  
  <link href="http://aidanf.net/" />
  <updated>2011-07-26T15:33:48+01:00</updated>
  <author>
    <name>Aidan Finn</name>
    <email />
  </author>
  <id>http://aidanf.net/</id>
  
  <atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="self" type="application/atom+xml" href="http://feeds.feedburner.com/aidanf" /><feedburner:info uri="aidanf" /><atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="hub" href="http://pubsubhubbub.appspot.com/" /><entry>
    <title>Clearing out some old books</title>
    <link href="http://feedproxy.google.com/~r/aidanf/~3/UaXGsBrd8bs/" />
    <id>tag:aidanf.net,2011-07-26:1311688336</id>
    <updated>2011-07-26T14:52:16+01:00</updated>

    <content type="html">&lt;h3&gt;Clearing out some old books&lt;/h3&gt;

&lt;p&gt;I'm clearing some space on my bookshelves and I'm getting rid of a few
books. Rather than throw them out I'm hoping that someone else can get
some use from them. If you are interested in any of them &lt;a href="http://www.aidanf.net/contact"&gt;send me an
email&lt;/a&gt;. Books can be collected in Sligo
or I can mail them to you (within Ireland). One condition - don't take a book unless
you are genuinely going to read it - unread, hoarded books make me sad
and you might have blocked someone else who could have made use of it.&lt;/p&gt;

&lt;p&gt;So here's the list, shout if you want one.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Agile Web Development with Rails - Dave Thomas (1st Edition)&lt;/li&gt;
&lt;li&gt;Agile Web Development with Rails - Dave Thomas (2nd Edition)&lt;/li&gt;
&lt;li&gt;The Rails Way - Obie Fernandez&lt;/li&gt;
&lt;li&gt;Rails Recipes - Chad Fowler&lt;/li&gt;
&lt;li&gt;Advanced Rails Recipes - Mike Clarke&lt;/li&gt;
&lt;li&gt;Beginning Ruby on Rails E-commerce - Christian Hellsten and Jarkko
Laine&lt;/li&gt;
&lt;li&gt;Rails Cookbook -Rob Orsini&lt;/li&gt;
&lt;li&gt;Pro Drupal Development (1st edition) - John K. VanDyk and Matt Westgate&lt;/li&gt;
&lt;li&gt;Pro Dripal Development (2nd edition) - John K. VanDyk&lt;/li&gt;
&lt;li&gt;Learning Drupal 6 module development - Matt Bucher&lt;/li&gt;
&lt;li&gt;Foundations of Ajax - Ryan Asleson and Nathaniel T. Schutta&lt;/li&gt;
&lt;li&gt;Dhtml Utopia: Modern Web Design using Javascript and Dom - Stuart
Langridge&lt;/li&gt;
&lt;li&gt;Spinning the Semantic Web - Fensel et al.&lt;/li&gt;
&lt;li&gt;Python programming on Win 32 - Mark Hammond and Andy Robinson&lt;/li&gt;
&lt;li&gt;Building Scalable Web Sites - Cal Henderson&lt;/li&gt;
&lt;li&gt;Restful Web Services - Leonard Richardson and Sam Ruby&lt;/li&gt;
&lt;/ul&gt;


&lt;p&gt;The Rails books cover a mix of Rails 1 and Rails 2. So they are
probably not much use to anyone at this stage. They might be useful
for skim reading to get an overview of how to do stuff in rails before
moving onto learning Rails 3 in detail.&lt;/p&gt;

&lt;p&gt;The Drupal books cover
Drupal 6. Although the current version of Drupal is 7, v.6 is still a
valid deployment option, and you'll learn enough about the internals
of drupal from these books to ease your way into v.7 if you choose to.&lt;/p&gt;
&lt;img src="http://feeds.feedburner.com/~r/aidanf/~4/UaXGsBrd8bs" height="1" width="1"/&gt;</content>
  <feedburner:origLink>http://www.aidanf.net/posts/#book_clearance.html</feedburner:origLink></entry>
  
  <entry>
    <title>Clearing out some old books</title>
    <link href="http://feedproxy.google.com/~r/aidanf/~3/MqttZoPurpE/book_clearance.html" />
    <id>tag:aidanf.net,2011-07-26:1311688336</id>
    <updated>2011-07-26T14:52:16+01:00</updated>

    <content type="html">&lt;h3&gt;Clearing out some old books&lt;/h3&gt;

&lt;p&gt;I'm clearing some space on my bookshelves and I'm getting rid of a few
books. Rather than throw them out I'm hoping that someone else can get
some use from them. If you are interested in any of them &lt;a href="http://www.aidanf.net/contact"&gt;send me an
email&lt;/a&gt;. Books can be collected in Sligo
or I can mail them to you (within Ireland). One condition - don't take a book unless
you are genuinely going to read it - unread, hoarded books make me sad
and you might have blocked someone else who could have made use of it.&lt;/p&gt;

&lt;p&gt;So here's the list, shout if you want one.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Agile Web Development with Rails - Dave Thomas (1st Edition)&lt;/li&gt;
&lt;li&gt;Agile Web Development with Rails - Dave Thomas (2nd Edition)&lt;/li&gt;
&lt;li&gt;The Rails Way - Obie Fernandez&lt;/li&gt;
&lt;li&gt;Rails Recipes - Chad Fowler&lt;/li&gt;
&lt;li&gt;Advanced Rails Recipes - Mike Clarke&lt;/li&gt;
&lt;li&gt;Beginning Ruby on Rails E-commerce - Christian Hellsten and Jarkko
Laine&lt;/li&gt;
&lt;li&gt;Rails Cookbook -Rob Orsini&lt;/li&gt;
&lt;li&gt;Pro Drupal Development (1st edition) - John K. VanDyk and Matt Westgate&lt;/li&gt;
&lt;li&gt;Pro Dripal Development (2nd edition) - John K. VanDyk&lt;/li&gt;
&lt;li&gt;Learning Drupal 6 module development - Matt Bucher&lt;/li&gt;
&lt;li&gt;Foundations of Ajax - Ryan Asleson and Nathaniel T. Schutta&lt;/li&gt;
&lt;li&gt;Dhtml Utopia: Modern Web Design using Javascript and Dom - Stuart
Langridge&lt;/li&gt;
&lt;li&gt;Spinning the Semantic Web - Fensel et al.&lt;/li&gt;
&lt;/ul&gt;


&lt;p&gt;The Rails books cover a mix of Rails 1 and Rails 2. So they are
probably not much use to anyone at this stage. They might be useful
for skim reading to get an overview of how to do stuff in rails before
moving onto learning Rails 3 in detail.&lt;/p&gt;

&lt;p&gt;The Drupal books cover
Drupal 6. Although the current version of Drupal is 7, v.6 is still a
valid deployment option, and you'll learn enough about the internals
of drupal from these books to ease your way into v.7 if you choose to.&lt;/p&gt;
&lt;img src="http://feeds.feedburner.com/~r/aidanf/~4/MqttZoPurpE" height="1" width="1"/&gt;</content>
  <feedburner:origLink>http://www.aidanf.net/posts/book_clearance.html</feedburner:origLink></entry>
  
  <entry>
    <title>BTE gets an update</title>
    <link href="http://feedproxy.google.com/~r/aidanf/~3/g3tDdTxMZ7s/bte_gets_an_update.html" />
    <id>tag:aidanf.net,2010-05-11:1273578856</id>
    <updated>2010-05-11T12:54:16+01:00</updated>

    <content type="html">&lt;h3&gt;BTE gets an update&lt;/h3&gt;

&lt;p&gt;BTE is a python module for automated extraction of body text from web pages. By body-text I mean extract the main textual content from the page and throw away all the extra non-important stuff like sidebars, navigation bars, header, footer, etc. It can also be used to generate short teasers/summaries.&lt;/p&gt;

&lt;p&gt;I wrote BTE about 7 years ago and I don't use it or support it anymore. It worked pretty well when I wrote it originally but I'm not sure how well it works on todays web pages, which may have different tag distributions (e.g. less tables, more javascript).&lt;/p&gt;

&lt;p&gt;However, Bill Bushey and Brian Young were using it while doing intern work at Berkman Center at Harvard and they sent me some updates to the code. They managed to get the main algorithm from O(n&lt;sup&gt;3&lt;/sup&gt;) to O(n&lt;sup&gt;2&lt;/sup&gt;). Their changes are in the &lt;a href="http://github.com/aidanf/BTE"&gt;git repository&lt;/a&gt;.&lt;/p&gt;

&lt;h4&gt;How does BTE work?&lt;/h4&gt;

&lt;p&gt;BTE extracts the main body of text from a web page. It does this by tokenising the document and performing some shallow processing. The html document is tokenised and represented as a binary string where a 0 represents a tag token and a 1 represents a text token.
If we graph cumulative total tokens on the x axis and cumulative tag tokens on the y axis we get a graph something like that shown below.&lt;/p&gt;

&lt;div class="column span-18"&gt;
&lt;img src="http://www.aidanf.net/images/graph.jpg"&gt;
&lt;/div&gt;


&lt;p&gt;BTE basically works by finding an i and j where we maximise the number of text tokens between i and j and maximise the number of tag tokens below i and above j.&lt;/p&gt;

&lt;h4&gt;Usage&lt;/h4&gt;

&lt;p&gt;Install it by copying the file to a directory in your PYTHONPATH.&lt;/p&gt;

&lt;div class="CodeRay"&gt;
&lt;pre&gt;
&lt;span class="kw"&gt;import&lt;/span&gt; &lt;span class="ic"&gt;sys&lt;/span&gt;,&lt;span class="ic"&gt;BodyTextExtractor&lt;/span&gt;
html = &lt;span class="pd"&gt;open&lt;/span&gt;(sys.argv[&lt;span class="i"&gt;1&lt;/span&gt;]).read()
p = BodyTextExtractor.HtmlBodyTextExtractor()
p.feed(html)
p.close()
x = p.body_text()
s = p.summary()
t = p.full_text()
&lt;span class="kw"&gt;print&lt;/span&gt; &lt;span class="s"&gt;&lt;span class="dl"&gt;&amp;quot;&lt;/span&gt;&lt;span class="ch"&gt;\n&lt;/span&gt;&lt;span class="ch"&gt;\n&lt;/span&gt;&lt;span class="k"&gt;Summary:&lt;/span&gt;&lt;span class="ch"&gt;\n&lt;/span&gt;&lt;span class="dl"&gt;&amp;quot;&lt;/span&gt;&lt;/span&gt;,s
&lt;span class="kw"&gt;print&lt;/span&gt; &lt;span class="s"&gt;&lt;span class="dl"&gt;&amp;quot;&lt;/span&gt;&lt;span class="ch"&gt;\n&lt;/span&gt;&lt;span class="k"&gt;Bodytext:&lt;/span&gt;&lt;span class="ch"&gt;\n&lt;/span&gt;&lt;span class="dl"&gt;&amp;quot;&lt;/span&gt;&lt;/span&gt;,x
&lt;span class="kw"&gt;print&lt;/span&gt; &lt;span class="s"&gt;&lt;span class="dl"&gt;&amp;quot;&lt;/span&gt;&lt;span class="ch"&gt;\n&lt;/span&gt;&lt;span class="k"&gt;Fulltext:&lt;/span&gt;&lt;span class="ch"&gt;\n&lt;/span&gt;&lt;span class="dl"&gt;&amp;quot;&lt;/span&gt;&lt;/span&gt;,t
&lt;/pre&gt;
&lt;/div&gt;

&lt;img src="http://feeds.feedburner.com/~r/aidanf/~4/g3tDdTxMZ7s" height="1" width="1"/&gt;</content>
  <feedburner:origLink>http://www.aidanf.net/posts/bte_gets_an_update.html</feedburner:origLink></entry>
  
  <entry>
    <title>Top posts from the archive</title>
    <link href="http://feedproxy.google.com/~r/aidanf/~3/iMNXWd3GA90/old_site_archived.html" />
    <id>tag:aidanf.net,2008-10-09:1223549143</id>
    <updated>2008-10-09T11:45:43+01:00</updated>

    <content type="html">&lt;h3&gt;Top posts from the archive&lt;/h3&gt;

&lt;p&gt;I've in the process of moving to a new blogging setup (and a new server). If you notice any bugs with the site please &lt;a href="/contact"&gt;let me know&lt;/a&gt;. Rather than migrate all my old posts over I've just archived them as static pages. You can browse the &lt;a href="/archive"&gt;archive&lt;/a&gt; of the old site &lt;a href="/archive"&gt;here&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;Since I'm archiving all these pages I had a look at my google analytics stats for the last couple of years. Here are the top ten posts from the archive.&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;&lt;a href="http://aidanf.net/rails_user_authentication_tutorial"&gt;Basic User Authentication in Rails&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://aidanf.net/adding-a-rich-text-editor-to-your-rails-application"&gt;Adding a Rich Text Editor to your Rails Application&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://aidanf.net//rails/creating-your-own-generators-in-rails"&gt;Creating your own generators in rails&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://aidanf.net/archive/blog/a-list-of-interesting-erlang-links"&gt;A list of interesting Erlang links&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://aidanf.net//clearwire-broadband-in-ireland-its-getting-worse"&gt;Clearwire Broadband in Ireland - It's getting worse&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://aidanf.net/archive/blog/2007/11/22/moving-subversion-git-revision-control"&gt;Moving from Subversion to Git for revision control&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://aidanf.net//deploying-rails-on-a-clean-ubuntu-slicehost-vps"&gt;Deploying rails on a clean ubuntu slicehost VPS&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://aidanf.net/archive/blog/learning-erlang"&gt;Learning Erlang&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://aidanf.net//miscellaneous/installing-drupal-on-freebsd"&gt;Installing Drupal on FreeBSD&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://aidanf.net//tools-and-tips-for-completing-a-postgraduate-degree-in-computer-science"&gt;Tools and tips for completing a postgraduate degree in Computer Science&lt;/a&gt;&lt;/li&gt;
&lt;/ol&gt;

&lt;img src="http://feeds.feedburner.com/~r/aidanf/~4/iMNXWd3GA90" height="1" width="1"/&gt;</content>
  <feedburner:origLink>http://www.aidanf.net/posts/old_site_archived.html</feedburner:origLink></entry>
  
  <entry>
    <title>Archiving a dynamic site as static content</title>
    <link href="http://feedproxy.google.com/~r/aidanf/~3/XHLoCEjxVrQ/archiving_dynamic_site_with_static_pages.html" />
    <id>tag:aidanf.net,2008-10-16:1224160599</id>
    <updated>2008-10-16T13:36:39+01:00</updated>

    <content type="html">&lt;h3&gt;Archiving a dynamic site as static content&lt;/h3&gt;

&lt;h6&gt;(And making pretty urls for static content)&lt;/h6&gt;

&lt;p&gt;I recently archived &lt;a href="/posts/old_site_archived.html"&gt;archived&lt;/a&gt; my old drupal site by creating a static copy of it. Thus for every url that existed in the old site there now exists a static page in the archive directory with the html extension.&lt;/p&gt;

&lt;p&gt;So the page that once existed at &lt;code&gt;/rails&lt;/code&gt; now exists at &lt;code&gt;/archive/rails.html&lt;/code&gt;&lt;/p&gt;

&lt;p&gt;Getting a html static archive of your site is fairly easy. If your blogging software uses a static page cache, then you can use the contents of that page cache and hammer your site with wget to generate the cache for every page. Mephisto does this caching by default. For drupal the &lt;a href="http://drupal.org/project/boost"&gt;boost module&lt;/a&gt; will implement a static page cache. Most good blogging platforms have a way of generating a static cache of the site. Alternatively you could do it yourself using &lt;code&gt;wget -mirror&lt;/code&gt;.&lt;/p&gt;

&lt;p&gt;Once you have a static archive generated you need to ensure that these files are served for all the urls that are associated with your old site. The easiest way to do this is to check if the archive contains a file with the requested path and a html extension and if so, serve it up.&lt;/p&gt;

&lt;p&gt;Below is an set of apache rewrite rules for doing this.&lt;/p&gt;

&lt;p&gt;This works by checking each request for an archived file:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;If there exists a document that matches the requested path with .html appended serve that. This catches all unarchived content that is statically cached.&lt;/li&gt;
&lt;li&gt;If there exists a document in the archive directory that matches the requested path with .html appended serve that. This catches all the archived html pages.&lt;/li&gt;
&lt;li&gt;If there exists an item in the archive directory that matches the requested path then serve that. This catches archived images, css, pdfs etc.&lt;/li&gt;
&lt;/ol&gt;


&lt;div class="CodeRay"&gt;
&lt;pre&gt;        RewriteCond %{DOCUMENT_ROOT}/%{REQUEST_URI}.html -f
RewriteRule ^(.*)$ /$1.html [L]

RewriteCond %{DOCUMENT_ROOT}/%{REQUEST_URI}.html !-f
RewriteCond %{DOCUMENT_ROOT}/archive/%{REQUEST_URI}.html -f
RewriteRule ^(.*)$ /archive/$1.html [L]

RewriteCond %{DOCUMENT_ROOT}/%{REQUEST_URI} !-f
RewriteCond %{DOCUMENT_ROOT}/archive/%{REQUEST_URI} -f
RewriteRule ^(.*)$ /archive/$1 [L]

&lt;/pre&gt;
&lt;/div&gt;

&lt;img src="http://feeds.feedburner.com/~r/aidanf/~4/XHLoCEjxVrQ" height="1" width="1"/&gt;</content>
  <feedburner:origLink>http://www.aidanf.net/posts/archiving_dynamic_site_with_static_pages.html</feedburner:origLink></entry>
  
  <entry>
    <title>Desperately seeking ... AC/DC tickets</title>
    <link href="http://feedproxy.google.com/~r/aidanf/~3/JkZRqwXp2K8/desperately-seeking-acdc-tickets.html" />
    <id>tag:aidanf.net,2008-10-17:1224244456</id>
    <updated>2008-10-17T12:54:16+01:00</updated>

    <content type="html">&lt;h3&gt;Desperately seeking ... AC/DC tickets&lt;/h3&gt;

&lt;p&gt;I'm a huge music fan. I own a lot of albums and I've been to a lot of gigs. I've seen most of my favourite bands live. But the one band in the world that I haven't seen live that I really want to are AC/DC.&lt;/p&gt;

&lt;p&gt;They were the first band that really got me into music. I remember seeing &lt;a href="http://www.youtube.com/watch?v=zvoeeq-BH4w"&gt;Thunderstruck&lt;/a&gt; on the beat-box when I was about 12. I wasn't into music much at that stage but I was blown away and I spent all my savings on getting their entire back catalogue. That was the start of a long and expensive interest in collecting music.&lt;/p&gt;

&lt;p&gt;AC/DC announced a couple of days ago that they would play in Dublin in April. I knew these tickets would sell out quickly so I was sitting at my computer at 9am today refreshing the ticket****** website. I managed to get into the queue for tickets but they sold out before I got one. Actually they sold out in &lt;em&gt;less than 2 minutes&lt;/em&gt;. Of myself, my brother and 2 friends who were all trying to get tickets none of us managed to get any.&lt;/p&gt;

&lt;p&gt;So I'm posting this in the slim hope that someone out there has a couple of spare tickets. I'd be eternally grateful and you'd get that warm fuzzy feeling from knowing you helped someone realize one of their lifelong ambitions. If you can help me out please &lt;a href="/contact"&gt;get in touch&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;And congratulations to all the lucky fans who got tickets.&lt;/p&gt;

&lt;p&gt;P.S. I hope bad things happen to the scalper scum that bought tickets just for the purposes of selling them at an inflated price. I did a quick web search and some Irish websites are already offering tickets for €300 each.&lt;/p&gt;
&lt;img src="http://feeds.feedburner.com/~r/aidanf/~4/JkZRqwXp2K8" height="1" width="1"/&gt;</content>
  <feedburner:origLink>http://www.aidanf.net/posts/desperately-seeking-acdc-tickets.html</feedburner:origLink></entry>
  
  <entry>
    <title>Disabling genre in iTunes</title>
    <link href="http://feedproxy.google.com/~r/aidanf/~3/stCYXu-dRoc/disable-genre-in-itunes.html" />
    <id>tag:aidanf.net,2008-10-16:1224148501</id>
    <updated>2008-10-16T10:15:01+01:00</updated>

    <content type="html">&lt;h3&gt;Disabling genre in iTunes&lt;/h3&gt;
&lt;p&gt;
  I find the genre tab in the iTunes browser useless so I don't use it. There was a setting in preferences to prevent it being displayed. But after updating to the latest version of iTunes I found that the genre tab is showing up again in the browser and there is way of disabling it in the iTunes preferences.
&lt;/p&gt;
&lt;p&gt;
  As usual, the command line comes to the rescue. Enter the command below and restart iTunes.
&lt;/p&gt;
&lt;code&gt;&lt;/code&gt;
&lt;div class="CodeRay"&gt;
&lt;pre&gt;defaults write com.apple.itunes show-genre-when-browsing -bool FALSE
&lt;/pre&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/aidanf/~4/stCYXu-dRoc" height="1" width="1"/&gt;</content>
  <feedburner:origLink>http://www.aidanf.net/posts/disable-genre-in-itunes.html</feedburner:origLink></entry>
  
  <entry>
    <title>I'm on Last fm</title>
    <link href="http://feedproxy.google.com/~r/aidanf/~3/PhNf4Gp7TpI/im-on-last-fm.html" />
    <id>tag:aidanf.net,2009-06-11:1244714563</id>
    <updated>2009-06-11T11:02:43+01:00</updated>

    <content type="html">&lt;h3&gt;I'm on Last fm&lt;/h3&gt;

&lt;p&gt;I've been &lt;a href="http://www.last.fm/user/aidanf"&gt;using Last fm&lt;/a&gt; for the last couple of months.&lt;/p&gt;

&lt;p&gt;&lt;img src="http://www.aidanf.net/images/mylastfm1.png" alt="mylastfm1"&gt;&lt;/p&gt;

&lt;p&gt;My musical tastes are wide and varied but a common theme with stuff that I like is that it almost involves talented guitar players. Melody and groove feature heavily too.&lt;/p&gt;

&lt;p&gt;&lt;img src="http://www.aidanf.net/images/mylastfm2.png" alt="mylastfm2"&gt;&lt;/p&gt;

&lt;p&gt;I find that it's very rare these days that I find new bands that I like. The main reason I started using Last fm was to get some decent recommendations. It's already paid me back by recommending I check out Band of horses.&lt;/p&gt;

&lt;object width="425" height="344"&gt;&lt;param name="movie" value="http://www.youtube.com/v/cuZo7pLnL7c&amp;hl=en&amp;fs=1&amp;"&gt;&lt;/param&gt;&lt;param name="allowFullScreen" value="true"&gt;&lt;/param&gt;&lt;param name="allowscriptaccess" value="always"&gt;&lt;/param&gt;&lt;embed src="http://www.youtube.com/v/cuZo7pLnL7c&amp;hl=en&amp;fs=1&amp;" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" width="425" height="344"&gt;&lt;/embed&gt;&lt;/object&gt;


&lt;p&gt;If you have vaguely similar tastes feel free to &lt;a href="http://www.last.fm/user/aidanf"&gt;add me&lt;/a&gt; or send me recommendations.&lt;/p&gt;

&lt;p&gt;&lt;img src="http://www.aidanf.net/images/mylastfm3.png" alt="mylastfm3"&gt;&lt;/p&gt;
&lt;img src="http://feeds.feedburner.com/~r/aidanf/~4/PhNf4Gp7TpI" height="1" width="1"/&gt;</content>
  <feedburner:origLink>http://www.aidanf.net/posts/im-on-last-fm.html</feedburner:origLink></entry>
  
  <entry>
    <title>Long Urls please</title>
    <link href="http://feedproxy.google.com/~r/aidanf/~3/SbF4PcgL_mc/long_urls_please.html" />
    <id>tag:aidanf.net,2008-12-10:1228910056</id>
    <updated>2008-12-10T11:54:16+00:00</updated>

    <content type="html">&lt;h3&gt;Long Urls please&lt;/h3&gt;

&lt;p&gt;Shortened urls break the web! Don't use them unless you absolutely have to.&lt;/p&gt;

&lt;p&gt;A while ago I posted &lt;a href="http://www.aidanf.net/blog/2007/10/23/misusing-tinyurls"&gt;how tinyurls bug me and people use them way too much&lt;/a&gt;. If you don't know why tinyurls are evil please go and &lt;a href="http://www.aidanf.net/blog/2007/10/23/misusing-tinyurls"&gt;read that post&lt;/a&gt; or check out &lt;a href="http://gojomo.blogspot.com/2006/02/tinyurls-are-evil-urls.html"&gt;some&lt;/a&gt; &lt;a href="http://blog.igorminar.com/2007/09/tinyurls-are-evil.html"&gt;other&lt;/a&gt; &lt;a href="http://www.google.ie/search?q=tinyurls+are+evil"&gt;links&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;And yet the number of url shortening services continues to proliferate and people continue to use them in inappropriate places. (Appropriate user are where space is restricted e.g. twitter messages or the link is so long it wraps over multiple lines in an email. Otherwise don't shorten it).&lt;/p&gt;

&lt;h4&gt;Fighting back&lt;/h4&gt;

&lt;p&gt;So the scourge of shortened urls continues to spread. How can we stop this? Spread the word about why they are bad. And if they bug you like they bug me, you can head over to &lt;a href="http://www.longurlplease.com/"&gt;http://www.longurlplease.com/&lt;/a&gt; where you can get a firefox extension that will automatically replace these nasty little urchins with real proper urls.&lt;/p&gt;
&lt;img src="http://feeds.feedburner.com/~r/aidanf/~4/SbF4PcgL_mc" height="1" width="1"/&gt;</content>
  <feedburner:origLink>http://www.aidanf.net/posts/long_urls_please.html</feedburner:origLink></entry>
  
  <entry>
    <title>Site update</title>
    <link href="http://feedproxy.google.com/~r/aidanf/~3/ngTSsxvSFqQ/new_site.html" />
    <id>tag:aidanf.net,2008-10-09:1223552743</id>
    <updated>2008-10-09T12:45:43+01:00</updated>

    <content type="html">&lt;h3&gt;Site update&lt;/h3&gt;

&lt;p&gt;I'm rejigging this site.&lt;/p&gt;

&lt;p&gt;Step 1: New minimalist theme.&lt;/p&gt;

&lt;p&gt;Step 2: New server and new blogging software setup.&lt;/p&gt;

&lt;p&gt;Step 3: &lt;strike&gt;Profit&lt;/strike&gt;, Start blogging again.&lt;/p&gt;

&lt;p&gt;I'm still working through the kinks so in the meantime check out the &lt;a href="http://www.aidanf.net/archive"&gt;archive&lt;/a&gt; and the &lt;a href="/posts/old_site_archived.html"&gt;top posts from the archive&lt;/a&gt;.&lt;/p&gt;
&lt;img src="http://feeds.feedburner.com/~r/aidanf/~4/ngTSsxvSFqQ" height="1" width="1"/&gt;</content>
  <feedburner:origLink>http://www.aidanf.net/posts/new_site.html</feedburner:origLink></entry>
  
</feed>
