<?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"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Magpiebrain &#187; howto</title>
	<atom:link href="http://www.magpiebrain.com/category/howto/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.magpiebrain.com</link>
	<description>The blog of Sam Newman</description>
	<lastBuildDate>Wed, 28 Jul 2010 21:02:52 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.0</generator>
		<item>
		<title>Synchronizing Slides &amp; Audio For A Screencast</title>
		<link>http://www.magpiebrain.com/2010/02/27/synchronizing-slides-audio-for-a-screencast/</link>
		<comments>http://www.magpiebrain.com/2010/02/27/synchronizing-slides-audio-for-a-screencast/#comments</comments>
		<pubDate>Sat, 27 Feb 2010 15:28:51 +0000</pubDate>
		<dc:creator>Sam Newman</dc:creator>
				<category><![CDATA[howto]]></category>
		<category><![CDATA[garageband]]></category>
		<category><![CDATA[handbrake]]></category>
		<category><![CDATA[imovie]]></category>
		<category><![CDATA[keynote]]></category>
		<category><![CDATA[osx]]></category>
		<category><![CDATA[screencast]]></category>
		<category><![CDATA[video]]></category>

		<guid isPermaLink="false">http://www.magpiebrain.com/?p=816</guid>
		<description><![CDATA[At a recent ThoughtWorks techy meetup, we recorded a couple of videos for internal use. One of them involved someone speaking to slides. The problem was that we had no projector, and our flip camera wasn&#8217;t really up to doing a great job of filming the screen. So the problem I was faced with was [...]]]></description>
			<content:encoded><![CDATA[<p>At a recent ThoughtWorks techy meetup, we recorded a couple of videos for internal use. One of them involved someone speaking to slides. The problem was that we had no projector, and our flip camera wasn&#8217;t really up to doing a great job of filming the screen. So the problem I was faced with was the best way to synchronize the audio track from the video to the slides. </p>
<p>What follows is a far from efficient workflow that allowed me to sync the audio track with the slides. The only constraint was my skills, and the fact that I only had freeware software and whatever came with the mac (iLife 08).</p>
<h3>0. Convert Flip AVI -> mp4</h3>
<p>I&#8217;m not sure if I needed to do this, but I figured the OSX tools would play nicer with m4v than with the avi&#8217;s from the Flip. I didn&#8217;t have the Flip software installed. I used <a href="http://handbrake.fr/">Handbrake</a> to convert the video.</p>
<h3>1. Import into GarageBand to rip out the audio track</h3>
<p>I probably could of done this via Handbrake, but it was fairly easy to do in <a href="http://www.apple.com/ilife/garageband/">GarageBand</a>. I imported the video, selected the video track, and removed it.</p>
<h3>2. Convert the Keynote slides to Images</h3>
<p>Given that I was in GarageBand, I figured I&#8217;d create a podcast, using the Keynote slides as artwork for the podcast. Exporting the slides as JPEG is a simple job &#8211; I chose to have Keynote create one image for each stage in a transition. I then imported the JPEGs into Aperture so I could access them via GarageBand&#8217;s media browser.</p>
<h3>3. Add the artwork to the podcast</h3>
<p>You&#8217;ll need to make sure the Podcast track and the media browser is visible. Then, it&#8217;s a simple matter of dragging in the relevant slide in sync with the audio track. The UI is pretty intuitive.</p>
<h3>4. Export the podcast</h3>
<p>Now it gets trickier. At this point, GarageBand thinks we have an audio, rather than video, podcast. I tried exporting into iTunes, but just got an audio track &#8211; I&#8217;m sure the artwork would show up on my iPhone, but I want a movie for uploading to our internal video hosting service (we have Google apps, so get Google Video). </p>
<p>What I ended up doing was exporting to <a href="http://www.apple.com/ilife/iweb/">iWeb</a>, exporting out the resulting Podcast site, then grabbing the resulting quicktime movie. This quicktime movie was almost what I wanted &#8211; a video, with the audio track from the flip, with synchronized slides. But I wanted to do a couple more things &#8211; namely I wanted to split the presentation into two parts (5-10min videos are easier for people to digest than a single 20min presentation), and add some additional titles.</p>
<h3>5. Split and add titles</h3>
<p>Luckily, <a href="http://www.apple.com/ilife/imovie/">iMovie</a> can handle this. I&#8217;m fairly sure it was able to directly import the quicktime movie. Adding the titles is a little fiddly, far worse is the simple task of splitting the movie itself. I hope to try iMove 09 soon to see if this is improved.</p>
<p>It was at this point I realised I had an issue &#8211; namely that the artwork you embed in podcasts via GarageBand is limited to a square, 300&#215;300 pixel dimensions. This led to some clipping of the slides. If I have to use this workflow again, I&#8217;ll make sure to export square slides from keynote in the first place.</p>
<h3>6. Export and upload</h3>
<p>Which is finally where things got easy. </p>
<h3>Notes</h3>
<ul>
<li>The GarageBand project was <em>massive</em>. The two resulting videos from iMovie were less than 15MB &#8211; the GarageBand project which just contained the slides and the audio track was over 450MB.</li>
<li>I&#8217;d love to find a better option for syncing the artwork &#8211; being limited to 300&#215;300 pixels is a pain, especially when I&#8217;m uploading to a video hosting service capable of much higher quality widescreen playback.</li>
<li>I like the power of iMovie, but I dislike the UI intensely. I&#8217;d love to be able to increase/decrease clip selection using the keyboard for more control.</li>
<li>For some reason Google Video too <em>ages</em> to process the two small videos &#8211; significantly larger videos uploaded afterwards were available within a few minutes. It is possible that the small, squashed size of the movie gave the transcoding a problem, or it may just of been a transient glitch, but I ended up having to wait overnight for them to finally be available.</li>
<li>I&#8217;d love to know of a better workflow using free/cheap software, so please get in touch if you have any ideas!</li>
</ul>
]]></content:encoded>
			<wfw:commentRss>http://www.magpiebrain.com/2010/02/27/synchronizing-slides-audio-for-a-screencast/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>A stub webserver for Scala using Jetty</title>
		<link>http://www.magpiebrain.com/2009/05/16/a-stub-webserver-for-scala-using-jetty/</link>
		<comments>http://www.magpiebrain.com/2009/05/16/a-stub-webserver-for-scala-using-jetty/#comments</comments>
		<pubDate>Sat, 16 May 2009 15:49:34 +0000</pubDate>
		<dc:creator>sam</dc:creator>
				<category><![CDATA[howto]]></category>
		<category><![CDATA[programming]]></category>
		<category><![CDATA[scala]]></category>

		<guid isPermaLink="false">http://www.magpiebrain.com/?p=508</guid>
		<description><![CDATA[I knocked this up to help testing on something I&#8217;ve been working on in my spare time. It would be a trivial exercise to extend this to build pages for specific URLs &#8211; this example returns the same markup for any example. The old codehaus site for Jetty contain lots of examples of how to [...]]]></description>
			<content:encoded><![CDATA[<p>I knocked this up to help testing on something I&#8217;ve been working on in my spare time. It would be a trivial exercise to extend this to build pages for specific URLs &#8211; this example returns the same markup for any example. The <a href="http://docs.codehaus.org/display/JETTY/Embedding+Jetty">old codehaus site for Jetty</a> contain lots of examples of how to configure an embedded server.</p>
<pre class="brush: scala;">import org.eclipse.jetty.server.handler.AbstractHandler
import org.eclipse.jetty.server.Handler
import org.eclipse.jetty.server.Server
import org.eclipse.jetty.server.Request
import javax.servlet.http.HttpServletRequest
import javax.servlet.http.HttpServletResponse
import scala.xml.Elem

class HttpServer {

  val handler = new MutableHandler()

  def run(port: Int) = {
    val server = new Server(port)
    server.setHandler(handler)
    server.start()
  }

  def updateHtml(html: Elem) = {
    handler.html = html
  }
}

protected class MutableHandler extends AbstractHandler {
  var html = &lt;h1&gt;Hello&lt;/h1&gt;

  override def handle(target: String, request: HttpServletRequest, response: HttpServletResponse) = {
    response.setContentType("text/html");
    response.setStatus(HttpServletResponse.SC_OK);
    response.getWriter().println(html.toString());
    (request.asInstanceOf[Request]).setHandled(true);
  }
}
</pre>
]]></content:encoded>
			<wfw:commentRss>http://www.magpiebrain.com/2009/05/16/a-stub-webserver-for-scala-using-jetty/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Trouble free backups, Part Three &#8211; Scheduling backups</title>
		<link>http://www.magpiebrain.com/2005/10/31/trouble-free-backups-part-three-scheduling-backups/</link>
		<comments>http://www.magpiebrain.com/2005/10/31/trouble-free-backups-part-three-scheduling-backups/#comments</comments>
		<pubDate>Mon, 31 Oct 2005 22:00:00 +0000</pubDate>
		<dc:creator>sam</dc:creator>
				<category><![CDATA[howto]]></category>

		<guid isPermaLink="false">http://www.magpiebrain.com/2005/10/31/trouble-free-backups-part-three-scheduling-backups/</guid>
		<description><![CDATA[Now we&#8217;ve worked out what files you want backed up, and we&#8217;ve sorted automatic authentication, the only thing left to do is schedule our backups. Unfortunately we can&#8217;t make use of the very handy iSync or Backup tools to do this (Apple don&#8217;t seem keen on opening up these tools up, as they no-doubt help [...]]]></description>
			<content:encoded><![CDATA[<p>Now we&#8217;ve worked out what files you want <a href="http://www.magpiebrain.com/archives/2005/10/29/strongspace_backup" title="magpiebrain - Trouble Free Backups, Part One - rsync and Strongspace">backed up</a>, and we&#8217;ve sorted <a href="http://www.magpiebrain.com/archives/2005/10/31/strongspace_and_ssh" title="Trouble free backups, Part Two - SSH Keys for trouble free authentication">automatic authentication</a>, the only thing left to do is schedule our backups. Unfortunately we can&#8217;t make use of the very handy <a href="http://www.apple.com/macosx/features/isync/">iSync</a> or <a href="http://www.apple.com/downloads/macosx/apple/backup.html">Backup</a> tools to do this (Apple don&#8217;t seem keen on opening up these tools up, as they no-doubt help sell expensive .Mac accounts).</p>
<p>h3. cron</p>
<p><a href="http://www.unixgeeks.org/security/newbie/unix/cron-1.html" title="Unixgeeks - a newbie introduction to cron">cron</a> is available on all *NIX systems, and is a well established solution to running all kinds of house keeping tasks. On OSX 10.4 however <code>cron</code> is being phased out in favour of <code>launchd</code> which we&#8217;ll look at next.</p>
<h3>launchd</h3>
<p>As of OSX 10.4 a new daemon called <a href="http://en.wikipedia.org/wiki/Launchd" title="Wikipedia launchd page">launchd</a> has been added. Eventually this will replace tools such as <code>cron</code>, <code>rc</code> and <code>xinetd</code> &#8211; however it&#8217;s low on the userfriendly scale right now. Unlike <code>cron</code>&#8217;s simple <code>crontab</code> file, <code>launchd</code> requires XML files which can be a pain to edit without something like the shareware program <a href="http://www.codepoetry.net/products/launchdeditor">launchd editor</a>. Hopefully later OSX releases might bundle a decent UI for managing it.</p>
<h3>Anacron + launchd &#8211; for those who like to switch their computers off</h3>
<p>Both <code>cron</code> and the newer <code>launchd</code> suffer from the same problem when it comes to running routine housekeeping tasks &#8211; if the computer isn&#8217;t on when a task is scheduled, the task won&#8217;t get run, and even when you switch the computer on again, neither tool can work out that it should try and catch up by running the task on startup.</p>
<p>So using either <code>cron</code> or <code>launchd</code> means that if we use either task to manage our backups, the computer has to be on when the backup is scheduled to run.</p>
<p><code>Anacron</code> attempts to solve these deficiencies. It stores a record of when each job was last run, so on startup it can work out if it needs to catch up. This is especially handy for laptops which are probably only on for a few hours a day.</p>
<p>Depending on your operating system, you can either get <code>anacron</code> setup to work with <code>cron</code>, or <code>launchd</code>. Assuming you take the <code>anacron</code> + <code>launcd</code> approach, grab Ronald Florence&#8217;s highly useful <a href="http://members.cox.net/18james/anacron-tiger.html">Anacron for OSX 10.4</a> installer. Once installed, you should have a file <code>/etc/anacrontab</code> which will look like this:</p>
<pre>

#period delay   job-identifier  command
1       5       cron.daily      periodic daily
7       10      cron.weekly     periodic weekly
30      15      cron.monthly    periodic monthly
</pre>
<p>The first field is the frequency of the job &#8211; <code>1</code> means daily, <code>7</code> means weekly and <code>30</code> means monthly. The second value is the delay in minutes between <code>anacron</code> realising a job needs to be run, and it actually getting scheduled. The third field is a unique identifier for the job, and finally the command itself.</p>
<p>To simplify things we should create a simple script which contains our <code>rsync</code> command(s) &#8211; for now you can place it into your <code>bin</code> directory, and call it something sensible like <code>backup</code>. Next, assuming you want to run the backup job daily, add the following line to <code>/etc/anacrontab</code>:</p>
<pre>

1       10      backup.user      /Users/johnsmith/bin/backup
</pre>
<p>To make sure <code>anacron</code> is working (and is picking up your job) simply start <code>Console.app</code>, and select <code>Open System Log</code> from the <code>File</code> menu &#8211; you should see its output. If you need to tweak your backup job, you can remove the record of the previous run <code>/var/spool/anacron/</code> &#8211; it should contain one file per record in <code>anacrontab</code>. Then, you can force <code>anacron</code> to rerun the job by executing <code>anacron -n</code>.</p>
<p>And there you have it! Trouble free, secure backups that will get run even if you switch your computer on for only a few hours each day.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.magpiebrain.com/2005/10/31/trouble-free-backups-part-three-scheduling-backups/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Trouble free backups, Part Two &#8211; SSH Keys for trouble free authentication</title>
		<link>http://www.magpiebrain.com/2005/10/31/trouble-free-backups-part-two-ssh-keys-for-trouble-free-authentication/</link>
		<comments>http://www.magpiebrain.com/2005/10/31/trouble-free-backups-part-two-ssh-keys-for-trouble-free-authentication/#comments</comments>
		<pubDate>Mon, 31 Oct 2005 12:00:00 +0000</pubDate>
		<dc:creator>sam</dc:creator>
				<category><![CDATA[howto]]></category>

		<guid isPermaLink="false">http://www.magpiebrain.com/2005/10/31/trouble-free-backups-part-two-ssh-keys-for-trouble-free-authentication/</guid>
		<description><![CDATA[In our last part, we used rsync to connect to a remote server to perform incremental backups. The problem is that we really want this to be automatic. Scheduling when a backup occurs is actually fairly simple. What is more work is performing automatic authentication so our backup can occur without user intervention. Authentication using [...]]]></description>
			<content:encoded><![CDATA[<p>In our <a href="http://www.magpiebrain.com/archives/2005/10/29/strongspace_backup" title="magpiebrain - Trouble Free Backups, Part One - rsync and Strongspace">last part</a>, we used <code>rsync</code> to connect to a remote server to perform incremental backups. The problem is that we really want this to be automatic. Scheduling <em>when</em> a backup occurs is actually fairly simple. What is more work is performing automatic authentication so our backup can occur without user intervention.</p>
<h3>Authentication using an SSH key</h3>
<p>We&#8217;ll be using an SSH key to authenticate ourselves with Strongspace (or any other <code>rsync</code> server for that matter). Thanks have to go to Jens-Christian Fischer&#8217;s post on his own <a href="http://blog.invisible.ch/archives/000461.html" title="InVisible Blog - Back-up">backup solution</a>, which helped get me started. To start with, open a terminal and enter the following command:</p>
<pre>

$ ssh-keygen -t dsa -b 1024
</pre>
<p>Leave the key location unchanged, but enter a passphrase. You <em>can</em> choose not to enter a passphrase (and this will simplify things) however this is pretty insecure. If anyone gets hold of your key they&#8217;ll be able to access your Strongspace files without the need for a password.</p>
<p>Now we&#8217;ve generated our key, we can use it to authenticate ourselves when connecting to the remote server. The server we&#8217;re connecting to needs a copy of our public key:</p>
<pre>

$ cp ~/.ssh/id_dsa.pub authorized_keys
</pre>
<p>Log into Strongspace via the web interface, create a directory called <code>.ssh</code> and copy the <code>authorized_keys</code> file into this directory. To test this, run the <code>rsync</code> command we created in <a href="http://www.magpiebrain.com/archives/2005/10/29/strongspace_backup" title="magpiebrain - Trouble Free Backups, Part One - rsync and Strongspace">part one</a>:</p>
<pre>

$ rsync -azvL \
/Users/johnsmith/backup \
johnsmith@johnsmith.strongspace.com:/home/johnsmith/backups/mac
</pre>
<p>This time, rather than the Strongpsace server asking you for your password, you&#8217;ll get prompted for your key&#8217;s passphrase.</p>
<h3>SSHKeychain</h3>
<p>So at this point you must be thinking &#8220;Well, what was the point of that &#8211; you&#8217;ve replaced the need to enter the password for the remote server, with the need to enter a passphrase for your key!&#8221; &#8211; and you&#8217;d be right. What we need is some kind of software that can be used to automatically handle unlocking our key.</p>
<p><a href="http://www.sshkeychain.org/">SSHKeychain</a> is an OSX specific SSH key management tool. When using tools like <code>rsync</code> or <code>ssh</code>, SSHKeychain can automatically lookup your passphrase. Download and install the tool, then start it up. Open the <code>Preferences</code> pane, select the <code>Environment</code> tab and enable <code>Manage global environment variables</code> &#8211; this will allow other applications to use the keys managed by SSHKeychain. Check the <code>keys</code> tab and ensure your key (<code>~/.ssh/id_dsa</code>) is visible. Finally select <code>Agent/Key Status</code> from the <code>Agent</code> menu,  enter your passphrase for your key, and enable the option to add the passphrase to your keychain &#8211; this means that when you log on, SSHKeychain will automatically have access to your SSH key&#8217;s passphrase. So long as you&#8217;re logged on you&#8217;ll have no need to type it in again.</p>
<p>For SSHKeychain to start managing your key, you&#8217;ll need to log off and back on, but before you do it&#8217;s a good idea to add SSHKeychain to your startup items so you don&#8217;t have to remember to start it up every time.</p>
<p>Once you&#8217;ve logged off and back on, SSHKeychain will be silently managing your keys. The first time you use an application like <code>ssh</code> or <code>rsync</code>, SSHKeychain will look in your OSX Keychain, locate the passphrase for your key and automatically authenticate you. Note that you will need to be logged in for this to work, as SSHKeychain needs to be running, and your OSX Keychain needs to be unlocked.</p>
<p>To test this, after logging back in run our <code>rsync</code> command again &#8211; this time you shouldn&#8217;t be prompted for any password.</p>
<p>In <a href="http://www.magpiebrain.com/archives/2005/10/31/automated_backups" title="magpiebrain - Trouble free backups, Part Three - Scheduling backups">part three</a> we&#8217;ll complete our backup solution by creating an automated backup script.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.magpiebrain.com/2005/10/31/trouble-free-backups-part-two-ssh-keys-for-trouble-free-authentication/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>Trouble Free Backups, Part One &#8211; rsync and Strongspace</title>
		<link>http://www.magpiebrain.com/2005/10/29/trouble-free-backups-part-one-rsync-and-strongspace/</link>
		<comments>http://www.magpiebrain.com/2005/10/29/trouble-free-backups-part-one-rsync-and-strongspace/#comments</comments>
		<pubDate>Sat, 29 Oct 2005 16:44:39 +0000</pubDate>
		<dc:creator>sam</dc:creator>
				<category><![CDATA[howto]]></category>

		<guid isPermaLink="false">http://www.magpiebrain.com/2005/10/29/trouble-free-backups-part-one-rsync-and-strongspace/</guid>
		<description><![CDATA[If you&#8217;ve been using computers for a while, chances are you&#8217;ve lost valuable data more than once. Most computers nowadays come with CD writers (and many with DVD writers) which is great for the occasional manual backup &#8211; there is even the nice OSX-specific iSync tool which remind you when to perform the backup, and [...]]]></description>
			<content:encoded><![CDATA[<p>If you&#8217;ve been using computers for a while, chances are you&#8217;ve lost valuable data more than once. Most computers nowadays come with CD writers (and many with DVD writers) which is great for the occasional manual backup &#8211; there is even the nice OSX-specific <a href="http://www.apple.com/macosx/features/isync/">iSync</a> tool which remind you when to perform the backup, and can manage the files being backed up too. However what would be better would be an automatic solution.</p>
<p>The <a href="http://samba.anu.edu.au/rsync/">rsync</a> tool ships with OSX, Linux, and even <a href="http://optics.ph.unimelb.edu.au/help/rsync/rsync_pc1.html" title="Installing ssh and rsync on a Windows machine: minimalist approach">Windows</a>. Rather than copying and overwriting files on a remote location <code>rsyc</code> performs incremental transfer of files &#8211; only those files not already present will be copied &#8211; this drastically reduces the time taken to perform backups.</p>
<p>For my purposes, I wanted files to be backed up off site. I decided to sign up for a <a href="http://www.Strongspace.com/">Strongspace</a> account. Strongspace provide external, secure storage &#8211; you can access your files either via the web interface, SFTP, or (handy for our purposes) via <code>rsync</code>. While the rest of the article (and following parts) assume you&#8217;ll also be backing up to a Strongpsace account, it is a small matter to instead copy your files to an external disk drive or even another computer on your network. Note that Strongpsace supports <code>rsync</code> by running an <code>rsync</code> server &#8211; so these instructions should work equally well for backing up to any other <code>rsync</code> server.</p>
<p>Assuming you have your Strongspace account setup already, lets get started. To start with, I simply want to backup the contents of my <code>Documents</code> folder:</p>
<pre>

rsync -azv /Users/johnsmith/Documents \
johnsmith@johnsmith.strongspace.com:/home/johnsmith/backups/mac
</pre>
<p>When run, this will copy the contents of <code>Documents</code> to the remote directory <code>/home/johnsmith/backups/mac</code>. Unfortunately, since the release of Tiger my <code>Documents</code> folder has become stuffed with lots of Dashboard widgets I never use. To ignore these, I specify the <code>exclude</code> option:</p>
<pre>

rsync &lt;del&gt;azv &lt;/del&gt;-exclude "Widgets" \
/Users/johnsmith/Documents \
johnsmith@johnsmith.strongspace.com:/home/johnsmith/backups/mac
</pre>
<p>The <code>exclude</code> option can take a regular expression, so you can specify multiple directories if you want to. If you want to backup files from multiple locations, then consider having a single <code>backup</code> directory, then create symlinks to the directories you want backed up. You&#8217;ll need to add the <code>L</code> option so that <code>rsync</code> copies the referenced directory rather than simply copying the symlink itself:</p>
<pre>

rsync -azvL \
/Users/johnsmith/backup \
johnsmith@johnsmith.strongspace.com:/home/johnsmith/backups/mac
</pre>
<p>Notice that when you run the command, you get prompted every time for your strongspace password. In <a href="http://www.magpiebrain.com/archives/2005/10/31/strongspace_and_ssh" title="magpiebrain - Trouble free backups, Part Two - SSH Keys for trouble free authentication">part two</a> we&#8217;ll start using an SSH key to avoid this, and we&#8217;ll be well on the way to providing an automatic backup solution.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.magpiebrain.com/2005/10/29/trouble-free-backups-part-one-rsync-and-strongspace/feed/</wfw:commentRss>
		<slash:comments>9</slash:comments>
		</item>
	</channel>
</rss>
