<?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>Clayton Lengel-Zigich &#187; Ideas</title>
	<atom:link href="http://www.claytonlz.com/index.php/category/ideas/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.claytonlz.com</link>
	<description>Ruby on Rails Developer</description>
	<lastBuildDate>Thu, 15 Jul 2010 07:44:21 +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>The Secret to Awesome Agile Development</title>
		<link>http://www.claytonlz.com/index.php/2009/12/awesome-agile-development-secret/</link>
		<comments>http://www.claytonlz.com/index.php/2009/12/awesome-agile-development-secret/#comments</comments>
		<pubDate>Mon, 28 Dec 2009 17:30:40 +0000</pubDate>
		<dc:creator>Clayton</dc:creator>
				<category><![CDATA[Development]]></category>
		<category><![CDATA[Ideas]]></category>
		<category><![CDATA[Testing]]></category>
		<category><![CDATA[agile]]></category>

		<guid isPermaLink="false">http://www.claytonlz.com/?p=367</guid>
		<description><![CDATA[With a little hard work and my secret development ingredient, you can be a better Agile Developer Recently my fellow developers at Integrum and I took a survey that helped us assess our team with regard to our Agile practices. When taking the survey, and now reviewing it later on, I was struck by how [...]]]></description>
			<content:encoded><![CDATA[<p></p><h3>With a little hard work and my secret development ingredient, you can be a better Agile Developer</h3>

<p><span class="drop_cap">R</span>ecently my fellow developers at <a href="http://www.integrumtech.com">Integrum</a> and I took a survey that helped us assess our team with regard to our Agile practices. When taking the survey, and now reviewing it later on, I was struck by how many of the questions were related to a single concept. Many of the problem areas that can be uncovered by the survey, along with examples of one&#8217;s successes, come back to this one theme.</p>

<blockquote class="left">Are programmers nearly always confident that the code they&#8217;ve written recently does what it&#8217;s intended to do?
</blockquote>Consider the following questions:


<ul>
<li>Is there more than one bug per month in the business logic of completed stories?</li>
<li>Can any programmer on the team currently build and test the software, and get unambiguous success / fail result, using a single command?</li>
<li>When a programmer gets the latest code, is he nearly always confident that it will build successfully and pass all tests?</li>
<li>Are fewer than five bugs per month discovered in the team&Ecirc;&frac14;s finished work?</li>
<li>After a line item is marked &#8220;complete&#8221; do team members later perform unexpected additional work, such as bug fixes or release polish, to finish it?</li>
<li>Are programmers nearly always confident that the code they&#8217;ve written recently does what it&#8217;s intended to do?</li>
<li>Are all programmers comfortable making changes to the code?</li>
<li>Do programmers have more than one debug session per week that exceeds 10 minutes?</li>
<li>Do unexpected design changes require difficult or costly changes to existing code?</li>
<li>Do any programmers optimize code without conducting performance tests first?</li>
<li>Is there more than one bug per month in the business logic of completed stories?</li>
<li>Are any team members unsure about the quality of the software the team is producing?</li>
</ul>



<p class="alert">What&#8217;s the common theme among these stories, and the secret to better agile development? <strong>Testing</strong>, <strong>testing</strong> and more <strong>testing</strong>.</p>

<p>The negative outcomes implied by some of these questions can be solved by testing. Spending time fixing &#8220;completed&#8221; stories? Probably something you could have tested. Conversely, the positive benefits implied by other questions can be had via testing. Want to make your code more inviting and easier to deal with for new team members or people unfamiliar with the project? Give them robust and well-written tests.</p>]]></content:encoded>
			<wfw:commentRss>http://www.claytonlz.com/index.php/2009/12/awesome-agile-development-secret/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>The 7 Bullshit Agile Estimation Problems</title>
		<link>http://www.claytonlz.com/index.php/2009/12/agile-esitmation-problems/</link>
		<comments>http://www.claytonlz.com/index.php/2009/12/agile-esitmation-problems/#comments</comments>
		<pubDate>Thu, 03 Dec 2009 18:15:04 +0000</pubDate>
		<dc:creator>Clayton</dc:creator>
				<category><![CDATA[Development]]></category>
		<category><![CDATA[Ideas]]></category>
		<category><![CDATA[Riffs]]></category>
		<category><![CDATA[agile]]></category>
		<category><![CDATA[estimations]]></category>
		<category><![CDATA[planning]]></category>

		<guid isPermaLink="false">http://www.claytonlz.com/?p=332</guid>
		<description><![CDATA[Estimating stories for an upcoming project is one of the more difficult tasks that agile teams have to perform. It&#8217;s never easy to determine how difficult it will be to implement a particular feature, especially when you&#8217;ve got different personalities, goals, and levels or experience in the same room. Unfortunately this all leads to people [...]]]></description>
			<content:encoded><![CDATA[<p></p><p>Estimating stories for an upcoming project is one of the more difficult tasks that agile teams have to perform. It&#8217;s never easy to determine how difficult it will be to implement a particular feature, especially when you&#8217;ve got different personalities, goals, and levels or experience in the same room. Unfortunately this all leads to people coming up with excuses and roadblocks which lead to inaccurate estimates.</p>

<p>I&#8217;ve identified seven problems pitfalls of the agile estimation process that I&#8217;m sure many other teams have experienced:</p>

<h3>1) Estimating Time Rather Than Complexity</h3>

<p>The point of estimating stories with planning poker cards is that you estimate based on the story&#8217;s complexity, not on how long it will take you to complete the actual feature. A story that&#8217;s an 8 is more complex than one that&#8217;s a 5, but it doesn&#8217;t meant that the 8 will take two days. It could take an hour or a week, it&#8217;s all relative.</p>

<p><strong>Why it&#8217;s Bullshit</strong><br />
Estimates based on time make planning commitments difficult and velocities unreliable.</p>

<h3>2) Not Estimating For &#8220;Simplest Possible Solution&#8221;</h3>

<p>The &#8220;Simplest Possible Solution&#8221; is just that, what&#8217;s the simplest way that the feature described in the story can be implemented. When you get away from this you start going down all sorts of &#8220;what if&#8221; roads that always end up bumping up your estimate.</p>

<p><strong>Why it&#8217;s Bullshit</strong><br />
Trying to guess what the product owner will want or what the completed feature entails is a waste of time.</p>

<h3>3) I&#8217;ve Never Done That Before</h3>

<p>There aren&#8217;t many software problems that haven&#8217;t been solved. Most of them are things that have been solved a thousand times in a hundred different ways. Adding complexity to a story because you&#8217;ve personally never solved that problem is shortsighted.</p>

<p><strong>Why it&#8217;s Bullshit</strong><br />
Just because you&#8217;ve never done something doesn&#8217;t mean it&#8217;s complex. Lean on your team or network of developer peers to help solve these problems.</p>

<h3>4) Estimating Stories In Excessive or No Isolation</h3>

<p>Stories should be estimated in isolation, just as they should be written so as not to depend heavily on one another.  However, developers will often try to assign too much complexity to a story because of assumed tasks or features that <em>they think</em> would accompany the story in a completed state. For example:</p>

<blockquote>
As a user I should be able to login<br />
As a user I should be able to upload a profile photo<br />
As a user I should be able to change my address<br />
</blockquote>

<p>Some developers will see the first story and immediately think of the complexity of creating a user model, the controllers and views that go along with the entire registration process. </p>

<p>Alternatively some developers will see the last story and think &#8220;Oh I just need a form field for the e-mail address when the user is editing their profile.&#8221;</p>

<p><strong>Why it&#8217;s Bullshit</strong><br />
The first extreme gives you chunks of related stories with too much padding that are never as complex individually as they are as a whole. The latter only (sometimes) works when the actual stories are extracted out into a bunch of very small stories, which has its own set of problems.</p>

<h3>5) Gaming Velocities</h3>

<p>If you&#8217;re looking to &#8220;guesstimate&#8221; how long a project will take to complete, you could grab some story cards and pick out what you think might be a week of work. If you add up the points assigned to those stories you&#8217;d have an estimated velocity. However, if you&#8217;ve padded your stories, or purposefully pick out a small number of stories, your project is going to appear much lengthier than it really is.</p>

<p><strong>Why it&#8217;s Bullshit</strong><br />
You don&#8217;t look any better completing 50 points per iteration when you padded the hell out of your estimates than you do when you do 20 points per iteration with accurate estimates.</p>

<h3>6) Always Assume The Worst!</h3>

<p>There seems to be this mantra with some developers, &#8220;Always assume the worst!&#8221; When you come across a slightly vague story, let your imagination run wild and assume that the product owner is going to want the most complex solution possible.</p>

<p><strong>Why it&#8217;s Bullshit</strong><br />
Remember, every story is a negotiation. You&#8217;re not going to know the exact details of the story until you have your planning meeting with the product owner. Often times the product owner would never have been able to dream up the solution on which you based your estimate. </p>

<h3>7) Padding Padding Padding</h3>

<p><strong>Padding is all Bullshit</strong><br />
The problem of padding estimates creeps into nearly all of the above six issues. It introduces bad data early in the life of the project and makes every other step of the process unreliable. It&#8217;s almost always in an effort to cover one&#8217;s ass but it&#8217;s painfully transparent and reeks of amateurism.</p>

<p>Don&#8217;t pad your estimates.</p>]]></content:encoded>
			<wfw:commentRss>http://www.claytonlz.com/index.php/2009/12/agile-esitmation-problems/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Intel Developer Ignite #2</title>
		<link>http://www.claytonlz.com/index.php/2009/11/intel-developer-ignite-2/</link>
		<comments>http://www.claytonlz.com/index.php/2009/11/intel-developer-ignite-2/#comments</comments>
		<pubDate>Tue, 17 Nov 2009 17:30:49 +0000</pubDate>
		<dc:creator>Clayton</dc:creator>
				<category><![CDATA[Development]]></category>
		<category><![CDATA[Ideas]]></category>
		<category><![CDATA[Social Networking]]></category>

		<guid isPermaLink="false">http://www.claytonlz.com/?p=327</guid>
		<description><![CDATA[I had a blast presenting at the recent Intel Developer Ignite. In my quick five minute presentation I mapped ten of Aesop&#8217;s fables to modern day software engineering challenges and principles. If you missed the event, or just want to check out my presentation again, here it is! Age-Old Solutions to Everyday Problems Big thanks [...]]]></description>
			<content:encoded><![CDATA[<p></p><p>I had a blast presenting at the recent Intel Developer Ignite. In my quick five minute presentation I mapped ten of Aesop&#8217;s fables to modern day software engineering challenges and principles. If you missed the event, or just want to check out my presentation again, here it is!</p>

<p><a href="http://software.intel.com/en-us/videos/34age-old-solutions-to-everyday-problems34/">Age-Old Solutions to Everyday Problems</a></p>

<p>Big thanks to Intel and everyone involved for putting on a great event, I really enjoyed it and can&#8217;t wait to do it again soon.</p>

<p><object id='v_2676_1145' name='v_2676_1145' width='640' height='360' classid='clsid:d27cdb6e-ae6d-11cf-96b8-444553540000' codebase='http://fpdownload.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=8,0,0,0'><param name='flashvars' value='file=http://software.intel.com/media/videos/f/e/a/b/0/5/a/feab05aa91085b7a8012516bc3533958.flv&amp;image=http://software.intel.com/media/videos/f/e/a/b/0/5/a/feab05aa91085b7a8012516bc3533958_player.jpg&amp;autostart=false&amp;bufferlength=5&amp;allowfullscreen=true&amp;plugins=http://software.intel.com/common/swf/listen&amp;title=%26%2334%3BAge-Old+Solutions+to+Everyday+Problems%26%2334%3B' /><param name='movie' value='http://software.intel.com/common/swf/mediaplayer.swf' /><param name='allowfullscreen' value='true' /><embed src='http://software.intel.com/common/swf/mediaplayer.swf' width='640' height='360' bgcolor='#FFFFFF' type='application/x-shockwave-flash' pluginspage='http://www.macromedia.com/go/getflashplayer' flashvars='file=http://software.intel.com/media/videos/f/e/a/b/0/5/a/feab05aa91085b7a8012516bc3533958.flv&amp;image=http://software.intel.com/media/videos/f/e/a/b/0/5/a/feab05aa91085b7a8012516bc3533958_player.jpg&amp;autostart=false&amp;bufferlength=5&amp;allowfullscreen=true' allowfullscreen='true'/></object></p>]]></content:encoded>
			<wfw:commentRss>http://www.claytonlz.com/index.php/2009/11/intel-developer-ignite-2/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Make Fun of Your Client To Prevent Defects</title>
		<link>http://www.claytonlz.com/index.php/2009/10/make-fun-of-your-client/</link>
		<comments>http://www.claytonlz.com/index.php/2009/10/make-fun-of-your-client/#comments</comments>
		<pubDate>Tue, 27 Oct 2009 17:30:18 +0000</pubDate>
		<dc:creator>Clayton</dc:creator>
				<category><![CDATA[Development]]></category>
		<category><![CDATA[Ideas]]></category>
		<category><![CDATA[Riffs]]></category>
		<category><![CDATA[clients]]></category>
		<category><![CDATA[communication]]></category>

		<guid isPermaLink="false">http://www.claytonlz.com/?p=283</guid>
		<description><![CDATA[One thing I've always heard about learning a new language is that you can't consider yourself fully fluent until you can tell a joke. Telling a joke requires the understanding of homonyms and how words flow together. "So a guy walks into a bar..." sounds different than "A man enters beverage store...".

When dealing with clients, it's easy to joke about your client, but don't miss an opportunity to prevent future missteps once you know more about them.]]></description>
			<content:encoded><![CDATA[<p></p><p>One thing I&#8217;ve always heard about learning a new language is that you can&#8217;t consider yourself fully fluent until you can tell a joke. Telling a joke requires the understanding of homonyms and how words flow together. &#8220;So a guy walks into a bar&#8230;&#8221; sounds different than &#8220;A man enters beverage store&#8230;&#8221;.</p>

<p>When dealing with clients, it&#8217;s easy to joke about your client, but don&#8217;t miss an opportunity to prevent future missteps once you know more about them.</p>

<p>How often do you get off the phone with a client and immediately have a funny remark about some critique or issue they have mentioned. Typically this manifests itself when the client brings up an issue, that while important to them, is considered trivial by the developer.</p>

<blockquote>
Can you believe this guy!? I built out this whiz-bang feature and he&#8217;s just complaining about the font being too small!<br />
</blockquote>

<p>The key part of this interaction is that you&#8217;ve now got a little insight into what makes this particular client tick. When you demo the next few features and he is unimpressed by the functionality, but comments on the spacing of form elements you should skip the joke and make a mental note for the future.</p>

<p>Once you can tell a joke about your client, <em>before</em> the interaction, and you have an &#8220;I told ya so!&#8221; moment with yourself or your pair afterwards, you know you&#8217;ve made it to the next level of understanding that client. Now, the next time you deploy a feature, discuss requirements or ask a question you can preempt the inevitable by accounting for those quirks and personal preferences of your client.</p>

<p>Instead of making a joke, make them happy, then you can both smile. ;)</p>]]></content:encoded>
			<wfw:commentRss>http://www.claytonlz.com/index.php/2009/10/make-fun-of-your-client/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>The FAIL Monster Loves Excuses</title>
		<link>http://www.claytonlz.com/index.php/2009/03/the-fail-monster-loves-excuses/</link>
		<comments>http://www.claytonlz.com/index.php/2009/03/the-fail-monster-loves-excuses/#comments</comments>
		<pubDate>Tue, 31 Mar 2009 17:15:58 +0000</pubDate>
		<dc:creator>Clayton</dc:creator>
				<category><![CDATA[Ideas]]></category>
		<category><![CDATA[Riffs]]></category>
		<category><![CDATA[accountability]]></category>
		<category><![CDATA[FAIL]]></category>
		<category><![CDATA[learning]]></category>
		<category><![CDATA[people]]></category>

		<guid isPermaLink="false">http://www.claytonlz.com/?p=175</guid>
		<description><![CDATA[Do you remember watching the FAIL Monster on Sesame Street? Never heard of the FAIL Monster? Weird, I'm pretty sure he was "Cookie Monster's":http://www.youtube.com/watch?v=dhUFxaauNTE cousin or something. He would pop-up and sing a little song about your failures and then at the end he would go crazy and NOM NOM NOM all of your excuses. The really strange thing is that when I grew up, I still saw the FAIL Monster, except he was all over, eating up everyone's excuses, not just mine. When was the last time the FAIL Monster paid _you_ a visit?]]></description>
			<content:encoded><![CDATA[<p></p><p>Do you remember watching the <span class="caps">FAIL</span> Monster on Sesame Street? Never heard of the <span class="caps">FAIL</span> Monster? Weird, I&#8217;m pretty sure he was <a href="http://www.youtube.com/watch?v=dhUFxaauNTE">Cookie Monster&#8217;s</a> cousin or something. He would pop-up and sing a little song about your failures and then at the end he would go crazy and <span class="caps">NOM NOM NOM </span>all of your excuses. The really strange thing is that when I grew up, I still saw the <span class="caps">FAIL</span> Monster, except he was all over, eating up everyone&#8217;s excuses, not just mine. When was the last time the <span class="caps">FAIL</span> Monster paid <em>you</em> a visit?</p>

<h3>The <span class="caps">FAIL</span> Monster Is Your Worst Best Friend</h3>

<p>When you first meet him you&#8217;re trying to figure out what this asshole is doing hanging out right after you really screwed up. You realize that he&#8217;s no good, but as time goes on, you start enjoying his company. He loves showing up because he knows there will be excuses aplenty.</p>

<p>Here are some situations when you might see him:</p>


<ul>
<li>You&#8217;ve messed up and can&#8217;t take responsibility</li>
<li>The project is off track and it&#8217;s not at <em>all</em> your fault</li>
<li>If only <em>&lt; outside agent &gt;</em> would have completed <em>&lt; task &gt;</em> on time</li>
<li>You start using <a href="http://www.youtube.com/watch?v=5110hk9W71E">Fat Bastard&#8217;s</a> circular logic to explain away your problems</li>
<li>&#8220;I don&#8217;t have <em>&lt; resource &gt;</em> to do <em>&lt; what is right &gt;</em></li>
<li>You <a href="http://smartic.us/2008/8/15/tatft-i-feel-a-revolution-coming-on">don&#8217;t write tests</a><br />
<br /></li>
</ul>



<h3>Put the <span class="caps">FAIL</span> Monster on a Diet</h3>

<p>Here is a quick guide to help you trim down your personal <span class="caps">FAIL</span> Monster:</p>


<ol>
<li>Quit making so many goddamned excuses!<br />
<br /></li>
</ol>



<p>Stop making excuses for your lack of understanding, your irresponsibility, your lack of prospects and your shit attitude. Take the time to push yourself, learn a new skill, read a book, meet people, take a leadership role, achieve greatness and succeed.</p>

<p>You can make excuses for everything, the only thing they&#8217;re good for is feeding your own <span class="caps">FAILURE.</span></p>]]></content:encoded>
			<wfw:commentRss>http://www.claytonlz.com/index.php/2009/03/the-fail-monster-loves-excuses/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Why I Fell in Love With Agile</title>
		<link>http://www.claytonlz.com/index.php/2009/03/why-i-fell-in-love-with-agile/</link>
		<comments>http://www.claytonlz.com/index.php/2009/03/why-i-fell-in-love-with-agile/#comments</comments>
		<pubDate>Wed, 25 Mar 2009 17:00:13 +0000</pubDate>
		<dc:creator>Clayton</dc:creator>
				<category><![CDATA[Ideas]]></category>
		<category><![CDATA[Riffs]]></category>
		<category><![CDATA[agile]]></category>
		<category><![CDATA[process]]></category>
		<category><![CDATA[rants]]></category>

		<guid isPermaLink="false">http://www.claytonlz.com/?p=139</guid>
		<description><![CDATA[I've been working at "Integrum":http://www.integrumtech.com for nearly 5 months now. When I started agile was a concept that I had read about, but never experienced in practice. I took bits and pieces of advice from books like "Extreme Programming Explained":http://www.amazon.com/Extreme-Programming-Explained-Embrace-Change/dp/0201616416 and "Practices of an Agile Developer":http://www.amazon.com/Practices-Agile-Developer-Pragmatic-Programmers/dp/097451408X/ref=sr_1_1?ie=UTF8&#038;s=books&#038;qid=1237965348&#038;sr=1-1 but I had never really lived day-in day-out as a developer in an agile workplace. However, now that I've experienced the project boards, burn down charts, velocities and story workshops, I cannot imagine going back to the slam-your-head-against-the-wall waterfall approach from which I came.]]></description>
			<content:encoded><![CDATA[<p></p><p>I&#8217;ve been working at <a href="http://www.integrumtech.com">Integrum</a> for nearly 5 months now. When I started, agile was a concept that I had read about, but never experienced in practice. I took bits and pieces of advice from books like <a href="http://www.amazon.com/Extreme-Programming-Explained-Embrace-Change/dp/0201616416">Extreme Programming Explained</a> and <a href="http://www.amazon.com/Practices-Agile-Developer-Pragmatic-Programmers/dp/097451408X/ref=sr_1_1?ie=UTF8&amp;s=books&amp;qid=1237965348&amp;sr=1-1">Practices of an Agile Developer</a> but I had never really lived day-in day-out as a developer in an agile workplace. However, now that I&#8217;ve experienced the project boards, burn down charts, velocities and story workshops, I cannot imagine going back to the slam-your-head-against-the-wall waterfall approach from which I came.</p>

<h3>What I Love</h3>

<p><strong>Project Boards</strong> &#8211; Nearly real-time visual feedback on the status of your project. Everyone on the team can assess your project at a glance and you can avoid long status meetings with middle management. Greatly increases accountability.</p>

<p><strong>Stand-up Meetings</strong> &#8211; Quick, informative useful meetings that don&#8217;t waste people&#8217;s time. Social group pressure keeps people who like the sound of their own voice from talking for 30 minutes.</p>

<p><strong>Daily Client Interaction</strong> &#8211; No need for ego-maniac project managers. Developers discuss issues with clients each day so that they can deliver the best software with the most value as quickly as possible. Challenges or roadblocks can be brought up almost immediately helping to prevent wasted time on either side of the equation.</p>

<p><strong>User Stories</strong> &#8211; &#8220;Replacements for a conversation&#8221; as I always hear around the office. Replaces the need to confusing spec documents and misguided feature requests. These provide a way to ensure that neither the client&#8217;s money or developer&#8217;s time are being wasted.</p>

<p><strong>Acceptance Criteria</strong> &#8211; It&#8217;s not easy getting quality acceptance criteria from your clients, but <em>man</em> is it worth it. Helps to make sure that what&#8217;s &#8220;done is done&#8221; and there are no disputes towards the end of the project about what is or is not completed.</p>

<p><strong>Short Iterations</strong> &#8211; Allows the developer to focus on a set of the most important tasks for a short period of time. The client receives frequent demonstrations of the completed work and changes in course can be made very quickly. What was important 4 months ago during the original planning session might not be important this week.</p>

<h3>Waterfall Development: DO <span class="caps">NOT WANT</span>!</h3>

<p>Looking back on my last job where waterfall development was the norm, I can&#8217;t imagine how I got anything done. When I really think about it, I wonder how much software I wrote that was &#8220;right&#8221; the first time around. </p>

<p>Just as a quick list, here are some of the things I&#8217;ve grown to hate:</p>


<ul>
<li>Project manager dominated client interaction</li>
<li>Long useless meetings</li>
<li>Finger pointing and blaming and lack of accountability</li>
<li>Waiting a few weeks to find out that your implementation is incorrect</li>
<li>No way to tell what was actually &#8220;done&#8221;</li>
<li>Wasteful spec documents<br />
<br /></li>
</ul>



<h3>This Won&#8217;t Work For <em>My</em> Business</h3>

<p>There are probably a lot of development shops that are humming along using long standing processes based on a waterfall model. A lot of people probably think that they don&#8217;t <em>need</em> to change because &#8220;if it ain&#8217;t broke, don&#8217;t fix it&#8221;. If you&#8217;re not doing agile your shit is broke!</p>

<p>A lot of managers probably think that this system won&#8217;t work with their employees. I can see this being the case if any of the following apply:</p>


<ul>
<li>You don&#8217;t trust your employees</li>
<li>Your employees are morons (or you think they are)</li>
<li>You think you need to operate like the status quo</li>
<li>You can&#8217;t give up your control on the process</li>
<li>Your clients suck<br />
<br /></li>
</ul>



<h3>Agile Works at Integrum</h3>

<p><a href="http://derekneighbors.com">Derek Neighbors</a> has taken the time to produce a couple of videos outlining how agile is put into action at Integrum:</p>


<ul>
<li><a href="http://vimeo.com/3518350">Integrum Agile Workspace</a></li>
<li><a href="http://vimeo.com/3338191">Integrum Project Board</a><br />
<br /></li>
</ul>



<p>Whatever the reason, agile works, like actually <em>works</em>, at <a href="http://www.integrumtech.com">Integrum</a>. Is it the culture? The people? The atmosphere? The expectations? The clients? I can&#8217;t quite put my finger on it, but I can guarantee it&#8217;s not coincidental. </p>]]></content:encoded>
			<wfw:commentRss>http://www.claytonlz.com/index.php/2009/03/why-i-fell-in-love-with-agile/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>It&#8217;s Really All About the People</title>
		<link>http://www.claytonlz.com/index.php/2009/02/its-really-all-about-the-people/</link>
		<comments>http://www.claytonlz.com/index.php/2009/02/its-really-all-about-the-people/#comments</comments>
		<pubDate>Sat, 28 Feb 2009 20:00:09 +0000</pubDate>
		<dc:creator>Clayton</dc:creator>
				<category><![CDATA[Ideas]]></category>
		<category><![CDATA[Integrum]]></category>
		<category><![CDATA[management]]></category>
		<category><![CDATA[people]]></category>
		<category><![CDATA[process]]></category>

		<guid isPermaLink="false">http://www.claytonlz.com/?p=112</guid>
		<description><![CDATA[Last week at "Integrum":http://www.integrumtech.com, as part of our ongoing effort to be _the best_, we had a retrospective/company-wide expectation meeting. We discussed our current processes, and outlined some new things we wanted to do going forward that would help improve everything we do. Even though we talked a lot about project boards and velocities, when it comes down to it, it's really all about the people.]]></description>
			<content:encoded><![CDATA[<p></p><p>Last week at <a href="http://www.integrumtech.com">Integrum</a>, as part of our ongoing effort to be <em>the best</em>, we had a retrospective/company-wide expectation meeting. We discussed our current processes, and outlined some new things we wanted to do going forward that would help improve everything we do. Even though we talked a lot about project boards and velocities, when it comes down to it, it&#8217;s really all about the people.</p>

<h3>How to Earn a Gold Card</h3>

<p>When I was in <a href="http://www.pacificschool.com/">elementary school</a> they had an ongoing school-wide program where students could earn &#8220;Gold Cards&#8221; and be recognized in the monthly assemblies. To earn a Gold Card, one had to be doing something benefiting others, <em>without</em> being asked. It could be something as simple as going out of your way to pickup some trash.</p>

<p>To be sure, a lot of students went around doing very insignificant, but still beneficial, activities all day in hopes of being seen by a teacher. The real takeaway however was the idea that the best type of deed is done where no one is watching. This is a difficult concept for a 4th grader, but the life lesson is outstanding.</p>

<h3>Focus on the People</h3>

<p>We talk a lot at Integrum about our process, our engineering principles, our goals, plans and expectations. But for every project board, velocity graph, client stand-up and piece of acceptance criteria, there is an underlying foundation of high quality people working together to achieve a common goal. Finding trustworthy, forgiving, understanding, motivating, helpful, challenging and comforting people to work with removes so many of the problems that these project management tools aim to solve.</p>

<p>When people live their lives being accountable to themselves and those around them, when they strive to do what&#8217;s right, even when it&#8217;s hard, and when they go above and beyond without the expectation of being praised, they can achieve great things.</p>]]></content:encoded>
			<wfw:commentRss>http://www.claytonlz.com/index.php/2009/02/its-really-all-about-the-people/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Flog as a Surrogate Pair</title>
		<link>http://www.claytonlz.com/index.php/2009/02/flog-as-a-surrogate-pair/</link>
		<comments>http://www.claytonlz.com/index.php/2009/02/flog-as-a-surrogate-pair/#comments</comments>
		<pubDate>Sat, 28 Feb 2009 17:00:06 +0000</pubDate>
		<dc:creator>Clayton</dc:creator>
				<category><![CDATA[Ideas]]></category>
		<category><![CDATA[Ruby On Rails]]></category>
		<category><![CDATA[Flog]]></category>
		<category><![CDATA[pair programming]]></category>

		<guid isPermaLink="false">http://www.claytonlz.com/?p=108</guid>
		<description><![CDATA[I'm a fan of "Flog":http://ruby.sadi.st/Flog.html. I like using it every now and then to make sure that I'm not getting too complex, trying to be clever, or setting myself up for testing failure. Typically these are things I look to my "MILF slaying pair":http://twitter.com/supairish for guidance, but sometimes Flog can be just as good.]]></description>
			<content:encoded><![CDATA[<p></p><p>I&#8217;m a fan of <a href="http://ruby.sadi.st/Flog.html">Flog</a>. I like using it every now and then to make sure that I&#8217;m not getting too complex, trying to be clever, or setting myself up for testing failure. Typically these are things I look to my <a href="http://twitter.com/supairish"><span class="caps">MILF </span>slaying pair</a> for guidance, but sometimes Flog can be just as good.</p>

<p>As a relative newcomer to Ruby, I&#8217;m still in the process of learning to identify code smells, poor design and needless complexity. I&#8217;m sold on the &#8220;readable code is better&#8221; idea so I try to keep that in mind as I&#8217;m implementing some piece of functionality. Over at <a href="http://www.integrumtech.com">Integrum</a>, where I work, we pair on everything each day, save for the occasional sick day. Today I was working alone and was reviewing some code that my pair and I had wrote about a week earlier. It was complex, and I feel that we made a compromise with the idea that the &#8220;ugly&#8221; working code was good enough for what we needed at the time, but it was ugly enough that I remembered to revisit it.</p>

<h3>Flog Builds Confidence</h3>

<p>When I really started looking at the code my intuition told me that it needed to be re-factored. I knew that it could be improved, but I suppose I&#8217;ve been in the pair mindset so heavily since I&#8217;ve been here that I did not immediately jump in and fix things. However, when I ran Flog and saw the comparatively high scores for two complex methods I had been investigating, I had that supportive &#8220;yea I agree&#8221; feeling that I usually get from pairing. Flog helped push me over the threshold, from &#8220;maybe I should change this&#8221; to &#8220;this should be changed&#8221;.</p>

<p>This isn&#8217;t to say that I <em>wouldn&#8217;t</em> have changed it without Flog, but it gave me that extra confidence in knowing that I was on the right track. The direct benefit was that the code is now more readable and easier to test. Indirectly I&#8217;ve added another point to my mental Ruby experience score and will be more inclined to follow my intuition in the future.</p>]]></content:encoded>
			<wfw:commentRss>http://www.claytonlz.com/index.php/2009/02/flog-as-a-surrogate-pair/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>Quit Being Comfortable!</title>
		<link>http://www.claytonlz.com/index.php/2008/10/quit-being-comfortable/</link>
		<comments>http://www.claytonlz.com/index.php/2008/10/quit-being-comfortable/#comments</comments>
		<pubDate>Fri, 03 Oct 2008 08:22:58 +0000</pubDate>
		<dc:creator>Clayton</dc:creator>
				<category><![CDATA[Ideas]]></category>
		<category><![CDATA[Riffs]]></category>
		<category><![CDATA[goals]]></category>
		<category><![CDATA[motivation]]></category>

		<guid isPermaLink="false">http://www.claytonlz.com/?p=56</guid>
		<description><![CDATA[Life treating you nicely? Everything going well at work? Having fun on the weekends? Feeling, comfy? Watch out! Sooner or later that warm blanket sense of security you get from your daily grind will start grinding on your happiness. If you're not careful you'll slip into a dip of comfort and satisfaction, risking little, gaining little. If you're heading towards that dip, or feel like you've been stuck there for a while, fear not, it's easy to shake yourself out of it. Put yourself on the line and increase your expectations.]]></description>
			<content:encoded><![CDATA[<p></p><p>Life treating you nicely? Everything going well at work? Having fun on the weekends? Feeling, comfy? Watch out! Sooner or later that warm blanket sense of security you get from your daily grind will start grinding on your happiness. If you&#8217;re not careful you&#8217;ll slip into a dip of comfort and satisfaction, risking little, gaining little. </p>

<p>If you&#8217;re heading towards that dip, or feel like you&#8217;ve been stuck there for a while, fear not, it&#8217;s easy to shake yourself out of it. Put yourself on the line and increase your expectations.</p>

<p>It&#8217;s easy to fall into comfortable relationships, comfortable careers, comfortable routines and lead a comfortable lifestyle. However, once you&#8217;re in that position you start to wonder where the magic went. You can recall a time when you were excited and things sparked your interest, now, they&#8217;re just boring old routines.</p>

<p>Imagine those exciting times. That time you spent dating, forging that good friendship, interviewing for jobs, meeting the new team, notice a pattern? They were all challenging times when you had to push yourself and risk something. </p>

<p>Risk being ignored, risked be disliked, risked being rejected, risked failing. You had to work hard and <em>make</em> things happen. Look where you are now, no risk, no challenge, no real effort.</p>

<p>Do yourself a favor:</p>


<ul>
<li>Join a local industry group</li>
<li>Give a public presentation</li>
<li>Attend a local lunch gathering</li>
<li>Update your resume</li>
<li>Start a new project</li>
<li>Learn a new skill</li>
<li>Make a new friend</li>
</ul>



<p>Put yourself on the line, risk something, challenge yourself, flirt with the possibility of failure. The feeling you&#8217;ll get from all of this will tear that comfy blanket to shreds.</p>]]></content:encoded>
			<wfw:commentRss>http://www.claytonlz.com/index.php/2008/10/quit-being-comfortable/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Acting on Ideas</title>
		<link>http://www.claytonlz.com/index.php/2008/05/acting-on-ideas/</link>
		<comments>http://www.claytonlz.com/index.php/2008/05/acting-on-ideas/#comments</comments>
		<pubDate>Sat, 24 May 2008 15:30:03 +0000</pubDate>
		<dc:creator>Clayton</dc:creator>
				<category><![CDATA[Ideas]]></category>
		<category><![CDATA[Riffs]]></category>
		<category><![CDATA[motivation]]></category>

		<guid isPermaLink="false">http://www.claytonlz.com/?p=20</guid>
		<description><![CDATA[I've got a lot of ideas for various web applications, online communities and business opportunities. When I started writing these all down about a year ago I figured it would be something I'd stick with temporarily, but lose track of.  Luckily I haven't and I've managed to grow my list from a few concepts to about a dozen very well thought out ideas.]]></description>
			<content:encoded><![CDATA[<p></p><p>I&#8217;ve got a lot of ideas for various web applications, online communities and business opportunities. When I started writing these all down about a year ago I figured it would be something I&#8217;d stick with temporarily, but lose track of.  Luckily I haven&#8217;t and I&#8217;ve managed to grow my list from a few concepts to about a dozen very well thought out ideas.</p>

<p>I really enjoy going through my list every once and a while improving, changing and evaluating my ideas, but I&#8217;ve recently been trying to actually act on them.  I&#8217;ve found that implementing these ideas is by far the most challenging part.  </p>

<p>Maybe I&#8217;m wrong but I think a lot of people feel like they&#8217;re particularly talented in some respect, but they just don&#8217;t have any good ideas.  They&#8217;re great at wood working, but they can&#8217;t come up with an interesting design, so they don&#8217;t start.  My advice to this person would be to come up with <em>some</em> design and build that table. Chances are they&#8217;ll find out that they&#8217;re not as talented as they thought, and they&#8217;ll learn things along the way. Add the benefit of the sense of accomplishment and it&#8217;s a great experience.</p>

<p>My whole point is, if you feel like you&#8217;re in a rut, or you&#8217;re unhappy with your job or you&#8217;re just feeling like you&#8217;re floating through life not really doing anything, grab onto an idea you&#8217;ve got and see it through to the end.  You&#8217;ll be motivated to do it all over again, you&#8217;ll learn something and you will feel good about yourself.</p>]]></content:encoded>
			<wfw:commentRss>http://www.claytonlz.com/index.php/2008/05/acting-on-ideas/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
