<?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"
	>

<channel>
	<title>Sailes.co.uk</title>
	<atom:link href="http://www.sailes.co.uk/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.sailes.co.uk</link>
	<description>Stuff Mark Sailes does</description>
	<pubDate>Sun, 16 Nov 2008 13:19:00 +0000</pubDate>
	<generator>http://wordpress.org/?v=2.6.1</generator>
	<language>en</language>
			<item>
		<title>Grails documentation</title>
		<link>http://www.sailes.co.uk/grails/grails-documentation/</link>
		<comments>http://www.sailes.co.uk/grails/grails-documentation/#comments</comments>
		<pubDate>Sun, 16 Nov 2008 13:19:00 +0000</pubDate>
		<dc:creator>mark</dc:creator>
		
		<category><![CDATA[grails]]></category>

		<guid isPermaLink="false">http://www.sailes.co.uk/?p=63</guid>
		<description><![CDATA[Open source projects don&#8217;t just require contributions to code, a lot of work goes into creating relevant and timely documentation. The fast pace that many open source projects work at mean that frequent releases can leave documentation frustratingly out of date.
There are a few things I like about how the Grails project manages it documentation. [...]]]></description>
			<content:encoded><![CDATA[<p>Open source projects don&#8217;t just require contributions to code, a lot of work goes into creating relevant and timely documentation. The fast pace that many open source projects work at mean that frequent releases can leave documentation frustratingly out of date.</p>
<p>There are a few things I like about how the Grails project manages it documentation. Firstly their website Grails.org has an own edit (Wiki) style. Meaning that pages regarding the many tutorials, plugins, new features can be updated by the community. This open style means that the project leads have more time to focus on more complex tasks.</p>
<p>Secondly I really like the Sun javadoc style <a title="grails docs" href="http://grails.org/doc/1.0.x/">Grails Framework Reference Documentation</a> which are now being produced. The documentation includes descriptions and examples of the various aspects of the Grails framework.</p>
<p>Lastly, if any of the documentation is out of date for any reason, the community is invited to report problems to the project&#8217;s issue tracker to be recorded. Other members of the community can then look into any alterations which need to be made.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.sailes.co.uk/grails/grails-documentation/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Grails natural names - GRAILS-564</title>
		<link>http://www.sailes.co.uk/grails/grails-natural-names/</link>
		<comments>http://www.sailes.co.uk/grails/grails-natural-names/#comments</comments>
		<pubDate>Sat, 15 Nov 2008 20:39:44 +0000</pubDate>
		<dc:creator>mark</dc:creator>
		
		<category><![CDATA[grails]]></category>

		<guid isPermaLink="false">http://www.sailes.co.uk/?p=51</guid>
		<description><![CDATA[True to my pledge I&#8217;ve dived straight into the Grails source code, and the project&#8217;s issue tracker.
To start with I picked an improvement classed as &#8216;Trivial&#8217; which I thought just about matched my level of Grails source code knowledge.
GRAILS-564 - &#8220;Have scaffolding display friendly names instead of camel case class names&#8221;
With my own use of [...]]]></description>
			<content:encoded><![CDATA[<p>True to my <a title="open source pledge" href="http://www.sailes.co.uk/open-source/my-pledge-to-open-source/">pledge</a> I&#8217;ve dived straight into the Grails source code, and the project&#8217;s issue tracker.</p>
<p>To start with I picked an improvement classed as &#8216;Trivial&#8217; which I thought just about matched my level of Grails source code knowledge.</p>
<p><a title="bug" href="http://jira.codehaus.org/browse/GRAILS-564">GRAILS-564</a> - &#8220;Have scaffolding display friendly names instead of camel case class names&#8221;</p>
<p>With my own use of Grails I&#8217;d seen that class properties were now being displayed with &#8216;friendly names&#8217;.</p>
<p>For example a domain class such as:</p>
<div class="dean_ch" style="white-space: wrap;">
<ol>
<li class="li1">
<div class="de1"><span class="kw2">class</span> ManyWords <span class="br0">&#123;</span></div>
</li>
<li class="li1">
<div class="de1">  <a href="http://www.google.com/search?hl=en&amp;q=allinurl%3AString+java.sun.com&amp;btnI=I%27m%20Feeling%20Lucky"><span class="kw3">String</span></a> LotsOfWords</div>
</li>
<li class="li1">
<div class="de1"><span class="br0">&#125;</span></div>
</li>
</ol>
</div>
<p>The property LotsOfWords is defaultly displayed in the scaffolding as &#8220;Lots Of Words&#8221;, however the class name was still being displayed as the short code &#8220;ManyWords&#8221; instead of &#8220;Many Words&#8221;.</p>
<p>So to the fix.</p>
<p>I traced the scaffolding creation to the class DefaultGrailsTemplateGenerator. This class is responsible for the creation of the default scaffolding views and controllers. Its in this class where a map of values is passed to the templates in &#8220;src/grails/templates/scaffolding/&#8221; when you call a command like &#8220;grails generate-all &lt;classname&gt;&#8221;. Here is where I was going to make my change.</p>
<div class="dean_ch" style="white-space: wrap;">
<ol>
<li class="li1">
<div class="de1"><a href="http://www.google.de/search?q=site%3Adocs.codehaus.org/%20def"><span class="kw2">def</span></a> binding = <span class="br0">&#91;</span>packageName: packageName,</div>
</li>
<li class="li1">
<div class="de1">                domainClass: domainClass,</div>
</li>
<li class="li1">
<div class="de1">                multiPart: multiPart,</div>
</li>
<li class="li1">
<div class="de1">                naturalClassName:domainClass.<span class="me1">naturalName</span>,</div>
</li>
<li class="li2">
<div class="de2">                shortClassName:domainClass.<span class="me1">shortName</span>,</div>
</li>
<li class="li1">
<div class="de1">                propertyName:  getPropertyName<span class="br0">&#40;</span>domainClass<span class="br0">&#41;</span>,</div>
</li>
<li class="li1">
<div class="de1">                renderEditor: renderEditor,</div>
</li>
<li class="li1">
<div class="de1">                comparator: org.<span class="me1">codehaus</span>.<span class="me1">groovy</span>.<span class="me1">grails</span>.<span class="me1">scaffolding</span>.<span class="me1">DomainClassPropertyComparator</span>.<a href="http://www.google.de/search?q=site%3Adocs.codehaus.org/%20class"><span class="kw2">class</span></a><span class="br0">&#93;</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp;</div>
</li>
<li class="li2">
<div class="de2">t.<span class="me1">make</span><span class="br0">&#40;</span>binding<span class="br0">&#41;</span>.<span class="me1">writeTo</span><span class="br0">&#40;</span>out<span class="br0">&#41;</span></div>
</li>
</ol>
</div>
<p>I passed in a new property naturalClassName, to the view templates and replaced it with the<br />
previous place holder where it was appropriate. The natural name is created using the method:</p>
<div class="dean_ch" style="white-space: wrap;">
<ol>
<li class="li1">
<div class="de1">GrailsClassUtils.<span class="me1">getNaturalName</span><span class="br0">&#40;</span>string<span class="br0">&#41;</span></div>
</li>
</ol>
</div>
]]></content:encoded>
			<wfw:commentRss>http://www.sailes.co.uk/grails/grails-natural-names/feed/</wfw:commentRss>
		</item>
		<item>
		<title>My Pledge to Open Source</title>
		<link>http://www.sailes.co.uk/open-source/my-pledge-to-open-source/</link>
		<comments>http://www.sailes.co.uk/open-source/my-pledge-to-open-source/#comments</comments>
		<pubDate>Sat, 15 Nov 2008 19:58:47 +0000</pubDate>
		<dc:creator>mark</dc:creator>
		
		<category><![CDATA[open source]]></category>

		<category><![CDATA[code]]></category>

		<guid isPermaLink="false">http://www.sailes.co.uk/?p=48</guid>
		<description><![CDATA[I&#8217;ve been the gratful consumer of the products of the open source community for years now and I really appreciate all the hard work that is put in by so many people around the world.
So I&#8217;ve now decided to get involved in any way in can, and I&#8217;m giving myself a year to do it. [...]]]></description>
			<content:encoded><![CDATA[<p>I&#8217;ve been the gratful consumer of the products of the open source community for years now and I really appreciate all the hard work that is put in by so many people around the world.</p>
<p>So I&#8217;ve now decided to get involved in any way in can, and I&#8217;m giving myself a year to do it. I&#8217;ve picked a couple of Java projects which I really enjoy using as my starting spot.</p>
<p><a title="groovy" href="http://groovy.codehaus.org/">Groovy </a>+ <a title="grails" href="http://grails.org/">Grails</a></p>
<p><a href="http://www.springframework.org/">Spring Framework</a></p>
<p>As a side note, if anyone else wants to join me and get involved at the same time, drop me an email.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.sailes.co.uk/open-source/my-pledge-to-open-source/feed/</wfw:commentRss>
		</item>
		<item>
		<title>American &#8216;Intelligent Design&#8217; text book published</title>
		<link>http://www.sailes.co.uk/uncategorized/american-intelligent-design-text-book-published/</link>
		<comments>http://www.sailes.co.uk/uncategorized/american-intelligent-design-text-book-published/#comments</comments>
		<pubDate>Sat, 27 Sep 2008 10:42:57 +0000</pubDate>
		<dc:creator>mark</dc:creator>
		
		<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://www.sailes.co.uk/?p=46</guid>
		<description><![CDATA[Every time I read about the nonsense in American about trying to force out Evolution from the science class it makes me cringe.
Ars Technica has a great review of the text book being put forward by the ID movement. They find it to be without evidence or basic logically arguments.
]]></description>
			<content:encoded><![CDATA[<p>Every time I read about the nonsense in American about trying to force out Evolution from the science class it makes me cringe.</p>
<p><a title="discovery textbook review" href="http://arstechnica.com/reviews/other/discovery-textbook-review.ars">Ars Technica</a> has a great review of the text book being put forward by the ID movement. They find it to be without evidence or basic logically arguments.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.sailes.co.uk/uncategorized/american-intelligent-design-text-book-published/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Monitoring and measuring bandwidth</title>
		<link>http://www.sailes.co.uk/debian/managing-and-measuring-bandwidth/</link>
		<comments>http://www.sailes.co.uk/debian/managing-and-measuring-bandwidth/#comments</comments>
		<pubDate>Sat, 16 Aug 2008 21:19:10 +0000</pubDate>
		<dc:creator>mark</dc:creator>
		
		<category><![CDATA[debian]]></category>

		<category><![CDATA[administration]]></category>

		<category><![CDATA[bandwidth]]></category>

		<guid isPermaLink="false">http://www.sailes.co.uk/?p=26</guid>
		<description><![CDATA[managing and measuring bandwidth - Moved to a new home
]]></description>
			<content:encoded><![CDATA[<p><a title="managing and measuring bandwidth" href="http://www.enterprise-java.co.uk/debian/managing-and-measuring-bandwidth/" target="_self">managing and measuring bandwidth</a> - Moved to a new home</p>
]]></content:encoded>
			<wfw:commentRss>http://www.sailes.co.uk/debian/managing-and-measuring-bandwidth/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Debian SSH Security</title>
		<link>http://www.sailes.co.uk/debian/debian-ssh-security/</link>
		<comments>http://www.sailes.co.uk/debian/debian-ssh-security/#comments</comments>
		<pubDate>Sat, 16 Aug 2008 20:26:43 +0000</pubDate>
		<dc:creator>mark</dc:creator>
		
		<category><![CDATA[debian]]></category>

		<category><![CDATA[denyhost]]></category>

		<category><![CDATA[security]]></category>

		<category><![CDATA[ssh]]></category>

		<guid isPermaLink="false">http://www.sailes.co.uk/?p=16</guid>
		<description><![CDATA[Debian SSH Security - Moved to a new home
]]></description>
			<content:encoded><![CDATA[<p><a title="Debian SSH Security" href="http://www.enterprise-java.co.uk/debian/debian-ssh-security/">Debian SSH Security</a> - Moved to a new home</p>
]]></content:encoded>
			<wfw:commentRss>http://www.sailes.co.uk/debian/debian-ssh-security/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Migration - Dedicated Server</title>
		<link>http://www.sailes.co.uk/migration/migration-dedicated-server/</link>
		<comments>http://www.sailes.co.uk/migration/migration-dedicated-server/#comments</comments>
		<pubDate>Sat, 16 Aug 2008 19:56:52 +0000</pubDate>
		<dc:creator>mark</dc:creator>
		
		<category><![CDATA[migration]]></category>

		<category><![CDATA[debian]]></category>

		<category><![CDATA[dedicated]]></category>

		<category><![CDATA[java]]></category>

		<guid isPermaLink="false">http://www.sailes.co.uk/?p=11</guid>
		<description><![CDATA[I&#8217;m now doing more Java programming and less Php. Which is a good thing since I&#8217;m a terrible Php programmer.
It soon became apparent that to host my own Java applications and web sites I needed a new host. Fasthost.com is not a good organisation and I really wanted to cut all links with them. This [...]]]></description>
			<content:encoded><![CDATA[<p>I&#8217;m now doing more Java programming and less Php. Which is a good thing since I&#8217;m a terrible Php programmer.</p>
<p>It soon became apparent that to host my own Java applications and web sites I needed a new host. Fasthost.com is not a good organisation and I really wanted to cut all links with them. This was all the encouragement I needed to move to my own dedicated server.</p>
<p>I choose to jump into bed with a local (York) company called <a title="Bytemark" href="http://www.bytemark.co.uk">Bytemark</a>.</p>
<p>A dedicated host gave me the chance to make my own decisions, my choice of web server and its configuation. Also the ability to run my own increasingly demanding Java applications since I had my own deadicated ram to play with.</p>
<p>However this came with the downside that I had to manage said server. I have basic knowledge of HP-UX and bits and pieces from various Linux distros. But I&#8217;ve always liked a challenge and I look forward to running the show for a change.</p>
<p>For the nosey people, I&#8217;ve got 2GB of Ram, mirrored hard drives running Debian Etch. I&#8217;m planning on installing Apache, php, mysql for various WordPress sites I run and Tomcat for Java.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.sailes.co.uk/migration/migration-dedicated-server/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Apologies</title>
		<link>http://www.sailes.co.uk/uncategorized/apologies/</link>
		<comments>http://www.sailes.co.uk/uncategorized/apologies/#comments</comments>
		<pubDate>Sat, 16 Aug 2008 19:25:46 +0000</pubDate>
		<dc:creator>mark</dc:creator>
		
		<category><![CDATA[Uncategorized]]></category>

		<category><![CDATA[sailes]]></category>

		<guid isPermaLink="false">http://www.sailes.co.uk/?p=3</guid>
		<description><![CDATA[
Apologies if you are reading this after being redirected from missing content.

My previous content management system was just getting me down and not up to the job. I&#8217;ll may move some of the content over in time, meanwhile if you need to know anything specific contact me on mark at sailes dot co dot uk.

 [...]]]></description>
			<content:encoded><![CDATA[<p><!--[endif]--><!--[if gte mso 9]><xml> <o:shapedefaults v:ext="edit" spidmax="1026" /> </xml><![endif]--><!--[if gte mso 9]><xml> <o:shapelayout v:ext="edit"> <o:idmap v:ext="edit" data="1" /> </o:shapelayout></xml><![endif]--></p>
<p class="MsoNormal">Apologies if you are reading this after being redirected from missing content.</p>
<p class="MsoNormal">
<p class="MsoNormal">My previous content management system was just getting me down and not up to the job. I&#8217;ll may move some of the content over in time, meanwhile if you need to know anything specific contact me on mark at sailes dot co dot uk.</p>
<p class="MsoNormal">
<p class="MsoNormal"><!--[if gte mso 9]><xml> <w:WordDocument> <w:View>Normal</w:View> <w:Zoom>0</w:Zoom> <w:PunctuationKerning /> <w:ValidateAgainstSchemas /> <w:SaveIfXMLInvalid>false</w:SaveIfXMLInvalid> <w:IgnoreMixedContent>false</w:IgnoreMixedContent> <w:AlwaysShowPlaceholderText>false</w:AlwaysShowPlaceholderText> <w:Compatibility> <w:BreakWrappedTables /> <w:SnapToGridInCell /> <w:WrapTextWithPunct /> <w:UseAsianBreakRules /> <w:DontGrowAutofit /> </w:Compatibility> <w:BrowserLevel>MicrosoftInternetExplorer4</w:BrowserLevel> </w:WordDocument> </xml><![endif]--><!--[if gte mso 9]><xml> <w:LatentStyles DefLockedState="false" LatentStyleCount="156"> </w:LatentStyles> </xml><![endif]--> <!--[if gte mso 10]><br />
<mce:style><!   /* Style Definitions */  table.MsoNormalTable 	{mso-style-name:"Table Normal"; 	mso-tstyle-rowband-size:0; 	mso-tstyle-colband-size:0; 	mso-style-noshow:yes; 	mso-style-parent:""; 	mso-padding-alt:0cm 5.4pt 0cm 5.4pt; 	mso-para-margin:0cm; 	mso-para-margin-bottom:.0001pt; 	mso-pagination:widow-orphan; 	font-size:10.0pt; 	font-family:"Times New Roman"; 	mso-ansi-language:#0400; 	mso-fareast-language:#0400; 	mso-bidi-language:#0400;} --></p>
<p><!--[endif]--></p>
<p class="MsoNormal">Regretfully</p>
<p class="MsoNormal">
<p class="MsoNormal">Mark,</p>
]]></content:encoded>
			<wfw:commentRss>http://www.sailes.co.uk/uncategorized/apologies/feed/</wfw:commentRss>
		</item>
	</channel>
</rss>
