<?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>Adam Sherman &#187; Software</title>
	<atom:link href="http://www.sherman.ca/archives/category/software/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.sherman.ca</link>
	<description>Mostly random thoughts on software, gear and the great outdoors.</description>
	<lastBuildDate>Fri, 09 Jul 2010 14:12:24 +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>Versature is Hiring</title>
		<link>http://www.sherman.ca/archives/2010/05/20/versature-is-hiring/</link>
		<comments>http://www.sherman.ca/archives/2010/05/20/versature-is-hiring/#comments</comments>
		<pubDate>Thu, 20 May 2010 14:59:53 +0000</pubDate>
		<dc:creator>adam</dc:creator>
				<category><![CDATA[Software]]></category>

		<guid isPermaLink="false">http://www.sherman.ca/?p=216</guid>
		<description><![CDATA[Looking for a job?]]></description>
			<content:encoded><![CDATA[<p>Thought I&#8217;d leave a note here that <a href="http://versature.com">Versature</a> is <a href="http://versature.com/about/jobs">hiring</a>. Notably, I&#8217;m looking for a developer with fresh user interface design ideas:</p>

<p style="padding-left: 30px;">Versature is looking for a developer with experience designing and building awesome user interfaces for complex problem domains. Visual analytics tools, integration with Google Apps, Mobile Safari support, real-time user interaction are all topics we cover.  Knowledge of the Java platform and experience using remote service APIs a must. Send your cover letter to the email address listed in the TXT record of hr.versature.net.</p>

<p>I&#8217;m hoping we can leverage the<a href="http://code.google.com/webtoolkit/"> Google Web Toolkit (GWT)</a> for this.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.sherman.ca/archives/2010/05/20/versature-is-hiring/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Solaris Shared Library Troubleshooting Notes</title>
		<link>http://www.sherman.ca/archives/2008/03/25/solaris-shared-library-troubleshooting-notes/</link>
		<comments>http://www.sherman.ca/archives/2008/03/25/solaris-shared-library-troubleshooting-notes/#comments</comments>
		<pubDate>Tue, 25 Mar 2008 15:28:35 +0000</pubDate>
		<dc:creator>adam</dc:creator>
				<category><![CDATA[Software]]></category>
		<category><![CDATA[System]]></category>
		<category><![CDATA[solaris]]></category>

		<guid isPermaLink="false">http://www.sherman.ca/?p=108</guid>
		<description><![CDATA[Recently I have been building a few packages under an OpenSolaris Zone hosted by Joyent. Ran into a few issues with shared libraries, so here are my notes: Telling the Linker Where to Look You will often get an error like ld.so.1: conftest: fatal: libreadline.so.5: open failed: No such file or directory. This simply means [...]]]></description>
			<content:encoded><![CDATA[<p>Recently I have been building a few packages under an OpenSolaris Zone hosted by <a title="Joyent" href="http://www.joyent.com/">Joyent</a>. Ran into a few issues with shared libraries, so here are my notes:</p>

<h4>Telling the Linker Where to Look</h4>

<p>You will often get an error like <code>ld.so.1: conftest: fatal: libreadline.so.5: open failed: No such file or directory</code>. This simply means the linker can not find your library. The following command will tell the linker to append a new entry to the existing search path:
 
<pre># crle -u /path/to/lib/dir</pre>
You can retrieve the current configuration by simply running <code>crle</code> on it&#8217;s own, output should be something like this:
<pre>$ crle
Configuration file [version 4]: /var/ld/ld.config
  Platform:     32-bit LSB 80386
  Default Library Path (ELF):   /opt/local/lib:/opt/csw/lib:/usr/lib:/lib
  Trusted Directories (ELF):    /lib/secure:/usr/lib/secure  (system default)
Command line:
  crle -c /var/ld/ld.config -l /opt/local/lib:/opt/csw/lib:/usr/lib:/lib</pre>
 </p>

<h4>Getting Yourself Out of Trouble</h4>

<p>You can easily get yourself into a situation where your system is a brick by having an incomplete search path for the linker. For example, if you run <code>crle -l /foo/path/lib</code>, you will no longer be able to run anything at all since the linker will not find basic libraries it needs. I found a <a title="Changing Search Paths with crle(1) - they are a replacement" href="http://blogs.sun.com/rie/entry/changing_search_paths_with_crle">great post</a> on this topic which instructs you do use the <code>LD_NOCONFIG</code> environment variable to tell the linker to use a default configuration. You can then fix the issue:
<pre>$ sudo crle -l /opt/local/lib -l /opt/csw/lib -l /usr/lib -l /lib
ld.so.1: sudo: fatal: libpam.so.1: open failed: No such file or directory
Killed
$ LD_NOCONFIG=yes sudo crle -l /opt/local/lib -l /opt/csw/lib -l /usr/lib -l /lib</pre></p>
]]></content:encoded>
			<wfw:commentRss>http://www.sherman.ca/archives/2008/03/25/solaris-shared-library-troubleshooting-notes/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Open Source Includes Support Options</title>
		<link>http://www.sherman.ca/archives/2005/07/24/open-source-includes-support-options/</link>
		<comments>http://www.sherman.ca/archives/2005/07/24/open-source-includes-support-options/#comments</comments>
		<pubDate>Sun, 24 Jul 2005 22:39:43 +0000</pubDate>
		<dc:creator>adam</dc:creator>
				<category><![CDATA[General]]></category>
		<category><![CDATA[Software]]></category>

		<guid isPermaLink="false">http://www.sherman.ca/2005/07/24/open-source-includes-support-options/</guid>
		<description><![CDATA[O&#8217;Reilly&#8217;s ONLamp has a great article which is most interesting. The premise is that Open Source software includes support options instead of support futures. I love it: [Open source is] converting warrants on future maintenance and enhancements into options, which means that instead of having a sole supplier (warrants), we have created a third-party market [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://www.oreilly.com/">O&#8217;Reilly&#8217;s</a> <a href="http://www.onlamp.com/">ONLamp</a> has a great <a href="http://www.onlamp.com/pub/a/onlamp/2005/07/21/software_pricing.html">article</a> which is most interesting. The premise is that Open Source software includes <em>support options</em> instead of <em>support futures</em>. I love it:</p>

<p style="text-align:justify;text-indent:20pt;">[Open source is]<em> converting warrants on future maintenance and enhancements into options, which means that instead of having a sole supplier (warrants), we have created a third-party market (options) of these derivatives.</em></p>

<p style="text-align:justify;text-indent:20pt;"><em>How capitalistic is that?</em>
</p>

<p style="text-align:justify;">Very well said indeed. Found it from <a href="http://rlove.org/log/2005072301">here</a>.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.sherman.ca/archives/2005/07/24/open-source-includes-support-options/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>DrunkenBlog: Behind the Red Shed, with Jonathan &#8216;The Wolf&#8217; Rentzsch</title>
		<link>http://www.sherman.ca/archives/2005/03/28/drunkenblog-behind-the-red-shed-with-jonathan-the-wolf-rentzsch/</link>
		<comments>http://www.sherman.ca/archives/2005/03/28/drunkenblog-behind-the-red-shed-with-jonathan-the-wolf-rentzsch/#comments</comments>
		<pubDate>Mon, 28 Mar 2005 12:06:03 +0000</pubDate>
		<dc:creator>adam</dc:creator>
				<category><![CDATA[General]]></category>
		<category><![CDATA[J2EE]]></category>
		<category><![CDATA[Software]]></category>

		<guid isPermaLink="false">http://www.sherman.ca/2005/03/28/drunkenblog-behind-the-red-shed-with-jonathan-the-wolf-rentzsch/</guid>
		<description><![CDATA[In this post on DrunkenBlog, Jonathan Rentzsch gives a terrific interview. Notably, he discusses Apple&#8217;s enterprise software development gem, WebObjects, which I&#8217;ve always wanted to know more about. Anyone know if there is a downloadable developer&#8217;s version somewhere? Update: Yes, you can download a 1 month evaluation copy from http://connect.apple.com/.]]></description>
			<content:encoded><![CDATA[<p>In this <a href="http://www.drunkenblog.com/drunkenblog-archives/000513.html" title="DrunkenBlog: Behind the Red Shed, with Jonathan 'The Wolf' Rentzsch">post</a> on <a href="http://www.drunkenblog.com/">DrunkenBlog</a>, Jonathan Rentzsch gives a terrific interview. Notably, he discusses Apple&#8217;s enterprise software development gem, WebObjects, which I&#8217;ve always wanted to know more about.</p>

<p>Anyone know if there is a downloadable developer&#8217;s version somewhere?</p>

<p><strong>Update:</strong> Yes, you can download a 1 month evaluation copy from <a href="http://connect.apple.com/">http://connect.apple.com/</a>.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.sherman.ca/archives/2005/03/28/drunkenblog-behind-the-red-shed-with-jonathan-the-wolf-rentzsch/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>JINI and JXTA</title>
		<link>http://www.sherman.ca/archives/2005/03/14/jini-and-jxta/</link>
		<comments>http://www.sherman.ca/archives/2005/03/14/jini-and-jxta/#comments</comments>
		<pubDate>Mon, 14 Mar 2005 16:28:48 +0000</pubDate>
		<dc:creator>adam</dc:creator>
				<category><![CDATA[J2EE]]></category>
		<category><![CDATA[Networking]]></category>

		<guid isPermaLink="false">http://www.sherman.ca/2005/03/14/jini-and-jxta/</guid>
		<description><![CDATA[Some days I wish I had way more energy in order to explore all the technology I&#8217;m interested in. How does JXTA figure in relation to JINI? Dan Creswell&#8217;s post about JINI not being RMI brought JINI back to the forefront of my technology todo list. This stuff is cool.]]></description>
			<content:encoded><![CDATA[<p>Some days I wish I had way more energy in order to explore all the technology I&#8217;m interested in.</p>

<p>How does <a href="http://www.jxta.org/">JXTA</a> figure in relation to <a href="http://www.sun.com/software/jini/">JINI</a>?</p>

<p>Dan Creswell&#8217;s <a href="http://www.jroller.com/page/dancres/20050314#jini_rmi">post</a> about <a href="http://www.sun.com/software/jini/">JINI</a> not being RMI brought <a href="http://www.sun.com/software/jini/">JINI</a> back to the forefront of my <em>technology todo list</em>. This stuff is cool.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.sherman.ca/archives/2005/03/14/jini-and-jxta/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Extracting URLs from .webloc Files</title>
		<link>http://www.sherman.ca/archives/2005/03/02/extracting-urls-from-webloc-files/</link>
		<comments>http://www.sherman.ca/archives/2005/03/02/extracting-urls-from-webloc-files/#comments</comments>
		<pubDate>Wed, 02 Mar 2005 14:36:08 +0000</pubDate>
		<dc:creator>adam</dc:creator>
				<category><![CDATA[General]]></category>
		<category><![CDATA[Software]]></category>

		<guid isPermaLink="false">http://www.sherman.ca/2005/03/02/extracting-urls-from-webloc-files/</guid>
		<description><![CDATA[Before I forget how to do this, here is a simple way to extrac URLs from Safari&#8217;s .webloc files: find ./ -name '*.webloc' -exec strings '{}'/rsrc \; &#124; grep http &#124; sed '/^.http/s//http/' &#124; sort -u &#124; pbcopy Seems to work for me.]]></description>
			<content:encoded><![CDATA[<p>Before I forget how to do this, here is a simple way to extrac URLs from Safari&#8217;s <code>.webloc</code> files:</p>

<p><code>find ./ -name '*.webloc' -exec strings '{}'/rsrc \; | grep http | sed '/^.http/s//http/' | sort -u | pbcopy</code></p>

<p>Seems to work for me.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.sherman.ca/archives/2005/03/02/extracting-urls-from-webloc-files/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>JAM&#8217;ing with Maven and Ant</title>
		<link>http://www.sherman.ca/archives/2005/02/28/jaming-with-maven-and-ant/</link>
		<comments>http://www.sherman.ca/archives/2005/02/28/jaming-with-maven-and-ant/#comments</comments>
		<pubDate>Mon, 28 Feb 2005 22:07:44 +0000</pubDate>
		<dc:creator>adam</dc:creator>
				<category><![CDATA[J2EE]]></category>

		<guid isPermaLink="false">http://www.sherman.ca/2005/02/28/jaming-with-maven-and-ant/</guid>
		<description><![CDATA[Now I really don&#8217;t get this project. At first glance, JAM seems to provide some of the Maven functionality in a nice, structured, way using Ant. The part I don&#8217;t grok is that JAM depends on Maven. Huh? Since I am sure to be missing something and am very interested in build tools, please comment [...]]]></description>
			<content:encoded><![CDATA[<p>Now I really don&#8217;t get <a href="http://www.javagen.com/jam/">this project</a>. At first glance, <a href="http://www.javagen.com/jam/">JAM</a> seems to provide some of the <a href="http://maven.apache.org/">Maven</a> functionality in a nice, structured, way using <a href="http://ant.apache.org/">Ant</a>. The part I don&#8217;t grok is that <a href="http://www.javagen.com/jam/">JAM</a> depends on <a href="http://maven.apache.org/">Maven</a>. Huh?</p>

<p>Since I am sure to be missing something and am <strong>very</strong> interested in build tools, please comment if anyone can do a good job of explaining where <a href="http://www.javagen.com/jam/">JAM</a> fits.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.sherman.ca/archives/2005/02/28/jaming-with-maven-and-ant/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Trails Makes Tapestry Smell Good</title>
		<link>http://www.sherman.ca/archives/2005/02/22/trails-makes-tapestry-smell-good/</link>
		<comments>http://www.sherman.ca/archives/2005/02/22/trails-makes-tapestry-smell-good/#comments</comments>
		<pubDate>Tue, 22 Feb 2005 21:30:03 +0000</pubDate>
		<dc:creator>adam</dc:creator>
				<category><![CDATA[J2EE]]></category>

		<guid isPermaLink="false">http://www.sherman.ca/2005/02/22/trails-makes-tapestry-smell-good/</guid>
		<description><![CDATA[I should now say something witty about Kool-Aid here&#8230; I&#8217;m in the process of reading the Trails tutorial by this guy (Trails&#8217; creator) and I am very enthused about the idea: I&#8217;ve always felt that code-generation is being overly used in J2EE development. I believe, as do others, that if you can generate it, you [...]]]></description>
			<content:encoded><![CDATA[<p>I should now say something witty about <a href="http://jroller.com/page/ccnelson/20050221#david_geary_ain_t_drinkin">Kool-Aid</a> here&#8230;</p>

<p>I&#8217;m in the process of reading the <a href="http://trails.dev.java.net/">Trails</a> <a href="http://trails.dev.java.net/tutorial/">tutorial</a> by <a href="http://jroller.com/page/ccnelson">this guy</a> (<a href="http://trails.dev.java.net/">Trails&#8217;</a> creator) and I am very enthused about the idea: I&#8217;ve always felt that code-generation is being overly used in J2EE development. I believe, as do others, that if you can generate it, you should be able to handle it at runtime. (There are exceptions to this rule, of course.) Java has an <em>exceptional</em> reflection API, we should use it. Also, <a href="http://www.springframework.org">Spring</a> allows much of the work to be done via AOP. But I&#8217;m rambling a little here.</p>

<p>The major exception to my dislike of code generation has always been page templates. These are just dumb pieces of text, so you either need to build them by hand or generate them. I&#8217;ve never really understood what <a href="http://jakarta.apache.org/tapestry">Tapestry</a> was about until I started reading about <a href="http://trails.dev.java.net/">Trails</a> and realized that it was allowing us to push <em>object oriented design</em> all the way into the template layer of our applications.</p>

<p>They features of <a href="http://trails.dev.java.net/">Trails</a>, like allowing us to override the presentation of a <em>specific field</em> without building a template for the entire form and lack of code generation, are really exciting and will provide some great ideas for my current side project.</p>

<p>Those familiar with <a href="http://www.plone.org/">Plone</a> development will see some similarities here.</p>

<p>A.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.sherman.ca/archives/2005/02/22/trails-makes-tapestry-smell-good/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Top Ten Technology Predictions</title>
		<link>http://www.sherman.ca/archives/2005/02/20/top-ten-technology-predictions/</link>
		<comments>http://www.sherman.ca/archives/2005/02/20/top-ten-technology-predictions/#comments</comments>
		<pubDate>Mon, 21 Feb 2005 02:23:54 +0000</pubDate>
		<dc:creator>adam</dc:creator>
				<category><![CDATA[General]]></category>
		<category><![CDATA[J2EE]]></category>

		<guid isPermaLink="false">http://www.sherman.ca/2005/02/20/top-ten-technology-predictions/</guid>
		<description><![CDATA[I try hard not to link blog, but this post on Cameron Purdy&#8217;s blog, /dev/null, is great. I&#8217;ll save you the anxiety: And a drum roll, please .. 1 &#8211; At the 2005 TSS Symposium, Rod Johnson will not be able to resist saying the word &#8220;Spring.&#8221; Yup, it&#8217;s like trying not to think of [...]]]></description>
			<content:encoded><![CDATA[<p>I try hard not to link blog, but this <a href="http://jroller.com/page/cpurdy/20050105#top_ten_technology_predictions" title="Top Ten Technology Predictions">post</a> on Cameron Purdy&#8217;s blog, <a href="http://jroller.com/page/cpurdy">/dev/null</a>, is great. I&#8217;ll save you the anxiety:</p>

<blockquote>
  <p><em>And a drum roll, please ..</em></p>
  
  <p><strong>1</strong> &#8211; At the 2005 TSS Symposium, Rod Johnson will not be able to resist saying the word &#8220;Spring.&#8221; Yup, it&#8217;s like trying not to think of pink elephants &#8212; impossible once you get that in your head. Spring, spring, spring, spring. La tee dah, spring spring spring. Take that, Linda. Spring-diddy-spring spring. Spring.</p>
</blockquote>

<p><em>grin</em></p>
]]></content:encoded>
			<wfw:commentRss>http://www.sherman.ca/archives/2005/02/20/top-ten-technology-predictions/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Maven vs Ant Reloaded</title>
		<link>http://www.sherman.ca/archives/2005/02/20/maven-vs-ant-reloaded/</link>
		<comments>http://www.sherman.ca/archives/2005/02/20/maven-vs-ant-reloaded/#comments</comments>
		<pubDate>Mon, 21 Feb 2005 01:59:55 +0000</pubDate>
		<dc:creator>adam</dc:creator>
				<category><![CDATA[J2EE]]></category>

		<guid isPermaLink="false">http://www.sherman.ca/2005/02/20/maven-vs-ant-reloaded/</guid>
		<description><![CDATA[Some time ago, I posted a short entry on Maven vs Ant. Since then, I have continued to use Ant while periodically taking yet another look at Maven. This week, I came across this post on Otaku talking about keeping your Ant builds maintainable using &#60;import&#62; and &#60;macrodef&#62;. Greater maintainability seems to be one of [...]]]></description>
			<content:encoded><![CDATA[<p>Some time ago, I <a href="http://www.sherman.ca/archives/2004/07/04/maven-vs-ant/">posted a short entry</a> on <a href="http://maven.apache.org/">Maven</a> vs <a href="http://ant.apache.org/">Ant</a>. Since then, I have continued to use <a href="http://ant.apache.org/">Ant</a> while periodically taking yet another look at <a href="http://maven.apache.org/">Maven</a>.</p>

<p>This week, I came across this <a href="http://beust.com/weblog/archives/000244.html">post</a> on Otaku talking about keeping your <a href="http://ant.apache.org/">Ant</a> builds maintainable using <code>&lt;import&gt;</code> and <code>&lt;macrodef&gt;</code>. Greater maintainability seems to be one of the reasons <a href="http://maven.apache.org/">Maven</a> was created: allowing you to avoid creating build target spaghetti by describing the project and applying standard <em>goals</em>. These new <a href="http://ant.apache.org/">Ant</a> features can provide this maintainability, while keeping all the flexibility we&#8217;ve grown accustomed to.</p>

<p>Cedric&#8217;s post then led me to this <a href="http://www.almaer.com/blog/archives/000707.html">comment thread</a> on techno.blog(&#8220;Dion&#8221;) where a good discussion is taking place.</p>

<p>Finally, I can no longer remember how I got there, but dependancy management tools for <a href="http://ant.apache.org/">Ant</a> came up. TSS has an <a href="http://www.theserverside.com/articles/content/Savant/article.html</macrodef></import">article</a> on Savant, part of <a href="http://www.inversoft.com/">Inversoft</a>&#8216;s <a href="https://verge.dev.java.net/">Verge</a> project and a <a href="http://www.mallim.per.sg/archives/2005/02/20/ant-dependency-resolver/">post on Mallim Ink</a> pointed me to Jayasoft&#8217;s <a href="http://www.jayasoft.fr/org/modules/ivy/overview.php">Ivy</a> project. Both projects look very interesting; I think I will try out <a href="http://www.jayasoft.fr/org/modules/ivy/overview.php">Ivy</a> shortly.</p>

<p><strong>Update:</strong> Colin <a href="http://blog.exis.com/colin/archives/2005/03/10/ivy-is-everything-maven-should-havecould-have-been-25-years-ago/">writes</a> about <a href="http://www.jayasoft.fr/org/modules/ivy/overview.php">Ivy</a> and seems very positive.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.sherman.ca/archives/2005/02/20/maven-vs-ant-reloaded/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
