<?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>LastObelus code &#38; stuff</title>
	<atom:link href="http://www.lastobelus.com/feed" rel="self" type="application/rss+xml" />
	<link>http://www.lastobelus.com</link>
	<description>hopefully more code than stuff</description>
	<lastBuildDate>Mon, 11 Jan 2010 23:01:16 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.9.2</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>Testing Macruby and Objective C Together</title>
		<link>http://www.lastobelus.com/coding/testing-macruby-and-objective-c-together</link>
		<comments>http://www.lastobelus.com/coding/testing-macruby-and-objective-c-together#comments</comments>
		<pubDate>Fri, 08 Jan 2010 08:05:31 +0000</pubDate>
		<dc:creator>lastobelus</dc:creator>
				<category><![CDATA[Coding]]></category>
		<category><![CDATA[Testing]]></category>
		<category><![CDATA[cocoa]]></category>
		<category><![CDATA[macruby]]></category>
		<category><![CDATA[tdd]]></category>
		<category><![CDATA[xcode]]></category>

		<guid isPermaLink="false">http://www.lastobelus.com/?p=150</guid>
		<description><![CDATA[
When working on Macruby apps, there is a wealth of useful Cocoa code snippets and open source frameworks online, but they are primarily in Objective C. Macruby can use Objective C code transparently, but if we want to access that code in individual unit tests we need to set up our project so that the ]]></description>
			<content:encoded><![CDATA[<p><a href="htthttp://www.macruby.org/"><img src="http://www.lastobelus.com/wp-content/uploads/2009/12/macruby_logo_180.png" alt="MacRuby logo" width="180" height="44" class="alignleft size-full wp-image-101" /></a><br />
When working on Macruby apps, there is a wealth of useful Cocoa code snippets and open source frameworks online, but they are primarily in Objective C. Macruby can use Objective C code transparently, but if we want to access that code in individual unit tests we need to set up our project so that the Objective C parts are compiled and accessible to the test.</p>
<p>One way we can do this is to use embedded frameworks to hold some (or all) of the code in our app.<br />
This little tutorial describes how to set up your a Macruby project so that you can run your unit tests both from Xcode or from the command line, and have access to any Objective C classes your project uses when running individual tests from the command line.</p>
<p><a href="http://developer.apple.com/mac/library/documentation/MacOSX/Conceptual/BPFrameworks/Tasks/CreatingFrameworks.html">This Mac Dev Center article</a> talks about creating Frameworks.</p>
<p>Here are the steps I followed to organize third-party code into framework and build a testing target that used those frameworks (the information came from <a href="http://www.cocoadev.com/index.pl?SubFrameworksInXCode">this tutorial</a> on <a href="http://www.cocoadev.com">Cocoadev</a> and the Macruby <a href="http://www.macruby.org/recipes/tdd-in-objective-c-with-macruby.html">TDD tutorial</a>).</p>
<p>These steps assume you have used the one of the Macruby templates current at the time I wrote this, which include a &#8220;Unit Tests&#8221; target that has a Run Script phase that calls Tests/run_suite.rb. </p>
<ul>
<li>
<h3>Organize Your Code</h3>
<p>If it is not already, organize the code you wish to build into an embedded framework into a directory and either include it in your project as a folder reference or create a corresponding group. Xcode does not require you to do this, but it makes life much easier. Let&#8217;s call it MyFramework for this example.</p>
</li>
<li>
<h3>Create A New Framework</h3>
<p>Create a new Cocoa Framework Build Target in the project (you do this by right-clicking on Targets and choose <b>Add &gt; New Target&#8230;</b>, and then choosing the <b>Cocoa &gt; Framework</b> template). Then enter MyFramework and click &#8220;Finish&#8221;. The resulting target will have the icon for a framework. There should also be an entry under Products called MyFramework.framework, which will be red because it hasn&#8217;t been built yet.
	</p>
</li>
<li>
<h3>Set the Installation Directory</h3</p>
<p>Select the &#8220;Build&#8221; tab of the Info Pane for the new target. Find the &#8220;Installation Directory&#8221; setting in the &#8220;Deployment&#8221; setting group.</p>
<p>The default value is
<pre>$(HOME)/Library/Frameworks</pre>
</p>
<p>Change it to
<pre>@executable_path/../Frameworks</pre>
</p>
</li>
<li>
<h3>Link the Framework in the Application Target</h3</p>
<p>Next you need to make sure the application target links your framework. To do that, drag MyFramework.framework from the Products group into the &#8220;Link Binaries With Libraries&#8221; phase of the application target (the target with the same name as your Xcode project). In a new Macruby project, this will already have entries for Cocoa.framework and Macruby.framework.
	</p>
</li>
<li>
<h3>Copy the Framework into the Application</h3</p>
<p>You also need to have the application target copy the built framework into the application. To do this, add a new &#8220;Copy Files&#8221; build phase to the application target. You do this by right-clicking the application target and selecting <b>Add &gt; New Build Phase &gt; New Copy Files Build Phase</b>. Then drag MyFramework.framework from the Products group into the new build phase.
	</p>
</li>
<li>
<h3>Add Framework as a Dependency</h3</p>
<p>Now you need to make sure that building the application or running the unit tests also builds the framework if it needs building, by adding MyFramework as a dependency to the application target and the &#8220;Unit Tests&#8221; target. To do that, do a &#8220;Get Info&#8221; on each target, and in the General pane click the <b>+</b> under Direct Dependencies and add MyFramework.
	</p>
</li>
<li>
<h3>Accessing the Framework in Unit Tests</h3</p>
<p>Next we need to tell our unit tests where to find the framework, which we can do by adding:</p>
<pre class="brush: ruby;">
# Tell MacRuby where to find our framework
ENV['DYLD_FRAMEWORK_PATH'] ||= ENV['BUILT_PRODUCTS_DIR']
</pre>
<p>to the Tests/run_suite.rb file.
	</p>
</li>
</ul>
<p>In order to run tests from the command line that have dependencies on this , we can do this:</p>
<pre class="brush: plain;">
export DYLD_FRAMEWORK_PATH=&quot;${HOME}/builds/Debug&quot; # or whatever your build directory settings are
</pre>
<p>If the code in the framework changes, we can rebuild them in XCode, or use the command line:</p>
<pre class="brush: plain;">
xcodebuild -project MyApp.xcodeproj -target MyFramework
</pre>
]]></content:encoded>
			<wfw:commentRss>http://www.lastobelus.com/coding/testing-macruby-and-objective-c-together/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Programming Cocoa With MacRuby: Part One</title>
		<link>http://www.lastobelus.com/coding/programming-cocoa-with-macruby-part-1</link>
		<comments>http://www.lastobelus.com/coding/programming-cocoa-with-macruby-part-1#comments</comments>
		<pubDate>Tue, 05 Jan 2010 10:12:12 +0000</pubDate>
		<dc:creator>lastobelus</dc:creator>
				<category><![CDATA[Coding]]></category>
		<category><![CDATA[Ruby]]></category>
		<category><![CDATA[cocoa]]></category>
		<category><![CDATA[garbage collection]]></category>
		<category><![CDATA[macruby]]></category>
		<category><![CDATA[rubycocoa]]></category>

		<guid isPermaLink="false">http://www.lastobelus.com/?p=121</guid>
		<description><![CDATA[In this series of articles, I will work through the Pragmatic Programmer book Programming Cocoa with Ruby by Brian Marick, porting the examples to MacRuby.
Examples from Chapter 2
The first few examples are almost identical. require 'osx/cocoa' becomes framework 'cocoa'. MacRuby lets us use the familiar SomeObject.new instead of SomeObject.alloc.init, and there is no need to ]]></description>
			<content:encoded><![CDATA[<p>In this series of articles, I will work through the <a href="http://www.pragprog.com/">Pragmatic Programmer</a> book <a href="http://www.pragprog.com/titles/bmrc/programming-cocoa-with-ruby">Programming Cocoa with Ruby</a> by Brian Marick, porting the examples to <a href="http://www.macruby.org/">MacRuby</a>.</p>
<h2>Examples from Chapter 2</h2>
<p>The first few examples are almost identical. <tt>require 'osx/cocoa'</tt> becomes <tt>framework 'cocoa'</tt>. MacRuby lets us use the familiar SomeObject.new instead of SomeObject.alloc.init, and there is no need to explicitly inherit from NSObject, since NSObject replaces Object in the standard class hierarchy:</p>
<pre class="brush: plain; highlight: [2];">
irb(main):011:0&gt; class Foo;end;Foo.ancestors
=&gt; [Foo, NSObject, Kernel]
irb(main):012:0&gt;
</pre>
<h3>most-basic-app.rb</h3>
<pre class="brush: ruby; highlight: [2];">
#!/usr/bin/env macruby
framework 'cocoa'
NSApplication.sharedApplication
NSApp.run
</pre>
<h3>no-ui.rb</h3>
<pre class="brush: ruby; highlight: [2,4,10];">
#!/usr/bin/env macruby
framework 'cocoa'

class AppDelegate
  def applicationDidFinishLaunching(aNotification)
    puts &quot;#{aNotification.name} makes me say: Hello, world&quot;
  end
end

our_object = AppDelegate.new
NSApplication.sharedApplication
NSApp.setDelegate(our_object)
NSApp.run
</pre>
]]></content:encoded>
			<wfw:commentRss>http://www.lastobelus.com/coding/programming-cocoa-with-macruby-part-1/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>&#8220;Ruby Rocks&#8221; ported to MacRuby</title>
		<link>http://www.lastobelus.com/coding/ruby-rocks-ported-to-macruby</link>
		<comments>http://www.lastobelus.com/coding/ruby-rocks-ported-to-macruby#comments</comments>
		<pubDate>Sat, 19 Dec 2009 22:16:08 +0000</pubDate>
		<dc:creator>lastobelus</dc:creator>
				<category><![CDATA[Coding]]></category>
		<category><![CDATA[Ruby]]></category>
		<category><![CDATA[cocoa]]></category>

		<guid isPermaLink="false">http://www.lastobelus.com/?p=88</guid>
		<description><![CDATA[Download of the finished "Ruby Rocks" RubyCocoa tutorial ported to MacRuby]]></description>
			<content:encoded><![CDATA[<p><a href="htthttp://www.macruby.org/"><img src="http://www.lastobelus.com/wp-content/uploads/2009/12/macruby_logo_180.png" alt="MacRuby logo" width="180" height="44" class="alignleft size-full wp-image-101" /></a>When I first started playing around with writing Cocoa apps using Ruby, I was using <a href="http://rubycocoa.sourceforge.net/HomePage">RubyCocoa</a>. I did the <a href="http://www.rubycocoa.com/ruby-rocks">Ruby Rocks tutorial</a> and was pretty impressed by how easy it was to write graphics apps using Ruby and Cocoa. I quickly discovered <a href="http://www.macruby.org/">MacRuby</a> and decided to use it going forward. The first thing I did was to port my finished Ruby Rocks to MacRuby, so I&#8217;m posting in as a MacRuby sample. </p>
<p>Possibly at some point I will write up the conversion to MacRuby as a tutorial. Anywhere, here it is. You can see that I kept playing for a while after finishing the tutorial&#8230;</p>
<p><a href='http://www.lastobelus.com/wp-content/uploads/2009/12/rasteroids.zip'>Download</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.lastobelus.com/coding/ruby-rocks-ported-to-macruby/feed</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>A Dirt-Simple Hierarchical, Configurable Logger for Ruby</title>
		<link>http://www.lastobelus.com/coding/a-dirt-simple-hierarchical-configurable-logger-for-ruby</link>
		<comments>http://www.lastobelus.com/coding/a-dirt-simple-hierarchical-configurable-logger-for-ruby#comments</comments>
		<pubDate>Sat, 19 Dec 2009 10:57:13 +0000</pubDate>
		<dc:creator>lastobelus</dc:creator>
				<category><![CDATA[Coding]]></category>
		<category><![CDATA[Ruby]]></category>
		<category><![CDATA[log4r]]></category>
		<category><![CDATA[logger]]></category>
		<category><![CDATA[macruby]]></category>

		<guid isPermaLink="false">http://www.lastobelus.com/?p=74</guid>
		<description><![CDATA[A hierarchical, configurable logger built on the standard Ruby Logger class, to use while log4r is broken in MacRuby]]></description>
			<content:encoded><![CDATA[<p>
  <a href='http://log4r.rubyforge.org/'>log4r</a> is currently <a href='https://www.macruby.org/trac/ticket/514'>broken</a> in <a href='http://www.macruby.org/'>MacRuby</a>, and I was desperate for a log4j-ish logger in the MacRuby app I&#8217;m working on, so I put together this very basic hierarchical logger based on the standard ruby <a href='http://www.ruby-doc.org/stdlib/libdoc/logger/rdoc/'>logger.</a> I&#8217;m posting it in case anybody else has the same problem with MacRuby, or wants something that is a little simpler than log4j to configure.
</p>
<pre class="brush: ruby;">
require 'logger'
require 'forwardable'

class LogGroup &lt; Logger
  extend Forwardable

  def_delegators :@child_loggers, :[]=, :has_key?

  attr_accessor :child_loggers

  def initialize(logdev, shift_age = 0, shift_size = 1048576)
    super
    @child_loggers = {}
  end

  def self.init_with_config(config)
    logdev = config['device'] || STDOUT
    shift_age = config['shift_age'] || 0
    shift_size = config['shift_size'] || 1048576
    root = LogGroup.new(logdev, shift_age, shift_size).with_name('root')

    config['loggers'].each do |name, level|
      name_parts = name.split('.')
      log_group = root
      name_parts.each do |name_part|
        unless log_group.has_key?(name_part)
          log_group[name_part] = LogGroup.new(logdev, shift_age, shift_size).with_name(&quot;#{log_group.progname}.#{name_part}&quot;)
        end
        log_group = log_group[name_part]
      end
      log_group.level =  Logger::Severity.const_get(level.upcase.to_sym)
    end
    root
  end

  def with_name(name)
    @progname = name
    self
  end

  def inspect
    &quot;#{@progname}(#{@level}) -- #{@child_loggers.inspect}&quot;
  end

  def [](dotpath)
    logger = self
    name_parts = dotpath.split('.')
    while (name = name_parts.shift) &amp;&amp; logger.has_key?(name)
      logger = logger.child_loggers[name]
    end
    logger
  end
end
</pre>
<p>To use it, create a config file like so:</p>
<pre class="brush: yaml;">
device: logfile
loggers:
  cocoa.document:           debug
  cocoa.codeview:           warn
  cocoa.diagramview:        debug
</pre>
<p> And use it like this:</p>
<pre class="brush: ruby;">
require &quot;yaml&quot;
require &quot;log_group&quot;
log_cfg = YAML.load_file(&quot;log_config.yaml&quot;)

$log = LogGroup.init_with_config(log_cfg)

$log['cocoa'].debug(&quot;this is a debug message from cocoa&quot;)
$log['cocoa.codeview'].debug(&quot;this is a debug message from cocoa.codeview&quot;)
$log['cocoa.diagramview'].debug(&quot;this is a debug message from cocoa.diagramview&quot;)
</pre>
<p>This will output to <tt>logfile</tt>:</p>
<pre class="brush: plain;">
  # Logfile created on 2009-12-19 02:42:05 -0800 by logger.rb/20321
  D, [2009-12-19T02:42:05.549777 #49807] DEBUG -- root.cocoa: this is a debug message from cocoa
  D, [2009-12-19T02:42:05.586840 #49807] DEBUG -- root.cocoa.diagramview: this is a debug message from cocoa.diagramview
</pre>
]]></content:encoded>
			<wfw:commentRss>http://www.lastobelus.com/coding/a-dirt-simple-hierarchical-configurable-logger-for-ruby/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Zen Coding</title>
		<link>http://www.lastobelus.com/coding/tools/zen-coding</link>
		<comments>http://www.lastobelus.com/coding/tools/zen-coding#comments</comments>
		<pubDate>Tue, 24 Nov 2009 00:58:44 +0000</pubDate>
		<dc:creator>lastobelus</dc:creator>
				<category><![CDATA[TextMate]]></category>
		<category><![CDATA[Tools]]></category>
		<category><![CDATA[css]]></category>
		<category><![CDATA[editing]]></category>
		<category><![CDATA[html]]></category>
		<category><![CDATA[productivity]]></category>

		<guid isPermaLink="false">http://www.lastobelus.com/?p=20</guid>
		<description><![CDATA[
	.codetable{
		border: 2px solid #d0d1cb;
		width: 100%;
	}
	.codetable td {
		padding: 2px 5px;
		font-family: "Trebuchet MS", Verdana;
		font-size: 11px;
	}
	.codetable th {
		font-family: "Trebuchet MS", Verdana;
		font-size: 11px;
		text-align: left;
		color:#f2f4f1;
		background-color: #606060;
	}
	.codetable tr.odd td{
		background: #f2f3ec;
	}
	.codetable code {
		color: #df4c22 !important;
	}
	h3,h4 {
		color: #df4c22 !important;
		font-family: "Trebuchet MS", Verdana;
		margin-bottom: 5px;
	}

Improved productivity coding htmlby using CSS Selectors

I&#8217;ve just discovered Zen Coding. This is a plugin for various editors that lets you ]]></description>
			<content:encoded><![CDATA[<style>
	.codetable{
		border: 2px solid #d0d1cb;
		width: 100%;
	}
	.codetable td {
		padding: 2px 5px;
		font-family: "Trebuchet MS", Verdana;
		font-size: 11px;
	}
	.codetable th {
		font-family: "Trebuchet MS", Verdana;
		font-size: 11px;
		text-align: left;
		color:#f2f4f1;
		background-color: #606060;
	}
	.codetable tr.odd td{
		background: #f2f3ec;
	}
	.codetable code {
		color: #df4c22 !important;
	}
	h3,h4 {
		color: #df4c22 !important;
		font-family: "Trebuchet MS", Verdana;
		margin-bottom: 5px;
	}
</style>
<h3>Improved productivity coding html<br />by using CSS Selectors</h3>
<p><a href="http://code.google.com/p/zen-coding/"><img src="http://www.lastobelus.com/wp-content/uploads/2009/11/zen-coding-logo.png" alt="Zen Coding" title="zen-coding-logo" width="48" height="48" class="size-full wp-image-69" align="left" /></a></p>
<p>I&#8217;ve just discovered <a href="http://code.google.com/p/zen-coding/">Zen Coding</a>. This is a plugin for various editors that lets you write html using an abbreviation syntax that is based on CSS selectors.</p>
<p>I&#8217;m pretty keen on using this, not only because it will drastically reduce the number of keystrokes required for creating html once I become familiar with it, but it will also help me become more fluent at thinking in css-selector, which will make me more productive at writing functional tests &#038; javascript. </p>
<p>I tried the TextMate plugin, since that is my editor of choice. Installation was simple; it is supplied as a bundle which you can install just by double-clicking it. Or you can copy it to <code>~/Library/Application\ Support/TextMate/Pristine\ Copy/Bundles</code>.</p>
<p>The TextMate version of Zen Coding consists of a single command (written in python) that expands css-selector expressions when you type <code>&#8984;E</code>. It supports a subset of CSS Selectors, and adds some operators specific to generating html:</p>
<table class="codetable">
<tr>
<th></th>
<th>Description</th>
<th>example</th>
<th>expands to:</th>
</tr>
<tr class="odd">
<td>E</td>
<td>any html element</td>
<td><code>div</code></td>
<td><code>&lt;div&gt;&lt;/div&gt;</code></td>
</tr>
<tr>
<td>E#id</td>
<td>an html element with an id</td>
<td><code>div#bob</code></td>
<td><code>&lt;div id="bob"&gt;&lt;/div&gt;</code></td>
</tr>
<tr class="odd">
<td>E.class</td>
<td>an html element with class(es)</td>
<td><code>div.bob.mary</code></td>
<td><code>&lt;div class="bob mary"&gt;&lt;/div&gt;</code></td>
</tr>
<tr>
<td>E>N</td>
<td>Child element</td>
<td><code>div#bob>p>span.mary</code></td>
<td><code>&lt;div id=&quot;bob&quot;&gt;<br />
			&nbsp;&nbsp;&lt;p&gt;&lt;span class=&quot;mary&quot;&gt;&lt;/span&gt;&lt;/p&gt;<br />
		&lt;/div&gt;</code></td>
</tr>
<tr class="odd">
<td>E+N</td>
<td>multiple siblings</td>
<td><code>h2+h3+p</code></td>
<td><code>&lt;h2&gt;&lt;/h2&gt;<br />
		&lt;h3&gt;&lt;/h3&gt;<br />
		&lt;p&gt;&lt;/p&gt;</code></td>
</tr>
<tr>
<td>E*N</td>
<td>multiply element</td>
<td><code>ul>li*5>a</code></td>
<td><code>&lt;ul&gt;<br />
			&nbsp;&nbsp;&lt;li&gt;&lt;a href=&quot;&quot;&gt;&lt;/a&gt;&lt;/li&gt;<br />
			&nbsp;&nbsp;&lt;li&gt;&lt;a href=&quot;&quot;&gt;&lt;/a&gt;&lt;/li&gt;<br />
			&nbsp;&nbsp;&lt;li&gt;&lt;a href=&quot;&quot;&gt;&lt;/a&gt;&lt;/li&gt;<br />
			&nbsp;&nbsp;&lt;li&gt;&lt;a href=&quot;&quot;&gt;&lt;/a&gt;&lt;/li&gt;<br />
			&nbsp;&nbsp;&lt;li&gt;&lt;a href=&quot;&quot;&gt;&lt;/a&gt;&lt;/li&gt;<br />
		&lt;/ul&gt;</code></td>
</tr>
<tr class="odd">
<td>E$*N</td>
<td>item numbering</td>
<td><code>ul>li.item-$*5</code></td>
<td><code>&lt;ul&gt;<br />
			&nbsp;&nbsp;&lt;li class=&quot;item-1&quot;&gt;&lt;/li&gt;<br />
			&nbsp;&nbsp;&lt;li class=&quot;item-2&quot;&gt;&lt;/li&gt;<br />
			&nbsp;&nbsp;&lt;li class=&quot;item-3&quot;&gt;&lt;/li&gt;<br />
			&nbsp;&nbsp;&lt;li class=&quot;item-4&quot;&gt;&lt;/li&gt;<br />
			&nbsp;&nbsp;&lt;li class=&quot;item-5&quot;&gt;&lt;/li&gt;<br />
		&lt;/ul&gt;></td>
</tr>
</table>
<p>For example, I created the basic html for the above table by typing:</p>
<pre>
tr*7>td+td+td+td
</pre>
<h4>Grouping</h4>
<p>Currently Zen Coding has no provision for grouping expressions -- for example I was unable to do this:</p>
<pre>
tr*7>td+td+(td>code)+(td>code)
</pre>
<p>Similarly, it does not have a way to move back up the hierarchy in an expression, so far as I could determine.</p>
<h4>Snippets</h4>
<p>Zen Coding uses its own internal idea of snippets to do what it does. These live inside the bundle in <code>Support/zencoding/settings.py</code>. All the html tags are implemented as snippets in this file, so if you want to change something (for example, which default attributes get placed in an element), you can change it here. Along with snippets for all the html tags, it comes with a number of other snippets; details <a href="http://code.google.com/p/zen-coding/wiki/ZenHTMLElementsEn">here</a>. It also has approximately <a href="http://code.google.com/p/zen-coding/wiki/ZenCSSPropertiesEn">a bajillion snippets</a> for writing CSS which I have not tried yet.</p>
<h4>HAML</h4>
<p>Hmmm, a quick google doesn't seem to show a <a href="http://haml-lang.com/">HAML</a> emitter. I guess I'll have to make one at some point. It should be fairly easy to do, though I'll have to learn a little python to switch between settings.py files depending on context.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.lastobelus.com/coding/tools/zen-coding/feed</wfw:commentRss>
		<slash:comments>4</slash:comments>
		</item>
	</channel>
</rss>

<!-- Dynamic page generated in 1.561 seconds. -->
<!-- Cached page generated by WP-Super-Cache on 2013-06-19 07:04:29 -->
