<?xml version="1.0" encoding="utf-8"?>
<rss version="2.0">
<channel>
<title>Blah.Blah.Blog</title>
<link>http://www.corvine.org/blog/</link>
<description></description>
<copyright>Copyright 2007</copyright>
<lastBuildDate>Wed, 17 Oct 2007 17:04:18 +1000</lastBuildDate>
<generator>http://www.movabletype.org/?v=3.14</generator>
<docs>http://blogs.law.harvard.edu/tech/rss</docs> 

<item>
<title>A development slant  take on an old saying...</title>
<description><![CDATA[<p>Instead of "If the only tool you have is a hammer, you will see every problem as a nail." (Abraham Maslow)...</p>

<p>Try "If the only tool you have is a portal server, you will see every web application as a portlet"... and probably add 20% to your project as a result of needless complication to design, implementation and development environments.</p>

<p>IMHO, portal servers (everything implementing JSR-168) are a technology still waiting for the right problem to come along.  Unfortunately, too many companies have brought the sales pitch and fork over big $$$ for the IBM and BEA suites and are using it for all web application development, irrespective of how devoid of portal-specific requirements the problem domain is.</p>]]></description>
<link>http://www.corvine.org/blog/archives/2007/10/a_development_s.html</link>
<guid>http://www.corvine.org/blog/archives/2007/10/a_development_s.html</guid>
<category></category>
<pubDate>Wed, 17 Oct 2007 17:04:18 +1000</pubDate>
</item>
<item>
<title>Tips for Active Pairing </title>
<description><![CDATA[<p>On my current project, the dev team is attempting to adopt pair programming as a standard practice.  I've only been moderately successful at this and one of the issues faced is that the non-driving part of the pair (the Navigator) wasn't really sure what they should be doing when not driving.  As a result, I saw a lot of "passive pairing" where the Navigator was really just kicking back and watching the Driver code until it was their turn at the keyboard.  To emphasize the sort of behaviour I expect from an engaged, active Navigator, I created a <a href="http://www.xprogramming.com/xpmag/BigVisibleCharts.htm">BVC</a> on the wall of the dev room.  I've reproduced it here in case it proves useful for other people encountering the same questions.</p>]]></description>
<link>http://www.corvine.org/blog/archives/2007/09/tips_for_active.html</link>
<guid>http://www.corvine.org/blog/archives/2007/09/tips_for_active.html</guid>
<category></category>
<pubDate>Wed, 19 Sep 2007 17:28:28 +1000</pubDate>
</item>
<item>
<title>Use of Standups Considered Harmful?</title>
<description><![CDATA[<p>Last week, I finished up a short agile mentoring engagement.  One of the last comments I made to the development team was "you guys might want to consider not running standups".  Based on the behaviour I'd seen there, I was fairly sure the advice was sound, but the words still felt <em>very</em> strange coming out of my mouth...</p>

<p>I should note that I'd observed this team's standups for a week or so and they were short, energetic and focussed.  The only issue was the developer's not feeling they got a lot of value out of them.</p>

<p><em>Note: I take most of what should/should not be in a standup from <a href="http://www.thoughtworks.com/PatternsDailyStandupJason%20Yip.pdf">Jason's excellent article</a>.</em></p>]]></description>
<link>http://www.corvine.org/blog/archives/2007/05/use_of_standups_1.html</link>
<guid>http://www.corvine.org/blog/archives/2007/05/use_of_standups_1.html</guid>
<category></category>
<pubDate>Mon, 21 May 2007 10:04:48 +1000</pubDate>
</item>
<item>
<title>12 Small Steps for a Story Wall, 1 Giant Leap for Communication</title>
<description><![CDATA[<p>I'm currently finishing up a short term mentoring engagement with a small web startup who are adopting Agile principles for the first time.  In somewhat typical startup fashion, the company (all 14 of them) is located in a 2 story apartment, with the development team in the bedrooms upstairs and the sales and marketing people in the living and dining area downstairs.  <em>Bear with me, the relevance of this information will become apparent later on.</em></p>

<p>The client have been doing a great job adopting lighterweight process just from reading books, so I haven't needed to suggest too many changes to their daily working lives, just a tweak here and there.</p>

<p>But by far the simplest change we implemented is bringing the biggest benefits.  The development team were using a story wall on a pinboard to track work during iterations, but due to the layout of the office, the pinboard was located upstairs in the development area and therefore only benefitting the development team itself.</p>

<p>My suggestion was to move the wall downstairs so it was visible to everyone in the entire company.  Almost as soon as doing this, the marketing and sales people started asking questions about the purpose of the wall and quickly understood what information it was showing.  They were most appreciative of being able to see what features were in development, completed or not yet started.  Based on this increased understanding, conversations between the business and the development team increased and were based on a common understanding of the current state of development.  </p>

<p>So, with the cost of a longer trip downstairs to update the story wall for the developers, it's ability to act as an <a href="http://www.agileadvice.com/archives/2005/05/information_rad.html">Information Radiator</a> was increased greatly.</p>

<p>Postscript: 2 days after the story wall was moved downstairs, it was joined by another story wall created by the marketing team to track their tasks :-)</p>]]></description>
<link>http://www.corvine.org/blog/archives/2007/05/12_small_steps_1.html</link>
<guid>http://www.corvine.org/blog/archives/2007/05/12_small_steps_1.html</guid>
<category></category>
<pubDate>Mon, 14 May 2007 09:26:21 +1000</pubDate>
</item>
<item>
<title>The Truths about Estimation</title>
<description><![CDATA[<p>Recently, I've been overhearing collegues going through a lengthy estimation process - and all the angst that accompanies such exercises.  Doing so reminded me of my own estimation nightmares and some of the general rules I've developed/appropriated which I thought I'd share.  Probably not a whole lot new and/or original here, but putting these thoughts to paper is a good way to remind myself of what's important...</p>]]></description>
<link>http://www.corvine.org/blog/archives/2007/04/estimation_and_2.html</link>
<guid>http://www.corvine.org/blog/archives/2007/04/estimation_and_2.html</guid>
<category>Development</category>
<pubDate>Wed, 25 Apr 2007 16:35:46 +1000</pubDate>
</item>
<item>
<title>Tips for TW Dev Applicants: Rock the Keyboard</title>
<description><![CDATA[<p>TW is in a <a href="http://www.thoughtworks.com.au/join-thoughtworks.html">recruiting frenzy</a> at the moment and two of the mandatory steps for all potential developer hires are (1) a code review asking you to implement a solution to a problem in C# or Java and (2) a subsequent technical interview with at least 2 consultants.  The principal focus of the technical interview is to examine the solution from the code review and probe deeper into the thought process behind the solution.  For this reason, the technical interview is conducted in a room containing a PC with the source of the code review available within an IDE (e.g., Eclipse).</p>

<p>Note: by the time of the technical interview, the code review has already been checked by other people and considered to be of a sufficient standard to continue the recruitment process.</p>

<p>There are many ways to discover information about the quality of the candidate in this part of the process: some obvious, some not so obvious...</p>]]></description>
<link>http://www.corvine.org/blog/archives/2007/03/tips_for_tw_dev.html</link>
<guid>http://www.corvine.org/blog/archives/2007/03/tips_for_tw_dev.html</guid>
<category></category>
<pubDate>Mon, 19 Mar 2007 08:05:58 +1000</pubDate>
</item>
<item>
<title>Release Management versus Development: The Case for ClearCase</title>
<description><![CDATA[<p>Like many of my collegues, I don't like ClearCase.  After 18 gruelling months in it's embrace, I've found it to be an extremely poor version control system (VCS) for software development.  So how it's become so entrenched within large IT shops was a source of ongoing bewilderment and concern to me.  My main belief was that the decision over which version control tool to purchase is rarely-if-ever made by the people who will be actually <em>using</em> the tool and I suspect IBM sales people are well versed in mounting a fairly convincing argument for ClearCase when speaking to senior management.</p>

<p>However, I think I may have found a potentially valid reason why ClearCase is the installed VCS in so many shops - and it's all down to the value system of the customer...</p>]]></description>
<link>http://www.corvine.org/blog/archives/2007/01/release_managem.html</link>
<guid>http://www.corvine.org/blog/archives/2007/01/release_managem.html</guid>
<category></category>
<pubDate>Sat, 27 Jan 2007 17:13:13 +1000</pubDate>
</item>
<item>
<title>Searching for knowledge: a personal metric</title>
<description><![CDATA[<p>Over the last few weeks, I've been in the interesting position of having to come up to speed with a somewhat <a href="http://www.eaves.org/blog-archive/000071.html">infamously alien codebase</a>, without the benefit of any experienced senior technical people to answer any key questions regarding the artifact.  Thankfully, through a combination of patience from my customer and sharing the learning experience with another collegue, I think I've progressed along the admittedly steep learning curve quite well, although the trip has not been without the occasional stumble.</p>

<p>Thinking back over this period and my own behaviour, I've noted a couple of work habits which I began using in a fury and then have dropped off quite substantially of late: debugging and IDE-based global string searches across the entire codebase.  On reflection, I think both of these techniques are strong indicators that a developer has a poor mental model of the overall shape of the codebase as there should be no need to resort to using these very blunt instruments in an ongoing fashion when there are far superior alternatives which should make the need for <a href="http://en.wikipedia.org/wiki/Unit_testing">debugging</a> and <a href="http://www.jetbrains.com/idea/">global searching</a> almost disappear.</p>

<p>Unfortunately, I didn't have the foresight to actually measure the number of times I fell back on debugging and/or global searches to answer particular questions, but I think it would make interesting reading as I know the number have dropped off markedly of late.  Perhaps on the next new project...</p>]]></description>
<link>http://www.corvine.org/blog/archives/2007/01/searching_for_k_1.html</link>
<guid>http://www.corvine.org/blog/archives/2007/01/searching_for_k_1.html</guid>
<category></category>
<pubDate>Sat, 27 Jan 2007 14:08:53 +1000</pubDate>
</item>
<item>
<title>Agile Coaching... isn&apos;t</title>
<description><![CDATA[<p>Isn't real coaching that is, at least according to <a href="http://www.businessthinking.com.au/">those who make coaching their sole profession</a>.  Having spent <a href="http://www.ican.uts.edu.au/conferences/conf2006.html">yesterday</a> hearing from a wide range of such people, it's now clear to me what coaching is in it's strictest sense, and how it differs from the work we do when "coaching" teams in Agile development, which is more of a mentoring/consulting task.<br />
 <br />
In essence, a coach does not provide solutions for the subject to implement, but creates a framework through which the subject derives their own solutions.  This makes the coach more of a facilitator in the process and allows the subject to own the solution fully, having generated it themself.  Therefore, the coach will never take credit for the solution - even if it may have been apparent to them well before the subject.  </p>

<p>A coach needs no deep knowledge in the subject's domain to assist them in discovering their particular solution, but is well versed in applying a question-based framework to encourage the self discovery necessary for the subject to uncover the solution.</p>]]></description>
<link>http://www.corvine.org/blog/archives/2006/11/agile_coaching.html</link>
<guid>http://www.corvine.org/blog/archives/2006/11/agile_coaching.html</guid>
<category></category>
<pubDate>Thu, 30 Nov 2006 12:08:27 +1000</pubDate>
</item>
<item>
<title>Let The Wookie Win!</title>
<description><![CDATA[<p>Whilst not one of the most popular quotes from Star Wars, I find it most suitable when you find yourself battling away at a behemoth, only to step back and discover that the battle really isn't worth winning.</p>

<p>Which is the conclusion I came to when I decided not to continue trying to integrate Log4J with Websphere (which is apparently not the walk in the park it should be) and just allowed Websphere to use it's native logging.</p>

<p>In the end, using the native logging system (Java Logging, methinks) gives me everything I need and the pain we were experiencing trying to force Log4J into the picture just wasn't worth the hassle.  </p>

<p><em>One to the the Wookie!</em></p>]]></description>
<link>http://www.corvine.org/blog/archives/2006/11/let_the_wookie.html</link>
<guid>http://www.corvine.org/blog/archives/2006/11/let_the_wookie.html</guid>
<category>Development</category>
<pubDate>Sat, 25 Nov 2006 16:00:50 +1000</pubDate>
</item>
<item>
<title>How redundant is your manager?</title>
<description><![CDATA[<p>Whereas this may not be the <em>definitive</em> KPI for a redundant manager, I've seen a fairly high correlation myself so far.  To apply this simple criterian to your manager, ask yourself this question:</p>

<p>"How many emails do you receive from your manager which have been originally sent to him and he's then forwarded them to you (and possibly others) with no change apart from the addition of an 'FYI'?"</p>

<p>In other words, how much value is being really added to the organization by this individual?  Working within a large corporation, I'm frequently the recipient of emails containing up to three levels of nested "FYIs", as they've trickled down the corporate hierarchy to the worker bees.</p>

<p>Of course, if you find yourself forwarding on the same emails to others with nought but an extra FYI, then you might want to ignore this post :-)</p>]]></description>
<link>http://www.corvine.org/blog/archives/2006/09/how_redundant_i.html</link>
<guid>http://www.corvine.org/blog/archives/2006/09/how_redundant_i.html</guid>
<category></category>
<pubDate>Wed, 27 Sep 2006 12:14:40 +1000</pubDate>
</item>
<item>
<title>Is using Agile a sackable offense in your office?</title>
<description><![CDATA[<p>Most organizational office policies seem quite sensible in isolation, but it's amazing how they can be used for evil instead of goodness when it comes to some fairly well-accepted development practices... at least in some circles.</p>

<p>Not surprisingly, the larger the bureaucracy, the more intractable the rules.  For example, these are a couple of ones I've come across on client sites over the last few years:</p>]]></description>
<link>http://www.corvine.org/blog/archives/2006/06/is_using_agile.html</link>
<guid>http://www.corvine.org/blog/archives/2006/06/is_using_agile.html</guid>
<category>Development</category>
<pubDate>Thu, 29 Jun 2006 08:34:41 +1000</pubDate>
</item>
<item>
<title>&quot;Someday this project&apos;s gonna end...&quot;</title>
<description><![CDATA[<p>Captain Willard (Martin Sheen) - Apocalypse Now:<br />
"every minute I stay in this room, I get weaker, and every minute Charlie squats in the bush, he gets stronger"</p>

<p>Me:<br />
"every minute I stay in this meeting, I get weaker, and every minute my team codes stories, they get stronger"</p>]]></description>
<link>http://www.corvine.org/blog/archives/2006/06/someday_this_pr.html</link>
<guid>http://www.corvine.org/blog/archives/2006/06/someday_this_pr.html</guid>
<category>Development</category>
<pubDate>Sat, 03 Jun 2006 17:47:30 +1000</pubDate>
</item>
<item>
<title>Is TDD really so different?</title>
<description><![CDATA[<p>Recently, in a conversation to an experienced client collegue, I was explaining the benefits of using coded functional tests as a good form of unambiguous requirements and the conversation finished (due to time constraints) with a comment to me along the lines of "but you cannot code against a test, can you?"  Unfortunately, I had to delay the conversation that would have ensued about TDD, but whilst doing so I had a bit of an personal epithany about one aspect of TDD and it's seemingly "wacky" approach to development as seen by many people.  In essence, it's really very similar to the "classic" cycle of iterative development...</p>]]></description>
<link>http://www.corvine.org/blog/archives/2006/05/is_tdd_really_s.html</link>
<guid>http://www.corvine.org/blog/archives/2006/05/is_tdd_really_s.html</guid>
<category>Development</category>
<pubDate>Sun, 07 May 2006 02:08:51 +1000</pubDate>
</item>
<item>
<title>What&apos;s Post the PIR?</title>
<description><![CDATA[<p>Many of you will recognize the image below as being the last scene from Raiders of the Lost Ark.  Specifically, this is the fate of the ark after Indy had been assured that the government had their "best people" studying it.</p>

<p><img alt="raiders-lost-ark-warehouse.jpg" src="http://www.corvine.org/blog/images/raiders-lost-ark-warehouse.jpg" width="620" height="409" /></p>

<p>This is my mental picture of how the results of most project PIRs (Post Implementation Review) are handled by companies.  Either the results of the PIR are filed away in some labrynthine file server, or the project team disbands and they're lost forever.  Given the fundamental issues that seem to re-occur within environments that run large numbers of big projects, you would hope to find some organized approach to harnessing this collective experience on future projects, yet I've yet to come across such a beastie so far in my professional life.</p>]]></description>
<link>http://www.corvine.org/blog/archives/2006/04/whats_post_the_1.html</link>
<guid>http://www.corvine.org/blog/archives/2006/04/whats_post_the_1.html</guid>
<category>Development</category>
<pubDate>Fri, 21 Apr 2006 10:44:24 +1000</pubDate>
</item>


</channel>
</rss>