<?xml version="1.0" encoding="UTF-8"?><!-- generator="WordPress/2.9.2" -->
<rss version="0.92">
<channel>
	<title>Ted Naleid</title>
	<link>http://naleid.com/blog</link>
	<description>Groovy, Grails and OS X tips and tricks</description>
	<lastBuildDate>Wed, 16 Jun 2010 17:38:32 +0000</lastBuildDate>
	<docs>http://backend.userland.com/rss092</docs>
	<language>en</language>
	
	<item>
		<title>Groovy Each Iterator with Peek-ahead at Next Collection Value</title>
		<description><![CDATA[Groovy closures combined with iterators make it simple to create our own enhanced iterators that let us process a collection how we want to.
I write my own custom iterators all the time and name them something descriptive.  This makes the code much more readable. Rather than trying to decipher what a for loop is [...]]]></description>
		<link>http://naleid.com/blog/2010/06/15/groovy-each-iterator-with-peek-ahead-at-next-collection-value/</link>
			</item>
	<item>
		<title>Using a Unique Grails Working Directory for each Mercurial Branch</title>
		<description><![CDATA[At work, we&#8217;re using mercurial for our source control.  As we&#8217;ve released code to production we&#8217;ve needed to branch our repository to support what&#8217;s in production as well as ongoing development.  
By default, grails uses ~/.grails as the working directory.  If you&#8217;re doing branchy development, you can run into problems with this [...]]]></description>
		<link>http://naleid.com/blog/2010/05/07/using-a-unique-grails-working-directory-for-each-mercurial-branch/</link>
			</item>
	<item>
		<title>Grails build-test-data 1.1 released with new buildLazy functionality</title>
		<description><![CDATA[Version 1.1 of the build-test-data plugin has just been released.
It adds a new buildLazy method that will only create a new object graph if it can&#8217;t find an existing object that matches the build criteria specified.
Example:

    def a = new Author&#40;firstName: &#34;Ray&#34;, lastName: &#34;Bradbury&#34;&#41;
    a.save&#40;&#41;
    assert [...]]]></description>
		<link>http://naleid.com/blog/2010/04/04/grails-build-test-data-1-1-released-with-new-buildlazy-functionality/</link>
			</item>
	<item>
		<title>Grails build-test-data plugin version 1.0 released</title>
		<description><![CDATA[I&#8217;ve finally released version 1.0 of the grails build-test-data plugin.
If you&#8217;re not familiar with build-test-data, the quick summary is that it puts a build() method on all grails domain objects.  Calling that method will automatically construct and save an instance of that domain object that conforms to all of the domain&#8217;s constraints.  It [...]]]></description>
		<link>http://naleid.com/blog/2010/03/17/grails-build-test-data-plugin-version-1-0-released/</link>
			</item>
	<item>
		<title>Updated grails autocomplete script for zsh</title>
		<description><![CDATA[A couple of years ago, I created a grails auto-completion script for bash and zsh.  
Since then, I&#8217;ve completely abandoned bash, in favor of zsh (which I consider to be the superior shell) and I&#8217;d been getting annoyed at a few issues in the last grails autocomplete script.
I finally got motivated to make some [...]]]></description>
		<link>http://naleid.com/blog/2010/03/02/updated-grails-autocomplete-script-for-zsh/</link>
			</item>
	<item>
		<title>Using iWork Numbers.app AppleScript to Sum Columns For All Tables on a Sheet</title>
		<description><![CDATA[Overall, I&#8217;m pretty happy with Numbers.app (part of Apple&#8217;s iWork suite) as a replacement for Excel.  It&#8217;s considerably cheaper and has lots of user interface tweaks to make it more pleasant to work with.
One of these changes is that each sheet can actually have multiple tables on it, and these can be arranged independently [...]]]></description>
		<link>http://naleid.com/blog/2010/02/07/using-iwork-numbers-applescript-to-sum-columns-for-all-tables-on-a-sheet/</link>
			</item>
	<item>
		<title>Interrogating Arbitrary Groovy Closures for Values</title>
		<description><![CDATA[Inspired by this question on stackoverflow, I decided to create a utility class that allowed me to determine generically what calls a closure makes (without actually letting it make any calls).  This lets me see what it&#8217;s trying to do before letting it actually do it.

It works by overriding the delegate of the closure [...]]]></description>
		<link>http://naleid.com/blog/2010/01/24/interrogating-arbitrary-groovy-closures-for-values/</link>
			</item>
	<item>
		<title>Hooking up Hudson to your bitbucket mercurial account</title>
		<description><![CDATA[This past weekend, I saw @wakaleo running into some issues getting bitbucket hooked up to hudson.
I responded with a long reply that I thought would be worth cleaning up and posting here.

Mercurial, Bitbucket and Hudson
I&#8217;ve been using Mercurial as my personal revision control system for a while now.
I&#8217;ve more recently been using it at work [...]]]></description>
		<link>http://naleid.com/blog/2009/12/21/hooking-up-hudson-to-your-bitbucket-mercurial-account/</link>
			</item>
	<item>
		<title>Mercurial DVCS DevJam Presentation</title>
		<description><![CDATA[This past week, I gave a presentation to the DevJam meeting on the advantages of using Mercurial, a DVCS (Distributed Version Control System) over tools like Subversion, Perforce, and ClearCase.

I&#8217;ve been using a mercurial repository at bitbucket to host the build-test-data grails plugin, as well as a number of other things that I&#8217;ve done.  [...]]]></description>
		<link>http://naleid.com/blog/2009/11/08/mercurial-dvcs-devjam-presentation/</link>
			</item>
	<item>
		<title>Grails Testing Alias to Rerun Failed Tests</title>
		<description><![CDATA[A while ago I blogged about my grails testing aliases and how much time they save me.
I&#8217;ve made some enhancements to them in the interim that have made them even easier to use.  
The most important alias is gtaf, which is short for &#8220;grails test-app&#8221; for failed tests.
It will search through your test output [...]]]></description>
		<link>http://naleid.com/blog/2009/11/03/grails-testing-alias-to-rerun-failed-tests/</link>
			</item>
</channel>
</rss>
