<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	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/"
		>
<channel>
	<title>Comments on: Gaming Your Context, or, Methodology by Constraints</title>
	<atom:link href="http://www.redmonk.com/cote/2007/02/19/gaming-your-context-or-methodology-by-constraints/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.redmonk.com/cote/2007/02/19/gaming-your-context-or-methodology-by-constraints/</link>
	<description>One foot in the muck, the other in utopia</description>
	<lastBuildDate>Tue, 22 May 2012 08:23:12 +0000</lastBuildDate>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.2</generator>
	<item>
		<title>By: How to Find that Rock Star Junior Developer? - Programmers Goodies</title>
		<link>http://www.redmonk.com/cote/2007/02/19/gaming-your-context-or-methodology-by-constraints/comment-page-1/#comment-344037</link>
		<dc:creator>How to Find that Rock Star Junior Developer? - Programmers Goodies</dc:creator>
		<pubDate>Tue, 05 Jul 2011 08:39:12 +0000</pubDate>
		<guid isPermaLink="false">http://www.redmonk.com/cote/2007/02/19/gaming-your-context-or-methodology-by-constraints/#comment-344037</guid>
		<description>[...] See http://www.redmonk.com/cote/2007/02/19/gaming-your-context-or-methodology-by-constraints/ for more i...) [...]</description>
		<content:encoded><![CDATA[<p>[...] See <a href="http://www.redmonk.com/cote/2007/02/19/gaming-your-context-or-methodology-by-constraints/" rel="nofollow">http://www.redmonk.com/cote/2007/02/19/gaming-your-context-or-methodology-by-constraints/</a> for more i&#8230;) [...]</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Bill Higgins</title>
		<link>http://www.redmonk.com/cote/2007/02/19/gaming-your-context-or-methodology-by-constraints/comment-page-1/#comment-8785</link>
		<dc:creator>Bill Higgins</dc:creator>
		<pubDate>Tue, 20 Feb 2007 14:36:08 +0000</pubDate>
		<guid isPermaLink="false">http://www.redmonk.com/cote/2007/02/19/gaming-your-context-or-methodology-by-constraints/#comment-8785</guid>
		<description>Rick said: 
&gt; I&#8217;d add one more tweak to the leadership 
&gt; picture - talented, right intentioned, 
&gt; but not aware of something new. 
 
Good point Rick.  I also think that this is an important attribute for all team members, not just leaders. 
 
One of the criteria I use when hiring developers is: do they read technical blogs?  I&#039;ve found that people who read technical blogs tend to be much more aware of emerging trends and technologies - as you said, not to chase every buzzword but to have a general awareness of what&#039;s happening as an input to identifying and pursuing promising emerging technologies. </description>
		<content:encoded><![CDATA[<p>Rick said:</p>
<p>&gt; I&rsquo;d add one more tweak to the leadership</p>
<p>&gt; picture &#8211; talented, right intentioned,</p>
<p>&gt; but not aware of something new.</p>
<p>Good point Rick.  I also think that this is an important attribute for all team members, not just leaders.</p>
<p>One of the criteria I use when hiring developers is: do they read technical blogs?  I&#039;ve found that people who read technical blogs tend to be much more aware of emerging trends and technologies &#8211; as you said, not to chase every buzzword but to have a general awareness of what&#039;s happening as an input to identifying and pursuing promising emerging technologies. </p>
]]></content:encoded>
	</item>
	<item>
		<title>By: rick gregory</title>
		<link>http://www.redmonk.com/cote/2007/02/19/gaming-your-context-or-methodology-by-constraints/comment-page-1/#comment-8780</link>
		<dc:creator>rick gregory</dc:creator>
		<pubDate>Tue, 20 Feb 2007 13:52:47 +0000</pubDate>
		<guid isPermaLink="false">http://www.redmonk.com/cote/2007/02/19/gaming-your-context-or-methodology-by-constraints/#comment-8780</guid>
		<description>@Daniel: mmm... cookies... 
 
@Cote: our comments crossed in the ether - I just read your reply to Bill... all is right with the universe again. :) 
 
@Bill: I&#039;d add one more tweak to the leadership picture - talented, right intentioned, but not aware of something new. Since there are multiple forms of the Right Thing, they may settle into something that is working well. The PC can act like a scout - they&#039;re more likely to be aware of leading edge ideas, techniques, etc. A good leadership will be receptive, even if they choose not to adopt every suggestion. </description>
		<content:encoded><![CDATA[<p>@Daniel: mmm&#8230; cookies&#8230;</p>
<p>@Cote: our comments crossed in the ether &#8211; I just read your reply to Bill&#8230; all is right with the universe again. :)</p>
<p>@Bill: I&#039;d add one more tweak to the leadership picture &#8211; talented, right intentioned, but not aware of something new. Since there are multiple forms of the Right Thing, they may settle into something that is working well. The PC can act like a scout &#8211; they&#039;re more likely to be aware of leading edge ideas, techniques, etc. A good leadership will be receptive, even if they choose not to adopt every suggestion. </p>
]]></content:encoded>
	</item>
	<item>
		<title>By: links for 2007-02-20 &#187; SDLC Blog</title>
		<link>http://www.redmonk.com/cote/2007/02/19/gaming-your-context-or-methodology-by-constraints/comment-page-1/#comment-8570</link>
		<dc:creator>links for 2007-02-20 &#187; SDLC Blog</dc:creator>
		<pubDate>Tue, 20 Feb 2007 00:37:42 +0000</pubDate>
		<guid isPermaLink="false">http://www.redmonk.com/cote/2007/02/19/gaming-your-context-or-methodology-by-constraints/#comment-8570</guid>
		<description>[...] People Over Process Â» Blog Archive Â» Gaming Your Context, or, Methodology by Constraints Discussion about Passionate Coders: Iâ€™ve seen the software efforts of passionate coders wasted when the rest of the organization was not as carefully optimized as the writing of the software (tags: passionate coders leadership iterative organization) [...]</description>
		<content:encoded><![CDATA[<p>[...] People Over Process Â» Blog Archive Â» Gaming Your Context, or, Methodology by Constraints Discussion about Passionate Coders: Iâ€™ve seen the software efforts of passionate coders wasted when the rest of the organization was not as carefully optimized as the writing of the software (tags: passionate coders leadership iterative organization) [...]</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: cote</title>
		<link>http://www.redmonk.com/cote/2007/02/19/gaming-your-context-or-methodology-by-constraints/comment-page-1/#comment-8531</link>
		<dc:creator>cote</dc:creator>
		<pubDate>Mon, 19 Feb 2007 21:18:30 +0000</pubDate>
		<guid isPermaLink="false">http://www.redmonk.com/cote/2007/02/19/gaming-your-context-or-methodology-by-constraints/#comment-8531</guid>
		<description>Rick: yup, that&#039;s the right sentiment. And, indeed, as I tried to clarify in the second response to Bill, this whole doing the right thing crutch (on my part) was more an intention of spending the energy and risking the back-lash to suggest and work for change. The larger point being that a company can&#039;t depend on every employee, forever battling to change. Instead, software organizations need to make it part of the culture and welcome. 

Again, totally obvious in an intuitive sort of way, but in my experience, hard as hell to actually implement.</description>
		<content:encoded><![CDATA[<p>Rick: yup, that&#8217;s the right sentiment. And, indeed, as I tried to clarify in the second response to Bill, this whole doing the right thing crutch (on my part) was more an intention of spending the energy and risking the back-lash to suggest and work for change. The larger point being that a company can&#8217;t depend on every employee, forever battling to change. Instead, software organizations need to make it part of the culture and welcome. </p>
<p>Again, totally obvious in an intuitive sort of way, but in my experience, hard as hell to actually implement.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Bill Higgins</title>
		<link>http://www.redmonk.com/cote/2007/02/19/gaming-your-context-or-methodology-by-constraints/comment-page-1/#comment-8521</link>
		<dc:creator>Bill Higgins</dc:creator>
		<pubDate>Mon, 19 Feb 2007 20:51:37 +0000</pubDate>
		<guid isPermaLink="false">http://www.redmonk.com/cote/2007/02/19/gaming-your-context-or-methodology-by-constraints/#comment-8521</guid>
		<description>I actually disagree with this.  If you work in an organization that does frequent iterations, it&#039;s often better to do something that&#039;s fragile but will allow you to get something working, and then circle back to make the design more robust later.

Oftentimes the motivation for this is that you&#039;re working on a feature and there are too many unknown unknowns to really make informed design decisions, so the trick is to quickly work through a first iteration, kludges and all, gain understanding and experience from the effort, and use this new understanding to make an informed design/implementation decision later.

The risk of &#039;doing the right thing&#039; in the face of unknown unknowns is that is that if you end up re-defining the problem you&#039;re trying to solve (as you often do upon reflection), your fast/robust/secure  solution now lacks an even more important property ... relevance.

Once you decide that indeed you&#039;re solving the right problem and you understand the key design constraints - usually after 2-4 iterations, it&#039;s a good idea to do the right thing and make your design fast/robust/secure.

PS - If any of your iterations span a release to customers, then of course the equation shifts back towards &#039;doing the right thing&#039;, even if you have to chuck that extra work later, esp. w/r/t security.</description>
		<content:encoded><![CDATA[<p>I actually disagree with this.  If you work in an organization that does frequent iterations, it&#8217;s often better to do something that&#8217;s fragile but will allow you to get something working, and then circle back to make the design more robust later.</p>
<p>Oftentimes the motivation for this is that you&#8217;re working on a feature and there are too many unknown unknowns to really make informed design decisions, so the trick is to quickly work through a first iteration, kludges and all, gain understanding and experience from the effort, and use this new understanding to make an informed design/implementation decision later.</p>
<p>The risk of &#8216;doing the right thing&#8217; in the face of unknown unknowns is that is that if you end up re-defining the problem you&#8217;re trying to solve (as you often do upon reflection), your fast/robust/secure  solution now lacks an even more important property &#8230; relevance.</p>
<p>Once you decide that indeed you&#8217;re solving the right problem and you understand the key design constraints &#8211; usually after 2-4 iterations, it&#8217;s a good idea to do the right thing and make your design fast/robust/secure.</p>
<p>PS &#8211; If any of your iterations span a release to customers, then of course the equation shifts back towards &#8216;doing the right thing&#8217;, even if you have to chuck that extra work later, esp. w/r/t security.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: cote</title>
		<link>http://www.redmonk.com/cote/2007/02/19/gaming-your-context-or-methodology-by-constraints/comment-page-1/#comment-8508</link>
		<dc:creator>cote</dc:creator>
		<pubDate>Mon, 19 Feb 2007 19:55:28 +0000</pubDate>
		<guid isPermaLink="false">http://www.redmonk.com/cote/2007/02/19/gaming-your-context-or-methodology-by-constraints/#comment-8508</guid>
		<description>Hah! You caught my laziness: tragically fitting to the point.

What I meant was putting in the time to do the something that would take more effort but be a better solution when there was a easier solution available. Being quality instead of being cheap&quot; and getting home on time.</description>
		<content:encoded><![CDATA[<p>Hah! You caught my laziness: tragically fitting to the point.</p>
<p>What I meant was putting in the time to do the something that would take more effort but be a better solution when there was a easier solution available. Being quality instead of being cheap&#8221; and getting home on time.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Bill Higgins</title>
		<link>http://www.redmonk.com/cote/2007/02/19/gaming-your-context-or-methodology-by-constraints/comment-page-1/#comment-8542</link>
		<dc:creator>Bill Higgins</dc:creator>
		<pubDate>Mon, 19 Feb 2007 15:54:19 +0000</pubDate>
		<guid isPermaLink="false">http://www.redmonk.com/cote/2007/02/19/gaming-your-context-or-methodology-by-constraints/#comment-8542</guid>
		<description>Re: effecting change, I think it starts with getting the right leaders in place.  If a project or organization has bad leadership, and you&#039;re not in a position to change that leadership, then it&#039;s better to leave than try to change it. 
 
I categorize bad leadership in two ways: 
 
- bad intentions (e.g. goal is individual acknowledgment and power hoarding, CYA and blame if something goes wrong) 
- ineptitude (e.g. good intentions but don&#039;t have the mental, emotional, or technical talent to succeed) 
 
In the first case, it&#039;s probably impossible to effect change, in the second case it may be possible but it could take a very long time. 
 
But if you have good leadership (talented + right intentioned), you&#039;re probably doing a lot of the right things already, and the organization will be amenable to change because you&#039;re intent on doing the right thing and also you&#039;re smart and confident enough to  respond positively when one of your employees (or you yourself) spot suboptimal parts of your process. 
 
So I guess my philosophy is if you&#039;re smart enough to recognize the attributes of a healthy software development organization and you&#039;re not currently in a healthy software dev org, quit your job and go to a healthy env, because it&#039;s a futile exercise to change an org lead by folks who are either too incapable or ill-intentioned to have already fixed the org. 
 
Note that a highly productive development organization doesn&#039;t necessarily mean you work 80 hours a week.  I work for what I consider to be a very productive team and heck, I still find time for the occasional blog comment ;-) </description>
		<content:encoded><![CDATA[<p>Re: effecting change, I think it starts with getting the right leaders in place.  If a project or organization has bad leadership, and you&#039;re not in a position to change that leadership, then it&#039;s better to leave than try to change it.</p>
<p>I categorize bad leadership in two ways:</p>
<p>- bad intentions (e.g. goal is individual acknowledgment and power hoarding, CYA and blame if something goes wrong)</p>
<p>- ineptitude (e.g. good intentions but don&#039;t have the mental, emotional, or technical talent to succeed)</p>
<p>In the first case, it&#039;s probably impossible to effect change, in the second case it may be possible but it could take a very long time.</p>
<p>But if you have good leadership (talented + right intentioned), you&#039;re probably doing a lot of the right things already, and the organization will be amenable to change because you&#039;re intent on doing the right thing and also you&#039;re smart and confident enough to  respond positively when one of your employees (or you yourself) spot suboptimal parts of your process.</p>
<p>So I guess my philosophy is if you&#039;re smart enough to recognize the attributes of a healthy software development organization and you&#039;re not currently in a healthy software dev org, quit your job and go to a healthy env, because it&#039;s a futile exercise to change an org lead by folks who are either too incapable or ill-intentioned to have already fixed the org.</p>
<p>Note that a highly productive development organization doesn&#039;t necessarily mean you work 80 hours a week.  I work for what I consider to be a very productive team and heck, I still find time for the occasional blog comment ;-) </p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Daniel Edward Kim</title>
		<link>http://www.redmonk.com/cote/2007/02/19/gaming-your-context-or-methodology-by-constraints/comment-page-1/#comment-8540</link>
		<dc:creator>Daniel Edward Kim</dc:creator>
		<pubDate>Mon, 19 Feb 2007 15:49:39 +0000</pubDate>
		<guid isPermaLink="false">http://www.redmonk.com/cote/2007/02/19/gaming-your-context-or-methodology-by-constraints/#comment-8540</guid>
		<description>Passionate Coders (herein referred to as PCs) are valuable not for their direct output but the effect they have on the rest of the team. There is something magical about working next to one of these PCs because they have a skill and methodology that&#039;s only gained from being OCD. With proper mentoring (and I would further posit that all PCs strive to be good mentors, all others are poseurs&#8230;) a &quot;normal&quot; coder can better leverage his &quot;40 hours and a mule&quot;. What&#039;s unfortunate is that management tends to view PCs only terms of their direct output (&quot;Wow! Billy wrote the whole accounting module in one night with only a toothbrush and a can of jolt! Imagine what we could do if we had an army of these!!&quot;). As I can personally attest to, working with somebody brilliant can have profound influences on the way you view not only the project but sometimes the career. The PCs is like the raisons in a raison oatmeal cookie. It&#8217;s counter productive to make your cookie 100% out of raisons (and defies the laws of cookie physics) but it&#8217;s nice to have one or two for &quot;spice&quot; </description>
		<content:encoded><![CDATA[<p>Passionate Coders (herein referred to as PCs) are valuable not for their direct output but the effect they have on the rest of the team. There is something magical about working next to one of these PCs because they have a skill and methodology that&#039;s only gained from being OCD. With proper mentoring (and I would further posit that all PCs strive to be good mentors, all others are poseurs&hellip;) a &quot;normal&quot; coder can better leverage his &quot;40 hours and a mule&quot;. What&#039;s unfortunate is that management tends to view PCs only terms of their direct output (&quot;Wow! Billy wrote the whole accounting module in one night with only a toothbrush and a can of jolt! Imagine what we could do if we had an army of these!!&quot;). As I can personally attest to, working with somebody brilliant can have profound influences on the way you view not only the project but sometimes the career. The PCs is like the raisons in a raison oatmeal cookie. It&rsquo;s counter productive to make your cookie 100% out of raisons (and defies the laws of cookie physics) but it&rsquo;s nice to have one or two for &quot;spice&quot; </p>
]]></content:encoded>
	</item>
	<item>
		<title>By: rick gregory</title>
		<link>http://www.redmonk.com/cote/2007/02/19/gaming-your-context-or-methodology-by-constraints/comment-page-1/#comment-8527</link>
		<dc:creator>rick gregory</dc:creator>
		<pubDate>Mon, 19 Feb 2007 15:09:47 +0000</pubDate>
		<guid isPermaLink="false">http://www.redmonk.com/cote/2007/02/19/gaming-your-context-or-methodology-by-constraints/#comment-8527</guid>
		<description>This still puts the Passionate Coder on a pedestal as if that&#039;s the holy grail but sometimes we settle for less. That&#039;s wrong I think. It ignores that the team is the context - the PC isn&#039;t a world unto him/herself - they are likely part of a team and that team may be depending on them. So, when they chase some obscure bug that will never affect a real user of the software and slip other tasks that people are depending on, they&#039;re NOT &quot;doing the right thing&quot; they&#039;re indulging their perfectionist side. I&#039;d much rather see a coder with the ability to note that bug, finish stuff that the team needs and then fix it later (or to be able to explain why it actually does need to be fixed NOW).  
 
Let&#039;s stop putting the perfectionist obsessive at the top of the pyramid... they can be valuable, and they will often make a product much better over time, but they&#039;re not some ultimate standard - they&#039;re simply one style of coder. Useful, perhaps critical in some cases, but to elevate them above the rest of the team is an affront to people who may care very much about their code and their product... but who chose not to stay up until 3am fixing the most obscure bug ever. </description>
		<content:encoded><![CDATA[<p>This still puts the Passionate Coder on a pedestal as if that&#039;s the holy grail but sometimes we settle for less. That&#039;s wrong I think. It ignores that the team is the context &#8211; the PC isn&#039;t a world unto him/herself &#8211; they are likely part of a team and that team may be depending on them. So, when they chase some obscure bug that will never affect a real user of the software and slip other tasks that people are depending on, they&#039;re NOT &quot;doing the right thing&quot; they&#039;re indulging their perfectionist side. I&#039;d much rather see a coder with the ability to note that bug, finish stuff that the team needs and then fix it later (or to be able to explain why it actually does need to be fixed NOW). </p>
<p>Let&#039;s stop putting the perfectionist obsessive at the top of the pyramid&#8230; they can be valuable, and they will often make a product much better over time, but they&#039;re not some ultimate standard &#8211; they&#039;re simply one style of coder. Useful, perhaps critical in some cases, but to elevate them above the rest of the team is an affront to people who may care very much about their code and their product&#8230; but who chose not to stay up until 3am fixing the most obscure bug ever. </p>
]]></content:encoded>
	</item>
</channel>
</rss>

