<?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>Kris Jordan &#187; Programming</title>
	<atom:link href="http://www.krisjordan.com/category/programming/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.krisjordan.com</link>
	<description>on Software, Frameworks, &#38; Stuff</description>
	<lastBuildDate>Tue, 25 Aug 2009 03:49:24 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.8.4</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>What&#8217;s on my mind&#8230;</title>
		<link>http://www.krisjordan.com/2009/08/20/whats-on-my-mind/</link>
		<comments>http://www.krisjordan.com/2009/08/20/whats-on-my-mind/#comments</comments>
		<pubDate>Fri, 21 Aug 2009 02:39:50 +0000</pubDate>
		<dc:creator>Kris</dc:creator>
				<category><![CDATA[PHP]]></category>
		<category><![CDATA[Programming]]></category>
		<category><![CDATA[Recess]]></category>
		<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[new media campaigns]]></category>
		<category><![CDATA[software engineering]]></category>
		<category><![CDATA[virtual machines]]></category>

		<guid isPermaLink="false">http://www.krisjordan.com/?p=590</guid>
		<description><![CDATA[In an hour I&#8217;ll be out doing late night trivia in a bar in Chapel Hill, North Carolina. Pop trivia has never been something I excel at, but with the right company it&#8217;s fun to wager a guess, or two, and let go of the problems that consume idle cycles. As of late my thought [...]]]></description>
			<content:encoded><![CDATA[<p>In an hour I&#8217;ll be out doing late night trivia in a bar in Chapel Hill, North Carolina. Pop trivia has never been something I excel at, but with the right company it&#8217;s fun to wager a guess, or two, and let go of the problems that consume idle cycles. As of late my thought has been switching between any of the following:</p>
<ul>
<li><a href="http://www.newmediacampaigns.com/page/the-throw-away-computer-virtualization" onclick="javascript:pageTracker._trackPageview ('/outbound/www.newmediacampaigns.com');">Using virtual machines and shell scripts to achieve the Ultimate Small Team Software Engineering Environment</a> &#8482;</li>
<li>Real Software Engineering in PHP</li>
<li>Trees, Recursion, Permissions, and Architecture of <a href="http://www.newmediacampaigns.com/" onclick="javascript:pageTracker._trackPageview ('/outbound/www.newmediacampaigns.com');">my company</a>&#8217;s next <a href="http://www.newmediacampaigns.com/page/content-management-system" onclick="javascript:pageTracker._trackPageview ('/outbound/www.newmediacampaigns.com');">Content Management System</a></li>
<li>How to simplify internals and increase functionality of the Recess Framework by leveraging PHP 5.3&#8217;s new features like <a href="http://www.recessframework.org/page/functional-php-anonymous-functions-lambdas-closures" onclick="javascript:pageTracker._trackPageview ('/outbound/www.recessframework.org');">anonymous functions</a> and <a href="http://www.newmediacampaigns.com/page/php-namespaces-backslash-example" onclick="javascript:pageTracker._trackPageview ('/outbound/www.newmediacampaigns.com');">namespaces</a></li>
<li>A big client integration project that deals with scary acronyms like HIPAA</li>
</ul>
<p>This space should be more lively than the ghosttown that it has become over the last 8 months. More off the cuff writing on the topic of the hour than the more structured pieces I&#8217;ve been writing for <a href="http://www.newmediacampaigns.com/" onclick="javascript:pageTracker._trackPageview ('/outbound/www.newmediacampaigns.com');">New Media</a>&#8217;s <a href="http://www.newmediacampaigns.com/blog/category/Development" onclick="javascript:pageTracker._trackPageview ('/outbound/www.newmediacampaigns.com');">Web Development Blog</a> or the Recess <a href="http://www.recessframework.org/blog" onclick="javascript:pageTracker._trackPageview ('/outbound/www.recessframework.org');">PHP Blog</a>.</p>
<p>To kick that off the off the cuff writing, <a href="http://ejohn.org/blog/eulogy-to-_why/" onclick="javascript:pageTracker._trackPageview ('/outbound/ejohn.org');">a few words on _why</a>. I don&#8217;t know _why, I haven&#8217;t read the <a href="http://www.ember.co.nz/files/resources/whys-poignant-guide-to-ruby.pdf" onclick="javascript:pageTracker._trackPageview ('/outbound/www.ember.co.nz');">poignant guide</a> to Ruby (although I&#8217;ve come across it a number of occasions and been intrigued), nor have I used much of his huge body of open source work. None the less his recent disappearance has been sitting really funny on my stomach. Really funny. This guy is prolithic, talented, and obsessed with teaching the art and joy of programming. I didn&#8217;t fully appreciate _why until watching <a href="http://www.vimeo.com/5047563?pg=embed&amp;sec=" onclick="javascript:pageTracker._trackPageview ('/outbound/www.vimeo.com');">his recent talk at Carnegie Melon</a> [embedded below]. His excitement and creative knack for opening programming up to a younger audience is energizing. Here&#8217;s to hoping an even brighter chapter to that story is about to unfold&#8230;</p>
<p><object width="400" height="220" data="http://vimeo.com/moogaloop.swf?clip_id=5047563&amp;server=vimeo.com&amp;show_title=1&amp;show_byline=1&amp;show_portrait=0&amp;color=&amp;fullscreen=1" type="application/x-shockwave-flash"><param name="allowfullscreen" value="true" /><param name="allowscriptaccess" value="always" /><param name="src" value="http://vimeo.com/moogaloop.swf?clip_id=5047563&amp;server=vimeo.com&amp;show_title=1&amp;show_byline=1&amp;show_portrait=0&amp;color=&amp;fullscreen=1" /></object></p>
]]></content:encoded>
			<wfw:commentRss>http://www.krisjordan.com/2009/08/20/whats-on-my-mind/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Hello Again, Old Friend: Revisiting a PHP Framework</title>
		<link>http://www.krisjordan.com/2008/10/08/hello-again-old-friend-revisiting-a-php-framework/</link>
		<comments>http://www.krisjordan.com/2008/10/08/hello-again-old-friend-revisiting-a-php-framework/#comments</comments>
		<pubDate>Wed, 08 Oct 2008 17:26:45 +0000</pubDate>
		<dc:creator>Kris</dc:creator>
				<category><![CDATA[Programming]]></category>
		<category><![CDATA[framework]]></category>
		<category><![CDATA[PHP]]></category>
		<category><![CDATA[rails]]></category>
		<category><![CDATA[redesign]]></category>
		<category><![CDATA[REST]]></category>

		<guid isPermaLink="false">http://www.krisjordan.com/?p=435</guid>
		<description><![CDATA[I&#8217;m in the process of replumbing the lightweight PHP application framework I wrote with Joel Sutherland over three years ago. Its original design was inspired by the Java Struts Framework. It enabled us to rapidly develop the first version of New Media Campaigns&#8216; website management software. Two summers ago we did a major redesign inspired [...]]]></description>
			<content:encoded><![CDATA[<p>I&#8217;m in the process of replumbing the lightweight PHP application framework I wrote with <a href="http://www.jsuth.com/" onclick="javascript:pageTracker._trackPageview ('/outbound/www.jsuth.com');">Joel Sutherland</a> over three years ago. Its original design was inspired by the <a href="http://struts.apache.org/" onclick="javascript:pageTracker._trackPageview ('/outbound/struts.apache.org');">Java Struts Framework</a>. It enabled us to rapidly develop the first version of <a href="http://www.newmediacampaigns.com/" onclick="javascript:pageTracker._trackPageview ('/outbound/www.newmediacampaigns.com');">New Media Campaigns</a>&#8216; <a href="http://www.newmediacampaigns.com/page/content-management" onclick="javascript:pageTracker._trackPageview ('/outbound/www.newmediacampaigns.com');">website management software</a>. Two summers ago we did a major redesign inspired by the <a href="http://en.wikipedia.org/wiki/Don't_repeat_yourself" onclick="javascript:pageTracker._trackPageview ('/outbound/en.wikipedia.org');">DRY</a> nature of <a href="http://www.rubyonrails.org/" onclick="javascript:pageTracker._trackPageview ('/outbound/www.rubyonrails.org');">Ruby on Rails</a>. Since then Joel and <a href="http://www.joshlockhart.com/" onclick="javascript:pageTracker._trackPageview ('/outbound/www.joshlockhart.com');">Josh Lockhart</a> have been tweaking the framework by addressing the issues which crop up after their intensive use while rewriting New Media&#8217;s system. </p>
<p>Energized by <a href="http://www.krisjordan.com/live-blogging-from-web-20-expo-new-york/">what I saw at the Web 2.0 Expo</a> in NY I&#8217;m back at it again. My three big goals with this take:</p>
<p>1) <strong>Get it in the wild: Open source with an <a href="http://en.wikipedia.org/wiki/MIT_License" onclick="javascript:pageTracker._trackPageview ('/outbound/en.wikipedia.org');">MIT license</a></strong>. This is going to happen before the New Year. Hopefully sooner. We intended to do this with V2. It actually <em>was </em>publicly available in 2006 for a brief period of time but without any real plan for evangelism. I&#8217;ve been using open source software for a long time and its high time to give back.</p>
<p>2) <strong>Play nice in the new RESTful world.</strong> If I had to bet on a paradigm for interacting with web APIs I would bet the farm on <a href="http://en.wikipedia.org/wiki/Representational_State_Transfer" onclick="javascript:pageTracker._trackPageview ('/outbound/en.wikipedia.org');">REST</a>. It is perfectly aligned with the grain of the web. Most existing frameworks written without an emphasis on REST have made awkward face lifts to adapt. When revisiting our own framework and considering how to make it properly RESTful this would have held true if not for&#8230;</p>
<p>3) <strong>Signficantly </strong><strong>Improving the Architecture.</strong> Revisiting old code is a joy. It&#8217;s easy to forget how clever you were and how much work you did. Yet it&#8217;s very disturbing to realize how hacked some of the fundamental design was. As mentioned, the current version was influenced significantly by what Rails plumbing looked like circa-2006. Since then two really important things have changed: 1) the emphasis on tying closer to HTTP protocol, and 2) two additional years of experience with systems design under the belt.</p>
<p>So, <em>here&#8217;s to take 3</em>! Bits available for download in upcoming months. E-mail me at krisjordan/gmail if interested in being copied on barely functional, pre-release bits in the mean time. Otherwise, <a href="http://feeds.feedburner.com/KrisJordan/" onclick="javascript:pageTracker._trackPageview ('/outbound/feeds.feedburner.com');">stay tuned</a>.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.krisjordan.com/2008/10/08/hello-again-old-friend-revisiting-a-php-framework/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
	</channel>
</rss>
