<?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>ShadesofGraylin.net</title>
	<atom:link href="http://shadesofgraylin.net/feed/" rel="self" type="application/rss+xml" />
	<link>http://shadesofgraylin.net</link>
	<description>A home for the thoughts I think and the things I do</description>
	<lastBuildDate>Mon, 14 Feb 2011 20:52:05 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.0.5</generator>
		<item>
		<title>Open Legislation on Maven</title>
		<link>http://shadesofgraylin.net/2011/open-legislation-on-maven/</link>
		<comments>http://shadesofgraylin.net/2011/open-legislation-on-maven/#comments</comments>
		<pubDate>Mon, 14 Feb 2011 20:52:05 +0000</pubDate>
		<dc:creator>graylin.kim</dc:creator>
				<category><![CDATA[RCOS]]></category>
		<category><![CDATA[Maven]]></category>
		<category><![CDATA[OpenLegislation]]></category>

		<guid isPermaLink="false">http://shadesofgraylin.net/?p=35</guid>
		<description><![CDATA[This weekend I put Open Legislation back on Maven. It was on Maven before, but while I was away (i.e. ignoring the project over winter break) a new branch was started and it somehow doesn&#8217;t have Maven and since it &#8230; <a href="http://shadesofgraylin.net/2011/open-legislation-on-maven/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>This weekend I put <a href="https://github.com/nysenatecio/OpenLegislation">Open Legislation</a> back on <a href="http://maven.apache.org/">Maven</a>. It was on Maven before, but while I was away (i.e. ignoring the project over winter break) a new branch was started and it somehow doesn&#8217;t have Maven and since it is now the main development branch, it seemed like time to bring Maven back in again.</p>
<p>I&#8217;d like to pause here to explain what Maven is and why Maven is a good thing because many (most) people don&#8217;t know what Maven is or why it is awesome (at least in my experience).</p>
<h2>Maven</h2>
<p>Maven is a software project management tool. It makes managing dependencies, building, testing, packaging, and deploying (more or less) easy. How easy? Lets take Open Legislation as an example on Ubuntu.</p>
<ol>
<li>sudo apt-get install git-core maven2 openjdk-6-jdk tomcat6<br />
<em>These are the software dependencies not packaged or provided by maven2</em></li>
<li>git clone git://github.com/nysenatecio/OpenLegislation.git<br />
<em>Grab the latest copy off of github</em></li>
<li>cd OpenLegislation; git checkout ingest<br />
<em>Jump into the repo and checkout the ingest branch (latest and greatest)<br />
</em></li>
<li>mvn package<em><br />
Maven grabs all dependencies, builds, tests, and packages OpenLegislation into a .war</em></li>
</ol>
<p>Now just grab the .war file and deploy where ever you want. This is especially nice because we don&#8217;t keep any of the dependencies in the repository. Maven automatically fetches them as needed in accordance with the `pom.xml` at the root of the repository. Its even got plug-ins for <a href="http://m2eclipse.sonatype.org/">integration with Eclipse</a> and <a href="http://mojo.codehaus.org/tomcat-maven-plugin/">integration with Tomcat</a> so that you can work entirely within eclipse or build,test,package,and deploy to server in one step with `mvn tomcat:deploy`.</p>
<p>So maven does a good job of keeping the repository light weight while making dependencies easy and wrapping the (scary) Java build process up in nice friendly commands.</p>
<p>Now, the <a href="http://maven.apache.org/pom.html#What_is_the_POM">pom.xml</a> file itself can be a pain to put together (xml is so tedious) but luckily, the eclipse plug-in makes the process startlingly easy. Just open up the pom.xml file, click add dependency, start typing the package name until the auto-suggest finds what you want, select the version you want (or choose latest) and hit enter. Rinse and repeat for all your dependencies.</p>
<p>Of course the official maven repositories don&#8217;t have every single possible Java dependency ever (though often it seems like it), so its not always that easy. But even in these edge cases, its <a href="http://maven.apache.org/pom.html#Repository">really not too hard</a> to bring them under Maven dependency management.</p>
<h2>OpenLegislation</h2>
<p>So back to Open Legislation. Now that its back on Maven and we&#8217;ve removed the dependencies on MySQL and JDO its getting to the point where its almost a no-brainer to install. There are definitely still some issues and I think there are a few places where manual configuration edits are needed but things are moving along nicely.</p>
<p>Not that it really matters quite yet anyway, the average individual would have virtually no reason to install and deploy Open Legislation since it really only works for the exact use case of the New York Senate&#8217;s legislative data. But I&#8217;m learning how to reduce friction and make life as a contributor easy. Useful skills for anyone to have going forward.</p>
<p>Even if Open Legislation never makes it to the extensible point where it can be re-used by other bodies, its processes and technology stack can serve as an excellent use case for those who follow.</p>
]]></content:encoded>
			<wfw:commentRss>http://shadesofgraylin.net/2011/open-legislation-on-maven/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>HFOSS 2011</title>
		<link>http://shadesofgraylin.net/2011/hfoss-2011/</link>
		<comments>http://shadesofgraylin.net/2011/hfoss-2011/#comments</comments>
		<pubDate>Sun, 13 Feb 2011 04:31:37 +0000</pubDate>
		<dc:creator>graylin.kim</dc:creator>
				<category><![CDATA[RCOS]]></category>
		<category><![CDATA[OpenLegislation]]></category>

		<guid isPermaLink="false">http://shadesofgraylin.net/?p=26</guid>
		<description><![CDATA[Next month, the HFOSS group is hosting their annual Symposium on H-FOSS and Education. A couple weeks back Professor Moorthy pointed me at their Call For Participation page and suggested that I should apply for a poster session on my &#8230; <a href="http://shadesofgraylin.net/2011/hfoss-2011/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>Next month, the <a href="http://hfoss.org/">HFOSS group</a> is hosting their annual Symposium on H-FOSS and Education.</p>
<p>A couple weeks back <a href="http://cs.rpi.edu/~moorthy">Professor Moorthy</a> pointed me at their <a href="http://www.hfoss.org/hfoss2011/?q=cfp">Call For Participation</a> page and suggested that I should apply for a poster session on my work with <a href="http://open.nysenate.gov/legislation/">Open Legislation</a> and the <a href="http://www.nysenate.gov/">New York State Senate&#8217;s</a> CIO. This past Friday I finalized and sent in my application, so I&#8217;m excited to see what kind of response it gets. There is even a chance for Google to sponsor my trip (free admission and $300 towards travel expenses)!</p>
<p>I&#8217;m not entirely sure what the next steps would be if my application was accepted. The confirmation message suggested that I will not have access to electronic media or electrical outlets at the poster session. Never having been to a conference set up like this, I&#8217;ll need to do some research into what sorts of visuals and materials are expected.</p>
<p>For the curious, my proposal has been <a href="http://shadesofgraylin.net/media/HFOSSProposal_2011.pdf">uploaded here.</a></p>
]]></content:encoded>
			<wfw:commentRss>http://shadesofgraylin.net/2011/hfoss-2011/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

