<?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>NOthingyoumissed &#187; Album</title>
	<atom:link href="http://georgemauer.net/blog/category/album/feed/" rel="self" type="application/rss+xml" />
	<link>http://georgemauer.net/blog</link>
	<description>George Mauer is on the net</description>
	<lastBuildDate>Sat, 15 May 2010 16:13:40 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.0</generator>
		<item>
		<title>New Years Resolutions</title>
		<link>http://georgemauer.net/blog/new-years-resolutions/</link>
		<comments>http://georgemauer.net/blog/new-years-resolutions/#comments</comments>
		<pubDate>Thu, 01 Jan 2009 22:19:04 +0000</pubDate>
		<dc:creator>togakangaroo</dc:creator>
				<category><![CDATA[Album]]></category>

		<guid isPermaLink="false">http://nothingyoumissed.wordpress.com/?p=17</guid>
		<description><![CDATA[Ok, so just like everyone else in the universe I&#8217;m posting some resolutions on my blog.  The first and most obvious if you look at the dates of my previous posts is to blog more.  A heck of a lot more.  I&#8217;m aiming for once a week.  Nothing intense, I&#8217;m no Steve Yegge and I [...]]]></description>
			<content:encoded><![CDATA[<p>Ok, so just like everyone else in the universe I&#8217;m posting some resolutions on my blog.  The first and most obvious if you look at the dates of my previous posts is to blog more.  A heck of a lot more.  I&#8217;m aiming for once a week.  Nothing intense, I&#8217;m no Steve Yegge and I don&#8217;t have all that much to say but I do have some thoughts that I need to start writting down and I do need to practice my writting. </p>
<p>That being said, some career development-oriented resolutions:</p>
<ul>
<li>Attend at least one professional &#8211; preferably an <a href="http://altdotnet.org/" target="_blank">ALT.Net</a> centered &#8211; conference.  Got to figure out which one first.</li>
<li>Learn about continuous integration and how to use a build system.  I am thinking <a href="http://nant.sourceforge.net/" target="_blank">NANT</a>, <a href="http://confluence.public.thoughtworks.org/display/CCNET/Welcome+to+CruiseControl.NET">CruiseControl.NET</a> or <a href="http://msdn.microsoft.com/en-us/tfs2008/default.aspx">TFS</a>.  I just want to be able to build all these awesome open source projects so that I can&#8230;</li>
<li>&#8230;read other people&#8217;s code.  For all my complaining of being a lonely developer working in a godawful architecture I certainly make few enough attempts to connect with well written code.</li>
<li>Learn more about dynamic languages.  I have spent plenty of time in the PHP world and I&#8217;ve got to say, I just don&#8217;t get it.  Yes some tasks can be done with slightly less code, but you have to give up such IDE luxuries like Intellisense and automatic refactoring.  With all the <a href="http://altnetpodcast.com/episodes/13-ruby-on-rails" target="_blank">chatter lately</a> of Ruby and with<a href="http://www.ironruby.net/"> IronRuby 71% complete</a> maybe I&#8217;ll try my hand at that. </li>
<li>Javascript.  Find an excuse to get beyond the basics.  I think it is a language with much to teach me and I want to learn.  It doesn&#8217;t hurt that <a href="http://jquery.com/">JQuery </a>as about as awesome as can be.</li>
<li>Learn more about .NET internals and the CLR.  I would love to be able to get a deep enough understanding to design my own language &#8211; not that I have any intention of doing something so crazy.</li>
</ul>
]]></content:encoded>
			<wfw:commentRss>http://georgemauer.net/blog/new-years-resolutions/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Backing up and Restoring Databases in Oracle</title>
		<link>http://georgemauer.net/blog/backing-up-and-restoring-oracle-databases/</link>
		<comments>http://georgemauer.net/blog/backing-up-and-restoring-oracle-databases/#comments</comments>
		<pubDate>Wed, 25 Jun 2008 22:07:04 +0000</pubDate>
		<dc:creator>togakangaroo</dc:creator>
				<category><![CDATA[Album]]></category>

		<guid isPermaLink="false">http://nothingyoumissed.wordpress.com/?p=10</guid>
		<description><![CDATA[This article is specifically about how to use oracle’s exp and imp utilities to create a dump file of all objects contained within an Oracle User(s) including the schema, procedures, package, constraints, sequences, jobs, and data; pretty much everything except DB Links. When you are done, you should be able to back up a database [...]]]></description>
			<content:encoded><![CDATA[<p>This article is specifically about how to use oracle’s exp and imp utilities to create a dump file of all objects contained within an Oracle User(s) including the schema, procedures, package, constraints, sequences, jobs, and data; pretty much everything except DB Links. When you are done, you should be able to back up a database and restore it at a future date.</p>
<p class="MsoNormal">What you will need for this:</p>
<ul>
<li><!--[if !supportLists]--><span style="font-family:Symbol;"><span style="font-style:normal;font-variant:normal;font-weight:normal;font-size:7pt;line-height:normal;"> </span></span><!--[endif]-->Oracle installed on your machine (You can download Oracle XE for free <a href="http://www.oracle.com/technology/products/database/xe/index.html">here</a>)</li>
<li><!--[if !supportLists]--><span style="font-family:Symbol;"><span style="font-style:normal;font-variant:normal;font-weight:normal;font-size:7pt;line-height:normal;"> </span></span><!--[endif]-->A Database to back up (<a href="http://www.oracle.com/technology/obe/obe1013jdev/common/obeconnection.htm#t1s1">Sample schemas</a> here, but then again you probably have one if you’re reading this)</li>
<li><!--[if !supportLists]--><span style="font-family:Symbol;"><span style="font-style:normal;font-variant:normal;font-weight:normal;font-size:7pt;line-height:normal;"> </span></span><!--[endif]-->Windows (maybe?) &#8211; I have no clue how this process works on a Linux or Mac system, though I imagine it’s exactly the same.</li>
</ul>
<h4>Creating a Backup</h4>
<p class="MsoNormal">An Oracle install typically comes with the excellent <a href="http://download.oracle.com/docs/html/A97312_01/exp_impt.htm#i7625">exp</a> command line utility (also there’s similar <a href="http://articles.techrepublic.com.com/5100-10878_11-5800445.html">the exp data pump</a>) to see if it’s installed and its manual type at the command prompt:</p>
<blockquote>
<p class="MsoNormal">C:\Temp&gt;exp -?</p>
</blockquote>
<p class="MsoNormal">There are <a href="http://www.dba-oracle.com/tips_oracle_export_utility.htm">many articles online</a> explaining this utility.  The important parameters here for a simple, straightforward backup of a user are OWNER and FILE. Since the command line utility is not within oracle you don’t have to mess around with oracle directories or permissions or anything like that. To backup a database type:</p>
<blockquote>
<p class="MsoNormal">C:\Temp&gt;exp scott/tiger@XE owner=(scott) file=scott.dmp</p>
</blockquote>
<p class="MsoNormal">Break it down:</p>
<ul>
<li><!--[if !supportLists]-->exp – start our utility, don’t be silly</li>
<li><!--[if !supportLists]--><span style="font-family:Symbol;"><span style="font-style:normal;font-variant:normal;font-weight:normal;font-size:7pt;line-height:normal;"> </span></span><!--[endif]-->scott/tiger – the username/password of the account we will be using to pull out the information. It can be any account with the ability to access the user schema you’re trying to save, I usually just use the same schema</li>
<li><!--[if !supportLists]--><!--[endif]-->@XE – An ‘@’ symbol followed by the TNS name for the oracle instance the database you’re backing up is in, look in your tnsnames.ora for installed names. Do not omit this, as the utility might have a default and you might end up backing up the wrong database.</li>
<li><!--[if !supportLists]--><!--[endif]-->owner=(scott) – a comma separated list of users you want to back up. We could have used owner=(user1,user2) or – when there is only one user – owner=user1.</li>
<li><!--[if !supportLists]--><!--[endif]-->file=scott.dmp – the file that the backup will be stored in. The above set-up will create c:\Temp\scott.dmp with the contents of everything that is owned by the scott User in the XE instance of Oracle.</li>
</ul>
<h4>Restoring the Backup</h4>
<p class="MsoNormal">This part is (slightly) more difficult. The command line utility to use is called <a href="http://download.oracle.com/docs/html/A97312_01/exp_impt.htm#i7769">imp</a></p>
<blockquote>
<p class="MsoNormal">C:\Temp&gt;imp -?</p>
</blockquote>
<p class="MsoNormal">The important parameters are FILE, TOUSER, FROMUSER</p>
<p class="MsoNormal">Because you exported everything owned by a user, you must first ensure the user exists in the garget database. You can do a <a href="http://www.dba-oracle.com/concepts/create_users.htm">CREATE USER</a> SQL statement or, if using the <a href="http://www.quest.com/toad-for-oracle/">Toad for Oracle</a> client you can use the Create User pop-up.</p>
<p class="MsoNormal">If the user already exists however and you want to restore them to the saved state <em>you must first remove all of the user’s objects</em>. The easiest way to do this is to drop and recreate your user. In Toad you can select the user from the <em>Users</em> view and click on the <em>Script</em> tab to see a script for dropping and restoring the user. In the case of the Scott Schema you would see</p>
<blockquote>
<p class="MsoNormal" style="margin-bottom:.0001pt;line-height:normal;"><span style="background:white none repeat scroll 0 50%;font-size:10pt;font-family:Courier;color:blue;">DROP</span><span style="background:white none repeat scroll 0 50%;font-size:8pt;"> </span><span style="background:white none repeat scroll 0 50%;font-size:10pt;font-family:Courier;color:blue;">USER</span><span style="background:white none repeat scroll 0 50%;font-size:8pt;"> </span><span style="background:white none repeat scroll 0 50%;font-size:10pt;font-family:Courier;color:black;">SCOTT</span><span style="background:white none repeat scroll 0 50%;font-size:8pt;"> </span><span style="background:white none repeat scroll 0 50%;font-size:10pt;font-family:Courier;color:blue;">CASCADE;</span></p>
<p class="MsoNormal" style="margin-bottom:.0001pt;line-height:normal;"><span style="background:white none repeat scroll 0 50%;font-size:8pt;"> </span></p>
<p class="MsoNormal" style="margin-bottom:.0001pt;line-height:normal;"><span style="background:white none repeat scroll 0 50%;font-size:10pt;font-family:Courier;color:blue;">CREATE</span><span style="background:white none repeat scroll 0 50%;font-size:8pt;"> </span><span style="background:white none repeat scroll 0 50%;font-size:10pt;font-family:Courier;color:blue;">USER</span><span style="background:white none repeat scroll 0 50%;font-size:8pt;"> </span><span style="background:white none repeat scroll 0 50%;font-size:10pt;font-family:Courier;color:black;">SCOTT</span></p>
<p class="MsoNormal" style="margin-bottom:.0001pt;line-height:normal;"><span style="background:white none repeat scroll 0 50%;font-size:8pt;"> </span><span style="background:white none repeat scroll 0 50%;font-size:10pt;font-family:Courier;color:blue;">IDENTIFIED</span><span style="background:white none repeat scroll 0 50%;font-size:8pt;"> </span><span style="background:white none repeat scroll 0 50%;font-size:10pt;font-family:Courier;color:blue;">BY</span><span style="background:white none repeat scroll 0 50%;font-size:8pt;"> </span><span style="background:white none repeat scroll 0 50%;font-size:10pt;font-family:Courier;color:blue;">VALUES</span><span style="background:white none repeat scroll 0 50%;font-size:8pt;"> </span><span style="background:white none repeat scroll 0 50%;font-size:10pt;font-family:Courier;color:red;">&#8216;F894844C34402B67&#8242;</span></p>
<p class="MsoNormal" style="margin-bottom:.0001pt;line-height:normal;"><span style="background:white none repeat scroll 0 50%;font-size:8pt;"> </span><span style="background:white none repeat scroll 0 50%;font-size:10pt;font-family:Courier;color:blue;">DEFAULT</span><span style="background:white none repeat scroll 0 50%;font-size:8pt;"> </span><span style="background:white none repeat scroll 0 50%;font-size:10pt;font-family:Courier;color:blue;">TABLESPACE</span><span style="background:white none repeat scroll 0 50%;font-size:8pt;"> </span><span style="background:white none repeat scroll 0 50%;font-size:10pt;font-family:Courier;color:blue;">USERS</span></p>
<p class="MsoNormal" style="margin-bottom:.0001pt;line-height:normal;"><span style="background:white none repeat scroll 0 50%;font-size:8pt;"> </span><span style="background:white none repeat scroll 0 50%;font-size:10pt;font-family:Courier;color:blue;">TEMPORARY</span><span style="background:white none repeat scroll 0 50%;font-size:8pt;"> </span><span style="background:white none repeat scroll 0 50%;font-size:10pt;font-family:Courier;color:blue;">TABLESPACE</span><span style="background:white none repeat scroll 0 50%;font-size:8pt;"> </span><span style="background:white none repeat scroll 0 50%;font-size:10pt;font-family:Courier;color:black;">TEMP</span></p>
<p class="MsoNormal" style="margin-bottom:.0001pt;line-height:normal;"><span style="background:white none repeat scroll 0 50%;font-size:8pt;"> </span><span style="background:white none repeat scroll 0 50%;font-size:10pt;font-family:Courier;color:blue;">PROFILE</span><span style="background:white none repeat scroll 0 50%;font-size:8pt;"> </span><span style="background:white none repeat scroll 0 50%;font-size:10pt;font-family:Courier;color:blue;">DEFAULT</span></p>
<p class="MsoNormal" style="margin-bottom:.0001pt;line-height:normal;"><span style="background:white none repeat scroll 0 50%;font-size:8pt;"> </span><span style="background:white none repeat scroll 0 50%;font-size:10pt;font-family:Courier;color:blue;">ACCOUNT</span><span style="background:white none repeat scroll 0 50%;font-size:8pt;"> </span><span style="background:white none repeat scroll 0 50%;font-size:10pt;font-family:Courier;color:blue;">UNLOCK;</span></p>
<p class="MsoNormal" style="margin-bottom:.0001pt;line-height:normal;"><strong><span style="background:white none repeat scroll 0 50%;font-size:10pt;font-family:Courier;color:green;">&#8211; 2 Roles for SCOTT </span></strong></p>
<p class="MsoNormal" style="margin-bottom:.0001pt;line-height:normal;"><span style="background:white none repeat scroll 0 50%;font-size:10pt;font-family:Courier;color:blue;">GRANT</span><span style="background:white none repeat scroll 0 50%;font-size:8pt;"> </span><span style="background:white none repeat scroll 0 50%;font-size:10pt;font-family:Courier;color:blue;">RESOURCE</span><span style="background:white none repeat scroll 0 50%;font-size:8pt;"> </span><span style="background:white none repeat scroll 0 50%;font-size:10pt;font-family:Courier;color:blue;">TO</span><span style="background:white none repeat scroll 0 50%;font-size:8pt;"> </span><span style="background:white none repeat scroll 0 50%;font-size:10pt;font-family:Courier;color:black;">SCOTT</span><span style="background:white none repeat scroll 0 50%;font-size:10pt;font-family:Courier;color:blue;">;</span></p>
<p class="MsoNormal" style="margin-bottom:.0001pt;line-height:normal;"><span style="background:white none repeat scroll 0 50%;font-size:10pt;font-family:Courier;color:blue;">GRANT</span><span style="background:white none repeat scroll 0 50%;font-size:8pt;"> </span><span style="background:white none repeat scroll 0 50%;font-size:10pt;font-family:Courier;color:blue;">CONNECT</span><span style="background:white none repeat scroll 0 50%;font-size:8pt;"> </span><span style="background:white none repeat scroll 0 50%;font-size:10pt;font-family:Courier;color:blue;">TO</span><span style="background:white none repeat scroll 0 50%;font-size:8pt;"> </span><span style="background:white none repeat scroll 0 50%;font-size:10pt;font-family:Courier;color:black;">SCOTT</span><span style="background:white none repeat scroll 0 50%;font-size:10pt;font-family:Courier;color:blue;">;</span></p>
<p class="MsoNormal" style="margin-bottom:.0001pt;line-height:normal;"><span style="background:white none repeat scroll 0 50%;font-size:10pt;font-family:Courier;color:blue;">ALTER</span><span style="background:white none repeat scroll 0 50%;font-size:8pt;"> </span><span style="background:white none repeat scroll 0 50%;font-size:10pt;font-family:Courier;color:blue;">USER</span><span style="background:white none repeat scroll 0 50%;font-size:8pt;"> </span><span style="background:white none repeat scroll 0 50%;font-size:10pt;font-family:Courier;color:black;">SCOTT</span><span style="background:white none repeat scroll 0 50%;font-size:8pt;"> </span><span style="background:white none repeat scroll 0 50%;font-size:10pt;font-family:Courier;color:blue;">DEFAULT</span><span style="background:white none repeat scroll 0 50%;font-size:8pt;"> </span><span style="background:white none repeat scroll 0 50%;font-size:10pt;font-family:Courier;color:blue;">ROLE</span><span style="background:white none repeat scroll 0 50%;font-size:8pt;"> </span><span style="background:white none repeat scroll 0 50%;font-size:10pt;font-family:Courier;color:blue;">ALL;</span></p>
<p class="MsoNormal" style="margin-bottom:.0001pt;line-height:normal;"><strong><span style="background:white none repeat scroll 0 50%;font-size:10pt;font-family:Courier;color:green;">&#8211; 1 System Privilege for SCOTT </span></strong></p>
<p class="MsoNormal"><span style="background:white none repeat scroll 0 50%;font-size:10pt;line-height:115%;font-family:Courier;color:blue;">GRANT</span><span style="background:white none repeat scroll 0 50%;font-size:8pt;line-height:115%;"> </span><span style="background:white none repeat scroll 0 50%;font-size:10pt;line-height:115%;font-family:Courier;color:blue;">UNLIMITED</span><span style="background:white none repeat scroll 0 50%;font-size:8pt;line-height:115%;"> </span><span style="background:white none repeat scroll 0 50%;font-size:10pt;line-height:115%;font-family:Courier;color:blue;">TABLESPACE</span><span style="background:white none repeat scroll 0 50%;font-size:8pt;line-height:115%;"> </span><span style="background:white none repeat scroll 0 50%;font-size:10pt;line-height:115%;font-family:Courier;color:blue;">TO</span><span style="background:white none repeat scroll 0 50%;font-size:8pt;line-height:115%;"> </span><span style="background:white none repeat scroll 0 50%;font-size:10pt;line-height:115%;font-family:Courier;color:black;">SCOTT</span><span style="background:white none repeat scroll 0 50%;font-size:10pt;line-height:115%;font-family:Courier;color:blue;">;</span></p>
</blockquote>
<p class="MsoNormal">Notice that there are actually six SQL statements here (count the semi-colons), you must run them all in order. (First drop the user, then create the user, then grant roles, etc.). Also notice that the password is stored as an encrypted hash value; <span style="background:white none repeat scroll 0 50%;font-size:10pt;line-height:115%;font-family:Courier;color:red;">&#8216;F894844C34402B67&#8242;</span> is the encoding of the ‘tiger’ password. If you would like to change the password just take out the values keyword: <span style="color:#0000ff;">IDENTIFIED</span><span style="color:#0000ff;"> </span><span style="color:#0000ff;">BY</span><span style="background:white none repeat scroll 0 50%;font-size:8pt;"> </span><span style="background:white none repeat scroll 0 50%;font-size:10pt;font-family:Courier;color:red;"><span style="color:#ff0000;">&#8216;MyNewPassword&#8217;</span>.  Otherwise, keep the line as is.  Finally, since you are dropping and recreating the user notice that you must be logged in from a different user account – one with the permissions to do so. If you have access to the System user it will do nicely, this is the only time that you need to be logged in as a different user, make sure you get in and get out as quickly as possible to minimize potential damage.</span></p>
<p class="MsoNormal">Now with the Scott user created and cleared of any objects that might conflict with the ones we are trying to restore, we are ready to run the import.</p>
<blockquote>
<p class="MsoNormal">C:\Temp&gt;imp scott/release1@XE file=scott.dmp fromuser=(scott) touser=(scott)</p>
</blockquote>
<p class="MsoNormal">Break Down:</p>
<ul>
<li><!--[if !supportLists]--><!--[endif]-->imp scott/release1@XE – just like explained above, what user should the utility log in as when doing the import and at what Oracle instance. The user should have permissions to create tables, packages, etc. and to insert data.</li>
<li><!--[if !supportLists]--><!--[endif]-->file=scott.dmp – a file created by the exp command described above</li>
<li><!--[if !supportLists]--><!--[endif]-->fromuser=(scott) – since the .dmp file can create objects for multiple users, will search the file for all objects owned by this user(s) and import those. When there is only one user we can also omit the paretheses.</li>
<li><!--[if !supportLists]--><span style="font-family:Symbol;"><span style="font-style:normal;font-variant:normal;font-weight:normal;font-size:7pt;line-height:normal;"> </span></span><!--[endif]-->touser=(scott) – the objects we’re importing will be created need to be owned by a user already in the database, this is the user they will be created under. If our target database had two empty users scott and allan, and we did something like imp scott/release1@XE file=scott.dmp fromuser=scott touser=allan then the end result is that scott will still be empty but all of the objects saved to the file from the scott user will now have been imported to the allan user.</li>
</ul>
<p>And you’re done. Don’t forget to check for <a href="http://www.dba-oracle.com/t_invalid_objects.htm">invalid objects</a> if you are transferring data between two different oracle instances or users. Enjoy!</p>
<p class="MsoNormal"> </p>
<h4>Errors That I’ve Commonly Run Into</h4>
<p class="MsoListParagraphCxSpFirst" style="text-indent:-.25in;"><!--[if !supportLists]--><span style="font-family:Symbol;">·<span style="font-style:normal;font-variant:normal;font-weight:normal;font-size:7pt;line-height:normal;"> </span></span><!--[endif]-->You are attempting to run imp and you get <strong>IMP-00015: following statement failed because the object already exists</strong> scrolled to the screen.  Generally this means that you forgot to empty the target user. Drop and recreate them or manually drop all the objects the import is complaining about.</p>
<p class="MsoListParagraphCxSpMiddle" style="text-indent:-.25in;"><!--[if !supportLists]--><span style="font-family:Symbol;">·<span style="font-style:normal;font-variant:normal;font-weight:normal;font-size:7pt;line-height:normal;"> </span></span><!--[endif]-->You are attempting to run imp and you get <strong>IMP-00010: not a valid export file, header failed verification</strong>. This in my experience is caused not so much by a mismatch in the versions of Oracle as Google would suggest but by a mismatch in the versions of the exp and imp utilities.  For example if I go to my Oracle Server I can check the version of the export utility</p>
<blockquote>
<p class="MsoListParagraphCxSpMiddle">C:\Documents and Settings\Administrator.WESTWAY-AD1&gt;exp</p>
<p class="MsoListParagraphCxSpMiddle">Export: Release 10.2.0.1.0 &#8211; Production on Wed Jun 25 16:50:19 2008</p>
</blockquote>
<p class="MsoListParagraphCxSpMiddle"> </p>
<p class="MsoListParagraphCxSpMiddle">And if I try the same thing on my Desktop I get:</p>
<blockquote>
<p class="MsoListParagraphCxSpMiddle">C:\Temp&gt;exp</p>
<p class="MsoListParagraphCxSpMiddle">Export: Release 9.2.0.1.0 &#8211; Production on Wed Jun 25 16:49:27 2008</p>
</blockquote>
<p class="MsoListParagraphCxSpLast">You will have to find and download the same version of each.  Sorry about that.</p>
]]></content:encoded>
			<wfw:commentRss>http://georgemauer.net/blog/backing-up-and-restoring-oracle-databases/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>QuickTime and a TIFF (Uncompressed) decompressor are needed to see this picture</title>
		<link>http://georgemauer.net/blog/quicktime-and-a-tiff-uncompressed-decompressor-are-needed-to-see-this-picture/</link>
		<comments>http://georgemauer.net/blog/quicktime-and-a-tiff-uncompressed-decompressor-are-needed-to-see-this-picture/#comments</comments>
		<pubDate>Mon, 12 May 2008 13:59:33 +0000</pubDate>
		<dc:creator>togakangaroo</dc:creator>
				<category><![CDATA[Album]]></category>

		<guid isPermaLink="false">http://nothingyoumissed.wordpress.com/?p=9</guid>
		<description><![CDATA[Microsoft Office on a Mac can&#8217;t save imagesQuickTime and a TIFF (Uncompressed) decompressor are needed to see this picture I have run into this problem a few times and I figured I&#8217;d blog about it both to vent my frustration and to make a note for the next time this comes back to haunt me. [...]]]></description>
			<content:encoded><![CDATA[<p>Microsoft Office on a Mac can&#8217;t save imagesQuickTime and a TIFF (Uncompressed) decompressor are needed to see this picture</p>
<p>I have run into this problem a few times and I figured I&#8217;d blog about it both to vent my frustration and to make a note for the next time this comes back to haunt me.</p>
<p>So you get a shiny new Macintosh, you fire it up to discover that the friendly folks over at apple have pre-loaded it with the Mac version of Microsoft Office.  Including Excel, PowerPoint, and your favorite word processor Microsoft Word! (Oh just admit it, you’ve never tried a different one.)   So you fire it up and start pumping out document after document.  It’s wonderful; you get the familiarity of MS Office with the slickness of a Mac.  You format up your word file, place a nice logo or banner image as a header and you send it to your friends, or Wendy down in marketing, or even worse your boss.  They are of course not enlightened like you; they’re still using that old bludgeon, a Windows PC.  Oh well, at least you’ll get to brag to them later about your increased productivity and transcendent, almost religious, user experience.  And then you get the call: “These pictures aren’t working!” they cry.  You send them the file again – perhaps it got corrupted in email transit – but no, the problems persist.  After half a day of this you are forced to trek over to the foolish nonce’s computer to witness for yourself how they are possibly managing to screw this simple process up.  You make sure the files are identical – same checksum, no corruption and you open it up to see…to see:</p>
<blockquote><p>“QuickTime and a TIFF (Uncompressed) decompressor are needed to see this picture.”</p></blockquote>
<p>Huh?  Excuse me?  Where are your images?  Does QuickTime suddenly have something to do with Word?  Does the Word spelling dictionary even recognize ‘decompressor’ as a valid term?  The answers are, in order: They’re there but invisible, it does on a Mac, and an emphatic no.</p>
<p>I don’t know if it was laziness, an evil marketing ploy, or what but it seems like the team responsible for the Mac version of MS Office used QuickTime image compression for storing some formats of embedded image files.  The upshot of this is that those images are not visible on a PC, will never be visible on a PC, and you’re going to be left feeling frustrated, embarrassed, and probably a little violated.  God forbid this was a powerpoint file.</p>
<p><a href="http://www.le.ac.uk/av/pms12/ppt/qt_decompressor.html">The solutions to this quandary aren’t good.</a> You basically have to either reinsert the images into the file on a PC or convert the images on the Mac to uncompressed bitmaps, re-insert them, and re-save the file with no compression.  Needless to say this is awful programming.  Really like mid-90s Windows 95 level bad.  I actually would not be surprised if this WAS a dickish screw you to Mac users from somewhere deep in the Microsoft psyche (read marketing).  Either that or they just didn’t feel like porting that part of the software properly.  This has also been a problem for a long time with no effort by the powers that be for a resolution.  Just when I was starting to think that Micro$oft ain’t all that bad.  Sigh.</p>
<p>So in conclusion what’s the final word?  Well there is one solution, and – you might have guessed it by now – <a title="Download this now!" href="http://download.openoffice.org/" target="_blank">it’s called Open Office.</a> Presto!  Now don’t you definitely feel better than that silly co-worker/boss of yours?</p>
<p>that are viewable on a PC?</p>
]]></content:encoded>
			<wfw:commentRss>http://georgemauer.net/blog/quicktime-and-a-tiff-uncompressed-decompressor-are-needed-to-see-this-picture/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
	</channel>
</rss>
