<?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>Artful Code &#187; Programming</title>
	<atom:link href="http://www.artfulcode.net/categories/programming/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.artfulcode.net</link>
	<description>Resources and tips for dynamic, interactive languages.</description>
	<lastBuildDate>Tue, 15 Jun 2010 11:31:19 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.0.1</generator>
		<item>
		<title>goto statement considered</title>
		<link>http://www.artfulcode.net/articles/goto-statement-considered/</link>
		<comments>http://www.artfulcode.net/articles/goto-statement-considered/#comments</comments>
		<pubDate>Thu, 19 Nov 2009 03:09:40 +0000</pubDate>
		<dc:creator>Jeff</dc:creator>
				<category><![CDATA[Programming]]></category>
		<category><![CDATA[Soap box]]></category>
		<category><![CDATA[goto]]></category>
		<category><![CDATA[perl]]></category>

		<guid isPermaLink="false">http://www.artfulcode.net/?p=816</guid>
		<description><![CDATA[Everyone knows not to use goto, right?  Dijkstra's words on the subject have risen to the level of gospel in the programming community. Not that I do not completely agree... in most cases.]]></description>
		<wfw:commentRss>http://www.artfulcode.net/articles/goto-statement-considered/feed/</wfw:commentRss>
		<slash:comments>9</slash:comments>
		</item>
		<item>
		<title>From TextMate to Vim</title>
		<link>http://www.artfulcode.net/articles/from-textmate-to-vim/</link>
		<comments>http://www.artfulcode.net/articles/from-textmate-to-vim/#comments</comments>
		<pubDate>Mon, 03 Aug 2009 15:13:06 +0000</pubDate>
		<dc:creator>Jeff</dc:creator>
				<category><![CDATA[Programming]]></category>
		<category><![CDATA[Tips]]></category>
		<category><![CDATA[review]]></category>
		<category><![CDATA[textmate]]></category>
		<category><![CDATA[vim]]></category>

		<guid isPermaLink="false">http://www.artfulcode.net/?p=756</guid>
		<description><![CDATA[TextMate is an excellent editor, but it is beginning to show its age. It has a few squeaky wheels that have yet to be oiled, and it looks as though the author may be getting bogged down in the minutiae of his next release. With the next version apparently due sometime after the colonization of Mars, it seemed an auspicious time to try out another editor.]]></description>
		<wfw:commentRss>http://www.artfulcode.net/articles/from-textmate-to-vim/feed/</wfw:commentRss>
		<slash:comments>56</slash:comments>
		</item>
		<item>
		<title>Runtime ChoiceField filtering in Django&#8217;s admin</title>
		<link>http://www.artfulcode.net/articles/runtime-choicefield-filtering-in-djangos-admin/</link>
		<comments>http://www.artfulcode.net/articles/runtime-choicefield-filtering-in-djangos-admin/#comments</comments>
		<pubDate>Fri, 31 Jul 2009 13:34:03 +0000</pubDate>
		<dc:creator>Jeff</dc:creator>
				<category><![CDATA[Programming]]></category>
		<category><![CDATA[django]]></category>
		<category><![CDATA[python]]></category>

		<guid isPermaLink="false">http://www.artfulcode.net/?p=741</guid>
		<description><![CDATA[Django 1.x brought with it much finer grained control over the admin application with admin forms and inline form sets. However, I still keep running into the same problem that I have since I started using Django &#8211; you cannot provide a limited queryset for a select field that depends on other instance variables. Take [...]]]></description>
		<wfw:commentRss>http://www.artfulcode.net/articles/runtime-choicefield-filtering-in-djangos-admin/feed/</wfw:commentRss>
		<slash:comments>7</slash:comments>
		</item>
		<item>
		<title>Pointers, arrays, and string literals</title>
		<link>http://www.artfulcode.net/articles/pointers-arrays-and-string-literals/</link>
		<comments>http://www.artfulcode.net/articles/pointers-arrays-and-string-literals/#comments</comments>
		<pubDate>Fri, 19 Jun 2009 12:52:56 +0000</pubDate>
		<dc:creator>Jeff</dc:creator>
				<category><![CDATA[Programming]]></category>
		<category><![CDATA[c]]></category>

		<guid isPermaLink="false">http://www.artfulcode.net/?p=698</guid>
		<description><![CDATA[A recently posted question on Stack Overflow highlighted a common misconception about the role of pointers and arrays held by many programmers learning C.]]></description>
		<wfw:commentRss>http://www.artfulcode.net/articles/pointers-arrays-and-string-literals/feed/</wfw:commentRss>
		<slash:comments>10</slash:comments>
		</item>
		<item>
		<title>Custom session storage with newLISP Web</title>
		<link>http://www.artfulcode.net/articles/custom-session-storage-with-newlisp-web/</link>
		<comments>http://www.artfulcode.net/articles/custom-session-storage-with-newlisp-web/#comments</comments>
		<pubDate>Fri, 29 May 2009 18:35:52 +0000</pubDate>
		<dc:creator>Jeff</dc:creator>
				<category><![CDATA[Programming]]></category>
		<category><![CDATA[mysql]]></category>
		<category><![CDATA[newlisp]]></category>
		<category><![CDATA[web]]></category>

		<guid isPermaLink="false">http://www.artfulcode.net/?p=684</guid>
		<description><![CDATA[The Web module's default session storage engine uses serialized contexts in the /tmp directory. The advantage of this method is that, apart from the directory (which is customizable), it is reasonably platform independent and has low overhead. The disadvantages of this are numerous. Files are stored unencrypted, so anyone with access to the server may view them. It is therefor advantageous to design a custom storage module for sessions.]]></description>
		<wfw:commentRss>http://www.artfulcode.net/articles/custom-session-storage-with-newlisp-web/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>A better newLISP web library</title>
		<link>http://www.artfulcode.net/articles/a-better-newlisp-web-library/</link>
		<comments>http://www.artfulcode.net/articles/a-better-newlisp-web-library/#comments</comments>
		<pubDate>Fri, 29 May 2009 13:32:29 +0000</pubDate>
		<dc:creator>Jeff</dc:creator>
				<category><![CDATA[Programming]]></category>
		<category><![CDATA[Software]]></category>
		<category><![CDATA[newlisp]]></category>
		<category><![CDATA[web]]></category>

		<guid isPermaLink="false">http://www.artfulcode.net/?p=648</guid>
		<description><![CDATA[One problem from which newLISP suffers is the lack of a really useful library for web-based applications. The <a href="http://newlisp.nfshost.com/code/modules/cgi.lsp.html">official CGI module</a> has serious enough problems to justify an entirely new library. After some thought, I decided moreover that the <a href="http://static.artfulcode.net/newlisp/request.lsp.html">request</a> and <a href="http://static.artfulcode.net/newlisp/response.lsp.html">response</a> modules that I designed were neither practical nor sufficient. To that end, I have designed a new, monolithic library to provide the essential functionality required for web programming]]></description>
		<wfw:commentRss>http://www.artfulcode.net/articles/a-better-newlisp-web-library/feed/</wfw:commentRss>
		<slash:comments>9</slash:comments>
		</item>
		<item>
		<title>Updated Json module for newLISP</title>
		<link>http://www.artfulcode.net/articles/updated-json-module-for-newlisp/</link>
		<comments>http://www.artfulcode.net/articles/updated-json-module-for-newlisp/#comments</comments>
		<pubDate>Fri, 22 May 2009 18:10:01 +0000</pubDate>
		<dc:creator>Jeff</dc:creator>
				<category><![CDATA[Programming]]></category>
		<category><![CDATA[Software]]></category>
		<category><![CDATA[javascript]]></category>
		<category><![CDATA[json]]></category>
		<category><![CDATA[newlisp]]></category>

		<guid isPermaLink="false">http://www.artfulcode.net/?p=643</guid>
		<description><![CDATA[Thanks to Andrew Pennebaker for pointing out where the decoder was broken. This update includes a complete rewrite of the JSON decoder. It is now slightly more forgiving and much more accurate. You can download it here or upgrade using nl-install. Submit article]]></description>
		<wfw:commentRss>http://www.artfulcode.net/articles/updated-json-module-for-newlisp/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>PHP is a framework</title>
		<link>http://www.artfulcode.net/articles/php-is-a-framework/</link>
		<comments>http://www.artfulcode.net/articles/php-is-a-framework/#comments</comments>
		<pubDate>Fri, 15 May 2009 18:12:26 +0000</pubDate>
		<dc:creator>Jeff</dc:creator>
				<category><![CDATA[Programming]]></category>
		<category><![CDATA[Soap box]]></category>
		<category><![CDATA[framework]]></category>
		<category><![CDATA[html]]></category>
		<category><![CDATA[php]]></category>
		<category><![CDATA[web design]]></category>

		<guid isPermaLink="false">http://www.artfulcode.net/?p=624</guid>
		<description><![CDATA[Rails, Django, Spring &#8211; application frameworks like these are now ubiquitous in the development of web-based applications. This is part of a trend in many general purpose languages of building toward the web. For these, the application framework is not just a buzzword; it is the abstraction used to build the language up to the [...]]]></description>
		<wfw:commentRss>http://www.artfulcode.net/articles/php-is-a-framework/feed/</wfw:commentRss>
		<slash:comments>9</slash:comments>
		</item>
		<item>
		<title>Phorms: a PHP form library</title>
		<link>http://www.artfulcode.net/articles/phorms-a-php-form-library/</link>
		<comments>http://www.artfulcode.net/articles/phorms-a-php-form-library/#comments</comments>
		<pubDate>Mon, 13 Apr 2009 20:29:45 +0000</pubDate>
		<dc:creator>Jeff</dc:creator>
				<category><![CDATA[Programming]]></category>
		<category><![CDATA[Software]]></category>

		<guid isPermaLink="false">http://www.artfulcode.net/?p=587</guid>
		<description><![CDATA[Phorms is a general purpose, easy-to-use HTML forms library. Phorms aims to provide a simple framework for generating complex forms. Forms are created by extending the abstract Phorm class. Validation is simple and easy to implement. Django users especially will find Phorms&#8217; validation familiar: require_once&#40;'lib/phorms/phorms.php'&#41;; &#160; function required&#40;$value&#41; &#123; if &#40;$value == '' &#124;&#124; is_null&#40;$value&#41;&#41; [...]]]></description>
		<wfw:commentRss>http://www.artfulcode.net/articles/phorms-a-php-form-library/feed/</wfw:commentRss>
		<slash:comments>13</slash:comments>
		</item>
		<item>
		<title>Thread pool module for Pike</title>
		<link>http://www.artfulcode.net/articles/thread-pool-module-for-pike/</link>
		<comments>http://www.artfulcode.net/articles/thread-pool-module-for-pike/#comments</comments>
		<pubDate>Tue, 10 Mar 2009 17:14:09 +0000</pubDate>
		<dc:creator>Jeff</dc:creator>
				<category><![CDATA[Programming]]></category>
		<category><![CDATA[concurrency]]></category>
		<category><![CDATA[pike]]></category>
		<category><![CDATA[threads]]></category>

		<guid isPermaLink="false">http://www.artfulcode.net/?p=572</guid>
		<description><![CDATA[Async provides a simple process pool that allocates a number of worker threads
that may then be utilized collectively without having to deal directly with
threads. Results of jobs sent to the pool are "future" objects, called Asyncs.
Asyncs' values are then acquired by calling Async.sync, which blocks until the
value has been set by the pool. A supervisor thread monitors the worker threads
and restarts any that terminate abnormally.]]></description>
		<wfw:commentRss>http://www.artfulcode.net/articles/thread-pool-module-for-pike/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
