<?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>Kirk Samuelson &#187; software</title>
	<atom:link href="http://kirksamuelson.com/tag/software/feed/" rel="self" type="application/rss+xml" />
	<link>http://kirksamuelson.com</link>
	<description></description>
	<lastBuildDate>Mon, 22 Feb 2010 03:25:56 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.0</generator>
		<item>
		<title>CoC</title>
		<link>http://kirksamuelson.com/2009/09/05/coc/</link>
		<comments>http://kirksamuelson.com/2009/09/05/coc/#comments</comments>
		<pubDate>Sat, 05 Sep 2009 06:19:08 +0000</pubDate>
		<dc:creator>Kirk Samuelson</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[PHP]]></category>
		<category><![CDATA[software]]></category>
		<category><![CDATA[symfony]]></category>
		<category><![CDATA[web development]]></category>

		<guid isPermaLink="false">http://kirksamuelson.com/?p=159</guid>
		<description><![CDATA[Speaking of symfony, I&#8217;ve found it&#8217;s &#8220;convention-over-configuration&#8221; approach a little maddening. There&#8217;s zillions of directories. Many of them have the same names but are along different paths. This one tripped me up today. Configuration Principles in symfony For many symfony configuration files, the same setting can be defined at different levels: The default configuration is [...]]]></description>
			<content:encoded><![CDATA[<p>Speaking of symfony, I&#8217;ve found it&#8217;s &#8220;convention-over-configuration&#8221; approach a little maddening. There&#8217;s zillions of directories. Many of them have the same names but are along different paths. This one tripped me up today.</p>
<blockquote><p>
Configuration Principles in symfony</p>
<p>For many symfony configuration files, the same setting can be defined at different levels:</p>
<ul>
<li>The default configuration is located in the framework</li>
<li>The global configuration for the project (in config/)</li>
<li>The local configuration for an application (in apps/APP/config/)</li>
<li>The local configuration restricted to a module (in apps/APP/modules/MODULE/config/)</li>
</blockquote>
<p>Yes, three levels of config folders on top of the default (which is hidden deep inside of /lib where it belongs). That&#8217;s a good thing in that it allows for a lot of modularity and module-specific behaviors. But it&#8217;s a bad thing when you edit the file at the wrong place in the hierarchy as I did today. SVN helped me bail out of that particular fuck up.</p>
<p>I like the CoC approach &#8211; not being a trained programmer I do things intuitively and defining conventions is a very intuitive approach. Just takes a little pattern recognition to see what&#8217;s going on. Humans are good at that. The flip side is that convention over configuration is a <em>my way or the highway</em> proposition. If you don&#8217;t like it you may want to keep hacking your own code or maybe use Zend Framework which is not convention-driven.</p>
<p>So, I&#8217;m hanging in there with symfony after two days. It&#8217;ll probably take a month before I either jump all in or give it all up. We&#8217;ll see which.</p>
]]></content:encoded>
			<wfw:commentRss>http://kirksamuelson.com/2009/09/05/coc/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Doctrine ORM</title>
		<link>http://kirksamuelson.com/2009/09/05/doctrine-orm/</link>
		<comments>http://kirksamuelson.com/2009/09/05/doctrine-orm/#comments</comments>
		<pubDate>Sat, 05 Sep 2009 06:02:09 +0000</pubDate>
		<dc:creator>Kirk Samuelson</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[Doctrine]]></category>
		<category><![CDATA[PHP]]></category>
		<category><![CDATA[software]]></category>
		<category><![CDATA[symfony]]></category>
		<category><![CDATA[web development]]></category>

		<guid isPermaLink="false">http://kirksamuelson.com/?p=157</guid>
		<description><![CDATA[Doctrine is an Object Relational Mapper for PHP. I&#8217;m new to this so correct me if I&#8217;m wrong &#8211; an ORM allows you to interact with databases on a purely objective level. I finished Day 5 of the 24 day symfony tutorial today and had my first exposure to this. Symfony is object-oriented through and [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://www.doctrine-project.org/">Doctrine</a> is an Object Relational Mapper for PHP. I&#8217;m new to this so correct me if I&#8217;m wrong &#8211; an ORM allows you to interact with databases on a purely objective level. I finished Day 5 of the 24 day symfony tutorial today and had my first exposure to this. Symfony is object-oriented through and through. Tying it to an ORM keeps everything in the realm of objects. That&#8217;s attractive but it also means, you know, a high level of abstraction. So it can be a little mind bending. But, I&#8217;m game. I&#8217;m tired of writing stuff that is just driven by constant data retrieval and iteration through records. It may be nice to have things more encapsulated and just sort of&#8230; always on.</p>
]]></content:encoded>
			<wfw:commentRss>http://kirksamuelson.com/2009/09/05/doctrine-orm/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Getting into symfony</title>
		<link>http://kirksamuelson.com/2009/09/03/getting-into-symfony/</link>
		<comments>http://kirksamuelson.com/2009/09/03/getting-into-symfony/#comments</comments>
		<pubDate>Fri, 04 Sep 2009 04:32:48 +0000</pubDate>
		<dc:creator>Kirk Samuelson</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[coding]]></category>
		<category><![CDATA[libraries]]></category>
		<category><![CDATA[PHP]]></category>
		<category><![CDATA[software]]></category>
		<category><![CDATA[web development]]></category>

		<guid isPermaLink="false">http://kirksamuelson.com/?p=136</guid>
		<description><![CDATA[I&#8217;ve been working with the symfony PHP framework today and am feeling excited about it so far. I went in search of some confirmation for my enthusiasm and found this blog post. Symfony refactor of the Zend Quick Start Tutorial My friends &#038; colleagues have used Zend Framework (ZF) for a while, and I do [...]]]></description>
			<content:encoded><![CDATA[<p>I&#8217;ve been working with the <a href="http://www.symfony-project.org/">symfony PHP framework</a> today and am feeling excited about it so far. I went in search of some confirmation for my enthusiasm and found this blog post.</p>
<p><a href="http://www.robertspeer.com/blog/">Symfony refactor of the Zend Quick Start Tutorial</a></p>
<blockquote><p>
My friends &#038; colleagues have used Zend Framework (ZF) for a while, and I do my best to avoid it and use the Symfony PHP framework.  Initially I was open to learning ZF, I was just curious why people liked it.  The more questions I asked, the more I realized there were no good answers other than standards for standards sake, and variations on the <a href="http://en.wikipedia.org/wiki/Sunk_costs#Loss_aversion_and_the_sunk_cost_fallacy">Sunk Cost Fallacy</a>.
</p></blockquote>
<p>I built a site using ZF some time ago and felt guilty about how little I enjoyed it. Symfony is not as simple as <a href="http://codeigniter.com/">CodeIgniter</a> or even <a href="http://cakephp.org/">Cake</a>. But it doesn&#8217;t feel clever for the sake of being clever. The focus on getting things done <em>and</em> doing them properly is pretty tight. I may never get some of the people I work with to buy into this but I can live with that. There will be plenty of opportunities for me to build some skills with this toolset.</p>
]]></content:encoded>
			<wfw:commentRss>http://kirksamuelson.com/2009/09/03/getting-into-symfony/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>AJAX components, Javascript libraries</title>
		<link>http://kirksamuelson.com/2009/09/03/ajax-components-javascript-libraries/</link>
		<comments>http://kirksamuelson.com/2009/09/03/ajax-components-javascript-libraries/#comments</comments>
		<pubDate>Thu, 03 Sep 2009 14:51:27 +0000</pubDate>
		<dc:creator>Kirk Samuelson</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[AJAX]]></category>
		<category><![CDATA[coding]]></category>
		<category><![CDATA[Javascript]]></category>
		<category><![CDATA[software]]></category>
		<category><![CDATA[web development]]></category>

		<guid isPermaLink="false">http://kirksamuelson.com/?p=134</guid>
		<description><![CDATA[YUI &#8212; The Yahoo! User Interface Library DHTML eXtensions &#8211; professional AJAX components for advanced Web UI &#8211; in your PHP, JSP, .NET, ASP and ColdFusion applications jQuery: The Write Less, Do More, JavaScript Library jQuery Grid Plugin Ext JS &#8211; Client-side JavaScript Framework Prototype JavaScript framework: Easy Ajax and DOM manipulation for dynamic web [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://developer.yahoo.com/yui/">YUI &#8212; The Yahoo! User Interface Library</a></p>
<p><a href="http://www.dhtmlx.com/">DHTML eXtensions &#8211; professional AJAX components for advanced Web UI &#8211; in your PHP, JSP, .NET, ASP and ColdFusion applications</a></p>
<p><a href="http://jquery.com/">jQuery: The Write Less, Do More, JavaScript Library</a></p>
<p><a href="http://www.trirand.com/blog/">jQuery Grid Plugin</a></p>
<p><a href="http://extjs.com/products/extjs/">Ext JS &#8211; Client-side JavaScript Framework</a></p>
<p><a href="http://www.prototypejs.org/">Prototype JavaScript framework: Easy Ajax and DOM manipulation for dynamic web applications</a></p>
<p><a href="http://script.aculo.us/">script.aculo.us &#8211; web 2.0 javascript</a> &#8211; For prototype</p>
]]></content:encoded>
			<wfw:commentRss>http://kirksamuelson.com/2009/09/03/ajax-components-javascript-libraries/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>CSS and bicycle wheels</title>
		<link>http://kirksamuelson.com/2009/08/31/css-and-bicycle-wheels/</link>
		<comments>http://kirksamuelson.com/2009/08/31/css-and-bicycle-wheels/#comments</comments>
		<pubDate>Tue, 01 Sep 2009 03:32:32 +0000</pubDate>
		<dc:creator>Kirk Samuelson</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[coding]]></category>
		<category><![CDATA[software]]></category>
		<category><![CDATA[web development]]></category>

		<guid isPermaLink="false">http://kirksamuelson.com/?p=131</guid>
		<description><![CDATA[There are two approaches to truing a bicycle wheel. The first is to just identify any loose spokes and tighten them up. Then start tightening or loosening spokes and spinning the wheel to see if there&#8217;s any effect. Continue this trial and error approach for several hours and you might end up with a true [...]]]></description>
			<content:encoded><![CDATA[<p>There are two approaches to truing a bicycle wheel. The first is to just identify any loose spokes and tighten them up. Then start tightening or loosening spokes and spinning the wheel to see if there&#8217;s any effect. Continue this trial and error approach for several hours and you might end up with a true wheel.</p>
<p>The other approach is to have someone teach you the principles of how it works and then spend 15 or 20 minutes systematically getting your wheel true and round. I&#8217;ve tried both and I recommend doing it this way.</p>
<p>CSS is just like this. You can get your page to look the way you want through trial and error and piling on more classes, adding more divs, and generally making a mess of things. It&#8217;ll take a long time but in the end it might work. Or you can learn the CSS Specificity rules and the principles behind CSS selectors and get it done in a fraction of the time and with much cleaner code. Again, I&#8217;ve tried both approaches and I&#8217;d recommend the second.</p>
<p>This article in <a href="http://www.smashingmagazine.com">Smashing Magazine</a> is a good read and a great reference. I&#8217;m going to keep it handy. I predict the process of building my next iPhone web app will take a lot less time and be a little more sane.</p>
<p><a href="http://www.smashingmagazine.com/2009/08/17/taming-advanced-css-selectors/">Taming Advanced CSS Selectors | CSS | Smashing Magazine</a></p>
]]></content:encoded>
			<wfw:commentRss>http://kirksamuelson.com/2009/08/31/css-and-bicycle-wheels/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>StuffIt Slowly</title>
		<link>http://kirksamuelson.com/2008/04/11/stuffit-slowly/</link>
		<comments>http://kirksamuelson.com/2008/04/11/stuffit-slowly/#comments</comments>
		<pubDate>Sat, 12 Apr 2008 03:49:34 +0000</pubDate>
		<dc:creator>Kirk Samuelson</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[found]]></category>
		<category><![CDATA[picture]]></category>
		<category><![CDATA[software]]></category>

		<guid isPermaLink="false">http://kirksamuelson.com/?p=16</guid>
		<description><![CDATA[]]></description>
			<content:encoded><![CDATA[<p><img src="http://kirksamuelson.com/images/stuffitslowly.png" alt="" width="369" height="129" /></p>
]]></content:encoded>
			<wfw:commentRss>http://kirksamuelson.com/2008/04/11/stuffit-slowly/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
