<?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>Kyle Smith &#187; tip</title>
	<atom:link href="http://blog.infinitechaos.com/category/tip/feed/" rel="self" type="application/rss+xml" />
	<link>http://blog.infinitechaos.com</link>
	<description>No magic here</description>
	<lastBuildDate>Tue, 19 Jan 2010 03:25:38 +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>Recovering lost files in Eclipse</title>
		<link>http://blog.infinitechaos.com/2009/03/01/recovering-lost-files-in-eclipse/</link>
		<comments>http://blog.infinitechaos.com/2009/03/01/recovering-lost-files-in-eclipse/#comments</comments>
		<pubDate>Mon, 02 Mar 2009 02:50:26 +0000</pubDate>
		<dc:creator>kyle</dc:creator>
				<category><![CDATA[tip]]></category>
		<category><![CDATA[eclipse]]></category>

		<guid isPermaLink="false">http://blog.infinitechaos.com/?p=293</guid>
		<description><![CDATA[If you find yourself working Eclipse and a file you&#8217;re working on gets deleted inadvertently there may be some hope of recovery. Right-click on the project the file was in and select Restore from Local History.  You&#8217;ll be presented with a dialog that lists recent file revisions in the project and be given an option [...]]]></description>
			<content:encoded><![CDATA[<p>If you find yourself working Eclipse and a file you&#8217;re working on gets deleted inadvertently there may be some hope of recovery.</p>
<p>Right-click on the project the file was in and select Restore from Local History.  You&#8217;ll be presented with a dialog that lists recent file revisions in the project and be given an option to restore them.</p>
<p>Thanks to <a title="Stephen Evanchik" href="http://stephen.evanchik.com/">Stephen</a> for the tip.  And yes, I probably do owe him brownies by now. <img src='http://blog.infinitechaos.com/wp-includes/images/smilies/icon_razz.gif' alt=':-P' class='wp-smiley' /> </p>
<p>Note: I scheduled this post on Feb 2 but apparently it never went live.  So Stephen did get brownies at one point.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.infinitechaos.com/2009/03/01/recovering-lost-files-in-eclipse/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Getting the Arduino IDE running on Mac OS X with 64-bit Java</title>
		<link>http://blog.infinitechaos.com/2009/01/29/getting-arduino-running-on-mac-os-x-with-64-bit-java/</link>
		<comments>http://blog.infinitechaos.com/2009/01/29/getting-arduino-running-on-mac-os-x-with-64-bit-java/#comments</comments>
		<pubDate>Fri, 30 Jan 2009 03:02:34 +0000</pubDate>
		<dc:creator>kyle</dc:creator>
				<category><![CDATA[tip]]></category>
		<category><![CDATA[64-bit]]></category>
		<category><![CDATA[arduino]]></category>
		<category><![CDATA[java6]]></category>
		<category><![CDATA[macosx]]></category>
		<category><![CDATA[rxtx]]></category>

		<guid isPermaLink="false">http://blog.infinitechaos.com/?p=286</guid>
		<description><![CDATA[The other day I ordered an Arduino Duemilanove from Maker Shed and in anticipation of its arrival I went and downloaded the Arduino software to play around with.  I ran it and immediately got this error, which has been reported a number of times in the forums and mailing lists: java.lang.UnsatisfiedLinkError: /Users/kylesm/Downloads/arduino-0012/Arduino 12.app/Contents/Resources/Java/librxtxSerial.jnilib:  thrown while [...]]]></description>
			<content:encoded><![CDATA[<p>The other day I ordered an <a title="Arduino" href="http://www.arduino.cc">Arduino Duemilanove</a> from <a title="Maker Shed" href="http://www.makershed.com">Maker Shed</a> and in anticipation of its arrival I went and downloaded the Arduino software to play around with.  I ran it and immediately got this error, which has been reported a number of times in the forums and mailing lists:</p>
<blockquote><p>java.lang.UnsatisfiedLinkError: /Users/kylesm/Downloads/arduino-0012/Arduino 12.app/Contents/Resources/Java/librxtxSerial.jnilib:  thrown while loading gnu.io.RXTXCommDriver</p></blockquote>
<p>I tried rebuilding <a title="RXTX" href="http://rxtx.qbang.org/wiki/index.php/Main_Page">rxtx</a> with 64-bit support as documented <a title="RXTX mailing list post with a fix" href="http://mailman.qbang.org/pipermail/rxtx/2008-May/2510291.html">here</a> and <a title="RXTX on Mac OS X installation instructions" href="http://rxtx.qbang.org/wiki/index.php/Installation_on_MacOS_X">here</a> and then overwrote the copy that shipped with Arduino but continued to get the same error.  I then got the idea of copying the library and JAR from <a title="Processing" href="http://www.processing.org">Processing</a> (upon which it&#8217;s based) since that works just fine.  Same error.</p>
<p>The final trick was to edit the Info.plist for the app and change the value for the JVMVersion property to 1.5* (which is what Processing does) and it worked perfectly because the 32-bit version of the JDK 1.5 is my second choice in the Java Preferences app:</p>
<p><img class="alignnone size-full wp-image-287" title="Mac OS X Java preferences" src="http://blog.infinitechaos.com/wp-content/uploads/2009/01/javasettings.png" alt="Mac OS X Java preferences" width="264" height="163" /></p>
<p>So in the end I couldn&#8217;t get it working with a 64-bit JVM and didn&#8217;t need to rebuild rxtx, but thankfully Apple includes just about every version it&#8217;s ever produced so it wasn&#8217;t a big deal.</p>
<p>The problem is primarily due to the fact that the Arduino IDE uses a native library that was built without 64-bit support and I&#8217;ve got Apple&#8217;s 64-bit JVM set as my default for work.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.infinitechaos.com/2009/01/29/getting-arduino-running-on-mac-os-x-with-64-bit-java/feed/</wfw:commentRss>
		<slash:comments>6</slash:comments>
		</item>
		<item>
		<title>Keep track of how you solve problems</title>
		<link>http://blog.infinitechaos.com/2009/01/11/solutions-logs/</link>
		<comments>http://blog.infinitechaos.com/2009/01/11/solutions-logs/#comments</comments>
		<pubDate>Sun, 11 Jan 2009 05:34:26 +0000</pubDate>
		<dc:creator>kyle</dc:creator>
				<category><![CDATA[tip]]></category>
		<category><![CDATA[agile]]></category>
		<category><![CDATA[daylog]]></category>
		<category><![CDATA[pad]]></category>
		<category><![CDATA[solutionlog]]></category>

		<guid isPermaLink="false">http://blog.infinitechaos.com/?p=274</guid>
		<description><![CDATA[Last month while sitting at a Barnes &#38; Noble I picked up and read a copy of Venkat Subramaniam and Andy Hunt&#8217;s book Practices of an Agile Developer: Working in the Real World.  The book is a collection of good tips for developers to follow.  One of them in particular, #33, struck a chord: Keep [...]]]></description>
			<content:encoded><![CDATA[<p>Last month while sitting at a Barnes &amp; Noble I picked up and read a copy of Venkat Subramaniam and Andy Hunt&#8217;s book <em>Practices of an Agile Developer: Working in the Real World</em>.  The book is a collection of good tips for developers to follow.  One of them in particular, #33, struck a chord: Keep a Solutions Log.</p>
<p><strong>What is a solutions log?</strong></p>
<p>You&#8217;ve probably heard of the idea before or seen analogous practices only under a different name: Star Trek had ship&#8217;s or captain&#8217;s logs, IBMers have runlogs, other engineers have daylogs.  In this case, a solutions log is a personal record of the problems you&#8217;ve encountered and the answers you&#8217;ve found to them, with the intent of documenting the answer for all time so you&#8217;re not burned by the problem again.  If you&#8217;re kind enough to post it someplace Web accessible, others won&#8217;t get burned either!</p>
<p>I got accustomed to logging my activities (and by extension, the problems I encountered) while working at IBM but have been rather lax about doing the same while employed by VMware.  Periodically I&#8217;d scribble notes on a sheet of paper while working but they never quite got organized or put in an easily-searchable form.</p>
<p>Since reading <em>PAD</em> I&#8217;ve been maintaining a plain text file with my progress as well as any problems/solutions I encounter.  It&#8217;s already proved useful a number of times, especially when engaging in design decisions with colleagues and I know there is a particular reason to not do something.  If you decide to try it out, hopefully you find the practice just as useful.</p>
<p>If you don&#8217;t want to <a title="Buy it on Amazon" href="http://www.amazon.com/gp/product/097451408X?ie=UTF8&amp;tag=infinitechaos-20&amp;linkCode=as2&amp;camp=1789&amp;creative=390957&amp;creativeASIN=097451408X">buy a copy of the book</a> (or read it in a bookstore), you can download a PDF except of the book that includes this tip from the Pragmatic Programmer website: <a title="Book excerpt" href="http://media.pragprog.com/titles/pad/CodeAndDebug.pdf">http://media.pragprog.com/titles/pad/CodeAndDebug.pdf</a>.  You can also find additional information about the book on <a title="Practices of an Agile Developer" href="http://www.pragprog.com/titles/pad/practices-of-an-agile-developer">its official page</a>.</p>
<p>One other tip in a similar vein: if you post a problem to a discussion forum or mailing list, please please please follow up with the solution once you find it.  There&#8217;s nothing so frustrating as identifying people that experienced the same problem as you but not knowing how they solved it! <img src='http://blog.infinitechaos.com/wp-includes/images/smilies/icon_smile.gif' alt=':-)' class='wp-smiley' /> </p>
]]></content:encoded>
			<wfw:commentRss>http://blog.infinitechaos.com/2009/01/11/solutions-logs/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Another m2eclipse tip</title>
		<link>http://blog.infinitechaos.com/2008/12/30/another-m2eclipse-tip/</link>
		<comments>http://blog.infinitechaos.com/2008/12/30/another-m2eclipse-tip/#comments</comments>
		<pubDate>Tue, 30 Dec 2008 15:19:26 +0000</pubDate>
		<dc:creator>kyle</dc:creator>
				<category><![CDATA[tip]]></category>
		<category><![CDATA[eclipse]]></category>
		<category><![CDATA[jaxb]]></category>
		<category><![CDATA[m2eclipse]]></category>
		<category><![CDATA[maven]]></category>

		<guid isPermaLink="false">http://blog.infinitechaos.com/?p=269</guid>
		<description><![CDATA[Came across another small bug with m2eclipse yesterday when editing an XML schema in a project that used  the Maven plugin for JAXB (jaxb2-maven-plugin).  You may find Eclipse complaining that it cannot build your project because of this error: An internal error occurred during: &#8220;Building workspace&#8221;. Provider org.apache.xerces.jaxp.SAXParserFactoryImpl not found The underlying problem may be [...]]]></description>
			<content:encoded><![CDATA[<p>Came across another small bug with <a title="Maven Integration for Eclipse" href="http://m2eclipse.codehaus.org/">m2eclipse</a> yesterday when editing an XML schema in a project that used  the Maven plugin for <a title="Java Architecture for XML Binding" href="http://java.sun.com/developer/technicalArticles/WebServices/jaxb/">JAXB</a> (jaxb2-maven-plugin).  You may find Eclipse complaining that it cannot build your project because of this error:</p>
<blockquote><p>An internal error occurred during: &#8220;Building workspace&#8221;.<br />
Provider org.apache.xerces.jaxp.SAXParserFactoryImpl not found</p></blockquote>
<p>The underlying problem may be due to classloader funkiness with the embedded version of Maven (since command-line Maven works fine) or some transitive dependency not being handled correctly.</p>
<p>Anyway, the workaround mentioned in <a title="m2eclipse bug details" href="http://jira.codehaus.org/browse/MNGECLIPSE-716">this bug</a> on the Codehaus JIRA solved the problem.  The solution is to explicitly add Xerces as a dependency to your POM:</p>
<pre>&lt;dependency&gt;
    &lt;groupId&gt;xerces&lt;/groupId&gt;
    &lt;artifactId&gt;xercesImpl&lt;/artifactId&gt;
    &lt;version&gt;2.8.1&lt;/version&gt;
&lt;/dependency&gt;</pre>
<p>Once you&#8217;ve done that, right-click on your project in the Package Explorer and select Maven &gt; Update Dependencies. Eclipse should then be able to rebuild the project.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.infinitechaos.com/2008/12/30/another-m2eclipse-tip/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>m2eclipse tip</title>
		<link>http://blog.infinitechaos.com/2008/12/20/m2eclipse-tip/</link>
		<comments>http://blog.infinitechaos.com/2008/12/20/m2eclipse-tip/#comments</comments>
		<pubDate>Sat, 20 Dec 2008 22:59:39 +0000</pubDate>
		<dc:creator>kyle</dc:creator>
				<category><![CDATA[tip]]></category>
		<category><![CDATA[eclipse]]></category>
		<category><![CDATA[felix]]></category>
		<category><![CDATA[m2eclipse]]></category>
		<category><![CDATA[maven]]></category>

		<guid isPermaLink="false">http://blog.infinitechaos.com/?p=257</guid>
		<description><![CDATA[Here&#8217;s a tip for a very specific problem I recently encountered when using Maven and the Felix maven-bundle-plugin in Eclipse, and I&#8217;m sure it can happen with other plugins. There wasn&#8217;t an immediate answer to this problem when I used Google to search for it. When Maven is running in offline mode (set in the [...]]]></description>
			<content:encoded><![CDATA[<p>Here&#8217;s a tip for a very specific problem I recently encountered when using <a title="Apache Maven" href="http://maven.apache.org">Maven</a> and the <a title="Apache Felix" href="http://felix.apache.org">Felix</a> <a title="Apache Felix Bundle Plugin for Maven" href="http://felix.apache.org/site/apache-felix-maven-bundle-plugin-bnd.html">maven-bundle-plugin</a> in <a title="Eclipse" href="http://www.eclipse.org">Eclipse</a>, and I&#8217;m sure it can happen with other plugins. There wasn&#8217;t an immediate answer to this problem when I used Google to search for it.</p>
<p>When Maven is running in offline mode (set in the Maven section of the Eclipse preferences), if you haven&#8217;t specified a version for certain plugins — like the maven-bundle-plugin — Eclipse will report an error like this:</p>
<blockquote><p>Project build error:Cannot resolve pre-scanned plugin artifact (for use as an extension): org.apache.felix:maven-bundle-plugin: Failed to resolve extension plugin: org.apache.felix:maven-bundle-plugin:maven-plugin:RELEASE</p></blockquote>
<p>Maven outside of Eclipse will most likely continue to work fine, but Eclipse will be one unhappy camper.  Your project may even lose its Java nature if <a title="Maven Integration for Eclipse" href="http://m2eclipse.codehaus.org/">m2eclipse</a> is unable to resolve the dependencies.</p>
<p>The solution is to either allow Maven to run in online mode (Preferences &gt; Maven) or add a &lt;version&gt; element to the plugin configuration (see example below). It seems that specifying the version in the pluginManagement section of the pom.xml may not even solve the problem.</p>
<pre>&lt;plugin&gt;
	&lt;groupId&gt;org.apache.felix&lt;/groupId&gt;
	&lt;artifactId&gt;maven-bundle-plugin&lt;/artifactId&gt;
	<strong>&lt;version&gt;1.4.3&lt;/version&gt;</strong>
	&lt;extensions&gt;true&lt;/extensions&gt;
	&lt;configuration&gt;
		...
	&lt;/configuration&gt;
&lt;/plugin&gt;</pre>
<p>Once you make one of these changes Eclipse/m2eclipse should rescan the project and fix it.  If it doesn&#8217;t get fixed immediately, right-click on your project in the Package Explorer and choose Maven &gt; Update Dependencies and Maven &gt; Update Project Configuration.</p>
<p><strong>Note:</strong> I&#8217;m assuming you&#8217;re using a stable development build of m2eclipse. The non-dev version didn&#8217;t have these options when I last checked.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.infinitechaos.com/2008/12/20/m2eclipse-tip/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
