<?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>DigitalEther</title>
	<atom:link href="http://digitalether.de/feed" rel="self" type="application/rss+xml" />
	<link>http://digitalether.de</link>
	<description>Nothing connects everything</description>
	<lastBuildDate>Thu, 14 Jul 2011 06:08:17 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.2.1</generator>
		<item>
		<title>Using Google Docs to master your task list</title>
		<link>http://digitalether.de/productivity/using-google-docs-to-master-your-task-list</link>
		<comments>http://digitalether.de/productivity/using-google-docs-to-master-your-task-list#comments</comments>
		<pubDate>Wed, 13 Jul 2011 12:14:01 +0000</pubDate>
		<dc:creator>Steve</dc:creator>
				<category><![CDATA[Productivity]]></category>

		<guid isPermaLink="false">http://digitalether.de/?p=277</guid>
		<description><![CDATA[Tracking tasks in multi-platform, gadget-overloaded environment is a challenging activity. There is my desktop computer at work, the company notebook I use when meeting with clients, the Blackberry that (unfortunately) is always with me and my private MacBook Pro and iMac. See where this is going? With a plethora of different systems come many different [...]]]></description>
			<content:encoded><![CDATA[<p>Tracking tasks in multi-platform, gadget-overloaded environment is a challenging activity. There is my desktop computer at work, the company notebook I use when meeting with clients, the Blackberry that (unfortunately) is always with me and my private MacBook Pro and iMac. See where this is going? With a plethora of different systems come many different tools to collect tasks and take notes with.  How the heck do I track tasks and responsibilities effectively in that environment?<br />
<span id="more-277"></span><br />
It is obvious that a fat client does not do the job, unless there exists a client for each of the platforms. Needless to say that I also own an iPhone. So, unless you can recommend a usable cross-platform task tracking utility this does not seem to be an option. What&#8217;s left then? The least common denominator: the Web.</p>
<p>Apparently, there is one universal tool that can do all that and is available for virtually all devices and platforms, sometimes even for free. For me it all comes down to using a Google Spreadsheet as a To-Do list. Augmented with some scripting it turned out to be quite useful, supporting automated sorting and coloring.</p>
<h3>Preparations</h3>
<p>To be able to track tasks in a sensible manner we need to define a couple of columns:</p>
<ul>
<li><strong>Date Created:</strong> when did the task end up in your inbox.</li>
<li><strong>Subject:</strong> what needs to be done.</li>
<li><strong>Due to:</strong> when does it need to be done.</li>
<li><strong>Remind me on:</strong> when do you want to be reminded that the task is due. This column is especially useful for delegated tasks</li>
<li><strong>Who: </strong>who has the task been delegated to.</li>
<li><strong>Status:</strong> is it open, are you waiting for someone else, is it done?</li>
<li><strong>Notes:</strong> could contain the date of a call you did regarding the task.</li>
</ul>
<p>You may want to reduce or expand the list depending no your needs.</p>
<p>If you do not have a Google Account create one. Next, create a Spreadsheet document, type the names of the previously defined columns in the first row. To make changing the status easy I&#8217;ve created a second sheet and named it &#8220;Lists&#8221;. It basically holds various status values prefixed by a number to allow sorting: 01 open, 02, in progress, 03 waiting, 04 postponed, 09 done.</p>
<div id="attachment_281" class="wp-caption aligncenter" style="width: 209px"><a href="http://digitalether.de/wp-content/uploads/2011/07/02.png"><img class="size-full wp-image-281" title="My status values for my tasks" src="http://digitalether.de/wp-content/uploads/2011/07/02.png" alt="" width="199" height="177" /></a><p class="wp-caption-text">My status values for my tasks</p></div>
<p>To make those values available in our to do list, select all rows in that column and choose &#8220;Validation&#8221; from the &#8220;Data&#8221; menu.</p>
<p><a href="http://digitalether.de/wp-content/uploads/2011/07/03.png"><img class="aligncenter size-full wp-image-282" title="Using validation to select status values from a dropdown list" src="http://digitalether.de/wp-content/uploads/2011/07/03.png" alt="" width="522" height="324" /></a></p>
<p>Select &#8220;Items from list&#8221; from the criteria dropdown list and click the &#8220;Select a range&#8221; button. While in select mode, navigate to the Lists sheet, select the 5 status values, return to the to do list and save the configuration. Now, you&#8217;ll be able to select a status from a dropdown list. That was easy right?</p>
<h3>Automated Sorting and Coloring</h3>
<p>As a visual being I find it extremely helpful to use colors for certain states a task can have. The following picture shows a sample task list with each state having associated a color. And it&#8217;s sorted, btw.</p>
<div id="attachment_286" class="wp-caption aligncenter" style="width: 310px"><a href="http://digitalether.de/wp-content/uploads/2011/07/2011-07-13_140717.png"><img class="size-medium wp-image-286" title="My colorized to do list" src="http://digitalether.de/wp-content/uploads/2011/07/2011-07-13_140717-300x80.png" alt="My colorized to do list" width="300" height="80" /></a><p class="wp-caption-text">My colorized to do list</p></div>
<h3>Sorting</h3>
<p>Let&#8217;s start with sorting the to do list. It is possible to trigger a sort on behalf of some arbitrary action, say, on entering or changing a value in column 2. I am doing that for coloring my task list. Every time the status is changed a script colorizes the current row. So, for sorting, you&#8217;ll have to do it manually. But don&#8217;t be afraid, I have a script for that as well, which allows you to sort a range by simply selecting a custom menu item.</p>
<p>How does it work? All we have to do is to do is insert the following JavaScript methods using Google Docs&#8217; integrated script gallery (see the &#8220;Tools&#8221; menu):</p>

<div class="wp_syntax"><div class="code"><pre class="javascript" style="font-family:monospace;"><span style="color: #003366; font-weight: bold;">function</span> onOpen<span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span>
  <span style="color: #003366; font-weight: bold;">var</span> s <span style="color: #339933;">=</span> SpreadsheetApp.<span style="color: #660066;">getActiveSpreadsheet</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
  <span style="color: #003366; font-weight: bold;">var</span> menuEntries <span style="color: #339933;">=</span> <span style="color: #009900;">&#91;</span><span style="color: #009900;">&#123;</span><span style="color: #000066;">name</span><span style="color: #339933;">:</span> <span style="color: #3366CC;">&quot;Sort Selection&quot;</span><span style="color: #339933;">,</span> functionName<span style="color: #339933;">:</span> <span style="color: #3366CC;">&quot;sortSelection&quot;</span><span style="color: #009900;">&#125;</span><span style="color: #009900;">&#93;</span><span style="color: #339933;">;</span>
  s.<span style="color: #660066;">addMenu</span><span style="color: #009900;">&#40;</span><span style="color: #3366CC;">&quot;Sort Selection&quot;</span><span style="color: #339933;">,</span> menuEntries<span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
<span style="color: #009900;">&#125;</span>
&nbsp;
<span style="color: #003366; font-weight: bold;">function</span> sortSelection<span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span>
  <span style="color: #003366; font-weight: bold;">var</span> rangeToSort <span style="color: #339933;">=</span> SpreadsheetApp.<span style="color: #660066;">getActiveRange</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
  sortIt<span style="color: #009900;">&#40;</span>rangeToSort<span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
<span style="color: #009900;">&#125;</span>
&nbsp;
<span style="color: #003366; font-weight: bold;">function</span> sortIt<span style="color: #009900;">&#40;</span>range<span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span>
  range.<span style="color: #660066;">sort</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#91;</span>
    <span style="color: #009900;">&#123;</span>column<span style="color: #339933;">:</span> <span style="color: #CC0000;">6</span><span style="color: #339933;">,</span> ascending<span style="color: #339933;">:</span> <span style="color: #003366; font-weight: bold;">true</span><span style="color: #009900;">&#125;</span><span style="color: #339933;">,</span>
    <span style="color: #009900;">&#123;</span>column<span style="color: #339933;">:</span> <span style="color: #CC0000;">5</span><span style="color: #339933;">,</span> ascending<span style="color: #339933;">:</span> <span style="color: #003366; font-weight: bold;">false</span><span style="color: #009900;">&#125;</span>
  <span style="color: #009900;">&#93;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
<span style="color: #009900;">&#125;</span></pre></div></div>

<p>The method <code>onOpen()</code> creates a new menu in the toolbar only for this spreadsheet that when clicked sorts the current selection. That&#8217;s pretty much all there is to it. It is worth mentioning, though, that you have to configure the <code>sortIt()</code> method to allow the script to sort by the correct columns. In my case, column 5 represents the status column and 6 is the due date.</p>
<h3>Colorizing Tasks by Status</h3>
<p>As with sorting we will have to employ some JavaScript to do the job for us. Unlike the previous approach the <code>colorRow()</code> method will be called on each edit, checking the value in the status column and colorizing the row accordingly.</p>

<div class="wp_syntax"><div class="code"><pre class="javascript" style="font-family:monospace;"><span style="color: #006600; font-style: italic;">/**
 * Applies coloring rules to all rows of the active sheet.
 * Called by onOpen().
 */</span>
<span style="color: #003366; font-weight: bold;">function</span> colorAll<span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span>
  <span style="color: #003366; font-weight: bold;">var</span> sheet <span style="color: #339933;">=</span> SpreadsheetApp.<span style="color: #660066;">getActiveSheet</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
  <span style="color: #003366; font-weight: bold;">var</span> startRow <span style="color: #339933;">=</span> <span style="color: #CC0000;">2</span><span style="color: #339933;">;</span>
  <span style="color: #003366; font-weight: bold;">var</span> endRow <span style="color: #339933;">=</span> sheet.<span style="color: #660066;">getLastRow</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
&nbsp;
  <span style="color: #000066; font-weight: bold;">for</span> <span style="color: #009900;">&#40;</span><span style="color: #003366; font-weight: bold;">var</span> r <span style="color: #339933;">=</span> startRow<span style="color: #339933;">;</span> r</pre></div></div>

<p>The methods are used for two different scenarios. The first is that we want the to do list to be sorted whenever the spreadsheet is opened (that&#8217;s what <code>onOpen()</code> is for). The second scenario handles the case when the status changes (<code>onEdit()</code> is the handler of that event).</p>
<p>These methods have one drawback: once you change the structure of your sheet or the values of your status list you&#8217;ll have to adjust the methods to reflect the changes, otherwise it may not work correctly.</p>
<p>Additionally, there seems to be a bug in Google&#8217;s scripting engine preventing a more thoughtful design instead of nesting if-else statements, but I was not able to get it to work with anonymous methods, case statements and associative array. If you have a refactored solution, I&#8217;d be happy to feature it on this site.</p>
<h3>Conclusion</h3>
<p>Using Google docs for my to do has been a huge relief. No more worries about syncing to do list to different clients. It&#8217;s available every time, everywhere. The JavaScript part is what might get a bit difficult, but once you have set it up successfully you won&#8217;t have to touch it very often.</p>
<p>Please feel free to share your thoughts, ideas and improvements in the comment section.</p>
]]></content:encoded>
			<wfw:commentRss>http://digitalether.de/productivity/using-google-docs-to-master-your-task-list/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>What Is Strategic Project Leadership?</title>
		<link>http://digitalether.de/project-management/what-is-strategic-project-leadership</link>
		<comments>http://digitalether.de/project-management/what-is-strategic-project-leadership#comments</comments>
		<pubDate>Tue, 17 Feb 2009 05:57:03 +0000</pubDate>
		<dc:creator>Steve</dc:creator>
				<category><![CDATA[Project Management]]></category>

		<guid isPermaLink="false">http://digitalether.de/?p=83</guid>
		<description><![CDATA[For decades project teams focused on getting the job done within budget and in time.  This approach is valid now and will be for the time being, yet, increasing dynamics in competition change the rules of the PM game.  Now, getting the project done within a set of boundaries is not enough anymore.]]></description>
			<content:encoded><![CDATA[<p>For decades project teams focused on getting the job done within budget and in time.  This approach is valid now and will be for the time being, yet, increasing dynamics in competition change the rules of the PM game.  Now, getting the project done within a set of boundaries is not enough anymore.</p>
<p><span id="more-83"></span></p>
<p>Project managers all over the world are sharing the same fate: they feel the pressure of having to add additional value to the product no matter if it is being intended for the public market or specific customer project.  Projects are always vulnerable to be chopped for reasons far beyond the project manager&#8217;s control.  A new breed of PMs have figured out that certain leadership techniques and market insights have a strong impact to the long-term success of any project.</p>
<p>No matter what approaches and methodologies you adhere to, projects are normally managed operationally or strategically and all that matters is the result it brings to the enterprise (or the customer) and to its position in the market.  The combination of operational project management and market insights lead to a holistic strategic approach to project management.  It focuses on vision, competitive advantage and adaptability, still embracing the methodologies of traditional project management with the right pinch of added value.</p>
<p>At the fundamental level of strategic project leadership is business strategy which needs to be communicated as a project vision to all stakeholders.  That way stakeholders understand the project manager&#8217;s commitment to the project.  Finally, a vision must be transferred into competitive advantage:</p>
<ol>
<li><strong>Project managers are business leaders</strong> &#8211; Share the responsibility of building business results with project managers, don&#8217;t just let them accomplish a task.  Let them be part of the business vision.</li>
<li><strong>Focus on projects that have the highest potential to contribute to the overall business strategy</strong>. Manage the portfolio according to the long-term competitive advantage of the enterprise or the client.  Yet, don&#8217;t allow projects that are not aligned with the chosen strategy to fall behind.</li>
<li><strong>Identify the competitive advantage of every project (or service) in the portfolio</strong> and formulate a project strategy in capturing the marketplace. With strategic project leadership there is no single approach for all projects, instead each demands an adaptive and efficient approach.</li>
<li><strong>Communicate the project vision and cultivate a project team</strong> that believes in the vision&#8217;s energy, excitement, and commitment. People have to believe on a sustained, day-to-day basis about their contribution to the project.</li>
</ol>
<p>Additionally, to increase chances of success of future projects apply conventional techniques to strategic project leadership like creating a hierarchical plan (what I call the SPOT method: <strong>S</strong>trategy and spirit &gt; <strong>P</strong>rocesses and <strong>O</strong>rganization &gt; <strong>T</strong>ools) and establish effective project monitoring possibly adjusting existing project quality management techniques to the strategic project leadership approach. </p>
<p>Correctly implemented strategic project leadership can be extremely efficient, but remember that it is all about identifying the product&#8217;s competitive advantages, marketing this vision to all stakeholders (and the project team as part of the stakeholders) and the overall strategy for delivering the project.</p>
]]></content:encoded>
			<wfw:commentRss>http://digitalether.de/project-management/what-is-strategic-project-leadership/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>When More Information Leads To Less Knowledge</title>
		<link>http://digitalether.de/thoughts/when-more-information-leads-to-less-knowledge</link>
		<comments>http://digitalether.de/thoughts/when-more-information-leads-to-less-knowledge#comments</comments>
		<pubDate>Wed, 07 Jan 2009 06:03:53 +0000</pubDate>
		<dc:creator>Steve</dc:creator>
				<category><![CDATA[Thoughts]]></category>

		<guid isPermaLink="false">http://digitalether.de/?p=91</guid>
		<description><![CDATA[In <a href="http://www.wired.com/techbiz/people/magazine/17-02/st_thompson">his article</a> on <a href="http://wired.com">Wired.com</a> Clive Thompson illustrates how increased load of information can lead to a loss of knowledge due to ignorance or suppression of the truth.   Surprisingly, it's often us who unconsciously ignore or suppress the truth.]]></description>
			<content:encoded><![CDATA[<p>In <a href="http://www.wired.com/techbiz/people/magazine/17-02/st_thompson">his article</a> on <a href="http://wired.com">Wired.com</a> Clive Thompson illustrates how increased load of information can lead to a loss of knowledge due to ignorance or suppression of the truth.   Surprisingly, it&#8217;s often us who unconsciously ignore or suppress the truth.<br />
<span id="more-91"></span><br />
We will focus on two concepts that have significant impact on the perception of truth.  The first is information noise and the second the problem of retrospective analysis of past events.</p>
<p>Information itself is almost useless until it is put into context resulting in what we call knowledge. The main problem with information and knowledge is that the latter is result of information processing which is by nature prone to errors.  In order to make sense of all that information we construct stories in our mind trying to make logical and causal connections between the &#8220;facts&#8221;.  Missing parts in the causal chain are subconsciously filled in to make sense for us.  It is the way our brain works: things have to make sense and if there is not sufficient information we tend to artificially create causality between possibly unrelated scraps of information.  Since we do not know if our story is correct but seem to be perfectly sound there is no need to doubt its correctness.  Why?  Because most information is not verifiable.</p>
<h3>Less Is More</h3>
<p>Whenever we read the newspaper or listen to some radio shows we automatically start processing the information and weaving a new story or extending an existing one.  Consider the following: the elections are over and the news stations start interviewing party leaders who, on the side of the losers, try to explain why they&#8217;ve lost the elections.  They come up with semi-intelligent arguments about bad campaign strategies, the failure to address the people&#8217;s needs and other excuses, yet, only minutes after the election results have been announced these people believe they know the reasons for the outcome.  The same is true for the winning party, of course.</p>
<p>Just ask yourself: how do they know?  The reasons for winning and losing an election can be manifold: the bad weather kept people away from the voting booths or they just had a change of mind on election day.  We just don&#8217;t know, and so do the party leaders but they are convinced that they do.  You see the problem?</p>
<p>We now enter stage two: the interviewer asks for an expert opinion.  The expert explains in great detail why the election went the way it did adding lots of background information to the conglomeration of so called facts.  What happens here is that we consume a great amount of completely unverifiable information that may change our perception of things.  On the long run we&#8217;d be better off without all the noise since the election result is the only verifiable fact that really matters.  Consequently, the more information we have accumulated about this particular topic the less precise is the knowledge of events that took place.</p>
<p>We can draw similar conclusions about such dynamics on a variety of topics, when it comes to gossip about celebrities, for example.  We are flooded with random noise, useless information that does not add value to our body of knowledge.</p>
<h3>We Don&#8217;t Know What We Think We Know</h3>
<p>Thompson&#8217;s article ends prematurely.  The most significant part is the where he refers to the <em>Post-Fact Society</em>, a term introduced by <a href="http://en.wikipedia.org/wiki/Farhad_Manjoo">Farhad Manjoo</a>, who, in my opinion, correctly concludes that there exists a </p>
<blockquote><p>disjunction between truth and proof</p></blockquote>
<p>in an information society.  It is important to distinguish between what we actually know and what we think we know.  One reason for the illusion of complete knowledge is that we try to examine past events in order to deduce what has happened, again creating a completely plausible story in our mind by connecting the dots of information.  It does not matter if we are talking about events that took place hundreds of years or an hour ago.  Since we have not been there, we cannot be sure that the information is accurate.  We should always remain skeptic must refrain from taking arbitrary information as truth or even proof for our assumptions and theories.</p>
<h3>Concluding Remarks</h3>
<p>The more information you give someone the more hypotheses and theories they will formulate along the way and the worse off they will be.  They see more noise and mistake it for information.</p>
<p>It is almost impossible to protect us from the mechanisms outlined above.  It&#8217;s far more dangerous to listen to the radio for five hours a day than to read a weekly newspaper since the noise usually is filtered out over time.  At least think about the information you&#8217;ve consumed today and evaluate it.  How much noise did it carry?</p>
]]></content:encoded>
			<wfw:commentRss>http://digitalether.de/thoughts/when-more-information-leads-to-less-knowledge/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>The Irony About Agile Development</title>
		<link>http://digitalether.de/agile-development/the-irony-about-agile-development</link>
		<comments>http://digitalether.de/agile-development/the-irony-about-agile-development#comments</comments>
		<pubDate>Sat, 22 Dec 2007 05:12:38 +0000</pubDate>
		<dc:creator>Catherine</dc:creator>
				<category><![CDATA[Agile Development]]></category>

		<guid isPermaLink="false">http://digitalether.de/?p=99</guid>
		<description><![CDATA[There&#8217;s an irony about agile development. There is no hard evidence that it produces better software, faster. And formal adoption rates, admittedly hard to measure, don&#8217;t reach the 20 percent mark. Yet, the ideas that underpin agile development &#8212; defining requirements incrementally, writing software in short stints, seeking customer feedback, testing code as it&#8217;s written, [...]]]></description>
			<content:encoded><![CDATA[<p>There&#8217;s an irony about agile development. There is no hard evidence that it produces better software, faster. And formal adoption rates, admittedly hard to measure, don&#8217;t reach the 20 percent mark. Yet, the ideas that underpin agile development &mdash; defining requirements incrementally, writing software in short stints, seeking customer feedback, testing code as it&#8217;s written, frequent builds &mdash; have caught on like wildfire. They are widely accepted as sound development practices, even among teams that have not formally adopted them.<br />
<span id="more-99"></span></p>
<blockquote><p>Agile principles have become IT best practices [for software development]</p></blockquote>
<p>said Scott Ambler, agile practice leader for IBM.</p>
<h3>Changes</h3>
<p>Talking to analysts, consultants, developers and tool makers, I found that the groundswell of interest in agile practices is changing every aspect of how software is produced, from tools and processes to the roles people play in agile organizations.</p>
<p>Three key conclusions emerged from the talks:</p>
<ol>
<li>Going agile is more difficult than many teams anticipate, largely because it turns the roles of project manager, business analyst, programmer and tester on their heads.</li>
<li>No two teams apply agile in the same way. That raises questions about what&#8217;s agile and what&#8217;s not, and more important, whether a process can be improved by adding one or two agile practices.</li>
<li>Even though &#8220;agile&#8221; means different things to different teams, it&#8217;s safe to say that agile today is a far less dogmatic development approach than it was in 2001, when the Manifesto for Agile Software Development put Extreme Programming (XP), Scrum and other methodologies on the map.</li>
</ol>
<p>Written by a group of believers in the ways of agile, the <a href="http://agilemanifesto.org/">manifesto</a> sums up principles that guide software development, including <em>individuals and interactions over processes and tools</em> and <em>responding to change over following a plan</em>.</p>
<h3>Bend the Rules, Please!</h3>
<p>One lesson learned from the early agile days is that rigid adherence to a methodology may not work in the real world, said Eclipse Foundation director of the committer community Bjorn Freeman-Benson:</p>
<blockquote><p>XP is a strict form of agile, and today no one does all the practices.  Insisting that the customer do acceptance testing and other things that XP mandates was too large a leap to make.</p></blockquote>
<p>The customer &mdash; in XP, that&#8217;s the intended user of the software &mdash; was unwilling to take on the time-consuming role XP prescribes. So, rather than bend XP&#8217;s rules, the development team canceled the project. A better approach is adapting the methodology to suit the parties involved. A project manager could have assumed the customer role, extracting information from key stakeholders, he said. </p>
<p>Early projects like that gave agile a bad name. Today agile practitioners are more willing to bend the rules. But many are afraid to use the word <em>agile</em>. As a result, there is some stealth adoption of agile going on.</p>
<h3>Going wAgile</h3>
<p>One way to define agile development is by what it&#8217;s not. Some teams turn to agile practices to dig their way out of failing projects by doing two-week iterations, engaging in frequent, intentional communication, and doing frequent builds.</p>
<p>But that&#8217;s not agile development. They are simply getting a little bit iterative to put their projects back on track. Often, the line isn&#8217;t so easy to draw. Many of the experts I talked to said it&#8217;s not uncommon for development managers to add one or two agile practices, such as daily builds and early testing, to their processes. Is that agile? Some teams that take that approach believe it is. But <em>wAagile</em>&mdash;that&#8217;s traditional waterfall development with a couple of agile practices thrown in&mdash;may be a better way to describe such efforts.</p>
<p>A process becomes agile when one practice leads to another practice. For example: You decide to do continuous integration which means a new build is launched each time new code is checked in. That, in turn, impacts how you interact with users, how often those interactions take place, and how you do test cases.</p>
<p>One thing leads to another: You can&#8217;t apply just one part of agile without ultimately applying it everywhere.</p>
<p>The trick is choosing a balanced set of practices, but remembering that you don&#8217;t have to choose the exact set that Kent Beck (XP&#8217;s inventor) chose.</p>
<p>The Eclipse Foundation practices its own agile development approach. Known as the Eclipse Way, it sets guidelines for the 87 projects that fall under the Eclipse umbrella.</p>
<h3>Faith Versus Facts</h3>
<p>The experts I talked to were quick to weigh in on what&#8217;s agile and what&#8217;s not. But curiously, the question of whether agile practices actually produce better software, faster, doesn&#8217;t generate as much discussion. It&#8217;s as if a lack of faith in traditional software development methods&mdash;plagued by late projects, cost overruns and applications that don&#8217;t deliver business results&mdash;equals a belief in all things agile, despite the absence of data on agile&#8217;s impact.</p>
<p>Agile benefits&mdash;reduced time-to-market, better quality and improved predictability, among others&mdash;are widely recognized by they are not empirically proven. Still, agile shops offer anecdotal evidence that the approach works.</p>
<p>For some developers and managers agile has made the work more innovative, maintainable and predictable. I think it has enabled my development team to focus on what the business needs in ways that weren&#8217;t possible with waterfall. If your goal is to produce something people will use, agile is the best way to work.</p>
]]></content:encoded>
			<wfw:commentRss>http://digitalether.de/agile-development/the-irony-about-agile-development/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

