<?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>Jeremy Kemp</title>
	<atom:link href="http://www.jeremykemp.co.uk/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.jeremykemp.co.uk</link>
	<description>//TODO</description>
	<lastBuildDate>Sun, 15 Jan 2012 15:32:26 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.1</generator>
		<item>
		<title>Unit Converter &#8211; Currency!</title>
		<link>http://www.jeremykemp.co.uk/13/06/2011/unit-converter-currency/</link>
		<comments>http://www.jeremykemp.co.uk/13/06/2011/unit-converter-currency/#comments</comments>
		<pubDate>Mon, 13 Jun 2011 09:43:33 +0000</pubDate>
		<dc:creator>Jeremy</dc:creator>
				<category><![CDATA[Android]]></category>
		<category><![CDATA[Apps]]></category>
		<category><![CDATA[Programming]]></category>
		<category><![CDATA[android]]></category>
		<category><![CDATA[android sdk]]></category>
		<category><![CDATA[App]]></category>
		<category><![CDATA[sdk]]></category>
		<category><![CDATA[unit converter]]></category>

		<guid isPermaLink="false">http://www.jeremykemp.co.uk/?p=292</guid>
		<description><![CDATA[I&#8217;ve just released an update for my Android app which now supports currency conversion! All global currencies are supported with live exchange rates being fed from the internet. Obviously, it now requires the &#8220;full internet access&#8221; permission as well as &#8220;view network state&#8221;. I&#8217;d appreciated it if you could let me know of any improvements [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://www.jeremykemp.co.uk/wp-content/uploads/2011/06/currency-unit.png"><img class="size-medium wp-image-295 alignright" title="Unit Converter" src="http://www.jeremykemp.co.uk/wp-content/uploads/2011/06/currency-unit-180x300.png" alt="Unit Converter Currency Selection" width="180" height="300" /></a></p>
<p>I&#8217;ve just released an update for my Android app which now supports currency conversion!</p>
<p>All global currencies are supported with live exchange rates being fed from the internet. Obviously, it now requires the &#8220;full internet access&#8221; permission as well as &#8220;view network state&#8221;.</p>
<p style="text-align: left;">I&#8217;d appreciated it if you could let me know of any improvements that you&#8217;d like, or any problems with the application that you may be experiencing so that I can improve the application.</p>
<p style="text-align: left;">You can get Unit Converter directly from your phone <a title="here" href="market://details?id=com.joopware.unitconverter">here</a> or from the Android Market website <a title="here" href="https://market.android.com/details?id=com.joopware.unitconverter">here</a>.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.jeremykemp.co.uk/13/06/2011/unit-converter-currency/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Custom Physics System</title>
		<link>http://www.jeremykemp.co.uk/18/05/2011/custom-physics-system/</link>
		<comments>http://www.jeremykemp.co.uk/18/05/2011/custom-physics-system/#comments</comments>
		<pubDate>Wed, 18 May 2011 14:43:30 +0000</pubDate>
		<dc:creator>Jeremy</dc:creator>
				<category><![CDATA[Games]]></category>
		<category><![CDATA[Programming]]></category>
		<category><![CDATA[Video Games]]></category>
		<category><![CDATA[Computer Games]]></category>
		<category><![CDATA[OpenGL]]></category>
		<category><![CDATA[Physics Engine]]></category>

		<guid isPermaLink="false">http://www.jeremykemp.co.uk/?p=276</guid>
		<description><![CDATA[Recently I decided to implement a custom physics system to improve my knowledge of the topic, as well as learning about rendering with OpenGL and all the fun stuff that goes with that. I decided to learn everything that I could about it all and implement it in just one week as sort of a [...]]]></description>
			<content:encoded><![CDATA[<p>Recently I decided to implement a custom physics system to improve my knowledge of the topic, as well as learning about rendering with OpenGL and all the fun stuff that goes with that.</p>
<p>I decided to learn everything that I could about it all and implement it in just one week as sort of a mini challenge for myself. Everything that I used in the system was entirely new to me so gaining enough knowledge and implementing the entire thing in just a week was a challenging but rewarding experience that taught me a lot about physics systems as well as OpenGL. The system features gravity, simple collision detection as well as a host of other things!</p>
<p>&nbsp;</p>
<p style="text-align: center;"><a href="http://www.jeremykemp.co.uk/showreel/"><img class="size-large wp-image-272 aligncenter" title="Physics Screenshot" src="http://www.jeremykemp.co.uk/wp-content/uploads/2011/02/Physics-Screenshot-e1302517607476-1024x349.png" alt="Screenshot of Custom Physics System" width="491" height="167" /></a></p>
<p style="text-align: center;">&nbsp;</p>
<p>&nbsp;</p>
<p>I&#8217;m planning on updating the system to include more fluid collision detection, as well as greater user control of the objects in the simulation. Please let me know of ways that I could improve it, as well as things that you might like to see in the system.</p>
<p>Head on over to my <a title="Showreel" href="http://www.jeremykemp.co.uk/showreel/" target="_blank">showreel</a> to learn about all of the cool features of the system as well as a download link!</p>
]]></content:encoded>
			<wfw:commentRss>http://www.jeremykemp.co.uk/18/05/2011/custom-physics-system/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Git and GitHub!</title>
		<link>http://www.jeremykemp.co.uk/09/02/2011/git-and-github/</link>
		<comments>http://www.jeremykemp.co.uk/09/02/2011/git-and-github/#comments</comments>
		<pubDate>Wed, 09 Feb 2011 21:27:27 +0000</pubDate>
		<dc:creator>Jeremy</dc:creator>
				<category><![CDATA[Android]]></category>
		<category><![CDATA[Apps]]></category>
		<category><![CDATA[Programming]]></category>
		<category><![CDATA[android]]></category>
		<category><![CDATA[App]]></category>
		<category><![CDATA[GitHub]]></category>

		<guid isPermaLink="false">http://www.jeremykemp.co.uk/?p=239</guid>
		<description><![CDATA[Just a quick update on my Unit Converter App. I&#8217;ve just switched over to Git from Subversion to coincide with the creation of my new GitHub account. Unit Converter&#8217;s code is now available to view and modify for all! Access the repository here!]]></description>
			<content:encoded><![CDATA[<p>Just a quick update on my Unit Converter App. I&#8217;ve just switched over to Git from Subversion to coincide with the creation of my new <a href="https://github.com/Odc/" target="_blank">GitHub account</a>.</p>
<p>Unit Converter&#8217;s code is now available to view and modify for all!</p>
<p>Access the repository <a href="https://github.com/Odc/Unit-Converter" target="_blank">here</a>!</p>
]]></content:encoded>
			<wfw:commentRss>http://www.jeremykemp.co.uk/09/02/2011/git-and-github/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Shared Memory Tip</title>
		<link>http://www.jeremykemp.co.uk/07/02/2011/shared-memory-tip/</link>
		<comments>http://www.jeremykemp.co.uk/07/02/2011/shared-memory-tip/#comments</comments>
		<pubDate>Mon, 07 Feb 2011 15:39:37 +0000</pubDate>
		<dc:creator>Jeremy</dc:creator>
				<category><![CDATA[CUDA]]></category>
		<category><![CDATA[Programming]]></category>
		<category><![CDATA[Uni]]></category>

		<guid isPermaLink="false">http://www.jeremykemp.co.uk/?p=195</guid>
		<description><![CDATA[As usual, I&#8217;m knee deep in CUDA optimising a fair few algorithms from various papers. Recently, I&#8217;ve been implementing the algorithms from this paper with the aim of improving them later/creating my own based from their concepts. The algorithm is an All Pairs Shortest Path algorithm with a nested loop in the kernel. Each time [...]]]></description>
			<content:encoded><![CDATA[<p>As usual, I&#8217;m knee deep in CUDA optimising a fair few algorithms from various papers. Recently, I&#8217;ve been implementing the algorithms from <a href="http://www.computer.org/portal/web/csdl/doi/10.1109/ITNG.2010.230" target="_blank">this</a> paper with the aim of improving them later/creating my own based from their concepts. The algorithm is an All Pairs Shortest Path algorithm with a nested loop in the kernel. Each time the second loop executes, two values from shared memory are added together and the resulted is evaluated against another variable stored in a register on the appropriate core. For some reason the code was running a lot slower than the results posted in the paper.</p>
<p>My <a href="http://laurencedawson.com/" target="_blank">friend</a> here at Durham who is also working with CUDA suggested taking the addition out of the loop and storing the result in a register before the conditional. Much to my surprise, this worked a treat and instantly gave me comparable results with the paper.</p>
<p>Here is the original code before the change:</p>
<div class="geshi no cpp">
<div class="head">for (int i = 0; i &lt; gridDim.x; i ++)</div>
<ol>
<li class="li1">
<div class="de1"><span class="br0">&#123;</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp; __shared__ <span class="kw4">int</span> row<span class="br0">&#91;</span>blockWidth<span class="br0">&#93;</span><span class="br0">&#91;</span>blockHeight<span class="br0">&#93;</span>;</div>
</li>
<li class="li1">
<div class="de1">&nbsp; __shared__ <span class="kw4">int</span> column<span class="br0">&#91;</span>blockWidth<span class="br0">&#93;</span><span class="br0">&#91;</span>blockHeight<span class="br0">&#93;</span>;</div>
</li>
<li class="li1">
<div class="de1">&nbsp;</div>
</li>
<li class="li1">
<div class="de1">&nbsp; <span class="co1">//Code here fills row and column</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp;</div>
</li>
<li class="li1">
<div class="de1">&nbsp; __syncthreads<span class="br0">&#40;</span><span class="br0">&#41;</span>;</div>
</li>
<li class="li1">
<div class="de1">&nbsp;</div>
</li>
<li class="li1">
<div class="de1">&nbsp; <span class="kw1">for</span><span class="br0">&#40;</span><span class="kw4">int</span> k <span class="sy1">=</span> <span class="nu0">0</span>; k <span class="sy3">&amp;</span>lt; blockWidth; k <span class="sy2">++</span><span class="br0">&#41;</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp; <span class="br0">&#123;</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp; &nbsp;<span class="kw1">if</span><span class="br0">&#40;</span>row<span class="br0">&#91;</span>threadIdx.<span class="me1">y</span><span class="br0">&#93;</span><span class="br0">&#91;</span>k<span class="br0">&#93;</span> <span class="sy2">+</span> column<span class="br0">&#91;</span>k<span class="br0">&#93;</span><span class="br0">&#91;</span>threadIdx.<span class="me1">x</span><span class="br0">&#93;</span> <span class="sy3">&amp;</span>lt; value<span class="br0">&#41;</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp; &nbsp;<span class="br0">&#123;</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp; &nbsp; value <span class="sy1">=</span> row<span class="br0">&#91;</span>threadIdx.<span class="me1">y</span><span class="br0">&#93;</span><span class="br0">&#91;</span>k<span class="br0">&#93;</span> <span class="sy2">+</span> column<span class="br0">&#91;</span>k<span class="br0">&#93;</span><span class="br0">&#91;</span>threadIdx.<span class="me1">x</span><span class="br0">&#93;</span>;</div>
</li>
<li class="li1">
<div class="de1">&nbsp; &nbsp;<span class="br0">&#125;</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp; <span class="br0">&#125;</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp;<span class="br0">&#125;</span></div>
</li>
</ol>
</div>
<p>Here, we can see the change needed to drastically improve the running time of the algorithm:</p>
<div class="geshi no cpp">
<div class="head">unsigned int sum;</div>
<ol>
<li class="li1">
<div class="de1"><span class="kw1">for</span><span class="br0">&#40;</span><span class="kw4">unsigned</span> <span class="kw4">int</span> k <span class="sy1">=</span> <span class="nu0">0</span>; k <span class="sy3">&amp;</span>lt; blockWidth; k <span class="sy2">++</span><span class="br0">&#41;</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp;<span class="br0">&#123;</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp; sum <span class="sy1">=</span> row<span class="br0">&#91;</span>threadIdx.<span class="me1">y</span><span class="br0">&#93;</span><span class="br0">&#91;</span>k<span class="br0">&#93;</span> <span class="sy2">+</span> column<span class="br0">&#91;</span>k<span class="br0">&#93;</span><span class="br0">&#91;</span>threadIdx.<span class="me1">x</span><span class="br0">&#93;</span>;</div>
</li>
<li class="li1">
<div class="de1">&nbsp; <span class="kw1">if</span><span class="br0">&#40;</span>sum <span class="sy3">&amp;</span>lt; value<span class="br0">&#41;</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp; <span class="br0">&#123;</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp; &nbsp;value <span class="sy1">=</span> sum;</div>
</li>
<li class="li1">
<div class="de1">&nbsp; <span class="br0">&#125;</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp;<span class="br0">&#125;</span></div>
</li>
</ol>
</div>
<p>Given that shared memory is so quick on CUDA, similar to an L1 cache on CPU, I wouldn&#8217;t have thought that it would have made any difference at all. Obviously, I was wrong! So watch out for things like this when using CUDA or any parallel computing platform.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.jeremykemp.co.uk/07/02/2011/shared-memory-tip/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>Android Development</title>
		<link>http://www.jeremykemp.co.uk/19/11/2010/android-development/</link>
		<comments>http://www.jeremykemp.co.uk/19/11/2010/android-development/#comments</comments>
		<pubDate>Fri, 19 Nov 2010 14:35:19 +0000</pubDate>
		<dc:creator>Jeremy</dc:creator>
				<category><![CDATA[Android]]></category>
		<category><![CDATA[Apps]]></category>
		<category><![CDATA[Programming]]></category>
		<category><![CDATA[android]]></category>
		<category><![CDATA[App]]></category>
		<category><![CDATA[sdk]]></category>
		<category><![CDATA[unit converter]]></category>

		<guid isPermaLink="false">http://www.jeremykemp.co.uk/?p=181</guid>
		<description><![CDATA[I&#8217;ve recently got myself a new phone sporting the Android operating system. It&#8217;s a great little device and sparked my interest in developing for the platform. To ease myself into it, I&#8217;ve developed a simple unit conversion app to help teach me the core features of the Android SDK whilst providing something that I can [...]]]></description>
			<content:encoded><![CDATA[<p>I&#8217;ve recently got myself a new phone sporting the Android operating system. It&#8217;s a great little device and sparked my interest in developing for the platform.</p>
<p>To ease myself into it, I&#8217;ve developed a simple unit conversion app to help teach me the core features of the Android SDK whilst providing something that I can publish on the Android Market that only took a few days to develop!</p>
<p><a href="http://www.jeremykemp.co.uk/wp-content/uploads/2010/11/original-unit.png"><img src="http://www.jeremykemp.co.uk/wp-content/uploads/2010/11/original-unit-200x300.png" alt="" title="Unit Selection Screen" width="200" height="300" class="aligncenter size-medium wp-image-182" /></a></p>
<p>At the moment, it supports simple units and conversions such as area, length, and volume but I&#8217;m currently expanding to include density, memory sizes, and currency.</p>
<p>Currency provides an exiting challenge in that I will be able to pull live exchange rates to the app where an internet connection is available for highly accurate conversions. I could even use GPS to detect which currency the user will currently be using based on the country that they are in.</p>
<p>Such a simple premise for an application has and will be able to teach me a lot about the Android SDK and provide an excellent grounding for future apps!</p>
<p>Head on over to the <a href="market://details?id=com.joopware.unitconverter">Android Market</a> or <a href="http://www.appbrain.com/app/unit-converter/com.joopware.unitconverter">AppBrain</a> and download my modest little app!</p>
]]></content:encoded>
			<wfw:commentRss>http://www.jeremykemp.co.uk/19/11/2010/android-development/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Steam UI Beta Games Icons</title>
		<link>http://www.jeremykemp.co.uk/21/04/2010/steam-ui-beta-games-icons/</link>
		<comments>http://www.jeremykemp.co.uk/21/04/2010/steam-ui-beta-games-icons/#comments</comments>
		<pubDate>Wed, 21 Apr 2010 20:14:25 +0000</pubDate>
		<dc:creator>Jeremy</dc:creator>
				<category><![CDATA[Games]]></category>

		<guid isPermaLink="false">http://www.jeremykemp.co.uk/?p=169</guid>
		<description><![CDATA[Valve recently released the Steam UI beta which is due to come out of beta this Monday. It seems a lot of people are complaining that you can&#8217;t have icons next to your games in the games list like in the old UI. This is false! Just press the &#8220;+&#8221; symbol just to the right [...]]]></description>
			<content:encoded><![CDATA[<p>Valve recently released the Steam UI beta which is due to come out of beta this Monday. It seems a lot of people are complaining that you can&#8217;t have icons next to your games in the games list like in the old UI.</p>
<p>This is false!</p>
<p>Just press the &#8220;+&#8221; symbol just to the right of Counter-Strike in this screenshot and you can enable game icons. Easy!</p>
<p><a href="http://www.jeremykemp.co.uk/wp-content/uploads/2010/04/steam1.jpg"><img src="http://www.jeremykemp.co.uk/wp-content/uploads/2010/04/steam1-203x300.jpg" alt="Steam UI Beta Screenshot" title="Steam UI Beta" width="203" height="300" class="aligncenter size-medium wp-image-173" /></a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.jeremykemp.co.uk/21/04/2010/steam-ui-beta-games-icons/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>CUDA cuPrintf</title>
		<link>http://www.jeremykemp.co.uk/08/02/2010/cuda-cuprintf/</link>
		<comments>http://www.jeremykemp.co.uk/08/02/2010/cuda-cuprintf/#comments</comments>
		<pubDate>Mon, 08 Feb 2010 12:06:08 +0000</pubDate>
		<dc:creator>Jeremy</dc:creator>
				<category><![CDATA[CUDA]]></category>
		<category><![CDATA[Programming]]></category>
		<category><![CDATA[-deviceemu]]></category>
		<category><![CDATA[cuPrintf]]></category>

		<guid isPermaLink="false">http://www.jeremykemp.co.uk/?p=124</guid>
		<description><![CDATA[I finally got an Nvidia developer account a few days ago which gave me access to a very useful library to use with CUDA. cuPrintf allows printf equivalent statements to be placed inside CUDA kernels without the need for -deviceemu. The following example demonstrates a simple use for cuPrintf and displays the current thread ID. [...]]]></description>
			<content:encoded><![CDATA[<p>I finally got an Nvidia developer account a few days ago which gave me access to a very useful library to use with CUDA.</p>
<p>cuPrintf allows printf equivalent statements to be placed inside CUDA kernels without the need for -deviceemu.</p>
<p>The following example demonstrates a simple use for cuPrintf and displays the current thread ID.</p>
<div class="geshi no cpp">
<ol>
<li class="li1">
<div class="de1"><span class="co2">#include &lt;cuda.h&gt;</span></div>
</li>
<li class="li1">
<div class="de1"><span class="co2">#include &quot;cuPrintf.cu&quot;</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp;</div>
</li>
<li class="li1">
<div class="de1">__global__ <span class="kw4">void</span> cuPrintfExample<span class="br0">&#40;</span><span class="br0">&#41;</span></div>
</li>
<li class="li1">
<div class="de1"><span class="br0">&#123;</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp;<span class="kw4">int</span> tid;</div>
</li>
<li class="li1">
<div class="de1">&nbsp;tid <span class="sy1">=</span> blockIdx.<span class="me1">x</span> <span class="sy2">*</span> blockDim.<span class="me1">x</span> <span class="sy2">+</span> threadIdx.<span class="me1">x</span>;</div>
</li>
<li class="li1">
<div class="de1">&nbsp;cuPrintf<span class="br0">&#40;</span><span class="st0">&quot;%d<span class="es0">\n</span>&quot;</span>, tid<span class="br0">&#41;</span>;</div>
</li>
<li class="li1">
<div class="de1"><span class="br0">&#125;</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp;</div>
</li>
<li class="li1">
<div class="de1"><span class="kw4">int</span> main<span class="br0">&#40;</span><span class="br0">&#41;</span></div>
</li>
<li class="li1">
<div class="de1"><span class="br0">&#123;</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp;cudaPrintfInit<span class="br0">&#40;</span><span class="br0">&#41;</span>;</div>
</li>
<li class="li1">
<div class="de1">&nbsp;cuPrintfExample <span class="sy1">&lt;&lt;&lt;</span> <span class="nu0">5</span>, <span class="nu0">2</span> <span class="sy1">&gt;&gt;&gt;</span> <span class="br0">&#40;</span><span class="br0">&#41;</span>;</div>
</li>
<li class="li1">
<div class="de1">&nbsp;cudaPrintfDisplay<span class="br0">&#40;</span><span class="kw2">stdout</span>, <span class="kw2">true</span><span class="br0">&#41;</span>;</div>
</li>
<li class="li1">
<div class="de1">&nbsp;cudaPrintfEnd<span class="br0">&#40;</span><span class="br0">&#41;</span>;</div>
</li>
<li class="li1">
<div class="de1">&nbsp;<span class="kw1">return</span> <span class="nu0">0</span>;</div>
</li>
<li class="li1">
<div class="de1"><span class="br0">&#125;</span></div>
</li>
</ol>
</div>
<p>cudaPrintfInit and cudaPrintfEnd only need be called once throughout your entire project.</p>
<p>Output is not automatically displayed on the screen, but stored in a buffer which is cleared and displayed when cudaPrintfDisplay is called. The size of the buffer can be specified with the optional argument cudaPrintfInit(size_t  bufferLen).</p>
<p>cudaPrintfEnd simply frees the memory allocated by cudaPrintfInit.</p>
<p>When cudaPrintfDisplay is called, output stored in the buffer is displayed to the console. The second argument in this call either displays the current thread (true) or doesn&#8217;t (false). The first arguemnt, specified by stdout in this example, simply defines the descriptor where the cuPrintf log is sent.</p>
<p>On another note, I&#8217;ve found that using cuPrintf impacts on the performance of my kernels, presumably due to the data transfer performed every time cuPrintfDisplay() is called.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.jeremykemp.co.uk/08/02/2010/cuda-cuprintf/feed/</wfw:commentRss>
		<slash:comments>18</slash:comments>
		</item>
		<item>
		<title>Dropbox</title>
		<link>http://www.jeremykemp.co.uk/13/12/2009/dropbox/</link>
		<comments>http://www.jeremykemp.co.uk/13/12/2009/dropbox/#comments</comments>
		<pubDate>Sun, 13 Dec 2009 11:27:57 +0000</pubDate>
		<dc:creator>Jeremy</dc:creator>
				<category><![CDATA[Apps]]></category>
		<category><![CDATA[App]]></category>
		<category><![CDATA[Back Up]]></category>
		<category><![CDATA[Dropbox]]></category>
		<category><![CDATA[Sync]]></category>

		<guid isPermaLink="false">http://www.jeremykemp.co.uk/?p=105</guid>
		<description><![CDATA[Dropbox is a great little app I found about a year ago for backing up all your important files and making them available anywhere in the world, as well as syncing them to any other computer you have linked to your account. For example, if you&#8217;re working on a document on your computer, any changes [...]]]></description>
			<content:encoded><![CDATA[<p>Dropbox is a great little app I found about a year ago for backing up all your important files and making them available anywhere in the world, as well as syncing them to any other computer you have linked to your account.</p>
<p>For example, if you&#8217;re working on a document on your computer, any changes you make to the document will instantly be reflected on your laptop or iPhone so you don&#8217;t have to bother with a flash drive or e-mail.</p>
<p><img class = "aligncenter" src = "http://www.jeremykemp.co.uk/wp-content/uploads/2009/12/tour_1-300x237.jpg" alt = "Dropbox Diagram" width = "300" height = "237" /></p>
<p>I&#8217;ve found it ridiculously useful for all my uni work as it saves up to 30 days of revisions to any file. So for example, you mess up some piece of source code and you want to get the version back from 3 days ago at 3 o&#8217;clock, then that&#8217;s possible via the Dropbox website (Obviously no replacement for SVN but handy anyway). You just select which version you want to restore, and then that version is pushed back to all your devices with Dropbox installed! You can even recover deleted files and it works on Windows, Linux, Mac and iPhone.</p>
<p>Sign up for free <a title="Dropbox Sign Up" href="https://www.dropbox.com/referrals/NTYzODUyMjk" target="_blank">here</a> and get an extra 250mb on top of the standard 2Gb that you&#8217;d usually get.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.jeremykemp.co.uk/13/12/2009/dropbox/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Still Alive</title>
		<link>http://www.jeremykemp.co.uk/06/12/2009/still-alive/</link>
		<comments>http://www.jeremykemp.co.uk/06/12/2009/still-alive/#comments</comments>
		<pubDate>Sun, 06 Dec 2009 23:10:23 +0000</pubDate>
		<dc:creator>Jeremy</dc:creator>
				<category><![CDATA[Games]]></category>
		<category><![CDATA[Portal]]></category>
		<category><![CDATA[The Orange Box]]></category>

		<guid isPermaLink="false">http://www.jeremykemp.co.uk/?p=90</guid>
		<description><![CDATA[After buying the orange box over a year and a half ago, one of the included games that I never got around to completing was Portal (as I primarily bought it for Half-Life 2: Episode 2 and Team Fortress 2 like everyone else). What a mistake that was! Portal is a first person action/puzzle game [...]]]></description>
			<content:encoded><![CDATA[<p>After buying the orange box over a year and a half ago, one of the included games that I never got around to completing was Portal (as I primarily bought it for Half-Life 2: Episode 2 and Team Fortress 2 like everyone else). What a mistake that was!</p>
<p>Portal is a first person action/puzzle game that puts you in the shoes of Chell; the seemingly silent protagonist.</p>
<p>It&#8217;s set almost entirely inside the &#8220;Enrichment Centre&#8221; for &#8220;Aperture Science&#8221;, a research corporation responsible for creating the &#8220;Aperture Science Hand Held Portal Device&#8221; (portal gun).</p>
<p>The game takes place through a series of test chambers that pit the player against increasingly difficult challenges. All of these challenges revolve around using the portal gun to overcome some particular obstacle and are all excellent fun.</p>
<p style="text-align: center;">
<div id="attachment_95" class="wp-caption aligncenter" style="width: 310px"><img class="size-medium wp-image-95 " title="Portal Diagram" src="http://www.jeremykemp.co.uk/wp-content/uploads/2009/12/387px-Portal_physics-2.svg_-300x272.png" alt="Portal Momentum Puzzle" width="300" height="272" /><p class="wp-caption-text">Portal Momentum Puzzle</p></div>
<p>The plot has a few amusing twists in it and is told through the narrative of GLaDOS, an artificial intelligence that directs the player through the test chambers whilst providing some amusing dark humour. All the while promising the reward of cake upon the completion of all test chambers.</p>
<p>Portal really is a game that needs to be experienced as my description of it really doesn&#8217;t do justice. The combination of unique game play, challenging puzzles and a humorous but simple plot line make for several hours of excellent fun!</p>
]]></content:encoded>
			<wfw:commentRss>http://www.jeremykemp.co.uk/06/12/2009/still-alive/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Om Nom Urgh</title>
		<link>http://www.jeremykemp.co.uk/29/11/2009/om-nom-urgh/</link>
		<comments>http://www.jeremykemp.co.uk/29/11/2009/om-nom-urgh/#comments</comments>
		<pubDate>Sun, 29 Nov 2009 23:27:18 +0000</pubDate>
		<dc:creator>Jeremy</dc:creator>
				<category><![CDATA[Uni]]></category>
		<category><![CDATA[College Food]]></category>

		<guid isPermaLink="false">http://www.jeremykemp.co.uk/?p=83</guid>
		<description><![CDATA[Usually food at uni is pretty good but last night I got served this thing (we&#8217;re catered). God knows what was going on in the kitchen but it was terrible. Who serves a chicken boob with no sauce or any kind of seasoning!? Whats more, the &#8220;vegetables&#8221; consisted of cauliflower and yet more cauliflower. There [...]]]></description>
			<content:encoded><![CDATA[<p>Usually food at uni is pretty good but last night I got served this thing (we&#8217;re catered). God knows what was going on in the kitchen but it was terrible. Who serves a chicken boob with no sauce or any kind of seasoning!? Whats more, the &#8220;vegetables&#8221; consisted of cauliflower and yet more cauliflower. There was nothing else on offer apart from some bread. WTF?</p>
<div id="attachment_82" class="wp-caption aligncenter" style="width: 235px"><img class="size-medium wp-image-82 " title="College Food" src="http://www.jeremykemp.co.uk/wp-content/uploads/2009/11/Image020-225x300.jpg" alt="The Abomination" width="225" height="300" /><p class="wp-caption-text">The Abomination</p></div>
<p>Here&#8217;s to hoping this remains the worst uni food I will ever receive!</p>
]]></content:encoded>
			<wfw:commentRss>http://www.jeremykemp.co.uk/29/11/2009/om-nom-urgh/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

