<?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>Kim van Wyk&#039;s Home on the Web</title>
	<atom:link href="http://rooijan.za.net/feed" rel="self" type="application/rss+xml" />
	<link>http://rooijan.za.net</link>
	<description>The purpose of this site? The same thing I do every night... try to take over the world! BWA-HA-HA-HA</description>
	<lastBuildDate>Mon, 07 May 2012 14:12:44 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.2</generator>
		<item>
		<title>Headphone jacks do not belong on the front of laptops</title>
		<link>http://rooijan.za.net/archives/384?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=384</link>
		<comments>http://rooijan.za.net/archives/384#comments</comments>
		<pubDate>Mon, 07 May 2012 14:11:46 +0000</pubDate>
		<dc:creator>kim</dc:creator>
				<category><![CDATA[computers]]></category>

		<guid isPermaLink="false">http://rooijan.za.net/?p=384</guid>
		<description><![CDATA[Attention laptop designers: Don&#8217;t put the damned headphone jack on the front of the laptop, for crying out loud! You&#8217;ve forced me to choose between annoying background noises or annoyingly having to rest my arms on the headphone cable and &#8230; <a href="http://rooijan.za.net/archives/384">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>Attention laptop designers: <span style="text-decoration: underline; color: #ff0000;"><strong>Don&#8217;t put the damned headphone jack on the front of the laptop, for crying out loud!</strong></span> You&#8217;ve forced me to choose between annoying background noises or annoyingly having to rest my arms on the headphone cable and constantly bumping the jack. Thanks ever so much.</p>
<p>HP is the guilty party here, but they&#8217;re not the only ones.</p>
<p>Okay, rant over, normal service can resume.</p>
]]></content:encoded>
			<wfw:commentRss>http://rooijan.za.net/archives/384/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Sumatra PDF</title>
		<link>http://rooijan.za.net/archives/sumatra-pdf?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=sumatra-pdf</link>
		<comments>http://rooijan.za.net/archives/sumatra-pdf#comments</comments>
		<pubDate>Mon, 20 Feb 2012 19:05:05 +0000</pubDate>
		<dc:creator>kim</dc:creator>
				<category><![CDATA[computing]]></category>

		<guid isPermaLink="false">http://rooijan.za.net/?p=380</guid>
		<description><![CDATA[I&#8217;ve been using Pandoc for generating most of my documents for some time now, even going so far as to write a small tool to add additional support specific to my needs. I mostly generate PDF documents, and I found it &#8230; <a href="http://rooijan.za.net/archives/sumatra-pdf">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>I&#8217;ve been using <a title="Pandoc" href="http://johnmacfarlane.net/pandoc/">Pandoc</a> for generating most of my documents for some time now, even going so far as to write a <a href="https://bitbucket.org/kimvanwyk/kppe">small tool</a> to add additional support specific to my needs. I mostly generate PDF documents, and I found it quite annoying to have to close the PDF viewer (I was using Acrobat) to allow Pandoc to make a new PDF.</p>
<p>I have since discovered that the <a href="http://blog.kowalczyk.info/software/sumatrapdf/download-free-pdf-viewer.html">Sumatra</a> PDF reader will allow PDF&#8217;s it has open to be written to &#8211; I&#8217;ve been using it for a few days and it seems a nice solution to this little problem.</p>
]]></content:encoded>
			<wfw:commentRss>http://rooijan.za.net/archives/sumatra-pdf/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Deluge Toggle &#8211; the world&#8217;s simplest Deluge client</title>
		<link>http://rooijan.za.net/archives/deluge-toggle-the-worlds-simplest-deluge-client?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=deluge-toggle-the-worlds-simplest-deluge-client</link>
		<comments>http://rooijan.za.net/archives/deluge-toggle-the-worlds-simplest-deluge-client#comments</comments>
		<pubDate>Tue, 24 Jan 2012 14:14:35 +0000</pubDate>
		<dc:creator>kim</dc:creator>
				<category><![CDATA[computing]]></category>
		<category><![CDATA[programming]]></category>

		<guid isPermaLink="false">http://rooijan.za.net/?p=368</guid>
		<description><![CDATA[I&#8217;ve recently been using Deluge to download torrents, thanks to froztbyte&#8217;s recent blog post. It seems to work very well, especially when combined with FlexGet for handling RSS feeds of torrents. My torrents are downloaded by my desktop machine, which &#8230; <a href="http://rooijan.za.net/archives/deluge-toggle-the-worlds-simplest-deluge-client">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>I&#8217;ve recently been using <a href="http://deluge-torrent.org/">Deluge</a> to download torrents, thanks to <a href="http://blog.froztbyte.net/2012/01/human-friendly-headless-torrents/">froztbyte&#8217;s recent blog post</a>. It seems to work very well, especially when combined with <a href="http://flexget.com/">FlexGet</a> for handling RSS feeds of torrents.</p>
<p>My torrents are downloaded by my desktop machine, which shares bandwidth with the rest of the devices on my network &#8211; my phone and my laptop, generally. I prefer the torrents not to use any bandwidth while I&#8217;m home, to free it all for whatever else I want it for.</p>
<p>Deluge offers scheduling, which is fine for weekdays &#8211; on almost any weekday the torrents can happily download during working hours and sleepy time. However, our weekends can vary wildly between home all weekend and barely home at all &#8211; it seems wasteful to schedule no downloading for the non-sleepy hours of the weekend on the off chance we&#8217;ll be home.</p>
<p>The <a href="http://dev.deluge-torrent.org/wiki/Plugins/Toggle">Toggle</a> plugin offers a better solution for my use-case &#8211; it stops all Deluge bandwidth usage when toggled. It integrates into the Deluge GUI and web clients.</p>
<p>However, I have found the web client to be quite slow and clunky on my phone, which is the primary device I want to use to toggle Deluge&#8217;s bandwidth usage &#8211; generally when I wake in the morning and go to bed at night. This is quite possibly my phone at fault, but it does make toggling Deluge&#8217;s bandwidth usage annoying, since I often need to use my laptop or the desktop machine.</p>
<p>Accordingly, I have written what I would imagine is the world&#8217;s simplest Deluge client: <a href="https://bitbucket.org/kimvanwyk/deluge-toggle">deluge-toggle</a>. The client either reports what the current toggling status is, or toggles the bandwidth usage. That&#8217;s all it does, but that&#8217;s exactly what I needed.</p>
<p>I have also written an incredibly simple <a href="http://flask.pocoo.org/">Flask</a> <a href="https://bitbucket.org/kimvanwyk/deluge-toggle-web">webapp</a> to interact with the deluge-toggle client, to save me having to use a console from my phone. I run this webapp on my desktop machine, and can now easily toggle Deluge&#8217;s bandwidth usage from anywhere that I can connect to my home network.</p>
<p>All of this is very simple, but it does say complimentary things about Flask and Deluge (particularly its plugin system) that this was as simple as it turned out to be.</p>
]]></content:encoded>
			<wfw:commentRss>http://rooijan.za.net/archives/deluge-toggle-the-worlds-simplest-deluge-client/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>30 years on the planet. Stock taken. Status: content.</title>
		<link>http://rooijan.za.net/archives/362?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=362</link>
		<comments>http://rooijan.za.net/archives/362#comments</comments>
		<pubDate>Fri, 23 Dec 2011 06:30:08 +0000</pubDate>
		<dc:creator>kim</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://rooijan.za.net/?p=362</guid>
		<description><![CDATA[Today I&#8217;ve been on the planet for 3 decades. A round-number birthday seems a good time to take stock of life, which I&#8217;ve done after a bit of reflection: I am married to an amazing and loving woman, who is &#8230; <a href="http://rooijan.za.net/archives/362">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>Today I&#8217;ve been on the planet for 3 decades. A round-number birthday seems a good time to take stock of life, which I&#8217;ve done after a bit of reflection:</p>
<ul>
<li>I am married to an amazing and loving woman, who is truly beautiful both on the inside and the outside, who is also my best friend. I fully realise that such a relationship is sadly very rare, and I&#8217;m deeply grateful that I&#8217;ve found love like this.</li>
<li>I am paid to do what I would do for fun anyhow &#8211; and paid well enough that I have no serious financial concerns. I realise how rare <strong>this</strong> is too, and am very grateful.</li>
<li>I am very actively involved in serving my community and those in need through my Lions club, which brings me great joy.</li>
<li>I have many good friends, from many walks of life, some of whom I&#8217;ve physically met and others I haven&#8217;t, but all of whom are terrific people I&#8217;m proud to call my friends.</li>
<li>For the past 30 years my parents and brother (well, in his case, 28 years) have been more supportive, loving and fantastic than one could imagine, and I am truly, deeply grateful for the amazing family I am blessed to belong to.</li>
<li>I have a deep faith in the Lord, which brings me inner peace and stability.</li>
</ul>
<p>Looking at the above, I can honestly state that I am blissfully content. Life has challenges, of course, and ups and downs, but on the overwhelming whole everything is going great.</p>
<p>&#8220;Blissfully content&#8221; sounds like a pretty good state to be in at any age &#8211; I&#8217;m truly grateful to be able to say that at 30, that&#8217;s where I stand.</p>
]]></content:encoded>
			<wfw:commentRss>http://rooijan.za.net/archives/362/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Where the missing R1 went</title>
		<link>http://rooijan.za.net/archives/where-the-missing-r1-went?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=where-the-missing-r1-went</link>
		<comments>http://rooijan.za.net/archives/where-the-missing-r1-went#comments</comments>
		<pubDate>Tue, 04 Oct 2011 13:02:25 +0000</pubDate>
		<dc:creator>kim</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://rooijan.za.net/?p=349</guid>
		<description><![CDATA[Several times now, I have been sent or shown a variant of the following riddle, and asked if I can explain it: Peter borrows R50 from John and R50 from James He spends R97 and gets R3 change He pays &#8230; <a href="http://rooijan.za.net/archives/where-the-missing-r1-went">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>Several times now, I have been sent or shown a variant of the following riddle, and asked if I can explain it:</p>
<pre>Peter borrows R50 from John and R50 from James
 He spends R97 and gets R3 change
 He pays James and John R1 each and keeps R1
 He now owes them R49 each
 49 + 49 = R98 + R 1 in his pocket = R99
 Where is the missing R1?</pre>
<p><strong>Here is the explanation I provided, in case anyone else may find in helpful:</strong></p>
<p>The sum at the end (R49 + R49 + R1) is a red herring. How Peter spends the money he borrowed and what change he holds from that is a completely separate issue to how he pays it back and what he still owes on his loan.</p>
<p>Look at this way:<br />
Peter borrows R50 from John, R50 from James.<br />
He gives John R1, gives James R1.</p>
<p>He still owes John R49, James R49.<br />
So in total he still owes R98 of the R100 he borrowed.</p>
<p>He used R97 of that hundred, and R3 in change.</p>
<p>After paying R2 of his debt, he still has R1. He has to get R97 from elsewhere (he spent it already). R97 + R1 in his pocket is the R98 he owes John and James.</p>
<p>&nbsp;</p>
<p>It&#8217;s the phrasing of the question that is out of whack.</p>
<p>R49 owed to James + R49 owed to John + R1 in his pocket is meaningless maths &#8211; that&#8217;s adding what he owes + what he owes + what he has. There is no physical R49 anywhere &#8211; it&#8217;s introduced in the story as a figure but it doesn&#8217;t physically exist. It represents what he owes, not a sum of actual money, so it can&#8217;t be added to the R1 that does exist.</p>
<p>What he owes cannot be mixed in an equation with the details of where the money went, they&#8217;re different issues.</p>
<p>The correct maths is either:</p>
<p>R49 owed + R49 owed + R1 paid back + R1 paid back = R100 (dealing purely with his debt, ignoring what exactly he did with the original R100)</p>
<p><span style="color: #ff0000;"><strong>OR</strong></span></p>
<p>R97 spent + R1 kept + R1 returned + R1 returned (dealing purely with what he did with the money, ignoring the irrelevant matter of where it came from).</p>
<p>The reason it comes across as a missing rand is in the way it is phrased, but you can&#8217;t add R49 owed + R49 owed + R1 physically in your possession, since they are apples and oranges.</p>
<p>&nbsp;</p>
<p>I hope this is helpful to someone.</p>
]]></content:encoded>
			<wfw:commentRss>http://rooijan.za.net/archives/where-the-missing-r1-went/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>2 years &#8211; where does the time go?</title>
		<link>http://rooijan.za.net/archives/2-years-where-does-the-time-go?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=2-years-where-does-the-time-go</link>
		<comments>http://rooijan.za.net/archives/2-years-where-does-the-time-go#comments</comments>
		<pubDate>Mon, 18 Jul 2011 08:12:13 +0000</pubDate>
		<dc:creator>kim</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://rooijan.za.net/?p=318</guid>
		<description><![CDATA[Exactly a year ago, my Facebook status was: &#8220;Kim has been married for a year today to his amazing and beautiful wife, and has enjoyed every minute of it immensely. If possible I&#8217;m more in love with her today than &#8230; <a href="http://rooijan.za.net/archives/2-years-where-does-the-time-go">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>Exactly a year ago, my Facebook status was:<br />
<em>&#8220;Kim  has been married for a year today to his amazing and beautiful wife,  and has enjoyed every minute of it immensely. If possible I&#8217;m more in  love with her today than I was a year ago.&#8221;</em></p>
<p>Other than the fact that is now 2 years, not one, every last word of that is still as true as it was then. Thank you for a fantastic 2 years love.</p>
]]></content:encoded>
			<wfw:commentRss>http://rooijan.za.net/archives/2-years-where-does-the-time-go/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Colour me immensely impressed</title>
		<link>http://rooijan.za.net/archives/colour-me-immensely-impressed?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=colour-me-immensely-impressed</link>
		<comments>http://rooijan.za.net/archives/colour-me-immensely-impressed#comments</comments>
		<pubDate>Wed, 08 Jun 2011 09:30:27 +0000</pubDate>
		<dc:creator>kim</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://rooijan.za.net/?p=312</guid>
		<description><![CDATA[I realised today that I accidentally booked for Thursday instead of Friday for a show I&#8217;m going to with my folks, using www.strictlytickets.co.za. I fired off an email to the strictlytickets.co.za email address, to ask if it would be possible &#8230; <a href="http://rooijan.za.net/archives/colour-me-immensely-impressed">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p><span style="font-size: small;"> I realised today that I  accidentally booked for Thursday instead of Friday for a show I&#8217;m going to with my folks, using <a href="http://www.strictlytickets.co.za">www.strictlytickets.co.za</a>. I fired off an email to the <a href="http://strictlytickets.co.za/">strictlytickets.co.za</a> email address, to ask if it would be possible to alter the booking.</span></p>
<p>Within 15 mins I had a reply from a chap called Gary, saying he had cancelled the Thursday booking and credited me on the site with the money so I could make a fresh booking.</p>
<p>I went to the site to make a new booking, and saw I had R322 in credit, not the R480 I should have had. I added 6 tickets for Friday to my shopping cart anyhow, thinking to pay the extra (the wrong booking was all my fault anyhow). I didn&#8217;t pay yet though, and fired off another email to ask why the credit was less than R480, but adding that I would understand if the refund wasn&#8217;t total.</p>
<p>Before it can even have got there, Gary gave me a call, saying he saw he put in too little credit, and not to worry, he&#8217;d process my new booking within 5 mins &#8211; no need to pay anything extra. True to his word I got an sms 5 mins later with the details of a booking for the right day, for the right number of tickets &#8211; he must have picked it up from my  as-yet-unpaid-for shopping cart.</p>
<p>His service was astonishing &#8211; if only all SA businesses could have service like that.</p>
]]></content:encoded>
			<wfw:commentRss>http://rooijan.za.net/archives/colour-me-immensely-impressed/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Thanks for the holiday</title>
		<link>http://rooijan.za.net/archives/thanks-for-the-holiday?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=thanks-for-the-holiday</link>
		<comments>http://rooijan.za.net/archives/thanks-for-the-holiday#comments</comments>
		<pubDate>Sun, 15 May 2011 13:31:27 +0000</pubDate>
		<dc:creator>kim</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://rooijan.za.net/?p=309</guid>
		<description><![CDATA[My wife and I recently got back to SA after a 3 week-long, truly awesome US holiday. In their extreme generosity, my parents paid for the vast bulk of it &#8211; they took both their sons and daughters-in-law with them &#8230; <a href="http://rooijan.za.net/archives/thanks-for-the-holiday">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>My wife and I recently got back to SA after a 3 week-long, truly awesome US holiday. In their extreme generosity, my parents paid for the vast bulk of it &#8211; they took both their sons and daughters-in-law with them for a trip to New York, Miami, a 4-day cruise of the Bahamas on the Norwegian Sky and several days in Orlando, visiting Universal, Sea World and other fantastic attractions.</p>
<p>The experience was incredible, and certainly something we won&#8217;t be able to match for a few decades. My parents took us along partially to celebrate their recent 30th anniversary but more particularly simple because they really wanted to.</p>
<p>The likelihood of either of them reading this here is remote, but still, this seems a good place to simply say thank you.</p>
]]></content:encoded>
			<wfw:commentRss>http://rooijan.za.net/archives/thanks-for-the-holiday/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Surprisingly, I can do my own rebooting</title>
		<link>http://rooijan.za.net/archives/surprisingly-i-can-do-my-own-rebooting?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=surprisingly-i-can-do-my-own-rebooting</link>
		<comments>http://rooijan.za.net/archives/surprisingly-i-can-do-my-own-rebooting#comments</comments>
		<pubDate>Mon, 04 Apr 2011 11:52:48 +0000</pubDate>
		<dc:creator>kim</dc:creator>
				<category><![CDATA[computing]]></category>
		<category><![CDATA[rants]]></category>

		<guid isPermaLink="false">http://rooijan.za.net/?p=301</guid>
		<description><![CDATA[Dear Microsoft, stuff like this is (a very small) part of why many people detest your software. Does one of your software developers get his jollies from adding greyed out &#8220;Restart later&#8221; buttons to (annoyingly modal) dialogs? You should get &#8230; <a href="http://rooijan.za.net/archives/surprisingly-i-can-do-my-own-rebooting">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>Dear Microsoft,  stuff like this is (a very small) part of why many people detest your software. Does one of your software developers get his jollies from adding greyed out &#8220;Restart later&#8221; buttons to (annoyingly modal) dialogs? You should get him some therapy.</p>
<p>&nbsp;</p>
<p><a rel="attachment wp-att-303" href="http://rooijan.za.net/archives/surprisingly-i-can-do-my-own-rebooting/restart_now-2"><img class="alignnone size-full wp-image-303" title="restart_now" src="http://rooijan.za.net/wp-content/uploads/restart_now.png" alt="" width="425" height="159" /></a></p>
<p>As it is, I got around this with some judicious process killing. <strong>I&#8217;ll</strong> decide when I reboot my PC, thanks all the same.</p>
<p>&nbsp;</p>
]]></content:encoded>
			<wfw:commentRss>http://rooijan.za.net/archives/surprisingly-i-can-do-my-own-rebooting/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>&#8220;One-touch&#8221; app installation and update with SVN</title>
		<link>http://rooijan.za.net/archives/one-touch-app-installation-and-update-with-svn?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=one-touch-app-installation-and-update-with-svn</link>
		<comments>http://rooijan.za.net/archives/one-touch-app-installation-and-update-with-svn#comments</comments>
		<pubDate>Tue, 22 Mar 2011 13:39:53 +0000</pubDate>
		<dc:creator>kim</dc:creator>
				<category><![CDATA[svn]]></category>
		<category><![CDATA[windows_tricks]]></category>
		<category><![CDATA[work]]></category>

		<guid isPermaLink="false">http://rooijan.za.net/?p=291</guid>
		<description><![CDATA[One of my responsibilities at work is to develop and distribute several applications to a different division. These apps all consist of an exe (we&#8217;re a Windows shop), some supporting files and an INI config file. They need to be &#8230; <a href="http://rooijan.za.net/archives/one-touch-app-installation-and-update-with-svn">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>One of my responsibilities at work is to develop and distribute several applications to a different division. These apps all consist of an exe (we&#8217;re a Windows shop), some supporting files and an INI config file. They need to be run on several independent PC&#8217;s.</p>
<p>The division I am supporting does have technicians, but they are neither hugely technically competent nor blessed with much time to get stuff done, so a &#8220;one-touch&#8221; installation or update procedure is desired.</p>
<p>There are several ways this could be done, perhaps by distributing an MSI installer which is then installed on each PC. Here is another technique which works for me. It leverages SVN, both because that&#8217;s where my code lives and because both sides of this game have access to our SVN server.</p>
<ol>
<li>Ensure the exe and additional files are under SVN control.</li>
<li>Tag the version of the exe which should be distributed. This will be <strong>svn://path/to/current/tag</strong></li>
<li>Create an SVN location with a name something like &#8220;<strong>current_location</strong>&#8220;. A good location would perhaps be in the SVN folder of the project, but it really only matters that it is somewhere in your SVN tree.</li>
<li>Check the &#8220;<strong>current_location</strong>&#8221; directory out to a local working copy.</li>
<li>Create an <em>svn:external</em> property on this working copy, like so:<br />
<code> app svn://path/to/current/tag</code><br />
Check the &#8220;<strong>current_location</strong>&#8221; directory back in.</li>
<li>On each PC the app is to run on, checkout the &#8220;<strong>current_location</strong>&#8221; directory. The app will be in a directory called &#8220;<strong>app</strong>&#8221; in the checkout location.</li>
</ol>
<p>The &#8220;<strong>current_location</strong>&#8221; directory is now effectively a pointer to the version of the app in current use.</p>
<p>When the app needs updating, create a new tag and edit the <em>svn:external</em> property of your local copy of the &#8220;<strong>current_location</strong>&#8221; directory to reflect the new tag and check in. Instruct the technicians to SVN update on their side. This could be done by right-clicking in Windows Explorer via TortoiseSVN for eg.</p>
<p>For a more one-touch solution, I also provide a Windows batch file to automate the checking out of the app on the technicians&#8217; side. This can be quite easily done using the SVN command line implementation made freely available by <a href="http://www.open.collab.net/downloads/subversion/">collabnet</a> (it is of course even easier to do on Unix).</p>
<p>There are some further Windows tricks you can use to make the batch file more comprehensive and useful, but this is enough for now. I&#8217;ll write about enhancing the batch file in a (hopefully short-term) future post.</p>
]]></content:encoded>
			<wfw:commentRss>http://rooijan.za.net/archives/one-touch-app-installation-and-update-with-svn/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

