<?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>schmichael&#039;s blog &#187; django</title>
	<atom:link href="http://blog.schmichael.com/tag/django/feed/" rel="self" type="application/rss+xml" />
	<link>http://blog.schmichael.com</link>
	<description>good good study, day day up</description>
	<lastBuildDate>Sat, 05 Nov 2011 23:13:47 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.2.1</generator>
		<item>
		<title>I Love Python: ZipFile Edition</title>
		<link>http://blog.schmichael.com/2009/07/08/i-love-python-zipfile-edition/</link>
		<comments>http://blog.schmichael.com/2009/07/08/i-love-python-zipfile-edition/#comments</comments>
		<pubDate>Wed, 08 Jul 2009 18:42:49 +0000</pubDate>
		<dc:creator>Michael Schurter</dc:creator>
				<category><![CDATA[Open Source]]></category>
		<category><![CDATA[Python]]></category>
		<category><![CDATA[Technology]]></category>
		<category><![CDATA[django]]></category>
		<category><![CDATA[zip]]></category>

		<guid isPermaLink="false">http://michael.susens-schurter.com/blog/?p=664</guid>
		<description><![CDATA[For a client web project I needed to create a zip file containing a number of generated XML files. This isn&#8217;t something I need to do very often, so I briefly considered just writing the XML files to disk and &#8230; <a href="http://blog.schmichael.com/2009/07/08/i-love-python-zipfile-edition/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>For a client web project I needed to create a zip file containing a number of generated XML files.  This isn&#8217;t something I need to do very often, so I briefly considered just writing the XML files to disk and running a zip command.  Ugly, but surely trying to dig up a pleasant Python zip library would be more work?</p>
<p>Turns out Python has had a wonderful zip library in its standard library since 1.6!  The <code><a href="http://docs.python.org/library/zipfile.html">zipfile</a></code> module makes creating zip files a breeze:</p>

<div class="wp_syntax"><div class="code"><pre class="python" style="font-family:monospace;"><span style="color: #ff7700;font-weight:bold;">import</span> <span style="color: #dc143c;">os</span>
<span style="color: #ff7700;font-weight:bold;">from</span> <span style="color: #dc143c;">zipfile</span> <span style="color: #ff7700;font-weight:bold;">import</span> ZipFile, ZIP_DEFLATED
&nbsp;
<span style="color: #ff7700;font-weight:bold;">from</span> django.<span style="color: black;">template</span>.<span style="color: black;">defaultfilters</span> <span style="color: #ff7700;font-weight:bold;">import</span> slugify
&nbsp;
<span style="color: #ff7700;font-weight:bold;">from</span> somewhere_else <span style="color: #ff7700;font-weight:bold;">import</span> render_spam_xml, render_egg_xml
&nbsp;
ZIP_PATH = <span style="color: #483d8b;">&quot;/some/system/path/for/zips&quot;</span>
&nbsp;
<span style="color: #ff7700;font-weight:bold;">def</span> create_zip<span style="color: black;">&#40;</span>spam<span style="color: black;">&#41;</span>:
    spam_slug = slugify<span style="color: black;">&#40;</span>spam.<span style="color: black;">name</span><span style="color: black;">&#41;</span>
    filename = <span style="color: #483d8b;">&quot;%s.zip&quot;</span> <span style="color: #66cc66;">%</span> spam_slug
    abspath = <span style="color: #dc143c;">os</span>.<span style="color: black;">path</span>.<span style="color: black;">join</span><span style="color: black;">&#40;</span>ZIP_PATH, filename<span style="color: black;">&#41;</span>
&nbsp;
    <span style="color: #808080; font-style: italic;"># Create zip</span>
    z = ZipFile<span style="color: black;">&#40;</span>abspath, <span style="color: #483d8b;">&quot;w&quot;</span>, ZIP_DEFLATED<span style="color: black;">&#41;</span>
&nbsp;
    <span style="color: #808080; font-style: italic;"># Write spam xml directly to zip</span>
    z.<span style="color: black;">writestr</span><span style="color: black;">&#40;</span><span style="color: #483d8b;">&quot;%s.xml&quot;</span> <span style="color: #66cc66;">%</span> spam_slug, render_spam_xml<span style="color: black;">&#40;</span>spam<span style="color: black;">&#41;</span><span style="color: black;">&#41;</span>
&nbsp;
    <span style="color: #808080; font-style: italic;"># Write xml files to zip</span>
    <span style="color: #ff7700;font-weight:bold;">for</span> egg <span style="color: #ff7700;font-weight:bold;">in</span> spam.<span style="color: black;">egg_set</span>.<span style="color: #008000;">all</span><span style="color: black;">&#40;</span><span style="color: black;">&#41;</span>:
        egg_slug = slugify<span style="color: black;">&#40;</span>egg.<span style="color: black;">name</span><span style="color: black;">&#41;</span>
&nbsp;
        <span style="color: #808080; font-style: italic;"># Renders the egg object to an xml string</span>
        <span style="color: #dc143c;">xml</span> = render_egg_xml<span style="color: black;">&#40;</span>egg<span style="color: black;">&#41;</span>
&nbsp;
        <span style="color: #808080; font-style: italic;"># Note how easy it is to specify paths in the zip file:</span>
        z.<span style="color: black;">writestr</span><span style="color: black;">&#40;</span><span style="color: #483d8b;">&quot;eggs/%s.xml&quot;</span> <span style="color: #66cc66;">%</span> egg_slug, <span style="color: #dc143c;">xml</span><span style="color: black;">&#41;</span>
&nbsp;
    <span style="color: #808080; font-style: italic;"># Zip file must be closed to be valid</span>
    z.<span style="color: black;">close</span><span style="color: black;">&#40;</span><span style="color: black;">&#41;</span>
    <span style="color: #ff7700;font-weight:bold;">return</span> abspath</pre></div></div>

<p><small>(Sorry for the Django bits in there, but they should be easy to replace.)</small></p>
<p>My favorite part is that you can use either the <code>ZipFile.write</code> method to add files to the zip or the <code>ZipFile.writestr</code> method to write bytes (strings in my case) directly to the zip file.</p>
<p>At any rate, just wanted to blog about it, so when I need to do it again in a few years I don&#8217;t do something stupid like running the zip command.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.schmichael.com/2009/07/08/i-love-python-zipfile-edition/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>BitBucket Project for Python FusionCharts Code</title>
		<link>http://blog.schmichael.com/2009/04/08/bitbucket-project-python-fusioncharts/</link>
		<comments>http://blog.schmichael.com/2009/04/08/bitbucket-project-python-fusioncharts/#comments</comments>
		<pubDate>Wed, 08 Apr 2009 22:51:05 +0000</pubDate>
		<dc:creator>Michael Schurter</dc:creator>
				<category><![CDATA[Open Source]]></category>
		<category><![CDATA[Python]]></category>
		<category><![CDATA[Technology]]></category>
		<category><![CDATA[bitbucket]]></category>
		<category><![CDATA[django]]></category>
		<category><![CDATA[fusioncharts]]></category>
		<category><![CDATA[hg]]></category>
		<category><![CDATA[pil]]></category>

		<guid isPermaLink="false">http://michael.susens-schurter.com/blog/?p=626</guid>
		<description><![CDATA[After my last post on FusionCharts, someone was nice enough to e-mail me some a Django snippet for exporting FusionCharts as images, so I decided I might as well put the code in a public repository. While I prefer Bazaar &#8230; <a href="http://blog.schmichael.com/2009/04/08/bitbucket-project-python-fusioncharts/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p><a href="http://michael.susens-schurter.com/blog/2009/04/02/image-exporter-for-fusion-charts/">After my last post on FusionCharts</a>, someone was nice enough to e-mail me some a <a href="http://djangoproject.com">Django</a> snippet for exporting <a href="http://fusioncharts.com">FusionCharts</a> as images, so I decided I might as well put the code in a public repository.</p>
<p>While I prefer Bazaar out of all the DVCSes, it seems Mercurial has captured the hearts and minds of the Python empire, so I created the <a href="http://bitbucket.org/schmichael/python-fusioncharts/">python-fusioncharts project</a> on <a href="http://bitbucket.org/">BitBucket</a>.</p>
<p>If you use Python and FusionCharts, I&#8217;d love to add more snippets!</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.schmichael.com/2009/04/08/bitbucket-project-python-fusioncharts/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>2nd OS Bridge Proposal: Django Introduction</title>
		<link>http://blog.schmichael.com/2009/03/30/2nd-os-bridge-proposal-django-introduction/</link>
		<comments>http://blog.schmichael.com/2009/03/30/2nd-os-bridge-proposal-django-introduction/#comments</comments>
		<pubDate>Tue, 31 Mar 2009 05:25:16 +0000</pubDate>
		<dc:creator>Michael Schurter</dc:creator>
				<category><![CDATA[Open Source]]></category>
		<category><![CDATA[Technology]]></category>
		<category><![CDATA[django]]></category>
		<category><![CDATA[osbridge]]></category>

		<guid isPermaLink="false">http://michael.susens-schurter.com/blog/?p=615</guid>
		<description><![CDATA[I just posted my second talk proposal for the Open Source Bridge Conference: Introduction to Django: The Who, What, and When As with my other talk, Web Server Shootout, I&#8217;m not trying to convince anyone of anything. We&#8217;re all already &#8230; <a href="http://blog.schmichael.com/2009/03/30/2nd-os-bridge-proposal-django-introduction/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>I just posted my second talk proposal for the Open Source Bridge Conference:</p>
<p><a href="http://opensourcebridge.org/proposals/120"><br />
Introduction to Django: The Who, What, and When</a></p>
<p><a href="http://opensourcebridge.org/proposals/119">As with my other talk, Web Server Shootout,</a> I&#8217;m not trying to convince anyone of anything.  We&#8217;re all already inundated with plenty of senseless marketing and fanboyism.</p>
<p>I&#8217;d rather present my knowledge, experiences, mistakes, and opinions in an effort to help others make more intelligent decisions about the development platforms they choose to use.*</p>
<p>Let me know what you think!</p>
<hr/>
<p><small>*If that was dripping with too much sappy altruism, do remember I get into the conference free if either proposal gets selected. <img src='http://blog.schmichael.com/wp-includes/images/smilies/icon_wink.gif' alt=';-)' class='wp-smiley' /> </small></p>
]]></content:encoded>
			<wfw:commentRss>http://blog.schmichael.com/2009/03/30/2nd-os-bridge-proposal-django-introduction/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>(Yet Another) Deploying Django with CherryPy Script</title>
		<link>http://blog.schmichael.com/2009/02/18/deploying-django-with-cherrypy/</link>
		<comments>http://blog.schmichael.com/2009/02/18/deploying-django-with-cherrypy/#comments</comments>
		<pubDate>Wed, 18 Feb 2009 23:36:06 +0000</pubDate>
		<dc:creator>Michael Schurter</dc:creator>
				<category><![CDATA[GNU/Linux]]></category>
		<category><![CDATA[Open Source]]></category>
		<category><![CDATA[Python]]></category>
		<category><![CDATA[Technology]]></category>
		<category><![CDATA[cherrypy]]></category>
		<category><![CDATA[django]]></category>

		<guid isPermaLink="false">http://michael.susens-schurter.com/blog/?p=529</guid>
		<description><![CDATA[Recently I deployed a Django project on an OSX server. I foolishly thought this would be as easy as on Linux until I ran into the mess that is x86_64 Apache + mod_wsgi* + Django + psycopg2 + i386 PostgreSQL. &#8230; <a href="http://blog.schmichael.com/2009/02/18/deploying-django-with-cherrypy/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>Recently I deployed a <a href="http://www.djangoproject.com/">Django</a> project on an OSX server.  I foolishly thought this would be as easy as on Linux until I ran into the mess that is <em>x86_64</em> Apache + <a href="http://www.modwsgi.org/">mod_wsgi</a>* + Django + psycopg2 + <em>i386</em> PostgreSQL.  After wasting far too much time googling and recompiling various bits trying to get everything happy, I followed <a href="http://www.eflorenzano.com/blog/post/hosting-django-site-pure-python/">Eric Florenzano&#8217;s post</a> on deploying Django using <a href="http://www.cherrypy.org/">CherryPy</a>&#8216;s** <a href="http://www.cherrypy.org/wiki/CherryPyDownload#StandaloneWSGIserver">wsgiserver</a>.</p>
<p>Here&#8217;s my lightly modified version of Eric&#8217;s script:</p>

<div class="wp_syntax"><div class="code"><pre class="python" style="font-family:monospace;"><span style="color: #ff7700;font-weight:bold;">import</span> wsgiserver
<span style="color: #ff7700;font-weight:bold;">import</span> <span style="color: #dc143c;">sys</span>
<span style="color: #ff7700;font-weight:bold;">import</span> <span style="color: #dc143c;">os</span>
<span style="color: #ff7700;font-weight:bold;">import</span> django.<span style="color: black;">core</span>.<span style="color: black;">handlers</span>.<span style="color: black;">wsgi</span>
&nbsp;
<span style="color: #ff7700;font-weight:bold;">if</span> __name__ == <span style="color: #483d8b;">&quot;__main__&quot;</span>:
    <span style="color: #808080; font-style: italic;"># Setup paths - a bit hackish, but works for me.</span>
    <span style="color: #808080; font-style: italic;"># Assumes an absolute path is stored in &lt;project&gt;.local_settings.ROOT</span>
    <span style="color: #dc143c;">sys</span>.<span style="color: black;">path</span>.<span style="color: black;">append</span><span style="color: black;">&#40;</span><span style="color: #dc143c;">os</span>.<span style="color: black;">path</span>.<span style="color: black;">realpath</span><span style="color: black;">&#40;</span><span style="color: #dc143c;">os</span>.<span style="color: black;">path</span>.<span style="color: black;">dirname</span><span style="color: black;">&#40;</span>__file__<span style="color: black;">&#41;</span><span style="color: black;">&#41;</span><span style="color: black;">&#41;</span>
    <span style="color: #ff7700;font-weight:bold;">from</span> foo.<span style="color: black;">local_settings</span> <span style="color: #ff7700;font-weight:bold;">import</span> ROOT
    <span style="color: #dc143c;">sys</span>.<span style="color: black;">path</span>.<span style="color: black;">append</span><span style="color: black;">&#40;</span>ROOT<span style="color: black;">&#41;</span>
&nbsp;
    <span style="color: #808080; font-style: italic;"># Startup Django</span>
    <span style="color: #dc143c;">os</span>.<span style="color: black;">environ</span><span style="color: black;">&#91;</span><span style="color: #483d8b;">'DJANGO_SETTINGS_MODULE'</span><span style="color: black;">&#93;</span> = <span style="color: #483d8b;">'foo.settings'</span>
    server = wsgiserver.<span style="color: black;">CherryPyWSGIServer</span><span style="color: black;">&#40;</span>
        <span style="color: black;">&#40;</span><span style="color: #483d8b;">'0.0.0.0'</span>, <span style="color: #ff4500;">8888</span><span style="color: black;">&#41;</span>,  <span style="color: #808080; font-style: italic;"># Use '127.0.0.1' to only bind to the localhost</span>
        django.<span style="color: black;">core</span>.<span style="color: black;">handlers</span>.<span style="color: black;">wsgi</span>.<span style="color: black;">WSGIHandler</span><span style="color: black;">&#40;</span><span style="color: black;">&#41;</span>
    <span style="color: black;">&#41;</span>
    <span style="color: #ff7700;font-weight:bold;">try</span>:
        server.<span style="color: black;">start</span><span style="color: black;">&#40;</span><span style="color: black;">&#41;</span>
    <span style="color: #ff7700;font-weight:bold;">except</span> <span style="color: #008000;">KeyboardInterrupt</span>:
        <span style="color: #ff7700;font-weight:bold;">print</span> <span style="color: #483d8b;">'Stopping'</span>
        server.<span style="color: black;">stop</span><span style="color: black;">&#40;</span><span style="color: black;">&#41;</span></pre></div></div>

<p>I also went with the latest stable version of CherryPy&#8217;s wsgiserver instead of checking out trunk like Eric&#8217;s post suggested.</p>
<p>Then I just enabled <code>mod_proxy</code> in Apache and setup the following VirtualHost:</p>

<div class="wp_syntax"><div class="code"><pre class="apache" style="font-family:monospace;">&lt;<span style="color: #000000; font-weight:bold;">Proxy</span> *&gt;
    <span style="color: #00007f;">Order</span> <span style="color: #00007f;">allow</span>,<span style="color: #00007f;">deny</span>
    <span style="color: #00007f;">Allow</span> from <span style="color: #0000ff;">all</span>
&lt;/<span style="color: #000000; font-weight:bold;">Proxy</span>&gt;
&lt;<span style="color: #000000; font-weight:bold;">Location</span> <span style="color: #7f007f;">&quot;/&quot;</span>&gt;
    <span style="color: #00007f;">ProxyPass</span> http://127.0.0.1:<span style="color: #ff0000;">8888</span>/
    <span style="color: #00007f;">ProxyPassReverse</span> http://127.0.0.1:<span style="color: #ff0000;">8888</span>/
&lt;/<span style="color: #000000; font-weight:bold;">Location</span>&gt;</pre></div></div>

<p>If you&#8217;re cool you&#8217;ll write some sort of system specific script to launch your web app on boot.  In a pinch, you can always use a crontab:</p>

<div class="wp_syntax"><div class="code"><pre class="bash" style="font-family:monospace;"><span style="color: #000000; font-weight: bold;">@</span>reboot <span style="color: #000000; font-weight: bold;">/</span>usr<span style="color: #000000; font-weight: bold;">/</span>bin<span style="color: #000000; font-weight: bold;">/</span>python <span style="color: #000000; font-weight: bold;">/</span>path<span style="color: #000000; font-weight: bold;">/</span>to<span style="color: #000000; font-weight: bold;">/</span>app.py <span style="color: #000000; font-weight: bold;">&amp;</span></pre></div></div>

<p>YMMV <img src='http://blog.schmichael.com/wp-includes/images/smilies/icon_wink.gif' alt=';-)' class='wp-smiley' /> </p>
<p><small><br />
* To mod_wsgi&#8217;s credit, it took about 10 seconds to compile, generated a Universal binary, and in general Just Worked.</p>
<p>** I&#8217;m already a CherryPy fan thanks to <a href="http://www.dowski.com/">dowski</a>, so it wasn&#8217;t a hard decision.<br />
</small></p>
]]></content:encoded>
			<wfw:commentRss>http://blog.schmichael.com/2009/02/18/deploying-django-with-cherrypy/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Introducing Hzzah!</title>
		<link>http://blog.schmichael.com/2008/07/15/introducing-hzzah/</link>
		<comments>http://blog.schmichael.com/2008/07/15/introducing-hzzah/#comments</comments>
		<pubDate>Tue, 15 Jul 2008 19:33:42 +0000</pubDate>
		<dc:creator>Michael Schurter</dc:creator>
				<category><![CDATA[Open Source]]></category>
		<category><![CDATA[Python]]></category>
		<category><![CDATA[Technology]]></category>
		<category><![CDATA[boss]]></category>
		<category><![CDATA[bzr]]></category>
		<category><![CDATA[django]]></category>
		<category><![CDATA[google]]></category>
		<category><![CDATA[hzzah]]></category>
		<category><![CDATA[hzzah.com]]></category>
		<category><![CDATA[opensource]]></category>
		<category><![CDATA[yahoo]]></category>

		<guid isPermaLink="false">http://michael.susens-schurter.com/blog/?p=326</guid>
		<description><![CDATA[from the I-can-haz-a-search-engine department&#8230; Update: Sorry about the tacky donate link all. I tried to hide it from feed readers with WordPress&#8217;s &#60;!&#8211;more&#62; feature, but evidently that doesn&#8217;t apply to feeds. When it comes to market share, Google is to &#8230; <a href="http://blog.schmichael.com/2008/07/15/introducing-hzzah/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p><small>from the I-can-haz-a-search-engine department&#8230;</small></p>
<p><strong>Update:</strong> Sorry about the tacky donate link all.  I tried to hide it from feed readers with WordPress&#8217;s &lt;!&#8211;more&gt; feature, but evidently that doesn&#8217;t apply to feeds.  <img src='http://blog.schmichael.com/wp-includes/images/smilies/icon_sad.gif' alt=':(' class='wp-smiley' /> </p>
<p>When it comes to market share, Google is to Searching as Microsoft is to Operating Systems.  Thankfully Google has won their dominant position by creating a really amazing product <small>(you can find plenty of discussions on <a href="http://en.wikipedia.org/wiki/Criticism_of_Microsoft#Business_practices">why Microsoft is on top elsewhere)</a></small>.</p>
<p>Recently <a href="http://developer.yahoo.com/search/boss/">Yahoo! opened up their search APIs</a> for anyone to use along with <a href="http://developer.yahoo.com/search/boss/mashup.html">a handy Python library</a>.  In a time when Yahoo&#8217;s very existence is being threatened, I felt a pang of nostalgia for the search engine that fed me decent results for &#8220;free dos games&#8221; throughout the mid-90s.</p>
<p>So last night I whipped up a little search engine called <a href="http://hzzah.com">Hzzah!</a>*</p>
<div style="clear: both; line-height: 0px; font-size: 0px;">&nbsp;</div>
<div style="float: right; clear: both;"><a href="http://creativecommons.org/licenses/BSD/"><img src="http://michael.susens-schurter.com/files/40bsd.png" alt="BSDtastic!" /></a></div>
<p><strong>Features:</strong></p>
<ul>
<li>Simple</li>
<li>No ads, cookies, or even JavaScript <small>(at the moment at least)</small></li>
<li>Open Source!  <a href="http://creativecommons.org/licenses/BSD/">BSD to be precise</a>.</li>
<li>Did I mention simple?  That&#8217;s really all it has going for it&#8230;</li>
</ul>
<p><span id="more-326"></span></p>
<p>If you have <a href="http://bazaar-vcs.org/">Bazaar</a> installed you can grab the code a variety of ways:</p>

<div class="wp_syntax"><div class="code"><pre class="bash" style="font-family:monospace;"><span style="color: #666666; font-style: italic;"># If you know Subversion, use this method.  `bzr up` will keep you up to date</span>
bzr checkout http:<span style="color: #000000; font-weight: bold;">//</span>michael.susens-schurter.com<span style="color: #000000; font-weight: bold;">/</span>code<span style="color: #000000; font-weight: bold;">/</span>hzzah-public
&nbsp;
<span style="color: #666666; font-style: italic;"># If you want to hack on Hzzah or are comfortable with bzr, feel free to branch</span>
bzr branch http:<span style="color: #000000; font-weight: bold;">//</span>michael.susens-schurter.com<span style="color: #000000; font-weight: bold;">/</span>code<span style="color: #000000; font-weight: bold;">/</span>hzzah-public hzzah-steve</pre></div></div>

<p>You can also <a href="http://michael.susens-schurter.com/code/hzzah-public-r5.zip">grab a zip</a>, but its probably going to become out of date quickly.</p>
<p><em>Read the README file for help setting it up.</em></p>
<p>And like I say in the README, if you&#8217;re feeling generous, feel free to toss some cash this way:<br />
<a href="https://www.paypal.com/cgi-bin/webscr?cmd=_donations&#038;business=mschurter%40yahoo%2ecom&#038;item_name=hzzah%2ecom%20by%20Michael%20Schurter&#038;item_number=1337&#038;no_shipping=0&#038;no_note=1&#038;tax=0&#038;currency_code=USD&#038;lc=US&#038;bn=PP%2dDonationsBF&#038;charset=UTF%2d8"><img src="https://www.paypal.com/en_US/i/btn/btn_donate_SM.gif" border="0" alt="PayPal - The safer, easier way to pay online!"></a></p>
<p><small>* Make fun of the name all you like&#8230; there&#8217;s no good domain names left.  The name is inspired by a friend from college for whom <em>huzzah</em> was her exclamation of choice.</small></p>
]]></content:encoded>
			<wfw:commentRss>http://blog.schmichael.com/2008/07/15/introducing-hzzah/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Common Django Typo in URLconf</title>
		<link>http://blog.schmichael.com/2008/03/10/common-django-typo-in-urlconf/</link>
		<comments>http://blog.schmichael.com/2008/03/10/common-django-typo-in-urlconf/#comments</comments>
		<pubDate>Mon, 10 Mar 2008 20:50:13 +0000</pubDate>
		<dc:creator>Michael Schurter</dc:creator>
				<category><![CDATA[Open Source]]></category>
		<category><![CDATA[Python]]></category>
		<category><![CDATA[Technology]]></category>
		<category><![CDATA[django]]></category>
		<category><![CDATA[exception]]></category>
		<category><![CDATA[typo]]></category>

		<guid isPermaLink="false">http://michael.susens-schurter.com/blog/2008/03/10/common-django-typo-in-urlconf/</guid>
		<description><![CDATA[If you&#8217;re hacking Django and get this&#8230; ImproperlyConfigured: Error while importing URLconf 'proj.app.urls': 'tuple' object is not callable &#8230;you&#8217;re probably missing a comma in your URL configuration as Rajesh Dhawan pointed out. Django pros can move along, I know you &#8230; <a href="http://blog.schmichael.com/2008/03/10/common-django-typo-in-urlconf/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>If you&#8217;re hacking Django and get this&#8230;</p>
<p><code>ImproperlyConfigured: Error while importing URLconf 'proj.app.urls': 'tuple' object is not callable</code></p>
<p>&#8230;you&#8217;re probably <a href="http://groups.google.com/group/django-users/browse_thread/thread/517ea56bece07c86?hide_quotes=no#msg_f6f321e7997ce992">missing a comma in your URL configuration as Rajesh Dhawan pointed out</a>.</p>
<p><small>Django pros can move along, I know you never make typos.  <img src='http://blog.schmichael.com/wp-includes/images/smilies/icon_wink.gif' alt=';)' class='wp-smiley' /> </small></p>
]]></content:encoded>
			<wfw:commentRss>http://blog.schmichael.com/2008/03/10/common-django-typo-in-urlconf/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
	</channel>
</rss>

