<?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>Blackkettle &#187; Projects</title>
	<atom:link href="http://blog.blackkettle.org/category/projects/feed/" rel="self" type="application/rss+xml" />
	<link>http://blog.blackkettle.org</link>
	<description>Things of Occasional Interest</description>
	<lastBuildDate>Wed, 10 Feb 2010 16:03:09 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.9.1</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>Green Fields</title>
		<link>http://blog.blackkettle.org/2009/04/24/green-fields/</link>
		<comments>http://blog.blackkettle.org/2009/04/24/green-fields/#comments</comments>
		<pubDate>Fri, 24 Apr 2009 19:36:45 +0000</pubDate>
		<dc:creator>alex</dc:creator>
				<category><![CDATA[Coding]]></category>
		<category><![CDATA[Internet]]></category>
		<category><![CDATA[Projects]]></category>
		<category><![CDATA[Ruby]]></category>
		<category><![CDATA[amazon]]></category>
		<category><![CDATA[aws]]></category>
		<category><![CDATA[ec2]]></category>
		<category><![CDATA[rails]]></category>
		<category><![CDATA[s3]]></category>

		<guid isPermaLink="false">http://blog.blackkettle.org/?p=76</guid>
		<description><![CDATA[So&#8230; first green fields Major Project in a while. It&#8217;s a Rails app, but I&#8217;m shifting to PostgreSQL and Amazon EC2/S3 for a bunch of it, so there&#8217;s going to be a fair amount of new learnings here.
It also feels slightly odd to be jumping back into Rails again. I&#8217;ve not done any new Rails [...]]]></description>
			<content:encoded><![CDATA[<p>So&#8230; first green fields Major Project in a while. It&#8217;s a Rails app, but I&#8217;m shifting to PostgreSQL and Amazon EC2/S3 for a bunch of it, so there&#8217;s going to be a fair amount of new learnings here.</p>
<p>It also feels slightly odd to be jumping back into Rails again. I&#8217;ve not done any new Rails work for a little while; the majority of my consulting has been on apps frozen at 2.1, so it&#8217;ll be good to be working on the fresh code-base.</p>
<p>I&#8217;ve shut down Other People Work for the next couple of weeks to get this project out of the door, although I reckon that what with various travel and visiting plans, I&#8217;ve only got about 2/3rds of that time to play with.</p>
<p>No time to hang around here blogging, there&#8217;s work to be done!</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.blackkettle.org/2009/04/24/green-fields/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Django Vs Rails</title>
		<link>http://blog.blackkettle.org/2006/12/04/django-vs-rails/</link>
		<comments>http://blog.blackkettle.org/2006/12/04/django-vs-rails/#comments</comments>
		<pubDate>Mon, 04 Dec 2006 14:28:22 +0000</pubDate>
		<dc:creator>alex</dc:creator>
				<category><![CDATA[Projects]]></category>
		<category><![CDATA[Ruby]]></category>

		<guid isPermaLink="false">http://blog.blackkettle.org/2006/12/04/django-vs-rails/</guid>
		<description><![CDATA[I&#8217;ve just kicked off a new project, and because I&#8217;ve been looking for an excuse for a while, I thought I&#8217;d give Django a try.
Python was an interim language which I toyed with a while ago, but I discovered Ruby before I got that comfortable with it.  Nevertheless, I did enjoy it, and I [...]]]></description>
			<content:encoded><![CDATA[<p>I&#8217;ve just kicked off a new project, and because I&#8217;ve been looking for an excuse for a while, I thought I&#8217;d give Django a try.</p>
<p>Python was an interim language which I toyed with a while ago, but I discovered Ruby before I got that comfortable with it.  Nevertheless, I did enjoy it, and I am familiar enough with it that the language barrier wasn&#8217;t an issue.  After a couple of days, it became clear that Django just wasn&#8217;t cutting it &#8211; I&#8217;ve reverted to Rails as a result.  There were two main problems I had which made me shift, and I don&#8217;t think it&#8217;s just me being stuck in my ways.
<p>The first of these was that Django doesn&#8217;t have anything like Rails&#8217; migrations.  These are an absolute godsend, to the extent that on the past couple of PHP projects I&#8217;ve been shanghaied into, I&#8217;ve duplicated their functionality as much as possible.  They save me so much time and hassle.</p>
<p>The second is the half-hearted nature of Django&#8217;s testing framework.  Admittedly, I was using 0.95 rather than the development version, but it&#8217;s really quite paltry compared to what you get out of the box with Rails.  I just couldn&#8217;t get comfortable in the same way as I found I did quite quickly when I first started learning Rails.</p>
<p>It&#8217;s quite possible that these problems will go away by the time Django hits 1.0, or even that they&#8217;re addressed well enough in the development version that I&#8217;d be happy with that.  I have serious reservations about learning a framework with a development version, though &#8211; it&#8217;s too easy to stumble on a dev bug and not know if it&#8217;s a fault in your own code.</p>
<p>I&#8217;ll probably come back to Django at some point &#8211; it&#8217;s got a <b>lot</b> to recommend it &#8211; but for me it&#8217;s just not quite there yet.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.blackkettle.org/2006/12/04/django-vs-rails/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Updated the Lexicon</title>
		<link>http://blog.blackkettle.org/2006/09/11/updated-the-lexicon/</link>
		<comments>http://blog.blackkettle.org/2006/09/11/updated-the-lexicon/#comments</comments>
		<pubDate>Mon, 11 Sep 2006 09:59:29 +0000</pubDate>
		<dc:creator>alex</dc:creator>
				<category><![CDATA[Coding]]></category>
		<category><![CDATA[Shaxam]]></category>
		<category><![CDATA[XAML]]></category>

		<guid isPermaLink="false">http://blog.blackkettle.org/2006/09/11/updated-the-lexicon/</guid>
		<description><![CDATA[Just made a quick update to the Lexicon page.  In a nutshell, it turns out that you can animate PerspectiveCameras in exactly the same way as Model3Ds, because they support a Transform property.  I haven&#8217;t had a chance to play with it properly yet, but it means no more fiddling with Vector3DAnimations to [...]]]></description>
			<content:encoded><![CDATA[<p>Just made a quick update to the <a href="http://blog.blackkettle.org/lightwave-winfx-lexicon/">Lexicon page</a>.  In a nutshell, it turns out that you can animate PerspectiveCameras in exactly the same way as Model3Ds, because they support a Transform property.  I haven&#8217;t had a chance to play with it properly yet, but it means no more fiddling with Vector3DAnimations to change LookDirection any more.  Woohoo!</p>
<p>Oh, and it looks like the same applies to Lights.  More Woohoo!</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.blackkettle.org/2006/09/11/updated-the-lexicon/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Confused about Normals</title>
		<link>http://blog.blackkettle.org/2006/08/28/confused-about-normals/</link>
		<comments>http://blog.blackkettle.org/2006/08/28/confused-about-normals/#comments</comments>
		<pubDate>Mon, 28 Aug 2006 11:52:19 +0000</pubDate>
		<dc:creator>alex</dc:creator>
				<category><![CDATA[Shaxam]]></category>
		<category><![CDATA[XAML]]></category>

		<guid isPermaLink="false">http://blog.blackkettle.org/2006/08/28/confused-about-normals/</guid>
		<description><![CDATA[For some reason, the Normals property on a MeshGeometry3D is per vertex.  Who ever heard of a point having a normal?  It&#8217;s weird.  Just thought I&#8217;d point that out.
]]></description>
			<content:encoded><![CDATA[<p>For some reason, the Normals property on a MeshGeometry3D is per vertex.  Who ever heard of a point having a normal?  It&#8217;s weird.  Just thought I&#8217;d point that out.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.blackkettle.org/2006/08/28/confused-about-normals/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>We got flayed!</title>
		<link>http://blog.blackkettle.org/2006/08/16/we-got-flayed/</link>
		<comments>http://blog.blackkettle.org/2006/08/16/we-got-flayed/#comments</comments>
		<pubDate>Wed, 16 Aug 2006 08:02:21 +0000</pubDate>
		<dc:creator>alex</dc:creator>
				<category><![CDATA[LightWave]]></category>
		<category><![CDATA[Shaxam]]></category>
		<category><![CDATA[XAML]]></category>

		<guid isPermaLink="false">http://blog.blackkettle.org/2006/08/16/we-got-flayed/</guid>
		<description><![CDATA[The post is here.
]]></description>
			<content:encoded><![CDATA[<p>The post is <a href="http://flay.com/GetDetail.CFM?ID=2312">here</a>.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.blackkettle.org/2006/08/16/we-got-flayed/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Quick Back-link Roundup</title>
		<link>http://blog.blackkettle.org/2006/08/12/quick-back-link-roundup/</link>
		<comments>http://blog.blackkettle.org/2006/08/12/quick-back-link-roundup/#comments</comments>
		<pubDate>Sat, 12 Aug 2006 08:39:56 +0000</pubDate>
		<dc:creator>alex</dc:creator>
				<category><![CDATA[Projects]]></category>
		<category><![CDATA[Shaxam]]></category>

		<guid isPermaLink="false">http://blog.blackkettle.org/2006/08/12/quick-back-link-roundup/</guid>
		<description><![CDATA[A quick round-up of posts and pages I&#8217;ve spotted that mention or link to Shaxam:

Tim Sneath
Mike Swanson
Dan Lehenbauer
Channel 9

There may be others I&#8217;ve missed, but those are the ones I&#8217;ve been told about&#8230;
]]></description>
			<content:encoded><![CDATA[<p>A quick round-up of posts and pages I&#8217;ve spotted that mention or link to Shaxam:</p>
<ul>
<li><a href="http://blogs.msdn.com/tims/archive/2006/08/04/688898.aspx">Tim Sneath</a></li>
<li><a href="http://blogs.msdn.com/mswanson/archive/2006/07/03/655705.aspx">Mike Swanson</a></li>
<li><a href="http://blogs.msdn.com/danlehen/archive/2006/07/22/675067.aspx">Dan Lehenbauer</a></li>
<li><a href="http://channel9.msdn.com/Showpost.aspx?postid=209587">Channel 9</a></li>
</ul>
<p>There may be others I&#8217;ve missed, but those are the ones I&#8217;ve been told about&#8230;</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.blackkettle.org/2006/08/12/quick-back-link-roundup/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Layout Is Not Modeler (1)</title>
		<link>http://blog.blackkettle.org/2006/08/12/layout-is-not-modeler-1/</link>
		<comments>http://blog.blackkettle.org/2006/08/12/layout-is-not-modeler-1/#comments</comments>
		<pubDate>Sat, 12 Aug 2006 07:30:49 +0000</pubDate>
		<dc:creator>alex</dc:creator>
				<category><![CDATA[LightWave]]></category>
		<category><![CDATA[LightWave Testing]]></category>

		<guid isPermaLink="false">http://blog.blackkettle.org/2006/08/12/layout-is-not-modeler-1/</guid>
		<description><![CDATA[Ok, it looks like I was wrong in my previous post. I can&#8217;t see an obvious way to launch a plugin on load in Layout. There&#8217;s a button to set it up in Modeler, though&#8230; Why the difference? I&#8217;m going to have a delve into the depths of the Layout config files to see if [...]]]></description>
			<content:encoded><![CDATA[<p>Ok, it looks like I was wrong in my previous post. I can&#8217;t see an obvious way to launch a plugin on load in Layout. There&#8217;s a button to set it up in Modeler, though&#8230; Why the difference? I&#8217;m going to have a delve into the depths of the Layout config files to see if there&#8217;s anything obvious I&#8217;ve missed.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.blackkettle.org/2006/08/12/layout-is-not-modeler-1/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>LightWave Testing</title>
		<link>http://blog.blackkettle.org/2006/08/12/lightwave-testing/</link>
		<comments>http://blog.blackkettle.org/2006/08/12/lightwave-testing/#comments</comments>
		<pubDate>Sat, 12 Aug 2006 07:04:35 +0000</pubDate>
		<dc:creator>alex</dc:creator>
				<category><![CDATA[LightWave]]></category>
		<category><![CDATA[LightWave Testing]]></category>
		<category><![CDATA[Ruby]]></category>

		<guid isPermaLink="false">http://blog.blackkettle.org/2006/08/12/lightwave-testing/</guid>
		<description><![CDATA[I&#8217;m a great believer in unit testing, and test-first development. Unfortunately, the concept of automated testing doesn&#8217;t sit especially well with developing LightWave plugins (as I am with Shaxam). This project is an attempt to answer that.
The requirements are:

Be able to launch Layout or Modeler from Ruby.
Cause the launched process to open a given model [...]]]></description>
			<content:encoded><![CDATA[<p>I&#8217;m a great believer in unit testing, and test-first development. Unfortunately, the concept of automated testing doesn&#8217;t sit especially well with developing LightWave plugins (as I am with Shaxam). This project is an attempt to answer that.<span id="more-7"></span></p>
<p>The requirements are:</p>
<ul>
<li>Be able to launch Layout or Modeler from Ruby.</li>
<li>Cause the launched process to open a given model or scene that is specified per test.</li>
<li>Load a plugin file that is specified per test run.</li>
<li>Run the plugin on the loaded model or scene, and save the output to an output file that is specified per test.</li>
<li>Load the output back into Ruby for verification.</li>
<li>Ideally launch all of this over the network.</li>
</ul>
<p>These parameters stem from what I&#8217;m trying to do with Shaxam. When the Shaxam plugin is run, it saves the current layer or scene to an XML file in XAML format. This simple one-in one-out path with XML at the end should make it an easy fit for Ruby&#8217;s unit test framework, but LightWave seems not to have been designed with this type of process in mind.</p>
<p>So far, I&#8217;ve worked out:</p>
<ul>
<li>I can&#8217;t specify the plugin to load anywhere other than in LightWave&#8217;s config file, but that path can be specified on the command line. This means potentially generating a new config file for each run. Fine.</li>
<li>I can pass a scene filename to Layout on the command line.  Fine.</li>
<li>I can pass an object filename to Modeler on the command line.  Fine.</li>
<li>I don&#8217;t know how to trigger running the plugin once Layout or Modeler has loaded. I know that it&#8217;s possible to specify a plugin to run on startup, but as far as I can tell, it gets run before the scene is loaded. Not fine, but I may be wrong about that.</li>
</ul>
<p>More investigation is needed.</p>
<p>I&#8217;ve already discovered that plugins which run on startup can&#8217;t have a space in their name, because that makes the option parser misfire.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.blackkettle.org/2006/08/12/lightwave-testing/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Ruby-in-LightWave</title>
		<link>http://blog.blackkettle.org/2006/08/12/ruby-in-lightwave/</link>
		<comments>http://blog.blackkettle.org/2006/08/12/ruby-in-lightwave/#comments</comments>
		<pubDate>Sat, 12 Aug 2006 06:46:46 +0000</pubDate>
		<dc:creator>alex</dc:creator>
				<category><![CDATA[LightWave]]></category>
		<category><![CDATA[Ruby]]></category>
		<category><![CDATA[Ruby-in-Lightwave]]></category>

		<guid isPermaLink="false">http://blog.blackkettle.org/2006/08/12/ruby-in-lightwave/</guid>
		<description><![CDATA[This project is at the &#8220;wouldn&#8217;t it be cool&#8221; stage so far. The idea is to compile Ruby as a LightWave plugin, and add an extension to give it access to the LightWave SDK. This would make it a feasible alternative to LScript for prototyping, which I can&#8217;t help but see as a good thing. [...]]]></description>
			<content:encoded><![CDATA[<p>This project is at the &#8220;wouldn&#8217;t it be cool&#8221; stage so far. The idea is to compile Ruby as a LightWave plugin, and add an extension to give it access to the LightWave SDK. This would make it a feasible alternative to LScript for prototyping, which I can&#8217;t help but see as a good thing. There&#8217;s also the outside possibility of being able to use RubyInline (or something related) to generate actual compiled plugin code, which I think would be outstanding.</p>
<p>More on this as it happens.  I might have a little play today, and see what I can see.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.blackkettle.org/2006/08/12/ruby-in-lightwave/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>So, to recap&#8230;</title>
		<link>http://blog.blackkettle.org/2006/08/12/so-to-recap/</link>
		<comments>http://blog.blackkettle.org/2006/08/12/so-to-recap/#comments</comments>
		<pubDate>Sat, 12 Aug 2006 04:53:07 +0000</pubDate>
		<dc:creator>alex</dc:creator>
				<category><![CDATA[General]]></category>
		<category><![CDATA[Shaxam]]></category>

		<guid isPermaLink="false">http://blog.blackkettle.org/?p=3</guid>
		<description><![CDATA[For those of you who haven&#8217;t been following along, here&#8217;s a brief state-of-play update.  I&#8217;m working on Shaxam.com, which span out of Turning The Pages, and has had me learning lots about LightWave&#8217;s SDK and file formats and the 3D parts of XAML, and is the most fun and interesting work I&#8217;ve been involved [...]]]></description>
			<content:encoded><![CDATA[<p>For those of you who haven&#8217;t been following along, here&#8217;s a brief state-of-play update.  I&#8217;m working on <a href="http://www.shaxam.com">Shaxam.com</a>, which span out of <a href="http://www.bl.uk/onlinegallery/ttp/ttpbooks.html">Turning The Pages</a>, and has had me learning lots about <a href="http://www.newtek.com/lightwave/">LightWave</a>&#8217;s SDK and file formats and the 3D parts of <a href="http://en.wikipedia.org/wiki/XAML">XAML</a>, and is the most fun and interesting work I&#8217;ve been involved with in years. I&#8217;ll be posting here info about what I&#8217;ve learnt, a few questions for those involved, and progress updates as and when necessary.</p>
<p>The main output so far has been a simple plugin to convert static LightWave objects to XAML meshes, with as much detail intact as possible. Head over to shaxam.com if that interests you. On sale RealSoonNow(tm) will be a plugin to handle animation data. We&#8217;re about 95% there functionality-wise, and it&#8217;s looking better all the time.</p>
<p>I&#8217;m working on all this with <a href="http://www.imaginetix.co.uk">Mark</a>, who is fiendishly good with LightWave, and keeps pushing my code further than I was expecting, which is a good thing.</p>
<p>Anyway, that&#8217;s it for now.  More updates as and when, you know the drill.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.blackkettle.org/2006/08/12/so-to-recap/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
