<?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>yep, that's me &#187; Software Development</title>
	<atom:link href="http://www.yepthatsme.com/category/software-dev/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.yepthatsme.com</link>
	<description>the craft of software development, free/open source software advocacy, and the rest of life</description>
	<lastBuildDate>Wed, 03 Feb 2010 13:39:53 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.9.2</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>The Agile Business Analyst</title>
		<link>http://www.yepthatsme.com/2010/02/03/the-agile-business-analyst/</link>
		<comments>http://www.yepthatsme.com/2010/02/03/the-agile-business-analyst/#comments</comments>
		<pubDate>Wed, 03 Feb 2010 12:55:54 +0000</pubDate>
		<dc:creator>Barry Hawkins</dc:creator>
				<category><![CDATA[Agile]]></category>

		<guid isPermaLink="false">http://www.yepthatsme.com/?p=333</guid>
		<description><![CDATA[Agile Business Analysts?
I have recently been fleshing out my thoughts on the role of business analysts in an Agile team.  This is something I have historically addressed on a case-by-case basis with clients, but when thinking about it last week at a client site, I realized that I do have a general take on [...]]]></description>
			<content:encoded><![CDATA[<h1>Agile Business Analysts?</h1>
<p>I have recently been fleshing out my thoughts on the role of business analysts in an Agile team.  This is something I have historically addressed on a case-by-case basis with clients, but when thinking about it last week at a client site, I realized that I do have a general take on how the role and responsibilities of a business analyst change when a group moves to using an Agile process.  Per the usual, I&#8217;ll be using Scrum as the example process where needed.</p>
<h1>The Classical Roles</h1>
<p>Historically the business analyst has had two primary roles.  In a process where cross-functional communication and collaboration are minimized, these roles are essential.  What little communication that takes place between the business and the software development teams purporting to serve them passes almost exclusively through one or more business analysts.  I view the business analyst in a phased development approach as having two roles; Translator and Gatekeeper.</p>
<h2>The Translator</h2>
<p>The business analyst is primarily tasked with taking the needs of the business and translating them into a written document that is then handed to the software developers and testers.  This role&#8217;s necessity is based upon some fundamental assumptions.  First, programmers and testers are on the whole, too socially retarded to actually talk to the business persons and find out what they want.  Second, the business is primarily viewed as being unable to focus its thought long enough to tell the programmers and testers what they need.  Since a key value of an Agile approach to software development is to have individuals and their interactions be the driving force rather than processes an tools (see <a href="http://agilemanifesto.org">The Agile Manifesto</a>), the obliteration of this role is a primary objective.</p>
<h2>The Gatekeeper</h2>
<p>Business analysts are also viewed the gatekeepers for requirements in classical, phased software process approaches.  This is a somewhat unfair role, since they rarely have the authority to prevent business or technology changes, like a meter maid trying to stop an armed terrorist.  It&#8217;s even more unnatural since change always happens, so it&#8217;s like the meter maid being assigned to an anti-terrorist unit with no additional training, authority, or weapons.</p>
<h1>The Agile Roles</h1>
<p>Some of the more extreme practitioners of Agile methodologies say that business analysts have no role in an Agile team.  I disagree, provided the role of the business analyst is allowed to evolve.  The roles I&#8217;ve seen them take on as valuable members of an Agile team are Facilitator, Historian, and Journalist.</p>
<h2>The Facilitator</h2>
<p>A high degree of collaboration and interaction take place between business and technology in Agile Software Development.  The business analyst can serve a critical need in these interactions, facilitating communication between business and technology and making sure that critical areas are being covered in an interaction.  This can be a more fulfilling experience for an analyst, since they often talk to one side, then go to other to pass on the information, all the while thinking, &#8220;<em>Man, this would be simpler if you were both in the room with me at the same time.</em>&#8220;</p>
<h2>The Historian</h2>
<p>The business analyst&#8217;s documentation skill is excellent for capturing significant information that often gets lost in a team of purely technical people.  I have seen some great uses of business analysts in this area.  One is to document the system that the team actually builds (not the big, up-front imagined system that is covered in a phased design stage).  Another is capturing key technological and architectural decisions and the context in which they were made, so that when a group revisits certain items asking, &#8220;Why in the world did we decide to do <em>that</em>?&#8221;, they have the means to be reminded or informed why a particular path was chosen.</p>
<h2>The Journalist</h2>
<p>The business analyst can also be the team&#8217;s journalist, making sure the latest information makes it out to all interested parties.  One creative approach I&#8217;ve seen at a client site is a business analyst who has a project blog.  He posts entries after each meeting between the business and technology, documenting what new user stories were created (even scans in the story cards!), a summary of the discussions held, and documents any key decisions that might have been made.  Oh, and he provides an excellent executive summary at the top that&#8217;s suitable for anyone&#8217;s review, right up to the CEO.  Tell me you wouldn&#8217;t love to have that guy in your Agile team.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.yepthatsme.com/2010/02/03/the-agile-business-analyst/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>More Expensive and Complicated Equals Better: Carseats and Software</title>
		<link>http://www.yepthatsme.com/2009/10/08/more-expensive-equals-better/</link>
		<comments>http://www.yepthatsme.com/2009/10/08/more-expensive-equals-better/#comments</comments>
		<pubDate>Thu, 08 Oct 2009 15:47:33 +0000</pubDate>
		<dc:creator>Barry Hawkins</dc:creator>
				<category><![CDATA[.Net]]></category>
		<category><![CDATA[Agile]]></category>
		<category><![CDATA[Java]]></category>
		<category><![CDATA[Python]]></category>
		<category><![CDATA[Scrum]]></category>
		<category><![CDATA[Software Development]]></category>

		<guid isPermaLink="false">http://www.yepthatsme.com/?p=304</guid>
		<description><![CDATA[<p>So I <em>finally</em> got around to checking out the <a href="http://ted.com">TED</a> site; I've quickly become a fan.  One of the first talks I watched was by <a href="http://www.ted.com/talks/steven_levitt_on_child_carseats.html">Steven Levitt's child carseats talk</a>.  Both the talk and the feedback comments on the TED site reminded me of things I see in software development.</p>]]></description>
			<content:encoded><![CDATA[<p>So I <em>finally</em> got around to checking out the <a href="http://ted.com">TED</a> site; I&#8217;ve quickly become a fan.  One of the first talks I watched was <a href="http://www.ted.com/talks/steven_levitt_on_child_carseats.html">Steven Levitt&#8217;s child carseats talk</a>.  Both the talk and the feedback comments on the TED site reminded me of things I see in software development.  Here&#8217;s the video if you haven&#8217;t seen it.</p>
<div align="center">
<object width="334" height="326"><param name="movie" value="http://video.ted.com/assets/player/swf/EmbedPlayer.swf"></param><param name="allowFullScreen" value="true" /><param name="wmode" value="transparent"></param><param name="bgColor" value="#ffffff"></param><param name="flashvars" value="vu=http://video.ted.com/talks/dynamic/StevenLevitt_2005G-medium.flv&#038;su=http://images.ted.com/images/ted/tedindex/embed-posters/StevenLevitt-2005G.embed_thumbnail.jpg&#038;vw=320&#038;vh=240&#038;ap=0&#038;ti=30&#038;introDuration=16500&#038;adDuration=4000&#038;postAdDuration=2000&#038;adKeys=talk=steven_levitt_on_child_carseats;year=2005;theme=unconventional_explanations;theme=presentation_innovation;theme=how_the_mind_works;theme=not_business_as_usual;event=TEDGlobal+2005;&#038;preAdTag=tconf.ted/embed;tile=1;sz=512x288;" /><embed src="http://video.ted.com/assets/player/swf/EmbedPlayer.swf" pluginspace="http://www.macromedia.com/go/getflashplayer" type="application/x-shockwave-flash" wmode="transparent" bgColor="#ffffff" width="334" height="326" allowFullScreen="true" flashvars="vu=http://video.ted.com/talks/dynamic/StevenLevitt_2005G-medium.flv&#038;su=http://images.ted.com/images/ted/tedindex/embed-posters/StevenLevitt-2005G.embed_thumbnail.jpg&#038;vw=320&#038;vh=240&#038;ap=0&#038;ti=30&#038;introDuration=16500&#038;adDuration=4000&#038;postAdDuration=2000&#038;adKeys=talk=steven_levitt_on_child_carseats;year=2005;theme=unconventional_explanations;theme=presentation_innovation;theme=how_the_mind_works;theme=not_business_as_usual;event=TEDGlobal+2005;"></embed></object></div>
<p>Steven Levitt shows in his talk how 30 years of data on car crash fatalities imply that  carseats do not outperform regular seatbelts for children ages 2 and up.  Anyone who has a child or grandchildren will probably bristle at hearing that; as the father of a pre-schooler, it certainly gave me pause.  We spent no small amount of time and decent chunk of money in selecting carseats for our child, thinking we had done our best to ensure our child&#8217;s safety.  For that matter, it would be illegal for us not to have done so.  To see a decent-sized data sample suggesting my child would be better off in a seatbelt at her age is rather unsettling.</p>
<p>By the end of the talk, I took away these observations:</p>
<ul>
<li>This great swath of an initiative was started by a very small yet vocal group of proponents whose assertions received little scrutiny.</li>
<li>A solution tailored to the specific constraints of a portion of the audience has been put forth as the de facto solution for the entire audience.</li>
<li>There is an ongoing assumption that the more complicated and costly solution must be superior to the simpler, existing solution.</li>
<li>Cursory evaluation of a data set without rigorous attention to mitigating factors can lead to wildly inaccurate conclusions.</li>
<li>The acceptability of a given solution is often tested against a narrow band of the overall criteria, and the solution is often optimized to pass that test.</li>
<li>The likelihood that people will continue to choose the more expensive and complicated solution despite any data is high.</li>
</ul>
<p>So, software professionals, does any of that sound familiar?  It reminds me of numerous initiatives over the years that have led us inexorably to the software productivity morass we have slogged through for years now.  I suppose the most heinous case study in my own experience would be J2EE and the insistence that it was <em>the</em> solution that any reasonable business application would choose for a platform.  (Before you .Net folks jump on that one, DCOM and later the .Net enterprise stack was much the same.)  And who hasn&#8217;t read a benchmark or white paper with seemingly incontrovertible data depicted in highly-polished graphics insisting that Product Y is the one solution to address them all?</p>
<p>I noticed that there were comments below the video on its <a href="http://www.ted.com/talks/steven_levitt_on_child_carseats.html">page at the TED site</a>, largely because the negative verbiage of the topmost comment jumped out at me.  I took the time to read through them all (there were 36 at the time of this writing), and to my amusement, I saw parallels between them and how people react to questioning and examining our existing practices and means of developing software.  See if any of these strike a chord:</p>
<ul>
<li>The idea that what we&#8217;re doing might be wrong unsettles some people, and their response is often ferocious and irrational defense of the status quo.</li>
<li>Those who have a financial stake in the current mode of operation are less likely to be open to scrutinizing it.</li>
<li>There will be some people whose primary objection to the scrutiny is that they didn&#8217;t think of doing it first; these people will sometimes attack the person questioning things on the grounds that it&#8217;s all a selfish, attention-mongering endeavor.</li>
<li>There are some people who will also be open to examining why and how we&#8217;re doing things; whether they conclude the same thing or not, they are a welcome presence among the larger mass of those who ardently refuse to entertain the possibility of a need to change.</li>
</ul>
<p>In recent years I&#8217;ve been greatly encouraged by the willingness of companies to question whether or not the heavyweight frameworks and technology stacks are what they should be using.  Helping companies slough off high-ceremony processes in favor of right-sized process that focuses on delivering the right software in a timely manner has been some of the more rewarding work I&#8217;ve done the past several years.  I think we have an encouraging number of people in the industry who are challenging the &#8220;more expensive and complicated always equals better&#8221; mantra.</p>
<p>For the brave individuals willing to put these questions to the community at large, I hope you find some comfort in knowing that the resistance and rejection you will encounter is a thing to be expected; you are not alone in that respect.  Here&#8217;s hoping we continue to be open to self-examination, no matter what emotional responses it might provoke or what fear of the future it may stir up within us.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.yepthatsme.com/2009/10/08/more-expensive-equals-better/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Just When a Wizard Would Have Been Most Useful: Coaching versus Contracting</title>
		<link>http://www.yepthatsme.com/2009/10/02/just-when-a-wizard-would-have-been-most-useful/</link>
		<comments>http://www.yepthatsme.com/2009/10/02/just-when-a-wizard-would-have-been-most-useful/#comments</comments>
		<pubDate>Fri, 02 Oct 2009 21:12:08 +0000</pubDate>
		<dc:creator>Barry Hawkins</dc:creator>
				<category><![CDATA[Agile]]></category>
		<category><![CDATA[Scrum]]></category>
		<category><![CDATA[Software Development]]></category>

		<guid isPermaLink="false">http://www.yepthatsme.com/?p=285</guid>
		<description><![CDATA[<p>I am very fond of the works of J.R.R. Tolkien; it would not surprise me to find that many of you recognize these words from the second chapter of The Hobbit titled "Roast Mutton".  It occurred to me recently that there are parallels between Gandalf's role in The Hobbit and that of an Agile coach.</p>]]></description>
			<content:encoded><![CDATA[<blockquote>
<p>&#8230;Then they stopped, and Thorin muttered something about supper, &#8220;and where shall we get a dry patch to sleep on?&#8221;</p>
<p>Not until then did they notice Gandalf was missing.  So far he had come all the way with them, never saying if he was in the adventure or merely keeping them company for a while.  He had eaten most, talked most, and laughed most.  But now he simply was not there at all!</p>
<p>&#8220;Just when a wizard would have been most useful, too,&#8221; groaned Dori and Nori (who shared the hobbit&#8217;s views about regular meals, plenty and often).</p>
<p align="right" >- J.R.R. Tokien, <em>The Hobbit</em></p>
</blockquote>
<p>I am very fond of the works of J.R.R. Tolkien; it would not surprise me to find that many of you recognize these words from the second chapter of The Hobbit titled &#8220;Roast Mutton&#8221;.  It occurred to me recently that there are parallels between Gandalf&#8217;s role in The Hobbit and that of an Agile coach.  Now, before my fellow Tolkien enthusiasts leap on their keyboards, bear with me on this.  Know that I am not saying an Agile coach is on par with a wizard (OK, with one of the Istari sent by the Valar, but let&#8217;s table that so as not to scare off the normal folk, alright?); that should be enough to calm you down.</p>
<p>In the excerpt from The Hobbit at the top of the page, Bilbo and the dwarves have run into their first predicament.  Note that it&#8217;s not a particularly difficult situation; they just need to find shelter and partake of some food.  Fire would be nice, too, if it could be managed.  (Mind you, it&#8217;s the first day of their journey; they set off mere hours ago fully provisioned and riding on ponies.)</p>
<p>It isn&#8217;t very long before the fledgling group finds itself not only without shelter and food, but in the hands of three rather nasty trolls who are deciding how best to eat the entire group.  Gandalf returns once things have gotten out of control, and with some subtle adjustments to the situation, the crisis is averted.</p>
<p>Could Gandalf have come back sooner and spared them this entire experience?  Perhaps, but in their struggle a few key things happened.  First, the group had to work out how to assess tasks at hand and appropriately delegate.  To their credit, that effort was partially successful.  The most skilled firestarters were assigned to that task, one of the keen-eyed dwarves was assigned to be the lookout.  Second, they gathered some field experience that led to the establishment of improved practices, i.e. don&#8217;t leave the ponies laden with packs when you make camp, particularly if it&#8217;s all your food.  (They lost most of their food that night when the pony carrying it bolted and ran straight into a nearby river later that night.)</p>
<p>Third, Bilbo Baggins was called upon to perform his first task as burglar, albeit a fool&#8217;s errand that landed them in the troll predicament.  While Bilbo was wildly under-equipped for his job, he managed to work through it. That experience began a developmental journey that would prepare him for the great things that would be expected of him later on.</p>
<p>This was not Gandalf&#8217;s first adventure, nor was it the first group of people he needed to equip and challenge in order to develop them to a point that they could accomplish their goal.  At this point, he&#8217;s been in Middle-Earth just shy of 2,000 years.  He would have been more than capable of walking them through their entire journey, but to what end?</p>
<p>Agile coaching is a discipline that aims to help teams develop their own use of methodologies like Scrum and cross-methodology practices like testing, user stories, etc.  This means equipping teams with just enough information to strike out on their own for a bit, then letting them run with it rather than dazzle them with one&#8217;s own mastery so as to appear like the indispensable demigod.  Until people struggle with the terse maxims of Agile Software Development, they cannot internalize them.  And when the wizard is always around, why bother struggling?</p>
<p>One of my greatest frustrations as an Agile coach is how few companies are willing to take a coaching approach with their Agile adoption.  They want you to come in and be the demigod as a full-time contractor.  Sure, there are fiscal, political, and seemingly practical reasons that they will cite; I chalk most of them up to being excuses for a lack of willingness to embrace what it would take to face the hard task of nurturing what you have.  It&#8217;s seemingly easier to just throw more money at more bodies and hope that somehow things will all work out, and surely if you can stumble upon some superstar to wrangle the mess, you&#8217;ll eventually be able to browbeat them into becoming a full-time employee.</p>
<p>Don&#8217;t get me wrong; in some ways, I benefit from this dysfunction.  From a selfish business standpoint, having a single full-time client is certainly easier than juggling multiple concurrent clients and their schedules.  As far as actually accomplishing the aim of my business, however, I think it hinders the mission.</p>
<p>One of my aims in working with companies is to be a coach despite being brought in as a contractor.  It&#8217;s certainly possible, though it is more challenging.  There&#8217;s not that natural separation of the coach from the team that forces them to take up the mantle on their own.  Few things in my work are more rewarding than having a developer come to me and say, &#8220;I wasn&#8217;t really sure this Agile stuff could work, but now, after going through all this, I wouldn&#8217;t want to go back to the old way of doing things.&#8221;</p>
<p>Much later in the journey of the hobbit and his dwarf companions, Bilbo is again called upon for a challenging task.  His response makes me think Gandalf&#8217;s approach has worked:</p>
<blockquote>
<p>&#8220;&#8230;Perhaps I have begun to trust my luck more than I used to in the old days&#8221; &#8211; he meant last spring before he left his own house, but it seemed centuries ago &#8211; &#8220;but anyway I think I will go and have a peep at once and get it over.  Now who is coming with me?&#8221;</p>
<p align="right" >- J.R.R. Tokien, <em>The Hobbit</em></p>
</blockquote>
<p>Here&#8217;s hoping more people will be willing to embrace the challenging, messy, and altogether beneficial task of equipping teams and allowing them to struggle when necessary, even if it means the occasional scuffle with trolls.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.yepthatsme.com/2009/10/02/just-when-a-wizard-would-have-been-most-useful/feed/</wfw:commentRss>
		<slash:comments>4</slash:comments>
		</item>
		<item>
		<title>First 97 Things book is out, and I am in it</title>
		<link>http://www.yepthatsme.com/2009/02/25/first-97-things-book-is-out-and-i-am-in-it/</link>
		<comments>http://www.yepthatsme.com/2009/02/25/first-97-things-book-is-out-and-i-am-in-it/#comments</comments>
		<pubDate>Wed, 25 Feb 2009 14:56:37 +0000</pubDate>
		<dc:creator>Barry Hawkins</dc:creator>
				<category><![CDATA[Software Development]]></category>

		<guid isPermaLink="false">http://www.yepthatsme.com/?p=272</guid>
		<description><![CDATA[I received my author copy of 97 Things Every Software Architect Should Know in the mail yesterday, which means it should be hitting shelves in bookstores soon.  I contributed 2 of the 97 things, so I&#8217;m now published in some manner of speaking.  You can see the book (yes, that&#8217;s me in the [...]]]></description>
			<content:encoded><![CDATA[<p>I received my author copy of <a href="http://oreilly.com/catalog/9780596522698/">97 Things Every Software Architect Should Know</a> in the mail yesterday, which means it should be hitting shelves in bookstores soon.  I contributed 2 of the 97 things, so I&#8217;m now published in some manner of speaking.  You can see the book (yes, that&#8217;s me in the top left of the group of face shots) <a href="http://oreilly.com/catalog/9780596522698/preview.html">here</a>.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.yepthatsme.com/2009/02/25/first-97-things-book-is-out-and-i-am-in-it/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Pushing clouds with chopsticks</title>
		<link>http://www.yepthatsme.com/2008/10/30/pushing-clouds-with-chopsticks/</link>
		<comments>http://www.yepthatsme.com/2008/10/30/pushing-clouds-with-chopsticks/#comments</comments>
		<pubDate>Thu, 30 Oct 2008 20:28:34 +0000</pubDate>
		<dc:creator>Barry Hawkins</dc:creator>
				<category><![CDATA[Software Development]]></category>

		<guid isPermaLink="false">http://www.yepthatsme.com/2008/10/30/pushing-clouds-with-chopsticks/</guid>
		<description><![CDATA[Perhaps if I hadn&#8217;t had a previous career outside of software it wouldn&#8217;t bug me so much, but I find the nebulous, amorphous task of software development thoroughly frustrating.  It was back around 2003 that I was having a conversation about a project with my project manager at the time (who was old-school yet [...]]]></description>
			<content:encoded><![CDATA[<p>Perhaps if I hadn&#8217;t had a previous career outside of software it wouldn&#8217;t bug me so much, but I find the nebulous, amorphous task of software development thoroughly frustrating.  It was back around 2003 that I was having a conversation about a project with my project manager at the time (who was old-school yet awesome), and I told her, &#8220;It&#8217;s really like trying to push a big cloud and all I have are two chopsticks.&#8221;  I&#8217;m closing out my 13th or 14th year in software development, and I still feel this way.  Even with all the insight, feedback, and visibility into a project that Agile Software Development provides me (and yes, <em>real</em> Agile, before anyone bothers to say that I feel this way only because I&#8217;m not doing <em>full</em> Agile Software Development), I&#8217;m still frustrated by how unwieldy the whole practice can be.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.yepthatsme.com/2008/10/30/pushing-clouds-with-chopsticks/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>My &#8220;Why is Agile hard?&#8221; conversation is up on the Java Posse</title>
		<link>http://www.yepthatsme.com/2008/05/01/my-why-is-agile-hard-conversation-is-up-on-the-javaposse/</link>
		<comments>http://www.yepthatsme.com/2008/05/01/my-why-is-agile-hard-conversation-is-up-on-the-javaposse/#comments</comments>
		<pubDate>Thu, 01 May 2008 20:30:44 +0000</pubDate>
		<dc:creator>Barry Hawkins</dc:creator>
				<category><![CDATA[Agile]]></category>
		<category><![CDATA[Java]]></category>
		<category><![CDATA[Software Development]]></category>

		<guid isPermaLink="false">http://www.yepthatsme.com/2008/05/01/my-why-is-agile-hard-conversation-is-up-on-the-javaposse/</guid>
		<description><![CDATA[The Why is Agile hard? conversation I convened at this year&#8217;s Java Posse Roundup made its way into the Java Posse podcast feed.  That was an enjoyable session with discussion of the challenges groups face when adopting Agile.
NOTE: The astute reader will notice that this entry has changed.  My blog was compromised and [...]]]></description>
			<content:encoded><![CDATA[<p>The <a href="http://javaposse.com/index.php?post_id=323727">Why is Agile hard?</a> conversation I convened at this year&#8217;s <a href="http://www.mindviewinc.com/Conferences/JavaPosseRoundup/">Java Posse Roundup</a> made its way into the <a href="http://javaposse.com">Java Posse</a> podcast feed.  That was an enjoyable session with discussion of the challenges groups face when adopting Agile.</p>
<p><strong>NOTE:</strong> <em>The astute reader will notice that this entry has changed.  My blog was compromised and the perpetrator substituted the original post with links to questionable material from faraway lands, and I don&#8217;t mean overripe strawberries from the west coast.</em></p>
]]></content:encoded>
			<wfw:commentRss>http://www.yepthatsme.com/2008/05/01/my-why-is-agile-hard-conversation-is-up-on-the-javaposse/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Keep a long-term perspective; know your &#8220;sales cycle&#8221;</title>
		<link>http://www.yepthatsme.com/2008/05/01/keep-a-long-term-perspective-know-your-sales-cycle/</link>
		<comments>http://www.yepthatsme.com/2008/05/01/keep-a-long-term-perspective-know-your-sales-cycle/#comments</comments>
		<pubDate>Thu, 01 May 2008 19:10:17 +0000</pubDate>
		<dc:creator>Barry Hawkins</dc:creator>
				<category><![CDATA[.Net]]></category>
		<category><![CDATA[Agile]]></category>
		<category><![CDATA[Java]]></category>
		<category><![CDATA[Python]]></category>
		<category><![CDATA[Series]]></category>
		<category><![CDATA[Soft Skills in Software]]></category>
		<category><![CDATA[Software Development]]></category>

		<guid isPermaLink="false">http://www.yepthatsme.com/2008/05/01/keep-a-long-term-perspective-know-your-sales-cycle/</guid>
		<description><![CDATA[(This is part two in a series I have titled â€œSoft Skills in Softwareâ€, which came out of points I came up with for a panel discussion at CodeMash 2008.)
When introducing change in a technology practice, you can save yourself some frustration by being aware of the &#8220;sales cycle&#8221; for new ideas within your group [...]]]></description>
			<content:encoded><![CDATA[<p><em>(This is part two in a series I have titled â€œSoft Skills in Softwareâ€, which came out of points I came up with for a panel discussion at <a href="http://www.codemash.org">CodeMash 2008</a>.)</em></p>
<p>When introducing change in a technology practice, you can save yourself some frustration by being aware of the &#8220;sales cycle&#8221; for new ideas within your group and maintaining a perspective that always bears the long-term in mind.</p>
<p>As technologists, we often have great enthusiasm for new ideas that we perceive to hold value in terms of their (potential) positive effects on our work.  The value is so apparent to us that we often see no reason not to put this new idea to work right away.  However, the speed with which a new idea can be adopted is affected by a number of factors.  Let&#8217;s start with these:</p>
<ul>
<li>The organization&#8217;s general disposition toward change</li>
<li>The change agent&#8217;s standing as a thought leader within the technology practice</li>
<li>The resultant impact of adopting the idea in question</li>
<li>The temporal context in which the new idea is introduced</li>
</ul>
<p>Depending up on the value of each of those variables (and more), the length of time it takes for a change to be adopted can be anywhere from a few weeks to months to years &#8212; or a special category I have, &#8220;not for the foreseeable future&#8221;.  I use that category instead of &#8220;never&#8221;, because there have been times when I thought there was no way a given thing would ever happen, and suddenly a merger or regime change or some other major external change suddenly opened the door for the previously-infeasible.</p>
<p>I use the term &#8220;sales cycle&#8221; because it was in a previous career of mine where I first learned this lesson.  I used to sell industrial packaging and marking systems, and when I first started, I was greatly frustrated at the seemingly low number of sales that I would close.  I would follow up with some clients to the point of irritating them, convinced that &#8220;something should have happened by now&#8221;.  I eventually learned that the different types of systems that I sold had different sales cycles.  Because of a given system&#8217;s cost and the role it played in the manufacturing process at large, there was a minimum amount of time it took to get approval, move through a cusotmer&#8217;s procurement process, and finally issue me a purchase order.  Some systems took 4-6 weeks to sell, while others were 6, 12, and even 24 months.  In general, the longer the sales cycle, the bigger the sale.  Once I understood this, I found myself far less frustrated, and there were fewer of those awkward interactions between my customers and I.</p>
<p>Introducing new ideas to your development group is quite similar.  There is a direct relationship between the level of change and the time it takes for a team to agree and then adopt the idea.  I have witnessed more than a few programmers who had good ideas that they presented and expected everyone to just approve right away.  Their frustration with what they perceived as stalling and/or rejection typically resulted in undesireable outcomes.  Even the most-valued technical person is only indulged a few temper tantrums before being labeled as &#8220;damaged goods&#8221;.  Recovery from this sort of thing within an organization is discouragingly rare.  The person is usually avoided in discussions about strategic direction, and their ideas are usually dismissed or stifled.  In general, if letting person Y talk about changes has resulted in discomfort in the past, the typical solution is to just not let that person talk about changes.  It&#8217;s warped, dysfunctional, and counterproductive, but that&#8217;s mainstream corporate culture for you.</p>
<p>One area where technical change differs from sales is the possibility of incremental change.  It&#8217;s not always possible to sell only a piece of a large system; changes in software development, on the other hand, are well-suited to incremental change.  Being able to adjust one&#8217;s expectation from demanding a single big win to being content with a series of methodical, steady, small victories is a valuable skill in software.  For some big changes, that can be the only way to introduce them.  For example, a company may not be open to switching to Agile Software Development overnight, but having daily stand-up meetings and developing in 2-week iterations certainly seems benign enough.</p>
<p>Having said all that, there have been times where something with a 12 or 24-month sales cycle was adopted immediately for me.  Urgency, crisis, severe failure with the current situation, any number of things can result in exceptions to the rule.  The art is knowing when to spot these factors and acting appropriately to leverage them.  If I could sum all that up in a blog post, I&#8217;d probably be in a different line of work ;-).</p>
]]></content:encoded>
			<wfw:commentRss>http://www.yepthatsme.com/2008/05/01/keep-a-long-term-perspective-know-your-sales-cycle/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Believe in what you&#8217;re selling</title>
		<link>http://www.yepthatsme.com/2008/03/18/believe-in-what-youre-selling/</link>
		<comments>http://www.yepthatsme.com/2008/03/18/believe-in-what-youre-selling/#comments</comments>
		<pubDate>Wed, 19 Mar 2008 00:33:50 +0000</pubDate>
		<dc:creator>Barry Hawkins</dc:creator>
				<category><![CDATA[Agile]]></category>
		<category><![CDATA[Series]]></category>
		<category><![CDATA[Soft Skills in Software]]></category>
		<category><![CDATA[Software Development]]></category>

		<guid isPermaLink="false">http://www.yepthatsme.com/2008/03/18/believe-in-what-youre-selling/</guid>
		<description><![CDATA[(This is part one in a series I have titled &#8220;Soft Skills in Software&#8221;, which came out of points I came up with for a panel discussion at CodeMash 2008.)
Let&#8217;s get right to the point, then we&#8217;ll unpack it.  If you do not believe in what your company is doing, seriously consider finding work [...]]]></description>
			<content:encoded><![CDATA[<p><em>(This is part one in a series I have titled &#8220;Soft Skills in Software&#8221;, which came out of points I came up with for a panel discussion at <a href="http://www.codemash.org">CodeMash 2008</a></em>.)</p>
<p>Let&#8217;s get right to the point, then we&#8217;ll unpack it.  If you do not believe in what your company is doing, seriously consider finding work that you can believe in.</p>
<p>This was the first point in a series of observations I wrote down in preparation for a panel discussion on the topic of &#8220;talking technology to humans&#8221;.  <em>(The astute reader will have noticed that this recommendation does not directly relate with how to convey one&#8217;s thoughts on technology to others with a less-technical bent.  My hope is that those shining stars will read on before posting a comment or sending me flame mail.)</em>  I put this recommendation first because introducing change in technology practices is a taxing process.  Since introducing change requires so much of your energy, I&#8217;d only recommend it if you believe that your organization&#8217;s work is worth what you will expend of your emotional energy.</p>
<p>If you don&#8217;t think that a lack of belief in your company&#8217;s work is affecting you, I&#8217;d challenge you to try a few things:</p>
<ul>
<li>Ask your spouse or significant other if they think your mood and attitude toward things in general are affected by your job.</li>
<li>Ask your spouse, significant other, or children if they feel like they are walking on egg shells when you get home from work because they don&#8217;t want to &#8220;set you off&#8221;.  If they look uncomfortable and say &#8220;no&#8221;, that means yes, and it&#8217;s so bad they aren&#8217;t even comfortable admitting the problem to you for fear that you may erupt.  I speak from experience here.</li>
<li>Pay attention to how you answer the question &#8220;and what do you do for work?&#8221; the next time your are in a social context where that comes up; is your explanation apologetic or do you use a tone of sarcasm that indirectly lets the person know that you do not identify strongly with your company and/or the services it offers?</li>
<li>Pay attention to how you feel on the average day as you commute to work; are there more positive days than negative days?</li>
<li>Does reading this blog post incense you for reasons you can&#8217;t fully explain, and you already have a litany of reasons who people shouldn&#8217;t expect to be able to feel good about what their company does? :-)</li>
</ul>
<p>Here&#8217;s the thing; life is short.  Too short to while away most of the hours of years of your life contributing to something you don&#8217;t even agree with.  Too short to have your family members&#8217; memories of their years with you be colored with how negatively your work affected you.  You don&#8217;t need the hypertension, and your loved ones don&#8217;t need the unjustified bile.</p>
<p>Am I saying that finding work you believe in will eliminate stress and make you some fount of perpetual positive emotional energy?  Why, of course not.  Work is going to take something out of you, but it is going to take even more out of you if you&#8217;re doing it against your conviction, without the benefit of an additional resultant gain.</p>
<p>Oh, and one last thing.  There may be some who say, &#8220;well my company does sell anything.&#8221;  Sure they do.  Everyone is selling something, a service in exchange for a form of compensation.  The consumer may not be the payee, but something&#8217;s being provided.  Don&#8217;t let that semantic keep you from examining whether or not your employer&#8217;s work resonates with you.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.yepthatsme.com/2008/03/18/believe-in-what-youre-selling/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>Mike Cohn on transitioning to Agile Software Development at Agile Atlanta</title>
		<link>http://www.yepthatsme.com/2008/01/16/mike-cohn-on-transitioning-to-agile-software-development-at-agile-atlanta/</link>
		<comments>http://www.yepthatsme.com/2008/01/16/mike-cohn-on-transitioning-to-agile-software-development-at-agile-atlanta/#comments</comments>
		<pubDate>Wed, 16 Jan 2008 13:47:19 +0000</pubDate>
		<dc:creator>Barry Hawkins</dc:creator>
				<category><![CDATA[Agile]]></category>
		<category><![CDATA[Scrum]]></category>
		<category><![CDATA[Software Development]]></category>

		<guid isPermaLink="false">http://www.yepthatsme.com/2008/01/16/mike-cohn-on-transitioning-to-agile-software-development-at-agile-atlanta/</guid>
		<description><![CDATA[I found out yesterday that Mike Cohn was going to be speaking at Agile Atlanta.  Given that our AJUG meeting had fallen through, I pulled some schedule gymnastics in order to make the meeting.  Don&#8217;t pass up a chance to hear Mike.  Succeeding With Agile: A Guide To Transitioning And Improving will [...]]]></description>
			<content:encoded><![CDATA[<p>I found out yesterday that <a href="http://www.mountaingoatsoftware.com">Mike Cohn</a> was going to be speaking at <a href="http://www.agileatlanta.org">Agile Atlanta</a>.  Given that our <a href="http://www.ajug.org">AJUG</a> meeting had fallen through, I pulled some schedule gymnastics in order to make the meeting.  Don&#8217;t pass up a chance to hear Mike.  <a href="http://www.succeedingwithagile.com/">Succeeding With Agile: A Guide To Transitioning And Improving</a> will be his new book that fleshes out the principles of the talk he gave tonight; I scribbled down some notes below.</p>
<h3>Agile Transition Planning</h3>
<ul>
<li>Have goals in a transition backlog, to help you figure out how you&#8217;re doing on those goals and what you can do to assist those goals.</li>
<li>Set quarterly transition goals,having those be like releases for software</li>
<li>Have monthly iterations where you talk about what you can do</li>
<li>Have weekly meetings talking about how you can do it</li>
<li>Establish a &#8220;guiding coalition&#8221; that includes a sponsor and area managers who can help ensure success</li>
</ul>
<p>Establish transition teams, they&#8217;re pursuing the tactical elements of some of your goals; some will be organic, some will have been formally established.  Organic tends to be preferred; these will have the internal motivation necessary to get the most out of Agile.</p>
<h3>Transition Team Members</h3>
<h4>Who to include</h4>
<ul>
<li>Be aware of power distribution</li>
<li>Know where expertise and credibility lies; passion alone does not a team member make</li>
<li>Know who benefits <em>and</em> who loses from this</li>
<li>Know what groups might have a tendency to resist this and/or may align to blockade this as an allied force; strategic inclusion can defuse this</li>
</ul>
<h4>Who to exclude</h4>
<ul>
<li>Avoid &#8220;snipers&#8221;</li>
<li>Avoid big egos</li>
<li>Avoid snakes who poison relationships</li>
<li>Avoid conscripts</li>
</ul>
<h3>Leading an Agile Transition</h3>
<p>Transition team and other formal leaders must lead the transition, but not in the way they may have in the past.</p>
<h4>Prerequisites of Self-Organization</h4>
<ul>
<li>Container &#8211; boundaries along which people align</li>
<li>Differences &#8211; enough difference to provide a vibrance</li>
<li>Transforming Exchanges &#8211; interaction meaningful enough to provide value to participants</li>
</ul>
<p><strong>NOTE:</strong> <em>I have had to tweak this via changes to agile team organization</em></p>
<h4>Patterns of Agile Adoption</h4>
<ul>
<li>Technical Practices First &#8211; high impact, does not scale well, partial adoption is risky</li>
<li>Iterative First &#8211; not as controversial, but teams can get very complacent, scales relatively well</li>
<li>Requirements First &#8211; if you&#8217;re there, OK, but meh; wait for the right project?</li>
<li>Start Small &#8211; has been de facto, but less so these days, cheaper, good for those on the fence as to whether to commit, it&#8217;s slow</li>
<li>All In &#8211; it&#8217;s over quickly, no organizational dissonance of having two systems at once, risky, costly, usually requires a reorganization</li>
<li>Stealth Mode &#8211; no additional pressure, no one knows until you tell, no one can say no, no organizational support</li>
<li>Public Display of Agility &#8211; over the top, can reduce resistance, obvious need for organizational support</li>
<li>Impending Doom &#8211; can shock team out of complacency, admitting pending disaster can free team to experiment, can help overcome resistance, transition can be quick, not always an option, big change in time of trouble can increase stress</li>
</ul>
<h4>Patterns of Agile Expansion</h4>
<ul>
<li>Split and Seed &#8211; split team up, add in newcomers</li>
<li>Grow and Split &#8211; get team big then split</li>
<li>Internal Coaching &#8211; develop team, give team members additional responsibilities to coach other teams</li>
</ul>
<h4>Addressing Resistance</h4>
<ul>
<li>Sell the problem, not the solution</li>
<li>Understand the types of resistance you are encountering and address them in appropriate ways</li>
</ul>
]]></content:encoded>
			<wfw:commentRss>http://www.yepthatsme.com/2008/01/16/mike-cohn-on-transitioning-to-agile-software-development-at-agile-atlanta/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Mark Ramm, friend and exemplar</title>
		<link>http://www.yepthatsme.com/2008/01/14/mark-ramm-friend-and-exemplar/</link>
		<comments>http://www.yepthatsme.com/2008/01/14/mark-ramm-friend-and-exemplar/#comments</comments>
		<pubDate>Tue, 15 Jan 2008 04:22:41 +0000</pubDate>
		<dc:creator>Barry Hawkins</dc:creator>
				<category><![CDATA[Free/Open Source Software]]></category>
		<category><![CDATA[Python]]></category>
		<category><![CDATA[Software Development]]></category>

		<guid isPermaLink="false">http://www.yepthatsme.com/2008/01/14/mark-ramm-friend-and-exemplar/</guid>
		<description><![CDATA[My post about a Python web frameworks OpenSpace convened at CodeMash drew a bit of attention, and looking over it again, I can see how it can send messages I did not intend.  In order to break my trend of sitting on posts for weeks and months, I pushed myself to get this one [...]]]></description>
			<content:encoded><![CDATA[<p>My <a href="http://www.yepthatsme.com/2008/01/14/curb-your-python-web-framework-enthusiasm/">post</a> about a <a href="http://www.python.org">Python</a> web frameworks <a href="http://www.openspaceworld.com">OpenSpace</a> convened at <a href="http://www.codemash.org">CodeMash</a> drew a bit of attention, and looking over it again, I can see how it can send messages I did not intend.  In order to break my trend of sitting on posts for weeks and months, I pushed myself to get this one out even though I wanted to finesse it more.  The main person who could have taken this the wrong way would be <a href="http://compoundthinking.com/blog/">Mark Ramm</a>, who convened the talk and is also currently heading up my favorite Python web framework.</p>
<p>Instead of launching some missive or flaming the comments of my post, Mark took the time to further explain the situation for <a href="http://www.turbogears.org">TurboGears</a> both past and future.  He even apologized if he may have unintentionally spoken ill of the <a href="http://java.sun.com">JVM</a> (which he did not).  Mind you, I am no defender of the JVM, but I can see how I might seem like it from that post.  Mark also sent an email which explained some of the discussion items and after hearing that, I was far less concerned about where things are heading with that project.</p>
<p>I have known Mark for about a year now.  We have had dinner together and shared many funny stories (he has many, should you ever have occasion to hear them).  I consider him a friend, and his reaction to that post is an example of what I have come to enjoy about the Python community.  After reading <a href="http://www.zedshaw.com/">Zed Shaw</a>&#8217;s &#8220;<a href="http://www.zedshaw.com/rants/rails_is_a_ghetto.html">Rails is a Ghetto</a>&#8221; tonight, I am even more thankful for it.  Man, even if you filter through the bile and profanity, it still sounds like this dude received some rough treatment for trying to do the right thing at times.  And if some of it is true, then I need to rethink some of the folks whose work I endorse.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.yepthatsme.com/2008/01/14/mark-ramm-friend-and-exemplar/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
	</channel>
</rss>
