<?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>Cuppadev &#187; Miscellaneous</title>
	<atom:link href="http://www.cuppadev.co.uk/category/misc/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.cuppadev.co.uk</link>
	<description>Cuppalicious coding!</description>
	<lastBuildDate>Sat, 14 Aug 2010 10:12:44 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.0.1</generator>
		<item>
		<title>Moved to gandi.net</title>
		<link>http://www.cuppadev.co.uk/misc/moved-to-gandi-net/</link>
		<comments>http://www.cuppadev.co.uk/misc/moved-to-gandi-net/#comments</comments>
		<pubDate>Wed, 12 Aug 2009 08:21:13 +0000</pubDate>
		<dc:creator>James Urquhart</dc:creator>
				<category><![CDATA[Miscellaneous]]></category>
		<category><![CDATA[deployment]]></category>

		<guid isPermaLink="false">http://www.cuppadev.co.uk/?p=487</guid>
		<description><![CDATA[For a few years now, i&#8217;ve been hosting this site on Dreamhost. Despite the subpar performance, 90% of the time the site was up churning out requests, which for me worked out great. Still, there&#8217;s something about shared hosting that makes me cringe, so i&#8217;ve been meaning to move to a VPS (Virtual Private Server) [...]]]></description>
			<content:encoded><![CDATA[<p>For a few years now, i&#8217;ve been hosting this site on <a href="http://www.dreamhost.com">Dreamhost</a>. Despite the subpar performance, 90% of the time the site was up churning out requests, which for me worked out great.</p>
<p>Still, there&#8217;s something about shared hosting that makes me cringe, so i&#8217;ve been meaning to move to a VPS (Virtual Private Server) for quite some time now. After much consideration, i&#8217;ve decided to go with <a href="http://www.gandi.net">gandi.net</a>. The reason? I&#8217;ve tried it before and they offer a fair price for what they offer: a single 256mb &#8220;slice&#8221; for $16/month, scalable up to 16 slices.</p>
<p>It may be a little bit more expensive than Dreamhost, but in the long run, i reckon it will pay back in terms of uptime and expandability.</p>
<p>So goodbye Dreamhost, hello Gandi!</p>
]]></content:encoded>
			<wfw:commentRss>http://www.cuppadev.co.uk/misc/moved-to-gandi-net/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Open Question: What should i write about?</title>
		<link>http://www.cuppadev.co.uk/misc/open-question-what-should-i-write-about/</link>
		<comments>http://www.cuppadev.co.uk/misc/open-question-what-should-i-write-about/#comments</comments>
		<pubDate>Sat, 27 Dec 2008 20:22:23 +0000</pubDate>
		<dc:creator>James Urquhart</dc:creator>
				<category><![CDATA[Miscellaneous]]></category>

		<guid isPermaLink="false">http://www.cuppadev.co.uk/?p=341</guid>
		<description><![CDATA[Really, i don&#8217;t know what i should be writing about. Over the past couple of years, i have written a handful of posts on this blog, most of which have been written on-the-fly and without any long-term considerations taken into account. As a result the blog lacks consistency, leaving the reader with little clue what [...]]]></description>
			<content:encoded><![CDATA[<p>Really, i don&#8217;t know what i should be writing about.</p>
<p>Over the past couple of years, i have written a handful of posts on this blog, most of which have been written on-the-fly and without any long-term considerations taken into account.</p>
<p>As a result the blog lacks consistency, leaving the reader with little clue what to expect. And much worse, it leaves me wondering what the hell to write about.</p>
<p>Looking at the analytics, the top 5 content is:</p>
<ul>
<li>&#8220;Running your own iPhone applications without paying the developer fee&#8221;</li>
<li>The front page</li>
<li>&#8220;Flash plays SCUMM, take two&#8221;</li>
<li>&#8220;C to ActionScript via Adobe Alchemy&#8221;</li>
<li>&#8220;The Horror of Native GNUCash on Mac OS X&#8221;</li>
</ul>
<p>So maybe i should write about developing iPhone applications? After all, it would nicely tie in with what i am doing now&#8230; writing an iPhone application. Then again&#8230;</p>
<p>What about making a nice page instead. Does this really have to be a blog? Perhaps i could have a single page blended with cuppalicious content! Then again&#8230;</p>
<p>Perhaps i should write more about silly programming projects. Forget about SCUMM, why not compile VIM or Emacs for Adobe Flash? Or taking it to the extreme, what about compiling the Linux kernel to run in Flash? </p>
<p>Or maybe i should rant. Everybody loves a good internet rant!</p>
<p>All i know is the current iteration of this blog is no more. It is just plain unworkable.</p>
<h2>So what next?</h2>
<p>I&#8217;d really like to keep the general development theme, but invigorate it with something a bit more interesting. The only problem is&#8230; i&#8217;m not sure what that &#8220;interesting&#8221; element should be.</p>
<p>Any ideas? I&#8217;d love to have some input on this.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.cuppadev.co.uk/misc/open-question-what-should-i-write-about/feed/</wfw:commentRss>
		<slash:comments>4</slash:comments>
		</item>
		<item>
		<title>Disqus</title>
		<link>http://www.cuppadev.co.uk/misc/disqus/</link>
		<comments>http://www.cuppadev.co.uk/misc/disqus/#comments</comments>
		<pubDate>Thu, 18 Sep 2008 18:37:29 +0000</pubDate>
		<dc:creator>James Urquhart</dc:creator>
				<category><![CDATA[Miscellaneous]]></category>
		<category><![CDATA[cuppadev]]></category>
		<category><![CDATA[software]]></category>
		<category><![CDATA[widgets]]></category>

		<guid isPermaLink="false">http://www.cuppadev.co.uk/?p=292</guid>
		<description><![CDATA[As a little experiment, i decided to move this blog&#8217;s comments to Disqus, a third party service which well&#8230; hosts comments. Setup was extremely simple. It went something like this: Make a disqus account Add cuppadev.co.uk as a site Download wordpress plugin Install wordpress plugin on server Click &#8220;Import&#8221; button Comments now go through disqus [...]]]></description>
			<content:encoded><![CDATA[<p>As a little experiment, i decided to move this blog&#8217;s comments to <a href="http://disqus.com/">Disqus</a>, a third party service which well&#8230; hosts comments.</p>
<p>Setup was extremely simple. It went something like this:</p>
<ul>
<li>Make a disqus account</li>
<li>Add cuppadev.co.uk as a site</li>
<li>Download wordpress plugin</li>
<li>Install wordpress plugin on server</li>
<li>Click &#8220;Import&#8221; button</li>
<li>Comments now go through disqus</li>
</ul>
<p>Wow&#8230; that was quite simple. And i like simple.</p>
<p>Hopefully this will help weed out the tons of spam i have been getting recently. I think also that it&#8217;s simpler to use, so who knows, i might get more comments.</p>
<p>Now, where did i leave those blog posts?</p>
]]></content:encoded>
			<wfw:commentRss>http://www.cuppadev.co.uk/misc/disqus/feed/</wfw:commentRss>
		<slash:comments>15</slash:comments>
		</item>
		<item>
		<title>Software Development Meme</title>
		<link>http://www.cuppadev.co.uk/misc/software-development-meme/</link>
		<comments>http://www.cuppadev.co.uk/misc/software-development-meme/#comments</comments>
		<pubDate>Wed, 17 Sep 2008 18:25:03 +0000</pubDate>
		<dc:creator>James Urquhart</dc:creator>
				<category><![CDATA[Miscellaneous]]></category>
		<category><![CDATA[meme]]></category>
		<category><![CDATA[random facts]]></category>
		<category><![CDATA[software development]]></category>

		<guid isPermaLink="false">http://www.cuppadev.co.uk/?p=286</guid>
		<description><![CDATA[Looks like i&#8217;ve been tagged with a meme. This time, it&#8217;s about Software Development, courtesy of Gary Vaughan. Since that&#8217;s my field, i thought i might as well respond to it. How old were you when you first started programming? About 10. How did you get started in programming? I picked up a copy of [...]]]></description>
			<content:encoded><![CDATA[<p>Looks like i&#8217;ve been tagged with a meme. This time, it&#8217;s about Software Development, courtesy of <a href="http://blog.azazil.net">Gary Vaughan</a>. Since that&#8217;s my field, i thought i might as well respond to it. </p>
<h3>How old were you when you first started programming?</h3>
<p>About 10.</p>
<h3>How did you get started in programming?</h3>
<p>I picked up a copy of <a href="http://en.wikipedia.org/wiki/Borland_Delphi">Borland Delphi</a> from <a href="http://www.pcplus.co.uk/">PC Plus</a> (a home computing magazine here in the UK). Ran my first program, and thought it was kind-of cool. Little did i know what i would be getting myself into.</p>
<h3>What was your first language?</h3>
<p>Programming language? Delphi, otherwise known as Object Pascal. Language? English.</p>
<h3>What was the first real program you wrote?</h3>
<p>The first ever would of course be a &#8220;Hello World&#8221;. The first one which i would consider &#8220;real&#8221; would be a neat web-based file storage app, which i didn&#8217;t make until many months later.</p>
<h3>What languages have you used since you started programming?</h3>
<p>C,  C++, C#, Pascal, Java, Python, Ruby, JavaScript, SQL, Visual Basic. 6502 assembly.</p>
<h3>What was your first professional programming gig?</h3>
<p>The first professional programming gig would be freelancing for <a href="http://www.mode7games.com/">Mode7 Games</a>.</p>
<h3>If you knew then what you know now, would you have started programming?</h3>
<p>No. Instead, i would have jumped on the <a href="http://en.wikipedia.org/wiki/Dot-com_bubble">dot com boom</a> by hiring a set of competent programmers and making some really cool website with substance, pulling in crazed investors by the hordes. </p>
<p>Maybe after the bubble burst i would think about starting programming.</p>
<h3>If there is one thing you learned along the way that you would tell new developers, what would it be?</h3>
<p>Problem solving is the most crucial aspect of programming. Make sure you learn how to do it.</p>
<h3>What’s the most fun you’ve ever had… programming?</h3>
<p>After &#8220;Hello World&#8221; ran&#8230; it all went downhill from there. :)</p>
<h3>Who’s next?</h3>
<p><a href="http://blog.nihilogic.dk/">Nihilogic</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.cuppadev.co.uk/misc/software-development-meme/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Accounting with Luca</title>
		<link>http://www.cuppadev.co.uk/misc/accounting-with-luca/</link>
		<comments>http://www.cuppadev.co.uk/misc/accounting-with-luca/#comments</comments>
		<pubDate>Fri, 04 Jan 2008 02:59:47 +0000</pubDate>
		<dc:creator>James Urquhart</dc:creator>
				<category><![CDATA[Miscellaneous]]></category>
		<category><![CDATA[accounting]]></category>
		<category><![CDATA[luca]]></category>
		<category><![CDATA[open source]]></category>

		<guid isPermaLink="false">http://crm.cuppadev.co.uk/?p=137</guid>
		<description><![CDATA[A while ago now, i stumbled across a web based double entry accounting solution called Luca (not to be confused with the Mac Application). Unfortunately though, the documentation was a bit sparse. However with a bit of persistence, i have just about managed to figure out how to use it. Starting out (note that for [...]]]></description>
			<content:encoded><![CDATA[<p>A while ago now, i stumbled across a web based double entry accounting solution called <a href="http://epx.com.br/luca/index.php">Luca</a> (not to be confused with the <a href="http://cutedgesystems.com/software/luca">Mac Application</a>).</p>
<p>Unfortunately though, the documentation was a bit sparse. However with a bit of persistence, i have just about managed to figure out how to use it.</p>
<h3>Starting out</h3>
<p><em>(note that for this little walkthrough i am using Luca 1.02, so don&#8217;t be surprised if you are using a later version and things look that bit different)</em></p>
<p>Assuming you have managed to download and install Luca, as well as log in, you&#8217;ll be presented with this rather interesting interface:</p>
<p style="text-align:center;"><a href="http://www.cuppadev.co.uk/assets/luca_main.png"><img src="http://www.cuppadev.co.uk/assets/luca_main_th.jpg" title="Luca main menu" alt="Luca main menu" /></a></p>
<p>Whoah! Lots of options to choose from, but which of those do we need to start off with?</p>
<p>First things first, you&#8217;ll need to create a chart of accounts, so select the &#8220;Charts of accounts&#8221; option. You&#8217;ll be presented with a list of charts, which should be empty. Click on &#8220;Add new chart&#8221;, and your screen will look something like this:</p>
<p style="text-align:center;"><a href="http://www.cuppadev.co.uk/assets/luca_chart_new.png"><img src="http://www.cuppadev.co.uk/assets/luca_chart_new_th.jpg" title="Luca new chart" alt="Luca new chart" /></a></p>
<p>The only 2 values which are of interest are &#8220;Description&#8221; and &#8220;Format mask&#8221;, the former of which can be anything you like. The latter is a bit more tricky, and it took me a while to figure out. It seems that the &#8220;Format mask&#8221; is basically a sequence of 9&#8217;s using dots as separators. The more dots you use, the more you can nest your accounts.</p>
<p>For reference, i put the following values in this form:</p>
<ul>
<li>Description: LucaCorp</li>
<li>Format Mask: 9999.99 (i.e. 2 levels one using four digits, the other using two)</li>
</ul>
<p>You should now have a chart you can use. But to be of any use, it needs to be assigned to an Organization. To do this, go back to the main menu, and select &#8220;Organizations&#8221;. Then select &#8220;Add new Organization&#8221;. Your screen should now look something like this:</p>
<p style="text-align:center;"><a href="http://www.cuppadev.co.uk/assets/luca_new_org.png"><img src="http://www.cuppadev.co.uk/assets/luca_new_org_th.jpg" title="Luca new organization" alt="Luca new organization" /></a></p>
<p>Give your Organization a name, a remark if you like, and of course a chart of accounts. The values i used are as follows:</p>
<ul>
<li>Name: LucaCorp</li>
<li>Remarks: <strong>blank</strong></li>
<li>Chart of Accounts: LucaCorp</li>
</ul>
<p>Note that you will also need to give yourself (and anyone else you trust with a user account) permission to use the Organization when entering transactions. This can be done in the &#8220;Users X Organizations&#8221; screen.</p>
<h3>Creating accounts</h3>
<p>Now would be a good idea to actually make some accounts. To do this, go back to the main menu and select &#8220;Accounts of the chart&#8221;. Then for the &#8220;Parent chart being edited:&#8221; field, select your chart of accounts. Your screen should now look something like this:</p>
<p style="text-align:center;"><a href="http://www.cuppadev.co.uk/assets/luca_new_account_ch.png"><img src="http://www.cuppadev.co.uk/assets/luca_new_account_ch_th.jpg" title="Luca add account" alt="Luca add account" /></a></p>
<p>For each account you want to create, click on &#8220;Add Account&#8221; and fill in the form, which should look something like this:</p>
<p style="text-align:center;"><a href="http://www.cuppadev.co.uk/assets/luca_new_account.png"><img src="http://www.cuppadev.co.uk/assets/luca_new_account_th.jpg" title="Luca add account" alt="Luca add account" /></a></p>
<p>The <em>&#8220;Class&#8221;</em> is the type of account to be created. You can make Accounts for Assets, Liabilities, Equity, Revenue, and Expenses (note that this list can be altered by playing about with the &#8220;Account classes&#8221;).</p>
<p>The <em>&#8220;Std. journal&#8221;</em> corresponds to an id of a &#8220;Standard Journal Description&#8221; which you can make in &#8220;Standard Journal Descriptions&#8221;. From what i can tell this allows you to save on typing repetitive descriptions when entering transactions, though i have not really found a use for it yet.</p>
<p><em>&#8220;Code&#8221;</em> is the identifier of this account. It needs to correspond to the <em>&#8220;Format Mask&#8221;</em> you created earlier, e.g. in my case, &#8220;1234&#8221; and &#8220;1234.01&#8221; would both be acceptable.</p>
<p><em>&#8220;Parent account&#8221;</em> is the code of the account you wish to be the parent. You can use this to create complex hierarchies of accounts, something which i assume Accountants love to do.</p>
<p>The rest of the fields are pretty obvious, apart from <em>&#8220;Mobile clients&#8221;</em> which i can only assume allows people using Luca&#8217;s bluetooth functionality to enter transactions on the account (note though that i have not tried this out).</p>
<p>So now you can create accounts at will. As for which accounts to create, it&#8217;s really up to you. However if you are a bit stuck, below is a table of values you can enter to reproduce a set of accounts from of one of my <a href="http://www.austintek.com/gnucash/ncsa-gnucash-talk.html">favourite tutorials</a> on Double Entry Accounting written by Joseph Mack.</p>
<p><em>RocketScience <span class="caps">LLC</span> Accounts</em></p>
<table style="border-collapse: separate;border-spacing: 4px 2px;">
<tr>
<th>Class</th>
<th>Code</th>
<th>Parent</th>
<th>Description</th>
<th>Small description</th>
</tr>
<tr>
<td>Asset</td>
<td>1234 </td>
<td>cash</td>
<td>cash</td>
</tr>
<tr>
<td>Asset</td>
<td>1234.01 </td>
<td>1234</td>
<td>Joseph Mack, withdrawing</td>
<td>jm_withdrawing</td>
</tr>
<tr>
<td>Asset</td>
<td>1234.02 </td>
<td>1234</td>
<td>check account</td>
<td>check_account</td>
</tr>
<tr>
<td>Asset</td>
<td>1234.03 </td>
<td>1234</td>
<td>petty cash</td>
<td>petty_cash</td>
</tr>
<tr>
<td>Liabilities</td>
<td>1235 </td>
<td>liabilities</td>
<td>liabilities</td>
</tr>
<tr>
<td>Liabilities</td>
<td>1235.01 </td>
<td>1235</td>
<td>Joseph Mac, capital</td>
<td>jm_capital</td>
</tr>
<tr>
<td>Equity</td>
<td>1236 </td>
<td>equity</td>
<td>equity</td>
</tr>
<tr>
<td>Equity</td>
<td>1236.01 </td>
<td>1236</td>
<td>accumulated profit and loss</td>
<td>acc_profit_loss</td>
</tr>
<tr>
<td>Equity</td>
<td>1236.02 </td>
<td>1236</td>
<td>[clo]profit and loss</td>
<td>profit_loss</td>
</tr>
<tr>
<td>Revenue</td>
<td>1237 </td>
<td>revenue</td>
<td>revenue</td>
</tr>
<tr>
<td>Revenue</td>
<td>1237.01 </td>
<td>1237</td>
<td>fees earned</td>
<td>fees_earned</td>
</tr>
<tr>
<td>Expenses</td>
<td>1238 </td>
<td>expenses</td>
<td>expenses</td>
</tr>
<tr>
<td>Expenses</td>
<td>1238.01 </td>
<td>1238</td>
<td>advertising</td>
<td>advertising</td>
</tr>
<tr>
<td>Expenses</td>
<td>1238.02 </td>
<td>1238</td>
<td>food,entertainment</td>
<td>food_entertainment</td>
</tr>
<tr>
<td>Expenses</td>
<td>1238.03 </td>
<td>1238</td>
<td>office supplies</td>
<td>office_supplies</td>
</tr>
</table>
<h3>Entering transactions</h3>
<p>To enter transactions in Luca, you&#8217;ll need to first create a Batch. To do this, from the main menu select &#8220;Batches&#8221;. Then on the next screen, select your Organization and click on &#8220;Add new batch&#8221;. Your screen should look something like this:</p>
<p style="text-align:center;"><a href="http://www.cuppadev.co.uk/assets/luca_new_batch.png"><img src="http://www.cuppadev.co.uk/assets/luca_new_batch_th.jpg" title="Luca add batch" alt="Luca add batch" /></a></p>
<p>As you might have noticed, there is not much to a batch. The only thing to look out for is the dates you enter, which need to be in the format &#8220;yyyy/mm/dd&#8221;, and need to lie within the organization&#8217;s active period (the default being 1970/01/01 -&gt; 1970/01/01).</p>
<p>If you ever want to change the date range of the active period, all you need to do is select &#8220;Active Period&#8221; from the main menu, then click on &#8220;Edit&#8221; next to the relevant accounting period for your organization. Your screen should look something like this:</p>
<p style="text-align:center;"><a href="http://www.cuppadev.co.uk/assets/luca_edit_period.png"><img src="http://www.cuppadev.co.uk/assets/luca_edit_period_th.jpg" title="Luca edit accounting period" alt="Luca edit accounting period" /></a></p>
<p>Then all you need to do is enter an initial and final date. It&#8217;s as simple as that!</p>
<p>For my first batch, i used the following:</p>
<ul>
<li>Description: First batch!</li>
<li>Initial date: 1970/01/01</li>
<li>Final date: 1970/01/01</li>
<li>Checksum: 0</li>
<li>Status: Open</li>
<li>Type: Normal batch</li>
</ul>
<p>Now you can start entering your transactions, which in Luca are referred to as <em>Journals</em>. To do this, from the main menu select &#8220;Journals&#8221;. Then on the next screen, select your Organization and Batch, then click on &#8220;Add new journal&#8221;. Your screen should look something like this:</p>
<p style="text-align:center;"><a href="http://www.cuppadev.co.uk/assets/luca_new_journal.png"><img src="http://www.cuppadev.co.uk/assets/luca_new_journal_th.jpg" title="Luca add journal" alt="Luca add journal" /></a></p>
<p>So to sum this up&#8230;</p>
<p><em>&#8220;DB account&#8221;</em> and <em>&#8220;CR account&#8221;</em> mean <em>&#8220;Account to debit&#8221;</em> and <em>&#8220;Account to credit&#8221;</em> respectively. I&#8217;m going to assume you know enough about double entry accounting to figure out which accounts you credit and which you debit.</p>
<p><em>&#8220;Std. journal&#8221;</em> i already mentioned when creating accounts.</p>
<p><em>&#8220;Cost center&#8221;</em> i have yet to figure out, best to leave this as 1 unless you really need it set.</p>
<p><em>&#8220;Date&#8221;</em>, <em>&#8220;Description&#8221;</em>, <em>&#8220;Value&#8221;</em>, and <em>&#8220;Status&#8221;</em> are all pretty obvious.</p>
<p>You can enter as many journals as you like in a batch. It is also interesting to note that you don&#8217;t have to enter both a credit and debit for an entry &#8211; you can quite easily add multiple debit or credits in a row.</p>
<h3>Profit and Loss</h3>
<p>At the end of the accounting year, you&#8217;ll probably want to determine profit and loss, which usually involves folding revenue and expense accounts into a single profit and loss account. This is otherwise known as &#8220;closing out the accounts&#8221;.</p>
<p>So how does one do this in Luca? Quite simply in fact. Select &#8220;Balance closing&#8221; from the main menu, and your screen should look something like this:</p>
<p style="text-align:center;"><a href="http://www.cuppadev.co.uk/assets/luca_close_balance.png"><img src="http://www.cuppadev.co.uk/assets/luca_close_balance_th.jpg" title="Luca closing balance" alt="Luca closing balance" /></a></p>
<p>So basically all you need to do is select your organization, enter in start and end dates, then click &#8220;Prepare to close balance&#8221;.</p>
<p>However you&#8217;ll probably bump into a few issues first time, as three conditions need to be satisfied:</p>
<ol>
<li>You need an account which contains &#8220;[clo]&#8221; somewhere in its description to store the closing values.</li>
<li>The period you specify needs to be within the current active period.</li>
<li>All batches in the specified period need to be set to &#8220;Closed&#8221;</li>
</ol>
<p>The first condition is rather easy to satisfy. All you need to do is make an equity account named something like &#8220;[clo]Profit and Loss&#8221;.</p>
<p>The last two conditions we more or less went over when talking about batches.</p>
<p>Assuming you got the balance to close, your &#8220;Profit and Loss&#8221; equity account should now look something like this:</p>
<p style="text-align:center;"><a href="http://www.cuppadev.co.uk/assets/luca_profit_loss.png"><img src="http://www.cuppadev.co.uk/assets/luca_profit_loss_th.jpg" title="Luca profit and loss ledger" alt="Luca profit and loss ledger" /></a></p>
<h3>To sum it all up</h3>
<p>Luca is a pretty promising accounting solution. It does accounting, reports, and also includes a bit of multiuser management too. In contrast to other solutions, it doesn&#8217;t try to do everything &#8211; which i believe is one of its strengths. It&#8217;s a relief not having to wade through a swamp of <span class="caps">CRM</span> to do something as simple as sorting out the accounts.</p>
<p>Sadly though Luca doesn&#8217;t appear to have a very active community, and from what i can tell Elvis Pfützenreuter puts most of the work into it.</p>
<p>Still from what i have been able to gather Luca is still under development so with any luck it&#8217;ll gain more useful features in the future such as multiple currency support.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.cuppadev.co.uk/misc/accounting-with-luca/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>Upgrading from Mac OS X Tiger to Leopard</title>
		<link>http://www.cuppadev.co.uk/misc/upgrading-from-mac-os-x-tiger-to-leopard/</link>
		<comments>http://www.cuppadev.co.uk/misc/upgrading-from-mac-os-x-tiger-to-leopard/#comments</comments>
		<pubDate>Wed, 31 Oct 2007 04:09:00 +0000</pubDate>
		<dc:creator>James Urquhart</dc:creator>
				<category><![CDATA[Miscellaneous]]></category>
		<category><![CDATA[mac]]></category>
		<category><![CDATA[problem solving]]></category>

		<guid isPermaLink="false">http://crm.cuppadev.co.uk/?p=125</guid>
		<description><![CDATA[After much deliberation, i finally got round to upgrading my Macbook from Mac OS X Tiger to Mac OS X Leopard. Installation was mostly automated. I decided that as i still had Linux installed on the machine, i might as well just reformat it a start from scratch. After putting in everything needed, i sat [...]]]></description>
			<content:encoded><![CDATA[<p>After much deliberation, i finally got round to upgrading my Macbook from Mac <span class="caps">OS X</span> Tiger to <a href="http://www.apple.com/macosx">Mac <span class="caps">OS X</span> Leopard</a>.</p>
<p>Installation was mostly automated. I decided that as i still had Linux installed on the machine, i might as well just reformat it a start from scratch. After putting in everything needed, i sat back for nearly an <strong>hour</strong> until it finally finished installing.</p>
<p>After watching the fancy new <a href="http://uk.youtube.com/watch?v=BraJ2x1Hmzg">intro movie</a> and filling in all of the dialogs, i ended up with the desktop, which surprisingly wasn&#8217;t as bad as i had first imagined.</p>
<p style="text-align:center;"><a href="http://www.cuppadev.co.uk/assets/2007/10/30/leopard_desk.jpg"><img src="http://www.cuppadev.co.uk/assets/2007/10/30/leopard_desk_th.jpg" title="Ooooh" alt="Ooooh" /></a></p>
<p>There was however a little issue i had to address: I had to copy across all of my files to the new installation. The only problem was that most of them were in a FileVault which i backed up from my Tiger installation.</p>
<p>Interestingly Leopard uses &#8220;<strong>.sparsebundle</strong>&#8221; files instead of &#8220;<strong>.sparseimage</strong>&#8221; files to store FileVault&#8217;s, so i couldn&#8217;t just copy my old FileVault over and log back in with all of my files and settings in tact. No, i had to figure out a workaround.</p>
<p>Firstly, i made sure i was logged into a different user account than the one i was restoring. I then opened up my old &#8221;.sparseimage&#8221; file which mounted at &#8221;/Volumes/jamesu&#8221;.</p>
<p>Now i could&#8217;ve just gone into Finder and copy all of my files over just like that, but then i realised that there were a lot of hidden files present so i needed to make sure they were copied too. Thus i decided to open up Terminal and use a command line tool called &#8220;ditto&#8221; to copy my stuff across, which tries its best to preserve all of the metadata.</p>
<pre>
<code>
sudo ditto -X /Volumes/jamesu /Users/jamesu
sudo chown -R jamesu:staff /Users/jamesu
</code>
</pre>
<p>So now i could just log-in and everything would more or less work. However i also remembered that i had some more files from when i was using my Linux installation. These were on another machine, so i first copied them across. For this i used <a href="http://code.google.com/p/macfuse/wiki/MACFUSE_FS_SSHFS"><span class="caps">SSHFS</span></a>, but any method is applicable. I then utilised another command line tool called &#8220;rsync&#8221; which synchronises files between two locations in order to copy only the files which had changed from my last Mac backup (which my Linux copy was based off of).</p>
<pre>
<code>
sudo rsync -vrlptc --inplace /Stuff/jamesu_linux /Users/jamesu
sudo chown -R jamesu:staff /Users/jamesu
</code>
</pre>
<p>And viola! I could now log-in, safe in the knowledge that all of my important files were accounted for. Of course, i also turned FileVault back on so my important documents were now safe from prying eyes again.</p>
<p>Now i&#8217;ve got everything sorted, i think i&#8217;m going to check up on the exciting new <a href="http://www.apple.com/macosx/developer/">developer</a> API&#8217;s present in Leopard.</p>
<p>Until next time.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.cuppadev.co.uk/misc/upgrading-from-mac-os-x-tiger-to-leopard/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Can you solve this river crossing puzzle?</title>
		<link>http://www.cuppadev.co.uk/misc/can-you-solve-this-river-crossing-puzzle/</link>
		<comments>http://www.cuppadev.co.uk/misc/can-you-solve-this-river-crossing-puzzle/#comments</comments>
		<pubDate>Sat, 08 Sep 2007 19:07:00 +0000</pubDate>
		<dc:creator>James Urquhart</dc:creator>
				<category><![CDATA[Miscellaneous]]></category>
		<category><![CDATA[flash]]></category>
		<category><![CDATA[fun]]></category>
		<category><![CDATA[puzzle]]></category>

		<guid isPermaLink="false">http://crm.cuppadev.co.uk/?p=114</guid>
		<description><![CDATA[After stumbling across the Entrepreneur Geek blog, i spotted this rather puzzling river crossing puzzle. Sadly, i haven’t managed to solve it yet, but i think i’m close. Instructions: Help these people to cross the river, in the next screen. Only two people at a time, at least one adult. Criminal (in striped dress) cannot [...]]]></description>
			<content:encoded><![CDATA[<p>After stumbling across the <a href="http://www.mehtanirav.com/">Entrepreneur Geek</a> blog, i spotted this rather puzzling <a href="http://www.mehtanirav.com/2007/09/08/crossing-the-river/">river crossing puzzle</a>. Sadly, i haven’t managed to solve it yet, but i think i’m close.</p>
<p><strong>Instructions:</strong></p>
<ul>
<li>Help these people to cross the river, in the next screen.</li>
<li>Only two people at a time, at least one adult.</li>
<li>Criminal (in striped dress) cannot be left with others, without the Police.</li>
<li>Mother cannot be with sons, while father is not around.</li>
<li>Father cannot be with daughters, while mother is not around.</li>
<li>Click on the <span class="caps">BIG BLUE BUTTON</span> to start!</li>
<li>Click on people to get them on or off the boat.</li>
<li>Click on the Red buttons to move the boat to opposite side</li>
</ul>
<p style="clear:both"><object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,0,0" height="304" width="480"><param name="movie" value="http://www.fungloo.com/arcade/swf/river_crossing.swf"></param><param name="quality" value="high"></param><param name="menu" value="true"></param><embed src="http://www.fungloo.com/arcade/swf/river_crossing.swf" quality="high" pluginspage="http://www.macromedia.com/go/getflashplayer" type="application/x-shockwave-flash" height="304" width="480"></embed></object></p>
<p>For more, checkout <a href="http://www.fungloo.com/">FunGloo</a>.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.cuppadev.co.uk/misc/can-you-solve-this-river-crossing-puzzle/feed/</wfw:commentRss>
		<slash:comments>5</slash:comments>
		</item>
		<item>
		<title>Scattergories Meme</title>
		<link>http://www.cuppadev.co.uk/misc/scattergories-meme/</link>
		<comments>http://www.cuppadev.co.uk/misc/scattergories-meme/#comments</comments>
		<pubDate>Tue, 28 Aug 2007 02:58:00 +0000</pubDate>
		<dc:creator>James Urquhart</dc:creator>
				<category><![CDATA[Miscellaneous]]></category>
		<category><![CDATA[meme]]></category>

		<guid isPermaLink="false">http://crm.cuppadev.co.uk/?p=113</guid>
		<description><![CDATA[I have been tagged by Ian with the Scattergories meme. The rules Use the 1st letter of your name to answer each of the questions. They must be real places, names, things . . . nothing made up! If you can&#8217;t think of anything, skip it. You CAN&#8217;T use your name for the boy/girl name [...]]]></description>
			<content:encoded><![CDATA[<p>I have been tagged by <a href="http://blog.ijhedges.com/">Ian</a> with the Scattergories meme.</p>
<h3>The rules</h3>
<p>Use the 1st letter of your name to answer each of the questions. They must be real places, names, things . . . nothing made up! If you can&#8217;t think of anything, skip it. You <span class="caps">CAN</span>&#8217;T use your name for the boy/girl name question. If your name happens to start with the same letter as mine, sorry, but you can&#8217;t use my answers!</p>
<h3>My Answers</h3>
<table>
<tr>
<td>Famous Singer</td>
<td> <a href="http://world.kbs.co.kr/english/entertainment/enter_artists_detail.htm?No=10168">J</a> </td>
</tr>
<tr>
<td>Four letter word</td>
<td><a href="http://homestarrunner.com/cantsayjob.html">jorb</a></td>
</tr>
<tr>
<td>Street</td>
<td>Jackson Road</td>
</tr>
<tr>
<td>Color</td>
<td>Jaune (i.e. Yellow in French)</td>
</tr>
<tr>
<td>Gifts/Presents</td>
<td>Jewellery</td>
</tr>
<tr>
<td>Vehicle</td>
<td>Jeep</td>
</tr>
<tr>
<td>Things in a Souvenir Shop</td>
<td>Jewellery</td>
</tr>
<tr>
<td>Boy&#8217;s Name</td>
<td>John</td>
</tr>
<tr>
<td>Girl&#8217;s Name</td>
<td>Jane</td>
</tr>
<tr>
<td>Movie Title</td>
<td>Jaws</td>
</tr>
<tr>
<td>Drink</td>
<td>J2o</td>
</tr>
<tr>
<td>Occupation</td>
<td>Joiner</td>
</tr>
<tr>
<td>Celebrity</td>
<td>Jean-Claude Van Damme</td>
</tr>
<tr>
<td>Magazine</td>
<td>JSelect</td>
</tr>
<tr>
<td>U. S. City</td>
<td><del>New Jersey (ok, i&#8217;m cheating a bit there!)</del><strong>Jacksonville</strong></td>
</tr>
<tr>
<td>Pro Sports</td>
<td>Jacksonville Jaguars</td>
</tr>
<tr>
<td>Fruit</td>
<td><strong>Jaffa Orange</strong></td>
</tr>
<tr>
<td>Reason for Being Late for Work</td>
<td>Jet lag</td>
</tr>
<tr>
<td>Something You Throw Away</td>
<td>Junk</td>
</tr>
<tr>
<td>Things You Shout</td>
<td>Jaaaarrrrgh!</td>
</tr>
<tr>
<td>Cartoon Character</td>
<td><a href="http://en.wikipedia.org/wiki/Jigglypuff">Jigglypuff</a></td>
</tr>
</table>
<p><i>Sadly i couldn&#8217;t find a fruit beginning with J. But on the bright side i managed to find an answer for everything else.</i></p>
<p>I hereby tag <a href="http://emilayusof.com/">Emila Yusof</a> and <a href="http://www.ryandoherty.net/">Ryan Doherty</a>. Good luck!</p>
]]></content:encoded>
			<wfw:commentRss>http://www.cuppadev.co.uk/misc/scattergories-meme/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>QuickSilver on Linux</title>
		<link>http://www.cuppadev.co.uk/misc/quicksilver-on-linux/</link>
		<comments>http://www.cuppadev.co.uk/misc/quicksilver-on-linux/#comments</comments>
		<pubDate>Sat, 28 Jul 2007 20:31:00 +0000</pubDate>
		<dc:creator>James Urquhart</dc:creator>
				<category><![CDATA[Miscellaneous]]></category>
		<category><![CDATA[linux]]></category>
		<category><![CDATA[open source]]></category>

		<guid isPermaLink="false">http://crm.cuppadev.co.uk/?p=101</guid>
		<description><![CDATA[Earlier this month, Gary Vaughan mentioned QuickSilver on his blog. For those of you that don&#8217;t know, QuickSilver is a rather neat application launcher (amongst other things) for Mac OS X which allows you to simply launch an application by hitting a key combo, typing in the first few letters, and then pressing return / [...]]]></description>
			<content:encoded><![CDATA[<p>Earlier this month, Gary Vaughan mentioned <a href="http://quicksilver.blacktree.com/">QuickSilver</a> <a href="http://blog.azazil.net/339-macbook-installation-applications-101.html">on his blog</a>. For those of you that don&#8217;t know, QuickSilver is a rather neat application launcher (amongst other things) for Mac <span class="caps">OS X</span> which allows you to simply launch an application by hitting a key combo, typing in the first few letters, and then pressing return / enter.</p>
<p style="text-align:center;"><img src="http://www.cuppadev.co.uk/assets/2007/7/28/quicksilver_ex.jpg" title="QuickSilver in action" alt="QuickSilver in action" /></p>
<p>Consequently, i cannot remember the last time i explicitly went to my Applications folder to launch an application which wasn&#8217;t on my dock. So i guess i&#8217;m hooked.</p>
<p>Sadly not all of my computers run Mac <span class="caps">OS X</span>, so i don&#8217;t have the fortune of being able to use QuickSilver on them. Fortunately, they all run <a href="http://www.ubuntu.com/">Ubuntu Linux</a>, and you can almost guarantee some nut has made a free open source clone of your favourite app which runs on it.</p>
<p>After a bit of searching, i came across a <a href="http://www.kde.org/"><span class="caps">KDE</span></a> app called <a href="http://www.kde-apps.org/content/show.php?content=33985">Katapult</a>. It seems to get good write-up&#8217;s, so i decided to install it and then try it out.</p>
<pre>
<code>
$ sudo apt-get install katapult
$ katapult &#38;
</code>
</pre>
<p>After starting it up, i got a nice icon which appeared in my system tray. Clicking on it popped up a big &#8220;Katapult&#8221; icon, which initially confused me a bit. Although after pressing a few keys on my keyboard, i realised it was the input dialog which i could type the name of the application i wanted to launch. For instance, if i typed &#8220;ter&#8221; and then pressed return / enter, it would launch the gnome terminal &#8211; neat!</p>
<p style="text-align:center;"><img src="http://www.cuppadev.co.uk/assets/2007/7/28/katapult_ex.jpg" title="Katapult in action" alt="Katapult in action" /></p>
<p>After looking at the preferences dialog, it became apparent that the proper way to invoke the Katapult input diaog was by pressing &#8220;Alt + Space&#8221;. In addition, i could change which &#8220;Catalogs&#8221; (which is where the commands and so on are stored / processed) should be searched, as well as tweak them. Catalogs which were included by default were:</p>
<ul>
<li>Calculator Catalog (allows you to perform calculations by typing them in)</li>
<li>Amarok Catalog (allows you to select songs from your Amarok library)</li>
<li>Spell Catalog (allows you to spell check by typing &#8220;spell <word>&#8220;)</li>
<li>Document Catalog (allows you to open documents by typing their name)</li>
<li>Bookmark Catalog (allows you to open firefox bookmarks by typing their name)</li>
<li>Program Catalog (allows you to open applications by typing their name)</li>
</ul>
<p>In any case, i am definitely going to install Katapult on any Ubuntu Linux desktop machines i administer in the future. It&#8217;s such a convenient time saver!</p>
]]></content:encoded>
			<wfw:commentRss>http://www.cuppadev.co.uk/misc/quicksilver-on-linux/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>SSH Tunnel Manager</title>
		<link>http://www.cuppadev.co.uk/misc/ssh-tunnel-manager/</link>
		<comments>http://www.cuppadev.co.uk/misc/ssh-tunnel-manager/#comments</comments>
		<pubDate>Wed, 18 Jul 2007 23:32:00 +0000</pubDate>
		<dc:creator>James Urquhart</dc:creator>
				<category><![CDATA[Miscellaneous]]></category>
		<category><![CDATA[mac]]></category>
		<category><![CDATA[open source]]></category>
		<category><![CDATA[problem solving]]></category>

		<guid isPermaLink="false">http://crm.cuppadev.co.uk/?p=98</guid>
		<description><![CDATA[After reading Gary Vaughan&#8217;s recent blog post on MacBook Installation Applications 101, i decided to check out one of the tools he mentioned called SSH Tunnel Manager. SSH Tunnel manager is a rather nifty tool which allows you to manage a list of SSH tunnels, which basically securely forwards ports on your own machine to [...]]]></description>
			<content:encoded><![CDATA[<p>After reading Gary Vaughan&#8217;s recent blog post on <a href="http://blog.azazil.net/339-macbook-installation-applications-101.html">MacBook Installation Applications 101</a>, i decided to check out one of the tools he mentioned called <a href="http://projects.tynsoe.org/en/stm/download.php"><span class="caps">SSH</span> Tunnel Manager</a>.</p>
<p><img src="http://www.cuppadev.co.uk/assets/2007/7/18/stm.png" style="border:0px;" title="SSH Tunnel Manager" alt="SSH Tunnel Manager" /></p>
<p><span class="caps">SSH</span> Tunnel manager is a rather nifty tool which allows you to manage a list of <span class="caps">SSH</span> tunnels, which basically securely forwards ports on your own machine to a remote one.</p>
<p>So for example, if i had an administration control panel running on my web server, i might want to make it so that i could only connect to it locally (so there would be practically no chance of anyone on the internet accessing it).<br />
But i would still want to access it remotely, and the only way for me to do that is make an <span class="caps">SSH</span> tunnel which acts as if i am connecting locally on the machine, when in reality i am not.</p>
<p>Any would-be hacker would need to figure out the login details on my <span class="caps">SSH</span> server in order to have a chance of accessing the control panel.</p>
<p>Now whilst this app was great, i noticed something a bit disturbing about it. It turns out that its been quite a while since it was last maintained, and thus it it still a <strong><span class="caps">PPC</span></strong> binary, meaning if i run it on my brand new shiny <strong>Intel</strong> mac, i have to let Rosetta run, which is memory hungry and gobbles up precious <span class="caps">CPU</span> time!</p>
<p>Luckily, the developer also provided the <strong>source code</strong> to the application. So the solution was obvious: i needed to <strong>recompile</strong> this application as a <a href="http://www.apple.com/universal/">Universal Binary</a>, which means it will run <strong>natively</strong> on both <span class="caps">PPC</span> and Intel mac&#8217;s.</p>
<p>This didn&#8217;t end up being very hard, i.e.:</p>
<ul>
<li>Download and unpack the source code</li>
<li>Open the project file in XCode (converting it to the new format)</li>
<li>Replace the ssh executable in the resources with the version from /usr/bin</li>
<li>Set the configuration to &#8220;Deployment&#8221; and build</li>
<li>Run it and hope it works</li>
</ul>
<p>Thankfully for me, it built properly (with the exception of a few warnings, though they didn&#8217;t look too serious). So now i have a nice and shiny <strong>native</strong> version of the <span class="caps">SSH</span> Tunnel Manager on my mac.</p>
<p>In case anyone doesn&#8217;t want to go through the 5 step solution, or perhaps you don&#8217;t have XCode installed on your machine, <a href="http://www.cuppadev.co.uk/assets/2007/7/18/SSH_Tunnel_Manager.zip">here is a copy</a> for you to download.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.cuppadev.co.uk/misc/ssh-tunnel-manager/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
	</channel>
</rss>
