<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>The Robb Report &#187; programming</title>
	<atom:link href="http://www.weblaws.org/robb/tag/programming/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.weblaws.org/robb</link>
	<description></description>
	<lastBuildDate>Tue, 17 Jan 2012 14:10:51 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.2.1</generator>
		<item>
		<title>That one little confusing thing about the Git version control system</title>
		<link>http://www.weblaws.org/robb/2011/02/02/that-one-little-confusing-thing-about-the-git-version-control-system/</link>
		<comments>http://www.weblaws.org/robb/2011/02/02/that-one-little-confusing-thing-about-the-git-version-control-system/#comments</comments>
		<pubDate>Wed, 02 Feb 2011 20:35:13 +0000</pubDate>
		<dc:creator>Robb</dc:creator>
				<category><![CDATA[Just a Thought]]></category>
		<category><![CDATA[programming]]></category>

		<guid isPermaLink="false">http://www.weblaws.org/robb/?p=989</guid>
		<description><![CDATA[Git and github are awesome pieces of software. Last year, I happily switched from subversion to git just like, years ago, I switched from CVS to subversion. Another evolutionary step. I use github for lots of reasons. The biggest is that it&#8217;s the best front-end to git that I&#8217;ve found. And so now I use [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://gitref.org/">Git</a> and <a href="https://github.com/">github</a> are awesome pieces of software. Last year, I happily switched from subversion to git just like, years ago, I switched from CVS to subversion. Another evolutionary step. I use github for lots of reasons. The biggest is that it&#8217;s the best front-end to git that I&#8217;ve found. And so now I use git+github for 15 or so projects; some open source like <a href="https://github.com/dogweather/HTTP-Assertions">HTTP Assertions</a>, and some private code, like the <a href="https://www.oregonlaws.org/">OregonLaws.org web app</a>.</p>
<h2>The one little problem</h2>
<p>Everything goes along happily until git decides you need some help. And so, in a fit of well intentioned verbosity, git coughs up three terminology-packed paragraphs of text that we&#8217;ve all seen:</p>
<p><code>You asked me to pull without telling me which branch you want to merge with, and 'branch.newlayout.merge' in your configuration file does not tell me either. Please specify which branch you want to merge on the command line and try again (e.g. 'git pull &lt;repository&gt; &lt;refspec&gt;'). See git-pull(1) for details.</code></p>
<p><code>If you often merge with the same branch, you may want to configure the following variables in your configuration file:</code></p>
<p><code>branch.newlayout.remote = &lt;nickname&gt;<br />
branch.newlayout.merge  = &lt;remote-ref&gt;<br />
remote.&lt;nickname&gt;.url   = &lt;url&gt;<br />
remote.&lt;nickname&gt;.fetch = &lt;refspec&gt;</code></p>
<p>I collected the following <em>git-specific</em> terms from this one message:</p>
<p style="padding-left: 30px;"><strong>branch, fetch, git-pull, merge, newlayout, nickname, pull, refspec, repository, remote, remote-ref, url</strong></p>
<p>What&#8217;s the difference between a <strong>&lt;refspec&gt;</strong> and a <strong>&lt;remote-ref&gt;</strong>? Between a <strong>&lt;repository&gt;</strong> and a <strong>&lt;nickname&gt;</strong>? Between a <strong>pull</strong> and a <strong>merge</strong>? (I asked for a pull, but git&#8217;s giving me merge info.)</p>
<p><strong>My guess:</strong> several of these terms are <strong>used interchangeably</strong>, and git&#8217;s docs should be made more consistent. Note how the terms in the text paragraphs <strong>do not match</strong> the terms in the config file template.</p>
<p><strong>Problem #2:</strong> The second paragraph says to add the info to the config file. But <strong>the info isn&#8217;t in config file format</strong>; it&#8217;s closer to command line <code>git config</code> format.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.weblaws.org/robb/2011/02/02/that-one-little-confusing-thing-about-the-git-version-control-system/feed/</wfw:commentRss>
		<slash:comments>14</slash:comments>
		</item>
		<item>
		<title>Wanted: One donated Android phone for a good cause</title>
		<link>http://www.weblaws.org/robb/2010/11/24/wanted-one-donated-android-phone-for-a-good-cause/</link>
		<comments>http://www.weblaws.org/robb/2010/11/24/wanted-one-donated-android-phone-for-a-good-cause/#comments</comments>
		<pubDate>Thu, 25 Nov 2010 05:57:48 +0000</pubDate>
		<dc:creator>Robb</dc:creator>
				<category><![CDATA[Idea]]></category>
		<category><![CDATA[programming]]></category>

		<guid isPermaLink="false">http://www.weblaws.org/robb/?p=858</guid>
		<description><![CDATA[I&#8217;m a law student and I&#8217;m appealing to the Internet for a donated, used Android phone so I can develop legal apps for it. Up until now, I&#8217;ve only developed iphone and web apps. I need an actual device to test the software, and I can&#8217;t afford a phone just for this. I&#8217;d love to [...]]]></description>
			<content:encoded><![CDATA[<p>I&#8217;m a law student and I&#8217;m appealing to the Internet for a donated, used Android phone so I can develop legal apps for it. Up until now, I&#8217;ve only developed iphone and web apps. I need an actual device to test the software, and I can&#8217;t afford a phone just for this. I&#8217;d love to make the jump to Android development, and if someone can me, they&#8217;d be helping the Android community get more legal apps. I&#8217;d also take their feature and app requests very seriously. <img src='http://www.weblaws.org/robb/wp-includes/images/smilies/icon_smile.gif' alt=':-)' class='wp-smiley' /> </p>
<p>About me: I have a track record of making innovative, public service apps for attorneys and law students. I&#8217;ve also got years of Linux and Java development experience, and will be able to hit the ground running.</p>
<p>Here are some links to show that I&#8217;m serious about following through:</p>
<p><a href="http://www.flickr.com/photos/28046179@N05/4340440560/in/set-72157623377292756/">Screenshots of iPhone legal app</a></p>
<p><a href="https://www.oregonlaws.org/">My biggest web app</a></p>
<p><a href="http://www.delicious.com/weblaws.org">Press I&#8217;ve received</a></p>
<p><a href="/about">My personal home page</a></p>
<p>(Originally posted on under my id <em>dogweather</em> on <a href="http://www.reddit.com/r/Android/comments/ebhp0/wanted_one_donated_android_phone_for_a_good_cause/">reddit</a>)</p>
]]></content:encoded>
			<wfw:commentRss>http://www.weblaws.org/robb/2010/11/24/wanted-one-donated-android-phone-for-a-good-cause/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Yeah, right.  &#8220;I bookmarked the website with hopes to read more!&#8221;</title>
		<link>http://www.weblaws.org/robb/2010/10/21/yeah-right-bookmarked-the-website-with-hopes-to-read-more/</link>
		<comments>http://www.weblaws.org/robb/2010/10/21/yeah-right-bookmarked-the-website-with-hopes-to-read-more/#comments</comments>
		<pubDate>Thu, 21 Oct 2010 18:23:49 +0000</pubDate>
		<dc:creator>Robb</dc:creator>
				<category><![CDATA[Research]]></category>
		<category><![CDATA[programming]]></category>

		<guid isPermaLink="false">http://www.weblaws.org/robb/?p=776</guid>
		<description><![CDATA[I&#8217;m fascinated by new tricks that spammers try to pull and scams in general. In the past, I&#8217;ve tried some creative techniques for dealing with them. Here&#8217;s the latest one to hit one of my sites; a blog about late-night places to study: The first comment reads, &#8220;Helpful blog, bookmarked the website with hopes to read [...]]]></description>
			<content:encoded><![CDATA[<p>I&#8217;m fascinated by new tricks that spammers try to pull and scams in general. In the past, <a href="http://www.weblaws.org/robb/2009/01/29/all-an-internet-scammer-needs-is-a-little-therapy/">I&#8217;ve tried some creative techniques</a> for dealing with them. Here&#8217;s the latest one to hit one of my sites; <a href="http://latenight.srsly.co/about/">a blog about late-night places to study</a>:</p>
<p><a href="http://www.weblaws.org/robb/wp-content/uploads/2010/10/spam-screenshot.png"><img class="aligncenter size-medium wp-image-789" title="spam-screenshot" src="http://www.weblaws.org/robb/wp-content/uploads/2010/10/spam-screenshot-300x90.png" alt="" width="300" height="90" /></a></p>
<p>The first comment reads, &#8220;<em>Helpful blog, bookmarked the website with hopes to read more!</em>&#8221;  An odd but friendly comment without a link to any website; seems benign.  But now that two have appeared, the pattern is clear:  They are (1) friendly posts that (2) praise the blog (3) using odd English phrasing, (4) without saying anything specific about the content and (5) are sent from the same sub-network.  <a href="http://www.google.com/search?sourceid=chrome&amp;ie=UTF-8&amp;q=%22bookmarked+the+website+with+hopes+to+read+more%22#q=%22bookmarked+the+website+with+hopes+to+read+more%22&amp;hl=en&amp;prmd=iv&amp;ei=6HbATLTqCouisQOF8J3MCw&amp;start=40&amp;sa=N&amp;fp=1efc917b6661c5a0">Google shows 25,000 similar posts</a> on other sites.</p>
<p>I&#8217;m not sure what the spammer is after, but my guess is: First become an &#8220;approved commenter&#8221; on the target sites, then return later to post actual spam.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.weblaws.org/robb/2010/10/21/yeah-right-bookmarked-the-website-with-hopes-to-read-more/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>New Project: Permalinks for USPTO Trademark Registrations</title>
		<link>http://www.weblaws.org/robb/2010/10/11/new-project-permalinks-for-uspto-trademark-registrations/</link>
		<comments>http://www.weblaws.org/robb/2010/10/11/new-project-permalinks-for-uspto-trademark-registrations/#comments</comments>
		<pubDate>Mon, 11 Oct 2010 21:01:26 +0000</pubDate>
		<dc:creator>Robb</dc:creator>
				<category><![CDATA[Idea]]></category>
		<category><![CDATA[open government]]></category>
		<category><![CDATA[programming]]></category>
		<category><![CDATA[trademark]]></category>

		<guid isPermaLink="false">http://www.weblaws.org/robb/?p=768</guid>
		<description><![CDATA[I was doing some trademark research at the firm I&#8217;m clerking at, and found just what I was looking for: a particular abandoned trademark registration.  I wanted to send a partner an email about it, and so I mistakenly did the natural thing: I copied and pasted the URL (the link) to the USPTO web [...]]]></description>
			<content:encoded><![CDATA[<p>I was doing some trademark research at the firm I&#8217;m clerking at, and found just what I was looking for: a particular abandoned trademark registration.  I wanted to send a partner an email about it, and so I mistakenly did the natural thing: I copied and pasted the URL (the link) to the USPTO web page.</p>
<p>He replied a few minutes later: the link wouldn&#8217;t work.  They never do; they expire after 10 minutes or so.  And so what happens?  Attorneys <em>print out</em> or <em>create PDFs</em> of the USPTO web pages in order to discuss them.</p>
<p>I immediately thought that there must be something that could be done here, and so I started the <a href="https://www.weblaws.org/tm">Trademark Permalink</a> project:</p>
<blockquote><p>Create links that <strong>don’t expire</strong> to trademarks at the U.S. Patent &amp; Trademark Office. Use them in <strong>emails</strong>, on your <strong>website</strong>, or anywhere else you want to point someone to a trade/service-mark registration.</p></blockquote>
<p>EDIT:</p>
<p>The story&#8217;s gotten a little more complicated:  In the past day or so, I discovered that it&#8217;s possible that my work might be superfluous: The &#8220;TARR&#8221; USPTO web app provides single-document retrieval via URLs that don&#8217;t time out.  Many (most?) practitioners seem to only know about the TESS service, though, which *does* time out.  Also, the TARR data seems to come from a different source, and is definitely a different format.  For example, the IBM registration I use as an example:</p>
<div><a href="http://weblaws.org/tm/75871833" target="_blank">http://weblaws.org/tm/75871833</a></div>
<div>&#8230;can be linked to directly on TARR:</div>
<p><a href="http://tarr.uspto.gov/servlet/tarr?regser=serial&amp;entry=75871833" target="_blank">http://tarr.uspto.gov/servlet/tarr?regser=serial&amp;entry=75871833</a></p>
<div>However, like I mentioned above, TARR only seems to give single-document retrieval.  TESS will return the results of a query like &#8220;All TMs owned by so-and-so.&#8221;  I&#8217;ve been planning to expand my service to create PURLs for these kinds of TESS look-ups as well.  (This was the motivation for me to make the service in the first place: I had run a query finding six TMs that I wanted to share with a colleague.  But the URL of the search results timed out before he saw my email.)</div>
<div>Confused yet?  :-)</div>
]]></content:encoded>
			<wfw:commentRss>http://www.weblaws.org/robb/2010/10/11/new-project-permalinks-for-uspto-trademark-registrations/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>New website administration strategy: test-driven configuration</title>
		<link>http://www.weblaws.org/robb/2010/10/06/new-website-administration-strategy-test-driven-configuration/</link>
		<comments>http://www.weblaws.org/robb/2010/10/06/new-website-administration-strategy-test-driven-configuration/#comments</comments>
		<pubDate>Thu, 07 Oct 2010 01:29:28 +0000</pubDate>
		<dc:creator>Robb</dc:creator>
				<category><![CDATA[Think 200]]></category>
		<category><![CDATA[programming]]></category>

		<guid isPermaLink="false">http://www.weblaws.org/robb/?p=753</guid>
		<description><![CDATA[Think 200 is a web experiment that combines web server configuration with one of the best programming practices: test-driven development. It works with Apache, Nginx, IIS, or any other web server. The new idea goes like this: You find a web page that&#8217;s not returning the status code or results you wanted it to (i.e. redirecting [...]]]></description>
			<content:encoded><![CDATA[<p><a rel="nofollow" href="http://think200.com/">Think 200</a> is a web experiment that combines web server configuration with one of the best programming practices: <a rel="nofollow" href="http://en.wikipedia.org/wiki/Test-driven_development">test-driven development</a>. It works with Apache, Nginx, IIS, or any other web server. The new idea goes like this:</p>
<ol>
<li>You find a web page that&#8217;s not returning the status code or results you wanted it to (i.e. redirecting to the wrong place).</li>
<li>You write a test (which will fail) which &#8220;asserts&#8221; the behavior you want it to have.</li>
<li>You edit your config files, periodically re-running all of the tests.</li>
<li>When all of the tests pass, your job is done.</li>
</ol>
<p>The same <a rel="nofollow" href="http://en.wikipedia.org/wiki/Test-driven_development#Benefits">benefits of TDD</a> should apply to TDC.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.weblaws.org/robb/2010/10/06/new-website-administration-strategy-test-driven-configuration/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>CivicApps and the Search for Ideas</title>
		<link>http://www.weblaws.org/robb/2010/06/26/winner-of-civicapps-best-idea-award/</link>
		<comments>http://www.weblaws.org/robb/2010/06/26/winner-of-civicapps-best-idea-award/#comments</comments>
		<pubDate>Sat, 26 Jun 2010 11:59:04 +0000</pubDate>
		<dc:creator>Robb</dc:creator>
				<category><![CDATA[export]]></category>
		<category><![CDATA[Idea]]></category>
		<category><![CDATA[open government]]></category>
		<category><![CDATA[programming]]></category>

		<guid isPermaLink="false">http://www.weblaws.org/robb/?p=652</guid>
		<description><![CDATA[I just found out that I won one of the two Best Idea awards given in the first annual CivicApps for Greater Portland contest;  I was completely surprised and very honored.  My idea is Community-Contributed Datasets. CivicApps.org in a nutshell Back in the old days, i.e. 2008, cities like Portland would create apps (interactive websites) for [...]]]></description>
			<content:encoded><![CDATA[<p>I just found out that <a href="http://www.civicapps.org/news/announcing-best-ideas-winners-and-runners">I won one of the two Best Idea awards</a> given in the first annual <a href="http://www.civicapps.org/">CivicApps for Greater Portland</a> contest;  I was completely surprised and very honored.  My idea is <a href="http://civicapps.org/ideas/community-contributed-datasets"><em>Community-Contributed Datasets</em></a>.</p>
<h2>CivicApps.org in a nutshell</h2>
<p>Back in the old days, i.e. 2008, cities like Portland would create <em>apps</em> (interactive websites) for us like this:</p>
<div id="attachment_665" class="wp-caption aligncenter" style="width: 328px"><img class="size-full wp-image-665" title="The old way" src="http://www.weblaws.org/robb/wp-content/uploads/2010/06/the-old-way.png" alt="The old way" width="318" height="149" /><p class="wp-caption-text">The old way of making apps</p></div>
<p>They&#8217;d get a team together, look at the Datasets available to it, come up with ideas, and then build the apps.   <a href="http://portlandmaps.com/">PortlandMaps</a>, an awesome web app, was made this way.  But there&#8217;s a new trend and Portland&#8217;s setting an example for other cities.  First, the city adopts a policy of transparency, publishing all of its raw data in addition to the finished apps:</p>
<div id="attachment_674" class="wp-caption aligncenter" style="width: 302px"><img class="size-full wp-image-674" title="CivicApps 1" src="http://www.weblaws.org/robb/wp-content/uploads/2010/06/civicapps-1.2.png" alt="CivicApps 1" width="292" height="242" /><p class="wp-caption-text">First, cities make their raw data available</p></div>
<p>Then, curious and entrepreneurial individuals, companies, and other organizations step in and independently create new apps.  This frees up city resources and results in more apps and services coming online:</p>
<div id="attachment_677" class="wp-caption aligncenter" style="width: 473px"><img class="size-full wp-image-677" title="CivicApps 2" src="http://www.weblaws.org/robb/wp-content/uploads/2010/06/civicapps-2.3.png" alt="CivicApps 2" width="463" height="242" /><p class="wp-caption-text">Then, 3rd parties can step in and contribute</p></div>
<p>This is the entire purpose of the <a href="http://civicapps.org/">CivicApps.org</a> project and website: to enable this creative environment.  By the way, this is the same idea behind the federal <a href="http://www.data.gov">Data.gov</a> project.</p>
<h2>My idea: we can contribute data too</h2>
<p>It occurred to me that many organizations have valuable data about the city.  And some even have the expertise to publish the data in &#8220;open formats&#8221; just like the city of Portland is doing:</p>
<div id="attachment_682" class="wp-caption aligncenter" style="width: 473px"><img class="size-full wp-image-682" title="My idea" src="http://www.weblaws.org/robb/wp-content/uploads/2010/06/my-idea-3.png" alt="My idea" width="463" height="242" /><p class="wp-caption-text">My idea: We can provide datasets too</p></div>
<p>For example, my project, OregonLaws.org, publishes a glossary of legal terms specific to Oregon.  This is already <a href="https://www.weblaws.org/page/api_documentation">up and running as a Dataset</a>.</p>
<p>It will, though, take some work to implement my idea.  Some questions to answer are;  How will these 3rd party Datasets be integrated into the palette of &#8220;official&#8221; ones?  How will the data be authenticated or verified?</p>
<h2>The near future</h2>
<p><strong>The end result of all this is that the city could become a nexus of information.  In addition to providing raw data about itself, it can act as a means of identification and authentication.  There&#8217;s a precedent for the government acting in this role, e.g. the Secretary of State&#8217;s business registry performs a similar service.</strong></p>
<h2>Update</h2>
<p>Oregon Business Magazine covered the CivicApps contest:  <a href="http://www.oregonbusiness.com/the-latest/3754-the-city-of-portland-helps-keep-pdx-a-hot-spot-for-app-development-and-open-source-innovation">Keeping PDX a Hot Spot for App Development</a><strong><br />
</strong></p>
]]></content:encoded>
			<wfw:commentRss>http://www.weblaws.org/robb/2010/06/26/winner-of-civicapps-best-idea-award/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Why &#8220;git&#8221; instead of &#8220;svn&#8221;?</title>
		<link>http://www.weblaws.org/robb/2010/06/01/why-git-instead-of-svn/</link>
		<comments>http://www.weblaws.org/robb/2010/06/01/why-git-instead-of-svn/#comments</comments>
		<pubDate>Wed, 02 Jun 2010 07:58:32 +0000</pubDate>
		<dc:creator>Robb</dc:creator>
				<category><![CDATA[Just a Thought]]></category>
		<category><![CDATA[programming]]></category>

		<guid isPermaLink="false">http://www.weblaws.org/robb/?p=624</guid>
		<description><![CDATA[As I learn git, I&#8217;m experiencing advantages that I haven&#8217;t seen described together. Also, I haven&#8217;t seen a description from the perspective of the real-world differences in your files, so here goes: Background context Subversion uses a single, central repository which is in a remote place. And in your project, it maintains .svn/ directories in every [...]]]></description>
			<content:encoded><![CDATA[<p>As I learn git, I&#8217;m experiencing advantages that I haven&#8217;t seen described together. Also, I haven&#8217;t seen a description from the perspective of the real-world differences in your files, so here goes:</p>
<h2>Background context</h2>
<p>Subversion uses a single, central repository which is in a remote place.  And in your project, it maintains <strong>.svn/</strong> directories in every sub-directory.  Git on the other hand, gives each developer their own full-fledged repository. And then, instead of relying on many hidden directories in your project, it creates one that lives only in the top-level directory; in <strong>.git/</strong>. So again: that&#8217;s the only place it stores info; nowhere else in your code.</p>
<p>Interesting, huh?</p>
<h2>The advantages I&#8217;ve found</h2>
<p>So now that I&#8217;ve begun to use git, it&#8217;s already been a nicer experience than subversion:</p>
<p><strong>Deleting a subdirectory doesn&#8217;t screw with the versioning</strong> like it does in svn.  (Because no version info is stored there.  In svn, you need to repair things; re-create the empty directory so you can delete it, etc.  I do this to myself periodically.)</p>
<p><strong>It&#8217;s totally painless to put existing stuff into git</strong> — it stays right where it is.  E.g., a website that&#8217;s in use.  You can initialize the repository and commit the current version of the files while they&#8217;re in use.  This isn&#8217;t possible with svn: you have to check it in, then check it out.</p>
<p><strong>It&#8217;s easy to work on a new idea:</strong> it&#8217;s really easy to create a branch to work on it, and then switch back and forth.  In svn, this is enough of a pain that I don&#8217;t do it in actual practice.  Git finally makes it easy for me to use revision control like I&#8217;ve always wanted: be able to check out our group&#8217;s code, test ideas out, and rollback in my own little world without disturbing the others, and finally commit only the changes I want to.</p>
<p><strong>Git assumes you meant to delete that file.</strong> That&#8217;s been nice and convenient:  I deleted a file without going and telling git first about it.  Git adds a &#8216;delete&#8217; operation to your list of things to check in.  Awesome.  Svn does it the other way around:  You can&#8217;t just do normal file operations; you have to also tell subversion that yes, you <em>did</em> mean to do that.</p>
<p><strong>Git has the GitHub killer app.</strong> It&#8217;s the Netscape of the WWW.  I haven&#8217;t found an equivalent for Subversion — web-based or not.</p>
<p>So that&#8217;s what I&#8217;ve come up so far; I&#8217;ll add more when I see them.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.weblaws.org/robb/2010/06/01/why-git-instead-of-svn/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Check your web server configuration with ruby test cases</title>
		<link>http://www.weblaws.org/robb/2010/05/22/http-assertions-test-cases-for-web-server-configurations/</link>
		<comments>http://www.weblaws.org/robb/2010/05/22/http-assertions-test-cases-for-web-server-configurations/#comments</comments>
		<pubDate>Sat, 22 May 2010 10:29:50 +0000</pubDate>
		<dc:creator>Robb</dc:creator>
				<category><![CDATA[Idea]]></category>
		<category><![CDATA[programming]]></category>

		<guid isPermaLink="false">http://www.weblaws.org/robb/?p=613</guid>
		<description><![CDATA[I&#8217;m releasing a new open source library, HTTP-Assertions, that I use behind the scenes at OregonLaws.org.  It helps me keep the server running smoothly and make sure that my changes to the config files haven&#8217;t introduced new bugs. It introduces these new assert methods to the Rails testing environment: assert_200 assert_forbidden assert_temp_redirect_to assert_perm_redirect_to Here&#8217;s an [...]]]></description>
			<content:encoded><![CDATA[<div>
<p>I&#8217;m releasing a new open source library, <a href="http://github.com/dogweather/HTTP-Assertions">HTTP-Assertions</a>, that I use behind the scenes at <a href="https://www.oregonlaws.org/">OregonLaws.org</a>.  It helps me keep the server running smoothly and make sure that my changes to the config files haven&#8217;t introduced new bugs.</p>
<p>It introduces these new assert methods to the Rails testing environment:</p>
<pre>  assert_200
  assert_forbidden
  assert_temp_redirect_to
  assert_perm_redirect_to</pre>
<p>Here&#8217;s an example:</p>
<pre>  assert_200('<a href="https://www.oregonlaws.org/ors/161.360">https://www.oregonlaws.org/ors/161.360</a>')</pre>
<p>See the <a href="http://github.com/dogweather/HTTP-Assertions">README on github</a> for more details.</p>
</div>
]]></content:encoded>
			<wfw:commentRss>http://www.weblaws.org/robb/2010/05/22/http-assertions-test-cases-for-web-server-configurations/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Software should cite its sources</title>
		<link>http://www.weblaws.org/robb/2008/01/14/idea-software-should-cite-its-sources/</link>
		<comments>http://www.weblaws.org/robb/2008/01/14/idea-software-should-cite-its-sources/#comments</comments>
		<pubDate>Mon, 14 Jan 2008 19:10:46 +0000</pubDate>
		<dc:creator>Robb</dc:creator>
				<category><![CDATA[Idea]]></category>
		<category><![CDATA[programming]]></category>

		<guid isPermaLink="false">http://greenfabric.com/robb/?p=4</guid>
		<description><![CDATA[The key idea: When a program gives some kind of result, it should be able to say how it came up with that answer &#8211; what rules did it apply, in what order, and why. If a reference was consulted, which one? Basically, software should be held to the same standards we have for people, [...]]]></description>
			<content:encoded><![CDATA[<p><strong>The key idea:</strong> When a program gives some kind of result, it should be able to say how it came up with that answer &#8211; what rules did it apply, in what order, and why.  If a reference was consulted, which one?</p>
<p>Basically, <strong>software should be held to the same standards we have for people</strong>, especially in the field of law.  Here&#8217;s what that might look like.  This is, again, the &#8220;development&#8221; interface&#8230; an end-user would see something much fancier:</p>
<pre>&gt;&gt; Abbreviation.abbreviate 'Chief Justice'
=&gt; "C.J."
&gt;&gt; Abbreviation.rule
=&gt; "Appendix 3"</pre>
<p>It&#8217;s a start.</p>
<p>As far as the technical implementation, I&#8217;ve been considering rule-based systems, prolog-based systems and object-oriented decomposition.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.weblaws.org/robb/2008/01/14/idea-software-should-cite-its-sources/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Creating intelligent legal writing applications</title>
		<link>http://www.weblaws.org/robb/2008/01/12/creating-intelligent-legal-writing-apps/</link>
		<comments>http://www.weblaws.org/robb/2008/01/12/creating-intelligent-legal-writing-apps/#comments</comments>
		<pubDate>Sat, 12 Jan 2008 19:14:15 +0000</pubDate>
		<dc:creator>Robb</dc:creator>
				<category><![CDATA[Idea]]></category>
		<category><![CDATA[programming]]></category>

		<guid isPermaLink="false">http://greenfabric.com/robb/?p=5</guid>
		<description><![CDATA[I&#8217;m intrigued by the idea of applying artificial intelligence to law and legal writing. The ALWD Citation Manual is an amazing document that makes a great starting point for developing interesting applications: it&#8217;s highly organized and presents the information in a structured taxonomy of &#8220;rules&#8221;.I began to wonder what it&#8217;d take to write tools that&#8217;d [...]]]></description>
			<content:encoded><![CDATA[<p><a title="screen-717420.png" href="http://greenfabric.com/robb/wp-content/uploads/2008/01/screen-717420.png"><img src="http://greenfabric.com/robb/wp-content/uploads/2008/01/screen-717420.png" alt="screen-717420.png" hspace="15" vspace="15" width="255" height="296" align="right" /></a>I&#8217;m intrigued by the idea of applying artificial intelligence to law and legal writing.  The ALWD Citation Manual is an amazing document that makes a great starting point for developing interesting applications:  it&#8217;s highly organized and presents the information in a structured taxonomy of &#8220;rules&#8221;.I began to wonder what it&#8217;d take to write tools that&#8217;d help create legal citations as well as validate them?  And so I&#8217;ve started a Ruby on Rails app that handles just one small part of the puzzle:  correctly abbreviating words in a citation.  Here&#8217;s the simple web app managing the database of abbreviations.  You might recognize this as the start of the table at Appendix 3(E).And I&#8217;ve created the programming for applying the rules of Appendix 3(E):</p>
<pre>&gt;&gt; Abbreviation.abbreviate 'Advance'</pre>
<pre>=&gt; "Adv."</pre>
<pre>&gt;&gt; Abbreviation.abbreviate 'Advanced'</pre>
<pre>=&gt; "Adv."</pre>
<pre>&gt;&gt; Abbreviation.abbreviate 'Advancing'</pre>
<pre>=&gt; "Advancing"</pre>
<p>So, this has been pretty interesting.  Now I need to handle plurals well.  This, though, means I&#8217;ll have to be able to identify plurals&#8230;  but I have a couple of good ideas about how to do this.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.weblaws.org/robb/2008/01/12/creating-intelligent-legal-writing-apps/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

