<?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>The Shaved Soapbox &#187; Technical</title>
	<atom:link href="http://baldy.co.za/post/category/technical/feed/" rel="self" type="application/rss+xml" />
	<link>http://baldy.co.za</link>
	<description></description>
	<lastBuildDate>Fri, 18 May 2012 14:18:20 +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>SQL &#8211; IN vs JOIN</title>
		<link>http://baldy.co.za/post/2009/04/23/sql-in-vs-join/</link>
		<comments>http://baldy.co.za/post/2009/04/23/sql-in-vs-join/#comments</comments>
		<pubDate>Thu, 23 Apr 2009 13:03:00 +0000</pubDate>
		<dc:creator>Baldy</dc:creator>
				<category><![CDATA[Software Development]]></category>
		<category><![CDATA[Technical]]></category>
		<category><![CDATA[SQL Server]]></category>

		<guid isPermaLink="false">/post/2009/04/23/SQL-IN-vs-JOIN.aspx</guid>
		<description><![CDATA[I read a rant article the other day (I will update the link here as soon as I find it again) where the author was absolutely shooting down the use of the IN statement in queries, and proposing you rather use a JOIN and then compare fields in the WHERE clause. &#160; Something bothered me [...]
Related posts:<ol>
<li><a href='http://baldy.co.za/post/2007/10/12/sql-joins/' rel='bookmark' title='SQL Joins'>SQL Joins</a></li>
</ol>]]></description>
			<content:encoded><![CDATA[<p>I read a rant article the other day (I will update the link here as soon as I find it again) where the author was absolutely shooting down the use of the IN statement in queries, and proposing you rather use a JOIN and then compare fields in the WHERE clause. &nbsp;</p>
<p><span id="more-13"></span>Something bothered me about this statement, but I didn't have time to check up on it then. &nbsp;Today I had a query from our finance department for a set of results on a certain GL account across all our cost centres. &nbsp;Quite a simple query with 2 tables involved, so I thought I would test the performance on both approaches.</p>
<p>Keeping in mind that we have a fairly large set of data, with just over 160K records in the Chart of Accounts, and just short of 4 million records in the transaction table. &nbsp;Both of these optimally indexed.</p>
<p>Before I state the results I got, let's just look at the different operations here.</p>
<p>JOIN</p>
<ul>
<li>Take every record in the transaction table, and link the appropriate record from the Chart of Accounts to it.</li>
<li>Compare 2 (varchar) fields in every record to the specified criteria</li>
</ul>
<p>&nbsp;</p>
<p>IN</p>
<ul>
<li>Get a subset of records (less than 200) from the Chart of Accounts</li>
<li>Check if the (int) account id of every transaction is in the subset&nbsp;</li>
</ul>
<div>Results</div>
<div>JOIN: 69 seconds</div>
<div>IN: 31 seconds</div>
<div>&nbsp;</div>
<div>I'm not saying that one approach is better than the other, what I'm trying to bring across is that you should take the approach that is best for every different set of circumstances. &nbsp;Keep in mind that instruction sets on numeric (esp int) fields are normally faster than string based operations in SQL Server. &nbsp;So by all means try both approaches and see which one works better for the particular query and set of data you're busy with. &nbsp; Ultimately the end user doesn't care which approach you use, but if you can consistently save them 40 seconds a number of times a day, they will care.</div>
<p>Update: &nbsp;I've had another instance of this, doing a query across servers, counting records, and I cancelled the query on the join after 90 minutes with no result, the IN took 13 minutes.</p>
<p>Related posts:<ol>
<li><a href='http://baldy.co.za/post/2007/10/12/sql-joins/' rel='bookmark' title='SQL Joins'>SQL Joins</a></li>
</ol></p>]]></content:encoded>
			<wfw:commentRss>http://baldy.co.za/post/2009/04/23/sql-in-vs-join/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Exchange server stops working</title>
		<link>http://baldy.co.za/post/2008/12/29/exchange-server-stops-working/</link>
		<comments>http://baldy.co.za/post/2008/12/29/exchange-server-stops-working/#comments</comments>
		<pubDate>Mon, 29 Dec 2008 09:35:00 +0000</pubDate>
		<dc:creator>Baldy</dc:creator>
				<category><![CDATA[Technical]]></category>

		<guid isPermaLink="false">/post/2008/12/29/Exchange-server-stops-working.aspx</guid>
		<description><![CDATA[I wrote a quick post on the fun I&#39;ve had with an Exchange server that stopped working for no apparent reason.&#160; The full article can be found here. Related posts: Running Community Server for a single blog Focused learning &#8211; My topics for the next few months
Related posts:<ol>
<li><a href='http://baldy.co.za/post/2006/11/27/running-community-server-for-a-single-blog/' rel='bookmark' title='Running Community Server for a single blog'>Running Community Server for a single blog</a></li>
<li><a href='http://baldy.co.za/post/2009/04/13/focused-learning-my-topics-for-the-next-few-months/' rel='bookmark' title='Focused learning &#8211; My topics for the next few months'>Focused learning &#8211; My topics for the next few months</a></li>
</ol>]]></description>
			<content:encoded><![CDATA[<p>I wrote a quick post on the fun I&#39;ve had with an Exchange server that stopped working for no apparent reason.&nbsp; The full article can be found <a href="http://customware.co.za/2008/12/exchange-server-stops-working" target="_blank">here</a>.</p>
<p>Related posts:<ol>
<li><a href='http://baldy.co.za/post/2006/11/27/running-community-server-for-a-single-blog/' rel='bookmark' title='Running Community Server for a single blog'>Running Community Server for a single blog</a></li>
<li><a href='http://baldy.co.za/post/2009/04/13/focused-learning-my-topics-for-the-next-few-months/' rel='bookmark' title='Focused learning &#8211; My topics for the next few months'>Focused learning &#8211; My topics for the next few months</a></li>
</ol></p>]]></content:encoded>
			<wfw:commentRss>http://baldy.co.za/post/2008/12/29/exchange-server-stops-working/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Welcome to 64-bit hell</title>
		<link>http://baldy.co.za/post/2008/09/03/welcome-to-64-bit-hell/</link>
		<comments>http://baldy.co.za/post/2008/09/03/welcome-to-64-bit-hell/#comments</comments>
		<pubDate>Wed, 03 Sep 2008 13:01:00 +0000</pubDate>
		<dc:creator>Baldy</dc:creator>
				<category><![CDATA[Technical]]></category>

		<guid isPermaLink="false">/post/2008/09/03/Welcome-to-64-bit-hell.aspx</guid>
		<description><![CDATA[I just spent a few hours trying to figure out an issue on a project I started a while back to automate the SQL replication setup for any servers we add to our environment.&#160; I started the project when I had some free time a few months ago, then got going on another project which [...]
Related posts:<ol>
<li><a href='http://baldy.co.za/post/2007/10/29/project-charter/' rel='bookmark' title='Project Charter'>Project Charter</a></li>
</ol>]]></description>
			<content:encoded><![CDATA[<p>I just spent a few hours trying to figure out an issue on a project I started a while back to automate the SQL replication setup for any servers we add to our environment.&nbsp; I started the project when I had some free time a few months ago, then got going on another project which took preference, and now finally have time to get going again.&nbsp; First thing I did after loading the solution was hit F5 to run it, making sure that everything is as it should.&nbsp; Also remembering that I left it in a working state when I put it on the back-burner.</p>
<p>Then I get this beauty</p>
<p>&quot;Could not load file or assembly &#39;Microsoft.SqlServer.Replication, Version=9.0.242.0, Culture=neutral, PublicKeyToken=89845dcd8080cc91&#39; or one of its dependencies. An attempt was made to load a program with an incorrect format.&quot;</p>
<p>Now my first reaction was that I reinstalled my machine recently, upgrading from XP SP2 to Windows 2008 64-bit edition, so I double checked my installation of the SQL Server SDK, and the various other things that are referenced in this project, but no luck.&nbsp; AARRRRGGGHHH!!!</p>
<p>Boot up the XP VM, test the project there and it works like it should.</p>
<p>So, I went back to my dev environment and do what I should have done in the first place, click that friendly &quot;Search for more help online&quot;.&nbsp; And first in the list is the description for the <span style="color: #ff0000">System.BadImageFormatException</span> with a simple solution.</p>
<p>Turns out that the SQL Replication SDK was developed for 32bit platforms only, so go to the Project Properties, select the Build page and set the Target Platform to x86.&nbsp; Hit F5, and my project is back to a working state. </p>
<p>Related posts:<ol>
<li><a href='http://baldy.co.za/post/2007/10/29/project-charter/' rel='bookmark' title='Project Charter'>Project Charter</a></li>
</ol></p>]]></content:encoded>
			<wfw:commentRss>http://baldy.co.za/post/2008/09/03/welcome-to-64-bit-hell/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>SSIS &#8211; Accessing variables from script components</title>
		<link>http://baldy.co.za/post/2008/07/09/ssis-accessing-variables-from-script-components/</link>
		<comments>http://baldy.co.za/post/2008/07/09/ssis-accessing-variables-from-script-components/#comments</comments>
		<pubDate>Wed, 09 Jul 2008 10:01:00 +0000</pubDate>
		<dc:creator>Baldy</dc:creator>
				<category><![CDATA[Software Development]]></category>
		<category><![CDATA[Technical]]></category>
		<category><![CDATA[SQL Server]]></category>

		<guid isPermaLink="false">/post/2008/07/09/SSIS-Accessing-variables-from-script-components.aspx</guid>
		<description><![CDATA[&#160;In SSIS there are are two different types of script components.&#160; The Control Flow script, and the Data Flow script.&#160; These 2 use different ways of accessing package variables, which was a bit confusing the first time I used teh Data Flow script component. In the Control Flow script component you access package variables in [...]
No related posts.]]></description>
			<content:encoded><![CDATA[<p>&nbsp;In SSIS there are are two different types of script components.&nbsp; The Control Flow script, and the Data Flow script.&nbsp; These 2 use different ways of accessing package variables, which was a bit confusing the first time I used teh Data Flow script component.</p>
<p>In the Control Flow script component you access package variables in a similar way to how DTS used to do it.</p>
<p>Dts.Variables(&quot;User::FromDate&quot;).Value.ToString</p>
<p>&nbsp;However, trying this in the DataFlow script component only cause some compilation errors and nothing more.</p>
<p>After doing some searching, I eventually found the simple solution that was staring me in the face all along, I just never tried it.</p>
<p>Me.ReadOnlyVariables(&quot;User::FileName&quot;).Value.ToString()</p>
<p>In both cases you still have to tell the component which variables you&#39;re passing in on the property page.<br />&nbsp;</p>
<p>No related posts.</p>]]></content:encoded>
			<wfw:commentRss>http://baldy.co.za/post/2008/07/09/ssis-accessing-variables-from-script-components/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>IE7 WTF</title>
		<link>http://baldy.co.za/post/2008/06/26/ie7-wtf/</link>
		<comments>http://baldy.co.za/post/2008/06/26/ie7-wtf/#comments</comments>
		<pubDate>Thu, 26 Jun 2008 10:27:00 +0000</pubDate>
		<dc:creator>Baldy</dc:creator>
				<category><![CDATA[Technical]]></category>
		<category><![CDATA[Rant]]></category>

		<guid isPermaLink="false">/post/2008/06/26/IE7-WTF.aspx</guid>
		<description><![CDATA[Don't you just love it how Internet Explorer 7 will take you to the IE7 download page for an "upgrade" every now and then.  Surely their site can detect that you are already using it...Yes I still use it for internal company sites, it is just less hassle. Related posts: How far can we trust [...]
Related posts:<ol>
<li><a href='http://baldy.co.za/post/2007/08/20/how-far-can-we-trust-software-awards/' rel='bookmark' title='How far can we trust software awards'>How far can we trust software awards</a></li>
</ol>]]></description>
			<content:encoded><![CDATA[<p>Don't you just love it how Internet Explorer 7 will take you to the IE7 download page for an "upgrade" every now and then.  Surely their site can detect that you are already using it...Yes I still use it for internal company sites, it is just less hassle.</p>
<p>Related posts:<ol>
<li><a href='http://baldy.co.za/post/2007/08/20/how-far-can-we-trust-software-awards/' rel='bookmark' title='How far can we trust software awards'>How far can we trust software awards</a></li>
</ol></p>]]></content:encoded>
			<wfw:commentRss>http://baldy.co.za/post/2008/06/26/ie7-wtf/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Garmin, educate your vendors</title>
		<link>http://baldy.co.za/post/2008/03/19/garmin-educate-your-vendors/</link>
		<comments>http://baldy.co.za/post/2008/03/19/garmin-educate-your-vendors/#comments</comments>
		<pubDate>Wed, 19 Mar 2008 12:25:00 +0000</pubDate>
		<dc:creator>Baldy</dc:creator>
				<category><![CDATA[General]]></category>
		<category><![CDATA[Technical]]></category>
		<category><![CDATA[Rant]]></category>

		<guid isPermaLink="false">/post/2008/03/19/Garmin-educate-your-vendors.aspx</guid>
		<description><![CDATA[I&#39;ve helped two people in the last year to update the firmware on their Garmin units.&#160; It is a fairly simple procedure, and it is FREE.&#160; But in both cases that is not what the stores where the bought the units told them.&#160; Both stores, different ones, tried to sell them new map software, which [...]
No related posts.]]></description>
			<content:encoded><![CDATA[<p>I&#39;ve helped two people in the last year to update the firmware on their Garmin units.&nbsp; It is a fairly simple procedure, and it is FREE.&nbsp; But in both cases that is not what the stores where the bought the units told them.&nbsp; Both stores, different ones, tried to sell them new map software, which would not help to fix the issues they were experiencing, but on which the store would make a big profit.</p>
<p>Surely these sales people should have the training and INTEGRITY to help Garmin&#39;s clients, and if not, why are they still agents?&nbsp;</p>
<p>No related posts.</p>]]></content:encoded>
			<wfw:commentRss>http://baldy.co.za/post/2008/03/19/garmin-educate-your-vendors/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Dear Multichoice&#8230;</title>
		<link>http://baldy.co.za/post/2007/12/21/dear-multichoice/</link>
		<comments>http://baldy.co.za/post/2007/12/21/dear-multichoice/#comments</comments>
		<pubDate>Fri, 21 Dec 2007 11:22:00 +0000</pubDate>
		<dc:creator>Baldy</dc:creator>
				<category><![CDATA[Technical]]></category>
		<category><![CDATA[Rant]]></category>

		<guid isPermaLink="false">/post/2007/12/21/Dear-Multichoice.aspx</guid>
		<description><![CDATA[...I have a few feature requests. 1. Would it be possible for me to instruct my PVR to record a specific show from the Internet.&#160; I&#39;m not always home when I realise that I forgot to program it to record a &#34;cannot be missed&#34; show or event.&#160; Even better, allow me to do this from [...]
No related posts.]]></description>
			<content:encoded><![CDATA[<p>...I have a few feature requests.</p>
<p>1. Would it be possible for me to instruct my PVR to record a specific show from the Internet.&nbsp; I&#39;m not always home when I realise that I forgot to program it to record a &quot;cannot be missed&quot; show or event.&nbsp; Even better, allow me to do this from my mobile phone.</p>
<p>2. Why should I pay for having all the channels if I only watch a few of them?&nbsp; Can I not rather have a choice selecting only the channels I want?&nbsp; There are some channels that I will never watch, they do not appeal to me.&nbsp; I don&#39;t see why I should pay for the &quot;privilege&quot; of having them.&nbsp; If that is not financially feasible, make up packages where I can buy bundles of 10 channels at a time.&nbsp; And allow me to swap these on a monthly basis, online if possible.&nbsp; Surely this would make the service more affordable for most, and you&#39;d grow your subscriber base.<br />&nbsp;</p>
<p>No related posts.</p>]]></content:encoded>
			<wfw:commentRss>http://baldy.co.za/post/2007/12/21/dear-multichoice/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Did your upgrade kill usability?</title>
		<link>http://baldy.co.za/post/2007/11/06/did-your-upgrade-kill-usability/</link>
		<comments>http://baldy.co.za/post/2007/11/06/did-your-upgrade-kill-usability/#comments</comments>
		<pubDate>Tue, 06 Nov 2007 10:37:00 +0000</pubDate>
		<dc:creator>Baldy</dc:creator>
				<category><![CDATA[Software Development]]></category>
		<category><![CDATA[Technical]]></category>

		<guid isPermaLink="false">/post/2007/11/06/Did-your-upgrade-kill-usability.aspx</guid>
		<description><![CDATA[Our office building&#39;s elevators recently went through an &#34;upgrade&#34; process.&#160; All the elevator mechanisms were replaced, and then they replaced the management system. The new management system decides which elevator you&#39;ll be using when you push the button.&#160; It has a nice big arrow above the lift door that lights up while you&#39;re waiting, and [...]
No related posts.]]></description>
			<content:encoded><![CDATA[<p>Our office building&#39;s elevators recently went through an &quot;upgrade&quot; process.&nbsp; All the elevator mechanisms were replaced, and then they replaced the management system.</p>
<p>The new management system decides which elevator you&#39;ll be using when you push the button.&nbsp; It has a nice big arrow above the lift door that lights up while you&#39;re waiting, and then starts flashing when the elevator arrives, so the moment you push the button you know which elevator to go stand in front of.&nbsp; Only sometimes the system realises that the particular elevator is in use between other floors, and then switches to another.</p>
<p>At ground floor level they&#39;ve installed a set of buttons for each floor in the building, and the system then lets you know which elevator will stop on your floor.&nbsp; The problem here is that most people don&#39;t even bother looking, and just storm into the first elevator that arrives.&nbsp; You just have to wait for the first stop before you can push your floor button again to make the elevator stop there. </p>
<p>I have no idea how the system calculates which elevator to use, but what I do know is that the average wait time has gone from 30 seconds to about 3 minutes. Surely the developers of the management system should have tested and timed the new system in a real building, preferably their own.&nbsp; Why try to predict which elevator to use if you can just stop the first one that comes past going in the right direction.</p>
<p>The insides of the new elevators look very nice, but they&#39;re still just as shaky as what they used to be.&nbsp; The only improvement I can really see here is that you can now switch off buttons that were pressed by mistake.</p>
<p>&nbsp;What I&#39;m getting to here, is that, hopefully, when you get a brilliant idea for your system as the developer, you actually do some homework on the usability of the feature before implementing the changes into your production environment.&nbsp; I&#39;ve seen many users hampered by a design decision a developer took, because it would be cool to design, instead of thinking what would benefit the users.</p>
<p>No related posts.</p>]]></content:encoded>
			<wfw:commentRss>http://baldy.co.za/post/2007/11/06/did-your-upgrade-kill-usability/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>SQL Joins</title>
		<link>http://baldy.co.za/post/2007/10/12/sql-joins/</link>
		<comments>http://baldy.co.za/post/2007/10/12/sql-joins/#comments</comments>
		<pubDate>Fri, 12 Oct 2007 12:20:00 +0000</pubDate>
		<dc:creator>Baldy</dc:creator>
				<category><![CDATA[Technical]]></category>
		<category><![CDATA[SQL Server]]></category>

		<guid isPermaLink="false">/post/2007/10/12/SQL-Joins.aspx</guid>
		<description><![CDATA[Technical documentation being what it is, I&#39;ve never found the explanation of joins in the SQL Books Online very clear, without actually going and playing with the dummy data and the different types of joins. Now Jeff Atwood of Coding Horror fame has written the simplest explanation of join I&#39;ve seen. Related posts: SQL &#8211; [...]
Related posts:<ol>
<li><a href='http://baldy.co.za/post/2009/04/23/sql-in-vs-join/' rel='bookmark' title='SQL &#8211; IN vs JOIN'>SQL &#8211; IN vs JOIN</a></li>
<li><a href='http://baldy.co.za/post/2008/11/18/if-only-we-could-all-strive-towards-code-perfection/' rel='bookmark' title='If only we could all strive towards code perfection'>If only we could all strive towards code perfection</a></li>
<li><a href='http://baldy.co.za/post/2008/07/09/ssis-accessing-variables-from-script-components/' rel='bookmark' title='SSIS &#8211; Accessing variables from script components'>SSIS &#8211; Accessing variables from script components</a></li>
</ol>]]></description>
			<content:encoded><![CDATA[<p>Technical documentation being what it is, I&#39;ve never found the explanation of joins in the SQL Books Online very clear, without actually going and playing with the dummy data and the different types of joins.</p>
<p>Now Jeff Atwood of Coding Horror fame has written <a href="http://www.codinghorror.com/blog/archives/000976.html" target="_blank">the simplest explanation of join I&#39;ve seen</a>.</p>
<p>Related posts:<ol>
<li><a href='http://baldy.co.za/post/2009/04/23/sql-in-vs-join/' rel='bookmark' title='SQL &#8211; IN vs JOIN'>SQL &#8211; IN vs JOIN</a></li>
<li><a href='http://baldy.co.za/post/2008/11/18/if-only-we-could-all-strive-towards-code-perfection/' rel='bookmark' title='If only we could all strive towards code perfection'>If only we could all strive towards code perfection</a></li>
<li><a href='http://baldy.co.za/post/2008/07/09/ssis-accessing-variables-from-script-components/' rel='bookmark' title='SSIS &#8211; Accessing variables from script components'>SSIS &#8211; Accessing variables from script components</a></li>
</ol></p>]]></content:encoded>
			<wfw:commentRss>http://baldy.co.za/post/2007/10/12/sql-joins/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Installing Ubuntu on an eMac</title>
		<link>http://baldy.co.za/post/2007/09/18/installing-ubuntu-on-an-emac/</link>
		<comments>http://baldy.co.za/post/2007/09/18/installing-ubuntu-on-an-emac/#comments</comments>
		<pubDate>Tue, 18 Sep 2007 06:20:00 +0000</pubDate>
		<dc:creator>Baldy</dc:creator>
				<category><![CDATA[Technical]]></category>

		<guid isPermaLink="false">/post/2007/09/18/Installing-Ubuntu-on-an-eMac.aspx</guid>
		<description><![CDATA[Sometime last year I bought a second hand eMac for R500, thinking it was about time that I started learning non-Microsoft products.&#160; The machine was great and for the first few months everything ran great and I learnt quite a bit about Mac OS X 9.x.&#160; The same person then gave me an iMac that [...]
No related posts.]]></description>
			<content:encoded><![CDATA[<p>Sometime last year I bought a second hand eMac for R500, thinking it was about time that I started learning non-Microsoft products.&nbsp; The machine was great and for the first few months everything ran great and I learnt quite a bit about Mac OS X 9.x.&nbsp; The same person then gave me an iMac that was taking up needed space in his garage.&nbsp; I got the iMac home, tried to switch it on, but it was dead, and clearly not serviceable by mere mortals.&nbsp; So that got tossed, but I kept the software that came with it seeing the eMac had nothing.</p>
<p>I noticed that the iMac&#39;s software package included an upgrade disc for OS X 10.1 (Jaguar I think), and the tinkerer in me woke up immediately.&nbsp; I had to give this a try, see what changed.&nbsp; I booted with the disc, went through the process and made my first mistake on step 1.&nbsp; Where you choose the partition on which to install, you also have the option to clear it out.&nbsp; Guess what, that was the first thing I did, happily continued with my installation, only to be told, sorry for you, there&#39;s no prior version of OS X on this drive, cannot install.</p>
<p>No problem I thought, just boot up with the iMac&#39;s install disk for version 9.2, install that and then do the upgrade.&nbsp; Only the iMac&#39;s disk would not boot on the eMac.&nbsp; No I had a nice big white doorstop on my hands.&nbsp; </p>
<p>Plan B was to get a copy of Tiger and install that, but the importer &amp; distributors of Apple products in SA had another plan for me.&nbsp; Since there is supposed to be an upgrade released in October, they thought it would be wise to stop importing and stocking&nbsp;any copies at the end of 2006.&nbsp; So every shop I went to had the family pack in stock, but no single licenses.&nbsp; I only have one machine capable of running OS X, so why the hell would I pay double the price for 3 licenses.&nbsp; Still had a big white doorstop on my hands.</p>
<p>Fast forward a few months, I take delivery of a set of Ubuntu disks, some non-microsoft technology I can learn on a machine that is serviceable by mortals.&nbsp; But lo and behold, included in the package there&#39;s an Ubuntu disk &quot;For your Mac&quot;.&nbsp; Had to try this.&nbsp; So I fired up my big white doorstop, had to eject the CD drive with a paperclip because the eject button on the keyboard did not work witouh any OS installed, and booted up with the CD.&nbsp; Now the install I did on a VPC worked fine first time, and looked to be working fine on the Mac.&nbsp; Until it started loading X to get to the installation icons.&nbsp;&nbsp; X did not like the eMac and failed with a particularly ugly error message, I can&#39;t quite remember the wording.</p>
<p>Time for some serious googling.</p>
<p>I found a few articles on installing Ubuntu on the eMac, but none of the advice worked, until I downloaded the alternative ISO mentioned&nbsp;in <a href="http://www.linux.com/articles/58044">this article</a>.</p>
<p>Ripped it to cd, booted the doorstop, and have never seen an easier installation.&nbsp; After selecting a few basic options like language and machine name, the install did the rest, and I now have a working eMac again, although not with the intended OS.</p>
<p>No related posts.</p>]]></content:encoded>
			<wfw:commentRss>http://baldy.co.za/post/2007/09/18/installing-ubuntu-on-an-emac/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

