<?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>sides of march &#187; O/R Mappers</title>
	<atom:link href="http://www.sidesofmarch.com/index.php/archive/tag/or-mappers/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.sidesofmarch.com</link>
	<description>Thoughts on life, liberty, and information technology</description>
	<lastBuildDate>Mon, 16 Jan 2012 02:43:26 +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>Wilson.ORMapper gets a few small updates</title>
		<link>http://www.sidesofmarch.com/index.php/archive/2008/02/13/wilsonormapper-gets-a-few-small-updates/</link>
		<comments>http://www.sidesofmarch.com/index.php/archive/2008/02/13/wilsonormapper-gets-a-few-small-updates/#comments</comments>
		<pubDate>Wed, 13 Feb 2008 21:47:30 +0000</pubDate>
		<dc:creator>brian</dc:creator>
				<category><![CDATA[Technology]]></category>
		<category><![CDATA[O/R Mappers]]></category>
		<category><![CDATA[Wilson O/R Mapper]]></category>

		<guid isPermaLink="false">http://www.sidesofmarch.com/index.php/archive/2008/02/13/wilsonormapper-gets-a-few-small-updates/</guid>
		<description><![CDATA[<p>I&#8217;ve finally gotten around to updating the public open source version of <a href="http://code.google.com/p/wilsonormapper/">Wilson.ORMapper</a> to match the release formerly known as Subscriber Preview 4.2.2.1. Revision 10 in the SVN repository matches the original 4.2.2.1, but includes the non-restrictive open source license.</p>
<p>I then went one step further &#8212; adding a patch which fixes a <a href="http://www.ormapper.net/Forums/Default.aspx?part=74&#38;action=thread&#38;id=2406&#38;key=NUqKT04wPJzFxe6kUXBQCg%3d%3d">known bug in WORM</a>. This patch also fixes unit test failures in WilsonORWrapper, which has also been updated to reference version 4.2.2.2 of WORM &#8212; the first truly official public release that has some code not provided directly from the original creator, <a href="http://www.wilsondotnet.com">Paul Wilson</a>.</p>
<p>Check out the Google Code project at <a title="http://code.google.com/p/wilsonormapper/" href="http://code.google.com/p/wilsonormapper/">http://code.google.com/p/wilsonormapper/</a>, or discuss on the <a href="http://groups.google.com/group/wilsonormapper">WilsonORMapper Google group</a>.</p>
<a class="addthis_button_preferred_1"></a><a class="addthis_button_preferred_2"></a><a class="addthis_button_preferred_3"></a><a <span style="color:#777"> . . .<br /><br />&#8594; Read More: <a href="http://www.sidesofmarch.com/index.php/archive/2008/02/13/wilsonormapper-gets-a-few-small-updates/">Wilson.ORMapper gets a few small updates</a></span>]]></description>
			<content:encoded><![CDATA[<p>I&#8217;ve finally gotten around to updating the public open source version of <a href="http://redirectingat.com?id=17923X751173&xs=1&url=http%3A%2F%2Fcode.google.com%2Fp%2Fwilsonormapper%2F&sref=rss">Wilson.ORMapper</a> to match the release formerly known as Subscriber Preview 4.2.2.1. Revision 10 in the SVN repository matches the original 4.2.2.1, but includes the non-restrictive open source license.</p>
<p>I then went one step further &#8212; adding a patch which fixes a <a href="http://redirectingat.com?id=17923X751173&xs=1&url=http%3A%2F%2Fwww.ormapper.net%2FForums%2FDefault.aspx%3Fpart%3D74%26amp%3Baction%3Dthread%26amp%3Bid%3D2406%26amp%3Bkey%3DNUqKT04wPJzFxe6kUXBQCg%253d%253d&sref=rss">known bug in WORM</a>. This patch also fixes unit test failures in WilsonORWrapper, which has also been updated to reference version 4.2.2.2 of WORM &#8212; the first truly official public release that has some code not provided directly from the original creator, <a href="http://redirectingat.com?id=17923X751173&xs=1&url=http%3A%2F%2Fwww.wilsondotnet.com&sref=rss">Paul Wilson</a>.</p>
<p>Check out the Google Code project at <a title="http://code.google.com/p/wilsonormapper/" href="http://redirectingat.com?id=17923X751173&xs=1&url=http%3A%2F%2Fcode.google.com%2Fp%2Fwilsonormapper%2F&sref=rss">http://code.google.com/p/wilsonormapper/</a>, or discuss on the <a href="http://redirectingat.com?id=17923X751173&xs=1&url=http%3A%2F%2Fgroups.google.com%2Fgroup%2Fwilsonormapper&sref=rss">WilsonORMapper Google group</a>.</p>
<img src="http://www.sidesofmarch.com/?ak_action=api_record_view&id=224&type=feed" alt="" /><div class="addthis_toolbox addthis_default_style addthis_32x32_style" addthis:url='http://www.sidesofmarch.com/index.php/archive/2008/02/13/wilsonormapper-gets-a-few-small-updates/' addthis:title='Wilson.ORMapper gets a few small updates ' ><a class="addthis_button_preferred_1"></a><a class="addthis_button_preferred_2"></a><a class="addthis_button_preferred_3"></a><a class="addthis_button_preferred_4"></a><a class="addthis_button_compact"></a></div>]]></content:encoded>
			<wfw:commentRss>http://www.sidesofmarch.com/index.php/archive/2008/02/13/wilsonormapper-gets-a-few-small-updates/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Castle Project has gone RC3</title>
		<link>http://www.sidesofmarch.com/index.php/archive/2007/09/21/castle-project-has-gone-rc3/</link>
		<comments>http://www.sidesofmarch.com/index.php/archive/2007/09/21/castle-project-has-gone-rc3/#comments</comments>
		<pubDate>Fri, 21 Sep 2007 18:04:34 +0000</pubDate>
		<dc:creator>brian</dc:creator>
				<category><![CDATA[Personal]]></category>
		<category><![CDATA[O/R Mappers]]></category>

		<guid isPermaLink="false">http://www.sidesofmarch.com/index.php/archive/2007/09/21/castle-project-has-gone-rc3/</guid>
		<description><![CDATA[<p>So much has changed since RC2, it makes RC2 look like a beta.  </p>
<p>I&#8217;m happy to say that I&#8217;m not just a user of Castle projects, but also a contributor (having sent in a few patches related to the Castle Validator).</p>
<p>With RC3&#8242;s features and stability, and a nice easy <a href="http://sourceforge.net/project/showfiles.php?group_id=124416">Windows installer available on SourceForge</a>, there&#8217;s no excuse for you not to start exploring the power that the Castle Project libraries can bring you.</p>
<a class="addthis_button_preferred_1"></a><a class="addthis_button_preferred_2"></a><a class="addthis_button_preferred_3"></a><a <span style="color:#777"> . . .<br /><br />&#8594; Read More: <a href="http://www.sidesofmarch.com/index.php/archive/2007/09/21/castle-project-has-gone-rc3/">Castle Project has gone RC3</a></span>]]></description>
			<content:encoded><![CDATA[<p>So much has changed since RC2, it makes RC2 look like a beta. <img src='http://www.sidesofmarch.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<p>I&#8217;m happy to say that I&#8217;m not just a user of Castle projects, but also a contributor (having sent in a few patches related to the Castle Validator).</p>
<p>With RC3&#8242;s features and stability, and a nice easy <a href="http://redirectingat.com?id=17923X751173&xs=1&url=http%3A%2F%2Fsourceforge.net%2Fproject%2Fshowfiles.php%3Fgroup_id%3D124416&sref=rss">Windows installer available on SourceForge</a>, there&#8217;s no excuse for you not to start exploring the power that the Castle Project libraries can bring you.</p>
<img src="http://www.sidesofmarch.com/?ak_action=api_record_view&id=152&type=feed" alt="" /><div class="addthis_toolbox addthis_default_style addthis_32x32_style" addthis:url='http://www.sidesofmarch.com/index.php/archive/2007/09/21/castle-project-has-gone-rc3/' addthis:title='Castle Project has gone RC3 ' ><a class="addthis_button_preferred_1"></a><a class="addthis_button_preferred_2"></a><a class="addthis_button_preferred_3"></a><a class="addthis_button_preferred_4"></a><a class="addthis_button_compact"></a></div>]]></content:encoded>
			<wfw:commentRss>http://www.sidesofmarch.com/index.php/archive/2007/09/21/castle-project-has-gone-rc3/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>WilsonORWrapper now part of Koders.com</title>
		<link>http://www.sidesofmarch.com/index.php/archive/2007/09/05/wilsonorwrapper-now-part-of-koderscom/</link>
		<comments>http://www.sidesofmarch.com/index.php/archive/2007/09/05/wilsonorwrapper-now-part-of-koderscom/#comments</comments>
		<pubDate>Wed, 05 Sep 2007 17:09:52 +0000</pubDate>
		<dc:creator>brian</dc:creator>
				<category><![CDATA[O/R Mappers]]></category>
		<category><![CDATA[Open Source]]></category>

		<guid isPermaLink="false">http://www.sidesofmarch.com/index.php/archive/2007/09/05/wilsonorwrapper-now-part-of-koderscom/</guid>
		<description><![CDATA[<p>I received the following email today:</p>
<blockquote><p>We&#8217;d like to inform you that your project submission has been approved and we&#8217;ve added WilsonORWrapper to our index&#8230;</p></blockquote>
<p>What does this mean? You can <a href="http://www.koders.com/info.aspx?c=ProjectInfo&#038;pid=9W7NPWYXNYAP6CY311H5RNZC7B">search the WilsonORWrapper repository from Koders.com</a>. Maybe someone will find it useful&#8230;  </p>
<a class="addthis_button_preferred_1"></a><a class="addthis_button_preferred_2"></a><a class="addthis_button_preferred_3"></a><a <span style="color:#777"> . . .<br /><br />&#8594; Read More: <a href="http://www.sidesofmarch.com/index.php/archive/2007/09/05/wilsonorwrapper-now-part-of-koderscom/">WilsonORWrapper now part of Koders.com</a></span>]]></description>
			<content:encoded><![CDATA[<p>I received the following email today:</p>
<blockquote><p>We&#8217;d like to inform you that your project submission has been approved and we&#8217;ve added WilsonORWrapper to our index&#8230;</p></blockquote>
<p>What does this mean? You can <a href="http://redirectingat.com?id=17923X751173&xs=1&url=http%3A%2F%2Fwww.koders.com%2Finfo.aspx%3Fc%3DProjectInfo%26%23038%3Bpid%3D9W7NPWYXNYAP6CY311H5RNZC7B&sref=rss">search the WilsonORWrapper repository from Koders.com</a>. Maybe someone will find it useful&#8230; <img src='http://www.sidesofmarch.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<img src="http://www.sidesofmarch.com/?ak_action=api_record_view&id=148&type=feed" alt="" /><div class="addthis_toolbox addthis_default_style addthis_32x32_style" addthis:url='http://www.sidesofmarch.com/index.php/archive/2007/09/05/wilsonorwrapper-now-part-of-koderscom/' addthis:title='WilsonORWrapper now part of Koders.com ' ><a class="addthis_button_preferred_1"></a><a class="addthis_button_preferred_2"></a><a class="addthis_button_preferred_3"></a><a class="addthis_button_preferred_4"></a><a class="addthis_button_compact"></a></div>]]></content:encoded>
			<wfw:commentRss>http://www.sidesofmarch.com/index.php/archive/2007/09/05/wilsonorwrapper-now-part-of-koderscom/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>The NHibernate optimization debate: partial object queries</title>
		<link>http://www.sidesofmarch.com/index.php/archive/2007/08/26/the-nhibernate-optimization-debate-partial-object-queries/</link>
		<comments>http://www.sidesofmarch.com/index.php/archive/2007/08/26/the-nhibernate-optimization-debate-partial-object-queries/#comments</comments>
		<pubDate>Sun, 26 Aug 2007 13:12:24 +0000</pubDate>
		<dc:creator>brian</dc:creator>
				<category><![CDATA[O/R Mappers]]></category>

		<guid isPermaLink="false">http://www.sidesofmarch.com/index.php/archive/2007/08/26/the-nhibernate-optimization-debate-partial-object-queries/</guid>
		<description><![CDATA[<p><a href="http://blog.eleutian.com/">Aaron (Eleutian)</a> and <a href="http://ayende.com/Blog/">Oren (Ayende)</a> have a little <a href="http://blog.eleutian.com/2007/08/26/OptimizingNHibernatePt2.aspx">back</a>-<a href="http://ayende.com/Blog/archive/2007/08/26/Optimizing-NHibernate.aspx">and</a>-<a href="http://blog.eleutian.com/2007/08/25/NHibernateIsGreatUnlessYouWantToOptimize.aspx">forth</a> going about optimizing <a href="http://www.google.com/url?sa=t&#038;ct=res&#038;cd=1&#038;url=http%3A%2F%2Fwww.nhibernate.org%2F&#038;ei=fnnRRqS1I5PEesfAmZoJ&#038;usg=AFQjCNHlPgKck8xUizRdrANvqC9EEpZMpQ&#038;sig2=r4aCfSj9rk37zmoWVvXapg">NHibernate</a>.  I&#8217;m no expert on NHibernate, but I do have experience with O/R mappers and even more experience with raw databases and SQL, and on techniques for improving performance on both, so I feel I could chime in at least in one area of their debate&#8230;</p>
<p><strong>Partial object queries</strong></p>
<p>Let me bring you up to date:</p>

Aaron wants to run an NHibernate query of select u(Username, Email) from User u and get a User object with only those two fileds filled in.
Oren says you can do it: select new UserSummaryDetails(u.Username, u.Email) from User u.
Aaron disputes that as a solution, since it returns a UserSummaryDetails object and not a User object, which would require him to rewrite methods that work on a User object but only use a subset of fields (he mentions a SendMailTo method which uses only the username and email).

<p>There&#8217;s a solution that <span style="color:#777"> . . .<br /><br />&#8594; Read More: <a href="http://www.sidesofmarch.com/index.php/archive/2007/08/26/the-nhibernate-optimization-debate-partial-object-queries/">The NHibernate optimization debate: partial object queries</a></span>]]></description>
			<content:encoded><![CDATA[<p><a href="http://redirectingat.com?id=17923X751173&xs=1&url=http%3A%2F%2Fblog.eleutian.com%2F&sref=rss">Aaron (Eleutian)</a> and <a href="http://redirectingat.com?id=17923X751173&xs=1&url=http%3A%2F%2Fayende.com%2FBlog%2F&sref=rss">Oren (Ayende)</a> have a little <a href="http://redirectingat.com?id=17923X751173&xs=1&url=http%3A%2F%2Fblog.eleutian.com%2F2007%2F08%2F26%2FOptimizingNHibernatePt2.aspx&sref=rss">back</a>-<a href="http://redirectingat.com?id=17923X751173&xs=1&url=http%3A%2F%2Fayende.com%2FBlog%2Farchive%2F2007%2F08%2F26%2FOptimizing-NHibernate.aspx&sref=rss">and</a>-<a href="http://redirectingat.com?id=17923X751173&xs=1&url=http%3A%2F%2Fblog.eleutian.com%2F2007%2F08%2F25%2FNHibernateIsGreatUnlessYouWantToOptimize.aspx&sref=rss">forth</a> going about optimizing <a href="http://redirectingat.com?id=17923X751173&xs=1&url=http%3A%2F%2Fwww.google.com%2Furl%3Fsa%3Dt%26%23038%3Bct%3Dres%26%23038%3Bcd%3D1%26%23038%3Burl%3Dhttp%253A%252F%252Fwww.nhibernate.org%252F%26%23038%3Bei%3DfnnRRqS1I5PEesfAmZoJ%26%23038%3Busg%3DAFQjCNHlPgKck8xUizRdrANvqC9EEpZMpQ%26%23038%3Bsig2%3Dr4aCfSj9rk37zmoWVvXapg&sref=rss">NHibernate</a>.  I&#8217;m no expert on NHibernate, but I do have experience with O/R mappers and even more experience with raw databases and SQL, and on techniques for improving performance on both, so I feel I could chime in at least in one area of their debate&#8230;</p>
<p><strong>Partial object queries</strong></p>
<p>Let me bring you up to date:</p>
<ul>
<li>Aaron wants to run an NHibernate query of <code>select u(Username, Email) from User u</code> and get a User object with only those two fileds filled in.</li>
<li>Oren says you can do it: <code>select new UserSummaryDetails(u.Username, u.Email) from User u</code>.</li>
<li>Aaron disputes that as a solution, since it returns a <code>UserSummaryDetails</code> object and not a <code>User</code> object, which would require him to rewrite methods that work on a <code>User</code> object but only use a subset of fields (he mentions a <code>SendMailTo</code> method which uses only the username and email).</li>
</ul>
<p>There&#8217;s a solution that perhaps can perhaps make both happy. You specify an interface (<code>IEmailInfo</code>) that exposes the <code>Username</code> and <code>Email</code> properties, implement that interface in your <code>User</code> and <code>UserSummaryDetails</code> classes, and use the interface on your <code>SendMailTo</code> method? At least, this seems plausible considering my limited (but growing) NHibernate exposure, and would work in other O/R mappers (like <a href="http://redirectingat.com?id=17923X751173&xs=1&url=http%3A%2F%2Fwww.ormapper.net&sref=rss">Paul Wilson&#8217;s</a>).</p>
<p>Either way, keeping up with the aforementioned blog debate is a good way to understand the inner workings of NHibernate.</p>
<img src="http://www.sidesofmarch.com/?ak_action=api_record_view&id=147&type=feed" alt="" /><div class="addthis_toolbox addthis_default_style addthis_32x32_style" addthis:url='http://www.sidesofmarch.com/index.php/archive/2007/08/26/the-nhibernate-optimization-debate-partial-object-queries/' addthis:title='The NHibernate optimization debate: partial object queries ' ><a class="addthis_button_preferred_1"></a><a class="addthis_button_preferred_2"></a><a class="addthis_button_preferred_3"></a><a class="addthis_button_preferred_4"></a><a class="addthis_button_compact"></a></div>]]></content:encoded>
			<wfw:commentRss>http://www.sidesofmarch.com/index.php/archive/2007/08/26/the-nhibernate-optimization-debate-partial-object-queries/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>ComputerSims Baseball: Powered by MonoRail and ActiveRecord</title>
		<link>http://www.sidesofmarch.com/index.php/archive/2007/08/24/computersims-baseball-powered-by-monorail-and-activerecord/</link>
		<comments>http://www.sidesofmarch.com/index.php/archive/2007/08/24/computersims-baseball-powered-by-monorail-and-activerecord/#comments</comments>
		<pubDate>Fri, 24 Aug 2007 21:17:01 +0000</pubDate>
		<dc:creator>brian</dc:creator>
				<category><![CDATA[Personal]]></category>
		<category><![CDATA[ActiveRecord]]></category>
		<category><![CDATA[O/R Mappers]]></category>

		<guid isPermaLink="false">http://www.sidesofmarch.com/index.php/archive/2007/08/24/computersims-baseball-powered-by-monorail-and-activerecord/</guid>
		<description><![CDATA[<p>For the past seven years, I&#8217;ve been maintaining an online baseball game, <a href="http://www.csfbl.com">CSFBL (Computer Simulated Fantasy Baseball League)</a>. It&#8217;s gone through <a href="http://help.csfbl.com/default.aspx/CSFBL.HistoryOfCSFBL">many changes over the years</a>, but its core is in many ways unchanged since 2002 &#8212; and therein lies a problem.</p>
<p>Back in 2002, CSFBL was getting about 50,000 to 100,000 page views per month. By the end of 2003, we were simulating about 1,500 games per day. Today, we get about 4 million page views per month, simulate up to 10,000 games per day, and have over 80GB of historical data (roughly 6 million games spanning 2,700 seasons). That&#8217;s significant growth &#8212; and the game is suffering as a result. It wasn&#8217;t built to scale this far &#8211; a victim of its own success and my own limitations as a programmer circa 2002.</p>
<p>I realized long ago that a rewrite from the ground-up was necessary. I&#8217;ve done extensive work rewriting the database schema to maximize efficiency, but that&#8217;s only <span style="color:#777"> . . .<br /><br />&#8594; Read More: <a href="http://www.sidesofmarch.com/index.php/archive/2007/08/24/computersims-baseball-powered-by-monorail-and-activerecord/">ComputerSims Baseball: Powered by MonoRail and ActiveRecord</a></span>]]></description>
			<content:encoded><![CDATA[<p>For the past seven years, I&#8217;ve been maintaining an online baseball game, <a href="http://redirectingat.com?id=17923X751173&xs=1&url=http%3A%2F%2Fwww.csfbl.com&sref=rss">CSFBL (Computer Simulated Fantasy Baseball League)</a>. It&#8217;s gone through <a href="http://redirectingat.com?id=17923X751173&xs=1&url=http%3A%2F%2Fhelp.csfbl.com%2Fdefault.aspx%2FCSFBL.HistoryOfCSFBL&sref=rss">many changes over the years</a>, but its core is in many ways unchanged since 2002 &#8212; and therein lies a problem.</p>
<p>Back in 2002, CSFBL was getting about 50,000 to 100,000 page views per month. By the end of 2003, we were simulating about 1,500 games per day. Today, we get about 4 million page views per month, simulate up to 10,000 games per day, and have over 80GB of historical data (roughly 6 million games spanning 2,700 seasons). That&#8217;s significant growth &#8212; and the game is suffering as a result. It wasn&#8217;t built to scale this far &#8211; a victim of its own success and my own limitations as a programmer circa 2002.</p>
<p>I realized long ago that a rewrite from the ground-up was necessary. I&#8217;ve done extensive work rewriting the database schema to maximize efficiency, but that&#8217;s only part of it &#8212; I need to rewrite the web site and simulation engine as well. (They currently run on classic ASP and Visual Basic, respectively.)</p>
<p>Originally, the rewrite was going to use WebForms &#8212; but that changed when I found <a href="http://redirectingat.com?id=17923X751173&xs=1&url=http%3A%2F%2Fwww.castleproject.org%2Fmonorail%2F&sref=rss">MonoRail</a>. Up until two weeks ago, data access relied on <a href="http://redirectingat.com?id=17923X751173&xs=1&url=http%3A%2F%2Fwww.ormapper.net&sref=rss">Paul Wilson&#8217;s O/R Mapper</a> (<em>WORM</em>) and <a href="http://www.sidesofmarch.com/index.php/projects/wilsonorwrapper/">WilsonORWrapper</a> (<em>WORW</em>) &#8212; but I just completed the switch to <a href="http://redirectingat.com?id=17923X751173&xs=1&url=http%3A%2F%2Fwww.castleproject.org%2Factiverecord%2F&sref=rss">ActiveRecord</a>.</p>
<p>Why abandon WORM/WORW? Three reasons:</p>
<ol>
<li>I was concerned that I&#8217;d run into situations where I needed more power than WORM could provide.</li>
<li>NHibernate and ActiveRecord have incredibly robust communities that dwarf those of the alternatives.</li>
<li>I needed to pick my first ActiveRecord project. <img src='http://www.sidesofmarch.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </li>
</ol>
<p>I still think WORM/WORW are valid choices, but the scope of CSBB is potentially huge, and I knew I needed to follow the leader.</p>
<p>Converting to ActiveRecord was straightforward (one O/R mapper to another), but I did run into one frustrating problem. I had a problem persisting one ActiveRecord classes. Attempting to save it didn&#8217;t throw an exception; rather, it just sat there, as if in an endless loop. I traced the call to an NHibernate method call by ActiveRecord, but couldn&#8217;t figure out why it wouldn&#8217;t do anything. Turning on logging, I recognized the problem: one of my fields (a <code>not null</code> field in the database) wasn&#8217;t marked with the <code>[Property]</code> attribute, so it wasn&#8217;t included in the <code>INSERT</code> statement. Running the SQL code in MySQL Query Browser threw an error, but not in NHibernate. Frustrating, and possibly an issue with the MySQL provider for NHibernate, but at least I know what to look out for if I see a similar problem in the future.</p>
<p>Still, it feels good to be in the hands of MonoRail + ActiveRecord for the most significant independent, most rewarding, and most unpaid development project of my life. <img src='http://www.sidesofmarch.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<img src="http://www.sidesofmarch.com/?ak_action=api_record_view&id=146&type=feed" alt="" /><div class="addthis_toolbox addthis_default_style addthis_32x32_style" addthis:url='http://www.sidesofmarch.com/index.php/archive/2007/08/24/computersims-baseball-powered-by-monorail-and-activerecord/' addthis:title='ComputerSims Baseball: Powered by MonoRail and ActiveRecord ' ><a class="addthis_button_preferred_1"></a><a class="addthis_button_preferred_2"></a><a class="addthis_button_preferred_3"></a><a class="addthis_button_preferred_4"></a><a class="addthis_button_compact"></a></div>]]></content:encoded>
			<wfw:commentRss>http://www.sidesofmarch.com/index.php/archive/2007/08/24/computersims-baseball-powered-by-monorail-and-activerecord/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>A repository that works with multiple O/R mappers &#8212; is it possible?</title>
		<link>http://www.sidesofmarch.com/index.php/archive/2007/08/16/a-repository-that-works-with-multiple-or-mappers-is-it-possible/</link>
		<comments>http://www.sidesofmarch.com/index.php/archive/2007/08/16/a-repository-that-works-with-multiple-or-mappers-is-it-possible/#comments</comments>
		<pubDate>Thu, 16 Aug 2007 17:12:58 +0000</pubDate>
		<dc:creator>brian</dc:creator>
				<category><![CDATA[C#/.Net]]></category>
		<category><![CDATA[O/R Mappers]]></category>

		<guid isPermaLink="false">http://www.sidesofmarch.com/index.php/archive/2007/08/16/a-repository-that-works-with-multiple-or-mappers-is-it-possible/</guid>
		<description><![CDATA[<p>A <a href="http://groups.google.com/group/wilsonorwrapper/browse_thread/thread/efbec0125b6ed696/93c257fd2f14a3c3?hl=en#93c257fd2f14a3c3">recent post</a> on the <a href="http://groups.google.com/group/wilsonorwrapper?hl=en">WilsonORWrapper Google group</a> talked about making WORW multi-database aware by removing static classes and singletons. Well, I&#8217;ve kind of been thinking of something similar lately&#8230;</p>
<p>For some time I have been toying with the idea of rewriting WORW to support a generic repository service that would work with any O/R mapper, much
like the logger and cache services work over different underlying libraries. By removing the static classes and singletons and adding a provider model for the O/R wrapper element, you would be able to instantiate multiple instances of a &#8220;Registry&#8221; class, a class which provides a set of services (Repository, Cache, Logger, etc.) based on a given configuration criteira.</p>
<p>As a test I wrote up a simple project (with unit tests!) as a proof-of-concept, using WORM and NPersist as underlying O/R mappers. The WORM part worked fine. The NPersist part almost worked &#8212; however, I believe the errors are related to using NPersist&#8217;s not-too-well-documented XML provider, <span style="color:#777"> . . .<br /><br />&#8594; Read More: <a href="http://www.sidesofmarch.com/index.php/archive/2007/08/16/a-repository-that-works-with-multiple-or-mappers-is-it-possible/">A repository that works with multiple O/R mappers &#8212; is it possible?</a></span>]]></description>
			<content:encoded><![CDATA[<p>A <a href="http://redirectingat.com?id=17923X751173&xs=1&url=http%3A%2F%2Fgroups.google.com%2Fgroup%2Fwilsonorwrapper%2Fbrowse_thread%2Fthread%2Fefbec0125b6ed696%2F93c257fd2f14a3c3%3Fhl%3Den%2393c257fd2f14a3c3&sref=rss">recent post</a> on the <a href="http://redirectingat.com?id=17923X751173&xs=1&url=http%3A%2F%2Fgroups.google.com%2Fgroup%2Fwilsonorwrapper%3Fhl%3Den&sref=rss">WilsonORWrapper Google group</a> talked about making WORW multi-database aware by removing static classes and singletons. Well, I&#8217;ve kind of been thinking of something similar lately&#8230;</p>
<p>For some time I have been toying with the idea of rewriting WORW to support a generic repository service that would work with any O/R mapper, much<br />
like the logger and cache services work over different underlying libraries. By removing the static classes and singletons and adding a provider model for the O/R wrapper element, you would be able to instantiate multiple instances of a &#8220;Registry&#8221; class, a class which provides a set of services (Repository, Cache, Logger, etc.) based on a given configuration criteira.</p>
<p>As a test I wrote up a simple project (with unit tests!) as a proof-of-concept, using WORM and NPersist as underlying O/R mappers. The WORM part worked fine. The NPersist part almost worked &#8212; however, I believe the errors are related to using NPersist&#8217;s not-too-well-documented XML provider, not errors with the O/R mapper provider itself (NPersist does initializes properly, which indicates at least something is working right).</p>
<p>If you&#8217;re interested in seeing this little stub of a project, <a href="http://redirectingat.com?id=17923X751173&xs=1&url=http%3A%2F%2Fgroups.google.com%2Fgroup%2Fwilsonorwrapper%2Ffiles%3Fhl%3Den&sref=rss">download the source</a> (27.5kb). I&#8217;ve dubbed it <strong>NRepository</strong> right now, not for any reason except it&#8217;s the first thing that came to mind. Let me know what you think, and whether you think it&#8217;s worth pursuing such a project.</p>
<img src="http://www.sidesofmarch.com/?ak_action=api_record_view&id=145&type=feed" alt="" /><div class="addthis_toolbox addthis_default_style addthis_32x32_style" addthis:url='http://www.sidesofmarch.com/index.php/archive/2007/08/16/a-repository-that-works-with-multiple-or-mappers-is-it-possible/' addthis:title='A repository that works with multiple O/R mappers &#8212; is it possible? ' ><a class="addthis_button_preferred_1"></a><a class="addthis_button_preferred_2"></a><a class="addthis_button_preferred_3"></a><a class="addthis_button_preferred_4"></a><a class="addthis_button_compact"></a></div>]]></content:encoded>
			<wfw:commentRss>http://www.sidesofmarch.com/index.php/archive/2007/08/16/a-repository-that-works-with-multiple-or-mappers-is-it-possible/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Google group for WilsonORWrapper</title>
		<link>http://www.sidesofmarch.com/index.php/archive/2007/07/20/google-group-for-wilsonorwrapper/</link>
		<comments>http://www.sidesofmarch.com/index.php/archive/2007/07/20/google-group-for-wilsonorwrapper/#comments</comments>
		<pubDate>Fri, 20 Jul 2007 18:25:12 +0000</pubDate>
		<dc:creator>brian</dc:creator>
				<category><![CDATA[O/R Mappers]]></category>

		<guid isPermaLink="false">http://www.sidesofmarch.com/index.php/archive/2007/07/20/google-group-for-wilsonorwrapper/</guid>
		<description><![CDATA[<p>Since more than a few people have started contacting me about <a href="https://www.hosted-projects.com/trac/computersims/wilsonorwrapper">WilsonORWrapper</a>, I&#8217;ve decided to create a public Google group so we can have effective open discussions.</p>
<p>Homepage:<a href="http://groups.google.com/group/wilsonorwrapper?lnk=gcimh">http://groups.google.com/group/wilsonorwrapper</a>  </p>
<p>Group email:<a href="mailto:wilsonorwrapper@googlegroups.com">wilsonorwrapper@googlegroups.com</a></p>
<p>Hope to see you there!</p>
<a class="addthis_button_preferred_1"></a><a class="addthis_button_preferred_2"></a><a class="addthis_button_preferred_3"></a><a <span style="color:#777"> . . .<br /><br />&#8594; Read More: <a href="http://www.sidesofmarch.com/index.php/archive/2007/07/20/google-group-for-wilsonorwrapper/">Google group for WilsonORWrapper</a></span>]]></description>
			<content:encoded><![CDATA[<p>Since more than a few people have started contacting me about <a href="http://redirectingat.com?id=17923X751173&xs=1&url=https%3A%2F%2Fwww.hosted-projects.com%2Ftrac%2Fcomputersims%2Fwilsonorwrapper&sref=rss">WilsonORWrapper</a>, I&#8217;ve decided to create a public Google group so we can have effective open discussions.</p>
<p>Homepage:<br /><a href="http://redirectingat.com?id=17923X751173&xs=1&url=http%3A%2F%2Fgroups.google.com%2Fgroup%2Fwilsonorwrapper%3Flnk%3Dgcimh&sref=rss">http://groups.google.com/group/wilsonorwrapper</a>  </p>
<p>Group email:<br /><a href="mailto:wilsonorwrapper@googlegroups.com">wilsonorwrapper@googlegroups.com</a></p>
<p>Hope to see you there!</p>
<img src="http://www.sidesofmarch.com/?ak_action=api_record_view&id=139&type=feed" alt="" /><div class="addthis_toolbox addthis_default_style addthis_32x32_style" addthis:url='http://www.sidesofmarch.com/index.php/archive/2007/07/20/google-group-for-wilsonorwrapper/' addthis:title='Google group for WilsonORWrapper ' ><a class="addthis_button_preferred_1"></a><a class="addthis_button_preferred_2"></a><a class="addthis_button_preferred_3"></a><a class="addthis_button_preferred_4"></a><a class="addthis_button_compact"></a></div>]]></content:encoded>
			<wfw:commentRss>http://www.sidesofmarch.com/index.php/archive/2007/07/20/google-group-for-wilsonorwrapper/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Performance tweaks and bug fixes to WilsonORWrapper</title>
		<link>http://www.sidesofmarch.com/index.php/archive/2007/07/16/performance-tweaks-and-bug-fixes-to-wilsonorwrapper/</link>
		<comments>http://www.sidesofmarch.com/index.php/archive/2007/07/16/performance-tweaks-and-bug-fixes-to-wilsonorwrapper/#comments</comments>
		<pubDate>Mon, 16 Jul 2007 20:13:05 +0000</pubDate>
		<dc:creator>brian</dc:creator>
				<category><![CDATA[O/R Mappers]]></category>

		<guid isPermaLink="false">http://www.sidesofmarch.com/index.php/archive/2007/07/16/performance-tweaks-and-bug-fixes-to-wilsonorwrapper/</guid>
		<description><![CDATA[<p>A minor update today (with one breaking change) to <a href="https://www.hosted-projects.com/trac/computersims/wilsonorwrapper">WilsonORWrapper</a>:</p>

<strong><em>BREAKING CHANGE</em></strong>: Renamed RetrieveTotalRecordCount() to GetObjectCount().
Implemented SQL2005 paging support by passing dummy where clause when none specified (they are required with SQL2005 paging); this is a hack, not a fix; you should always specify a sort clause when using any paging operation!
Cached value of EntityBase.IsReadOnly on first load; allowed dummy set operator to permit ObjectDataSource usage.
Improved IdentityBase.GetHashCode performance with single column keys.
Refactored to ensure mapping file stream is disposed.

<p>Thanks to Michael Mepham for help in identifying and resolving these issues. The latest source code is <a href="https://www.hosted-projects.com/trac/computersims/wilsonorwrapper/changeset/49/trunk?old_path=%2F&#38;old=49&#38;format=zip">available in ZIP format</a>; no compiled binaries yet.</p>
<a class="addthis_button_preferred_1"></a><a class="addthis_button_preferred_2"></a><a class="addthis_button_preferred_3"></a><a <span style="color:#777"> . . .<br /><br />&#8594; Read More: <a href="http://www.sidesofmarch.com/index.php/archive/2007/07/16/performance-tweaks-and-bug-fixes-to-wilsonorwrapper/">Performance tweaks and bug fixes to WilsonORWrapper</a></span>]]></description>
			<content:encoded><![CDATA[<p>A minor update today (with one breaking change) to <a href="http://redirectingat.com?id=17923X751173&xs=1&url=https%3A%2F%2Fwww.hosted-projects.com%2Ftrac%2Fcomputersims%2Fwilsonorwrapper&sref=rss">WilsonORWrapper</a>:</p>
<ul>
<li><strong><em>BREAKING CHANGE</em></strong>: Renamed RetrieveTotalRecordCount() to GetObjectCount().</li>
<li>Implemented SQL2005 paging support by passing dummy where clause when none specified (they are required with SQL2005 paging); this is a hack, not a fix; you should always specify a sort clause when using any paging operation!</li>
<li>Cached value of EntityBase.IsReadOnly on first load; allowed dummy set operator to permit ObjectDataSource usage.</li>
<li>Improved IdentityBase.GetHashCode performance with single column keys.</li>
<li>Refactored to ensure mapping file stream is disposed.</li>
</ul>
<p>Thanks to Michael Mepham for help in identifying and resolving these issues. The latest source code is <a href="http://redirectingat.com?id=17923X751173&xs=1&url=https%3A%2F%2Fwww.hosted-projects.com%2Ftrac%2Fcomputersims%2Fwilsonorwrapper%2Fchangeset%2F49%2Ftrunk%3Fold_path%3D%252F%26amp%3Bold%3D49%26amp%3Bformat%3Dzip&sref=rss">available in ZIP format</a>; no compiled binaries yet.</p>
<img src="http://www.sidesofmarch.com/?ak_action=api_record_view&id=135&type=feed" alt="" /><div class="addthis_toolbox addthis_default_style addthis_32x32_style" addthis:url='http://www.sidesofmarch.com/index.php/archive/2007/07/16/performance-tweaks-and-bug-fixes-to-wilsonorwrapper/' addthis:title='Performance tweaks and bug fixes to WilsonORWrapper ' ><a class="addthis_button_preferred_1"></a><a class="addthis_button_preferred_2"></a><a class="addthis_button_preferred_3"></a><a class="addthis_button_preferred_4"></a><a class="addthis_button_compact"></a></div>]]></content:encoded>
			<wfw:commentRss>http://www.sidesofmarch.com/index.php/archive/2007/07/16/performance-tweaks-and-bug-fixes-to-wilsonorwrapper/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Wilson.ORMapper subscriber source code repository</title>
		<link>http://www.sidesofmarch.com/index.php/archive/2007/07/13/wilsonormapper-subscriber-source-code-repository/</link>
		<comments>http://www.sidesofmarch.com/index.php/archive/2007/07/13/wilsonormapper-subscriber-source-code-repository/#comments</comments>
		<pubDate>Fri, 13 Jul 2007 12:40:36 +0000</pubDate>
		<dc:creator>brian</dc:creator>
				<category><![CDATA[O/R Mappers]]></category>

		<guid isPermaLink="false">http://www.sidesofmarch.com/index.php/archive/2007/07/13/wilsonormapper-subscriber-source-code-repository/</guid>
		<description><![CDATA[<p>Many users of <a href="http://www.ormapper.net">Paul Wilson&#8217;s O/R mapper</a> (&#8220;WORM&#8221;) know that there are a number of community-provided patches which are out there but not incorporated in any official release. Personally, I have maintained a copy of the source code in a private Subversion repository and incorporated a number of these patches for my own use. (Access to the full source code of WORM require you to pay a very reasonable $50 &#8220;subscriber fee&#8221; to Paul Wilson.)</p>
<p>I contacted <a href="http://weblogs.asp.net/pwilson/">Paul Wilson</a> yesterday, asking him if he&#8217;d let me grant access to this repository to people who are WORM subscribers. Fortunately for all involved, he said yes!</p>
<p>What does this mean for you? If you are a subscriber to WORM, you can send me your full name and email address and request access to this private repository. I will confirm your subscription with Paul and grant you access.</p>
<p>The following changes have been incorporated into the aforementioned WORM instance:</p>

Based on the <a href="http://ormapper.net/News/Default.aspx?part=72&#38;action=more&#38;id=28&#38;key=bo5%2bG3v5j6nHCtAUxHorwQ%3d%3d">4.2.2.1 Subscriber Preview</a>.
Unnecessary <span style="color:#777"> . . .<br /><br />&#8594; Read More: <a href="http://www.sidesofmarch.com/index.php/archive/2007/07/13/wilsonormapper-subscriber-source-code-repository/">Wilson.ORMapper subscriber source code repository</a></span>]]></description>
			<content:encoded><![CDATA[<p>Many users of <a href="http://redirectingat.com?id=17923X751173&xs=1&url=http%3A%2F%2Fwww.ormapper.net&sref=rss">Paul Wilson&#8217;s O/R mapper</a> (&#8220;WORM&#8221;) know that there are a number of community-provided patches which are out there but not incorporated in any official release. Personally, I have maintained a copy of the source code in a private Subversion repository and incorporated a number of these patches for my own use. (Access to the full source code of WORM require you to pay a very reasonable $50 &#8220;subscriber fee&#8221; to Paul Wilson.)</p>
<p>I contacted <a href="http://redirectingat.com?id=17923X751173&xs=1&url=http%3A%2F%2Fweblogs.asp.net%2Fpwilson%2F&sref=rss">Paul Wilson</a> yesterday, asking him if he&#8217;d let me grant access to this repository to people who are WORM subscribers. Fortunately for all involved, he said yes!</p>
<p>What does this mean for you? If you are a subscriber to WORM, you can send me your full name and email address and request access to this private repository. I will confirm your subscription with Paul and grant you access.</p>
<p>The following changes have been incorporated into the aforementioned WORM instance:</p>
<ul>
<li>Based on the <a href="http://redirectingat.com?id=17923X751173&xs=1&url=http%3A%2F%2Formapper.net%2FNews%2FDefault.aspx%3Fpart%3D72%26amp%3Baction%3Dmore%26amp%3Bid%3D28%26amp%3Bkey%3Dbo5%252bG3v5j6nHCtAUxHorwQ%253d%253d&sref=rss">4.2.2.1 Subscriber Preview</a>.</li>
<li>Unnecessary SELECT COUNT(*) calls removed (<a href="http://redirectingat.com?id=17923X751173&xs=1&url=http%3A%2F%2Fwww.ormapper.net%2FForums%2FDefault.aspx%3Fpart%3D74%26amp%3Baction%3Dthread%26amp%3Bid%3D2406%26amp%3Bkey%3DNUqKT04wPJzFxe6kUXBQCg%253d%253d&sref=rss">see reference post</a>).</li>
<li>Performance using large data sets improved (<a href="http://redirectingat.com?id=17923X751173&xs=1&url=http%3A%2F%2Fwww.ormapper.net%2FForums%2FDefault.aspx%3Fpart%3D74%26amp%3Baction%3Dthread%26amp%3Bid%3D2505%26amp%3Bkey%3DJxfgN3hZhZJLkPkDnFvPKA%253d%253d&sref=rss">see reference post</a>).</li>
<li>A few other small changes and tweaks.</li>
</ul>
<p>The purpose of opening up this Subversion repository to subscribers is to give us all a place to share and contribute to a central copy of WORM that includes all the improvements and patches we maintain individually.</p>
<p>If you want to participate, send me your full name and email address.</p>
<img src="http://www.sidesofmarch.com/?ak_action=api_record_view&id=134&type=feed" alt="" /><div class="addthis_toolbox addthis_default_style addthis_32x32_style" addthis:url='http://www.sidesofmarch.com/index.php/archive/2007/07/13/wilsonormapper-subscriber-source-code-repository/' addthis:title='Wilson.ORMapper subscriber source code repository ' ><a class="addthis_button_preferred_1"></a><a class="addthis_button_preferred_2"></a><a class="addthis_button_preferred_3"></a><a class="addthis_button_preferred_4"></a><a class="addthis_button_compact"></a></div>]]></content:encoded>
			<wfw:commentRss>http://www.sidesofmarch.com/index.php/archive/2007/07/13/wilsonormapper-subscriber-source-code-repository/feed/</wfw:commentRss>
		<slash:comments>5</slash:comments>
		</item>
		<item>
		<title>First community patch applied to WilsonORWrapper</title>
		<link>http://www.sidesofmarch.com/index.php/archive/2007/06/14/first-community-patch-applied-to-wilsonorwrapper/</link>
		<comments>http://www.sidesofmarch.com/index.php/archive/2007/06/14/first-community-patch-applied-to-wilsonorwrapper/#comments</comments>
		<pubDate>Thu, 14 Jun 2007 13:51:54 +0000</pubDate>
		<dc:creator>brian</dc:creator>
				<category><![CDATA[O/R Mappers]]></category>

		<guid isPermaLink="false">http://www.sidesofmarch.com/index.php/archive/2007/06/14/first-community-patch-applied-to-wilsonorwrapper/</guid>
		<description><![CDATA[<p>Hot on the heals of <a href="http://www.sidesofmarch.com/index.php/archive/2007/06/13/queryt-added-to-wilsonorwrapper/">yesterday&#8217;s update</a>, I just received and applied the <a href="http://www.hosted-projects.com/trac/computersims/wilsonorwrapper/ticket/3">first community patch</a> to <a href="http://www.hosted-projects.com/trac/computersims/wilsonorwrapper/">WilsonORWrapper</a>.</p>
<p>The patch, from Wayde Gilliam, adds the following:</p>

Added MemberPrefix option to mappings generator, allowing member prefix (private field) customization
Added SetProperties method allowing dictionary-based changes
Added IncludeList option to mappings generator, allowing selective table inclusion (combines functionality with IgnoreList)

<p>Hats off to Wayde for a well-written patch!</p>
<p><a href="http://www.hosted-projects.com/trac/computersims/wilsonorwrapper/changeset/43">Release 43</a> (<a href="http://www.hosted-projects.com/trac/computersims/wilsonorwrapper/changeset/43/trunk?old_path=%2F&#38;format=zip">download source code</a>) has the aforementioned changes, as well as an update to the readme file which gives kudos to Wayde and to Gunter Spranz, an early-adopter of this project whose insight and input was invaluable in the development of the product as we see it today.</p>
<p>Thanks to both &#8212; and don&#8217;t forget to go ahead and send in your own patch!</p>
<a class="addthis_button_preferred_1"></a><a class="addthis_button_preferred_2"></a><a class="addthis_button_preferred_3"></a><a <span style="color:#777"> . . .<br /><br />&#8594; Read More: <a href="http://www.sidesofmarch.com/index.php/archive/2007/06/14/first-community-patch-applied-to-wilsonorwrapper/">First community patch applied to WilsonORWrapper</a></span>]]></description>
			<content:encoded><![CDATA[<p>Hot on the heals of <a href="http://www.sidesofmarch.com/index.php/archive/2007/06/13/queryt-added-to-wilsonorwrapper/">yesterday&#8217;s update</a>, I just received and applied the <a href="http://redirectingat.com?id=17923X751173&xs=1&url=http%3A%2F%2Fwww.hosted-projects.com%2Ftrac%2Fcomputersims%2Fwilsonorwrapper%2Fticket%2F3&sref=rss">first community patch</a> to <a href="http://redirectingat.com?id=17923X751173&xs=1&url=http%3A%2F%2Fwww.hosted-projects.com%2Ftrac%2Fcomputersims%2Fwilsonorwrapper%2F&sref=rss">WilsonORWrapper</a>.</p>
<p>The patch, from Wayde Gilliam, adds the following:</p>
<ul>
<li>Added MemberPrefix option to mappings generator, allowing member prefix (private field) customization</li>
<li>Added SetProperties method allowing dictionary-based changes</li>
<li>Added IncludeList option to mappings generator, allowing selective table inclusion (combines functionality with IgnoreList)</li>
</ul>
<p>Hats off to Wayde for a well-written patch!</p>
<p><a href="http://redirectingat.com?id=17923X751173&xs=1&url=http%3A%2F%2Fwww.hosted-projects.com%2Ftrac%2Fcomputersims%2Fwilsonorwrapper%2Fchangeset%2F43&sref=rss">Release 43</a> (<a href="http://redirectingat.com?id=17923X751173&xs=1&url=http%3A%2F%2Fwww.hosted-projects.com%2Ftrac%2Fcomputersims%2Fwilsonorwrapper%2Fchangeset%2F43%2Ftrunk%3Fold_path%3D%252F%26amp%3Bformat%3Dzip&sref=rss">download source code</a>) has the aforementioned changes, as well as an update to the readme file which gives kudos to Wayde and to Gunter Spranz, an early-adopter of this project whose insight and input was invaluable in the development of the product as we see it today.</p>
<p>Thanks to both &#8212; and don&#8217;t forget to go ahead and send in your own patch!</p>
<img src="http://www.sidesofmarch.com/?ak_action=api_record_view&id=99&type=feed" alt="" /><div class="addthis_toolbox addthis_default_style addthis_32x32_style" addthis:url='http://www.sidesofmarch.com/index.php/archive/2007/06/14/first-community-patch-applied-to-wilsonorwrapper/' addthis:title='First community patch applied to WilsonORWrapper ' ><a class="addthis_button_preferred_1"></a><a class="addthis_button_preferred_2"></a><a class="addthis_button_preferred_3"></a><a class="addthis_button_preferred_4"></a><a class="addthis_button_compact"></a></div>]]></content:encoded>
			<wfw:commentRss>http://www.sidesofmarch.com/index.php/archive/2007/06/14/first-community-patch-applied-to-wilsonorwrapper/feed/</wfw:commentRss>
		<slash:comments>6</slash:comments>
		</item>
	</channel>
</rss>

