<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" media="screen" href="/~d/styles/rss2full.xsl"?><?xml-stylesheet type="text/css" media="screen" href="http://feeds.feedburner.com/~d/styles/itemcontent.css"?><rss 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/" xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0" version="2.0">

<channel>
	<title>auberger.com</title>
	
	<link>http://auberger.com</link>
	<description>Epicurean, cyclist and geek extraordinaire.</description>
	<lastBuildDate>Mon, 01 Feb 2010 15:38:05 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.9.1</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="self" type="application/rss+xml" href="http://feeds.feedburner.com/auberger_com" /><feedburner:info uri="auberger_com" /><atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="hub" href="http://pubsubhubbub.appspot.com/" /><item>
		<title>Make long term planning possible in an Agile environment</title>
		<link>http://feedproxy.google.com/~r/auberger_com/~3/F4_iXYHo-7M/make-long-term-planning-possible-in-an-agile-environment</link>
		<comments>http://auberger.com/archives/2010/02/make-long-term-planning-possible-in-an-agile-environment#comments</comments>
		<pubDate>Mon, 01 Feb 2010 15:30:28 +0000</pubDate>
		<dc:creator>Georges</dc:creator>
				<category><![CDATA[agile]]></category>
		<category><![CDATA[planning]]></category>
		<category><![CDATA[songbird]]></category>

		<guid isPermaLink="false">http://auberger.com/?p=768</guid>
		<description><![CDATA[Agile development methods are well suited to plan and execute near term release cycle. For instance, the tools we developed and processes we&#8217;ve adopted help us plan and steer a release to completion with a good level of accuracy and repeatability. However, there are instances when the time horizon needs to be further out than [...]]]></description>
			<content:encoded><![CDATA[<p>Agile development methods are well suited to plan and execute near term release cycle. For instance, the <a href="http://auberger.com/archives/tag/sdpbot">tools</a> we developed and <a href="http://auberger.com/archives/category/agile">processes</a> we&#8217;ve adopted help us plan and steer a release to completion with a good level of accuracy and repeatability. However, there are instances when the time horizon needs to be further out than the current cycle. The need to create a budget, synchronize a roadmap with a partner or determine future hiring needs, make it necessary to have an effective mechanism for long term planning.</p>
<p>Fortunately, the metrics gathered during each Agile release cycle can be very helpful for that purpose. Once we gain a good understanding on what is being worked on, for how long and by how many people, we should be able to extrapolate this to forecast future releases.</p>
<p>Let&#8217;s take a look at what activities take place during a typical release cycle:</p>
<p>1) Plan release<br />
2) Write code<br />
3) Test<br />
4) Fix bugs</p>
<p>Then repeat ad nauseam.</p>
<p><span id="more-768"></span></p>
<p>In that context, the programming tasks can be categorized as follow:</p>
<h3>1. Planned work</h3>
<p>This is the body of work identified during the planning stage. This is the <em>raison d&#8217;être</em> of the release. For the most part, this covers new features or less tangible things such as performance improvements. This is what we&#8217;ll want to talk about when the product gets released. It&#8217;s an easy planning trap to think that this is the only work required.</p>
<h3>2. Unplanned work</h3>
<p>As the name implies, this is work that was unforeseen at the beginning of the release but is required to be completed before the product can ship. It can be further refined as follow:</p>
<p>a) Change in requirements<br />
This should not be unexpected. In fact, any Agile methodology assumes that there will be changes down the road. This is not a problem per se as long as there is a mechanism to trade features, extend duration or increase resources.</p>
<p>b) Omissions in planning<br />
Because the planning period is relatively short, it is assumed that not everything is fully specified or researched upfront. As development proceeds, new pieces are discovered and introduced into the plan.</p>
<h3>3. Bugs</h3>
<p>Defects can be considered a side effect of software development. They can affect the product in different ways:</p>
<p>a) Regression<br />
These are defects introduced when working on new code. They usually impact unrelated functionality that used to work before.</p>
<p>b) Defect in new feature<br />
These are problems in a newly coded feature. The feature does not work quite as expected.</p>
<p>c) Existing bug<br />
These are bugs present in the previous version of the software. They are either known or newly discovered during the course of the release and prioritized to be fixed now because they affect existing users.</p>
<h3>Learning from the past to project in the future</h3>
<p>A believable long term plan needs to layout new features on a timeframe against a set of resources. Because there is only a limited amount of time and people allocated to thinking through the issues upfront, the initial estimates are always very rough. It is then very difficult to predict how much time certain things will take or how many people will be required. To increase accuracy, you&#8217;d have to invest more time and resources, which is not practical, mostly because these are the very same resources that are critical to deliver against the current release plan.</p>
<p>You need a model to help forecast based on imperfect data. You could decide to simply pad all the current estimates, but you&#8217;d still need to figure out a factor that&#8217;s sufficient.</p>
<p>A better model is to find a way to anticipate the additional work that will be generated by the introduction of a brand new feature. With that model, we can layout a plan that should allow sufficient room in every release to accommodate for all the work, planned, unplanned and bugs.</p>
<p>Let&#8217;s take a look at historical data from previous Songbird releases:</p>
<style>
table td, table th { border: solid 1px #ffffff; } table th { background-color: #999999; } table th, table td { padding: 5px; } table td { background-color: #DDDDDD; }
</style>
<table>
<thead>
<tr>
<th></th>
<th>Fugazi</th>
<th>Genesis</th>
<th>Hendrix</th>
<th>Isan</th>
<th>Jackson 5</th>
<th>Kanye</th>
<th>Led Zeppelin</th>
</tr>
</thead>
<tbody>
<tr>
<th>Planned Features [pts]</th>
<td>198</td>
<td>300</td>
<td>145</td>
<td>100</td>
<td>160</td>
<td>153</td>
<td>86</td>
</tr>
<tr></tr>
<tr>
<th>Actual Completed [pts]</th>
<td>696</td>
<td>946</td>
<td>527</td>
<td>419</td>
<td>432</td>
<td>694</td>
<td>303</td>
</tr>
<tr>
<th>Actual Completed Features [pts]</th>
<td>290</td>
<td>304</td>
<td>183</td>
<td>151</td>
<td>214</td>
<td>284</td>
<td>145</td>
</tr>
<tr>
<th>Planned/Completed Features ratio</th>
<td>146%</td>
<td>101%</td>
<td>126%</td>
<td>151%</td>
<td>134%</td>
<td>186%</td>
<td>169%</td>
</tr>
<tr>
<th>Actual duration [days]</th>
<td>39</td>
<td>55</td>
<td>56</td>
<td>50</td>
<td>50</td>
<td>55</td>
<td>30</td>
</tr>
</tbody>
</table>
<p>The first row in the table contains the budgeted points for each release. That number represents the sum of all planned work as determined at the end of the planning phase for that release. The release schedule was set based on that number and the historical team velocity.</p>
<p>The second row represents the total actual points completed during the release, including features and bugs. This represents that amount of effort to get the release out.</p>
<p>The third row represents the actual completed feature points only. Next row computes ratio of planned vs. actual work.</p>
<p>It&#8217;s very tempting to compute a velocity based on total completed points and use it as a predictor for how much work the team can accomplish. While it&#8217;s true that it is a measure of total effort, it can&#8217;t be used against planned work only.</p>
<p>What we want to determine is that given 1 point of planned feature work, how much unplanned work and bugs will be generated and thus how long will it take to complete. Then normalize this for team size and you get a factor that can be used for long term planning.</p>
<p>To get there, I&#8217;ve computed a velocity for each release based on planned work divided by actual release duration (in days) and number of engineers. I then use the median value across release as a factor to turn estimated planned points into calendar days. With that in hand, I created a simple model where scope, duration and resources are linked. Set two values and the third one gets computed automatically. This model becomes very handy to run through what-if scenario during roadmap sessions. It provides answers to business questions such as: &#8220;How long would it take to do feature X?&#8221;, &#8220;Can you meet deadline Y?&#8221;, &#8220;How many more engineers would it take to do Z in Y time frame?&#8221;.</p>
<p>Hope you enjoyed learning more about our approach to the difficult task of long term planning. I&#8217;d be interested to hear about how you&#8217;ve approached the problem, so feel free to share your story.</p>
<p>Lastly, let&#8217;s remember the words of the famous Danish physicist <a href="http://en.wikipedia.org/wiki/Niels_Bohr">Niels Bohr</a>:</p>
<blockquote><p>“Prediction is very difficult, especially if it’s about the future.”</p></blockquote>
<img src="http://feeds.feedburner.com/~r/auberger_com/~4/F4_iXYHo-7M" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://auberger.com/archives/2010/02/make-long-term-planning-possible-in-an-agile-environment/feed</wfw:commentRss>
		<slash:comments>1</slash:comments>
		<feedburner:origLink>http://auberger.com/archives/2010/02/make-long-term-planning-possible-in-an-agile-environment</feedburner:origLink></item>
		<item>
		<title>Dashboard for Agile project tracking</title>
		<link>http://feedproxy.google.com/~r/auberger_com/~3/wissgzJZvk8/dashboard-for-agile-project-tracking</link>
		<comments>http://auberger.com/archives/2010/01/dashboard-for-agile-project-tracking#comments</comments>
		<pubDate>Thu, 14 Jan 2010 22:53:39 +0000</pubDate>
		<dc:creator>Georges</dc:creator>
				<category><![CDATA[agile]]></category>
		<category><![CDATA[sdpbot]]></category>
		<category><![CDATA[songbird]]></category>

		<guid isPermaLink="false">http://auberger.com/?p=710</guid>
		<description><![CDATA[This is a following post to the series on Agile development at Songbird. As covered previously, we&#8217;ve created in-house tools to help with the planning and tracking of our release trains. The tool works off of Bugzilla and extracts meaningful information for project tracking. As it was originally meant to periodically generate an email status, [...]]]></description>
			<content:encoded><![CDATA[<p>This is a following post to the series on <a href="http://auberger.com/archives/category/agile">Agile development</a> at <a href="http://getsongbird.com">Songbird</a>. As <a href="http://auberger.com/archives/2008/12/songbird-path-to-agility-part-iii">covered previously</a>, we&#8217;ve created in-house tools to help with the planning and tracking of our release trains. The tool works off of <a href="http://www.bugzilla.org/">Bugzilla</a> and extracts meaningful information for project tracking. As it was originally meant to periodically generate an email status, it became apparent that it was too static for daily project tracking needs.</p>
<div id="attachment_725" class="wp-caption aligncenter" style="width: 310px"><a href="http://auberger.com/wp-content/uploads/2010/01/Songbird-Release-Trains-200911201.png" rel="lightbox[710]"><img class="size-medium wp-image-725" title="Songbird Release Trains" src="http://auberger.com/wp-content/uploads/2010/01/Songbird-Release-Trains-200911201-300x251.png" alt="" width="300" height="251" /></a><p class="wp-caption-text">Songbird Release Trains</p></div>
<p>We concluded that a dashboard that was more dynamic and worked in real time with Bugzilla would provide a more accurate picture of development progress. This is an overview of the couple of extensions we added to the tool.</p>
<p><span id="more-710"></span></p>
<h3>Dashboard</h3>
<p>The dashboard focuses on the current iteration (all P1 stories/tasks/bugs for a release target milestone). It provides a transparent and dynamic view of what&#8217;s under active development for the week.</p>
<p>Items are grouped by developer so we can easily review what each person is working on in this iteration. There are few additions that make it more useful than a plain Bugzilla query. When an item is carried over from a previous iteration, it gets highlighted, providing visibility on something that may require more work than anticipated or might be blocked by some dependencies. That kind of view was lacking before and it made it difficult to figure out what was happening when tasks got carried over. Similarly, when a new task gets added to the plan mid-iteration, it&#8217;s identified as such, making the tracking of intake very easy.</p>
<p>Because of our code review system, often time tasks are completed from a programmer standpoint but can&#8217;t be checked in until a positive review (R+) is performed by someone else. Additionally, some code requires the re-compilation of large amounts of 3rd party libraries before the patch is available. This kind of information is now bubbled up on the tracking page so the exact status of a particular issue is visible at a quick glance.</p>
<div id="attachment_714" class="wp-caption aligncenter" style="width: 559px"><a href="http://auberger.com/wp-content/uploads/2010/01/tracking.png" rel="lightbox[710]"><img class="size-full wp-image-714 " title="Dashboard" src="http://auberger.com/wp-content/uploads/2010/01/tracking.png" alt="" width="549" height="472" /></a><p class="wp-caption-text">Iteration Dashboard</p></div>
<p>This dashboard is helping us to know what everyone is doing at any given time. It fosters a sense of accountability and ownership of the issues and provides a sense of accomplishment when the work is completed.</p>
<p>Below is a view of the legend for the Dashboard. Most attributes for an item are extracted from Bugzilla and represented via an icon.</p>
<div id="attachment_715" class="wp-caption aligncenter" style="width: 165px"><a href="http://auberger.com/wp-content/uploads/2010/01/tracking-legend.png" rel="lightbox[710]"><img class="size-full wp-image-715" title="Legend" src="http://auberger.com/wp-content/uploads/2010/01/tracking-legend.png" alt="" width="155" height="360" /></a><p class="wp-caption-text">Dashboard Legend</p></div>
<h3>Punchlist</h3>
<p>Once a release reaches QA, a release branch is cut and the focus of the team switches from working on planned features to fixing bugs. We found that this period is best managed by using a punch list which contains all the issues remaining to be resolved before the release can ship as opposed to a weekly plan of what gets accomplished for the period. It keeps the team focused on the entirety of what&#8217;s on our collective plate. During that period, issues are being promoted to Blocker status to represent what is blocking the next milestone (e.g. Beta, RC, Final). It also signals what can be landed on the branch automatically and what needs further clearance. This allows us to throttle the rate of change being introduced into the source tree so that QA can be ensured stable builds.</p>
<div id="attachment_721" class="wp-caption aligncenter" style="width: 570px"><a href="http://auberger.com/wp-content/uploads/2010/01/Release-Madonna-Punchlist-All-remaining-P1-20100112.png" rel="lightbox[710]"><img class="size-full wp-image-721 " title="Punchlist" src="http://auberger.com/wp-content/uploads/2010/01/Release-Madonna-Punchlist-All-remaining-P1-20100112.png" alt="" width="560" height="515" /></a><p class="wp-caption-text">Release Punchlist</p></div>
<p>When in punchlist mode, it&#8217;s critical that all issues are being assigned. The list reflects that by highlighting items that have no owner yet.</p>
<h3>Pretty Graphs</h3>
<p>Two frequently tracked Agile metrics are Burndown and Velocity. Those are now being graphed automatically for each release. The Burndown helps forecast when the work will be completed. The Velocity gives us a historical perspective on what the team was able to accomplish and thus helps us plan better.</p>
<p>The Burndown graph breaks down tasks (what we refer to as &#8220;planned work&#8221;) from bugs (unplanned consequences of software development). When the Burndown line cross the horizontal axis, we&#8217;re done. Notice in the graph below the bug points going up during the QA period.</p>
<div id="attachment_713" class="wp-caption aligncenter" style="width: 670px"><a href="http://auberger.com/wp-content/uploads/2010/01/Picture-1.png" rel="lightbox[710]"><img class="size-full wp-image-713 " title="Burndown Graph" src="http://auberger.com/wp-content/uploads/2010/01/Picture-1.png" alt="" width="660" height="334" /></a><p class="wp-caption-text">Burndown Graph</p></div>
<p>The Velocity graph plots the team velocity, normalized per day. Actual Velocity is computed at the end of each iteration and plotted along side the Planned Velocity for easy comparison.</p>
<div id="attachment_720" class="wp-caption aligncenter" style="width: 633px"><a href="http://auberger.com/wp-content/uploads/2010/01/velocity.png" rel="lightbox[710]"><img class="size-full wp-image-720 " title="Velocity" src="http://auberger.com/wp-content/uploads/2010/01/velocity.png" alt="" width="623" height="379" /></a><p class="wp-caption-text">Velocity Graph</p></div>
<p>These new tools provide a dynamic view of the state of the release. They bring transparency into the development process for everyone involved.</p>
<img src="http://feeds.feedburner.com/~r/auberger_com/~4/wissgzJZvk8" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://auberger.com/archives/2010/01/dashboard-for-agile-project-tracking/feed</wfw:commentRss>
		<slash:comments>7</slash:comments>
		<feedburner:origLink>http://auberger.com/archives/2010/01/dashboard-for-agile-project-tracking</feedburner:origLink></item>
		<item>
		<title>Songbird path to Agility – Part III</title>
		<link>http://feedproxy.google.com/~r/auberger_com/~3/WNJ8qfgdqOI/songbird-path-to-agility-part-iii</link>
		<comments>http://auberger.com/archives/2008/12/songbird-path-to-agility-part-iii#comments</comments>
		<pubDate>Mon, 15 Dec 2008 23:57:09 +0000</pubDate>
		<dc:creator>Georges</dc:creator>
				<category><![CDATA[agile]]></category>
		<category><![CDATA[bugzilla]]></category>
		<category><![CDATA[sdpbot]]></category>
		<category><![CDATA[songbird]]></category>
		<category><![CDATA[tool]]></category>

		<guid isPermaLink="false">http://auberger.com/?p=568</guid>
		<description><![CDATA[
This is a repost of a series of article I originally published on Songbird&#8217;s blog
In the previous two installments of this series on Agile development at Songbird, I&#8217;ve covered our move from waterfall to Agile and provided an in-depth look at some actual release cycles. In this last post, I&#8217;m going to introduce a tool [...]]]></description>
			<content:encoded><![CDATA[<p><img src="http://files.songbirdnest.com/tracking.png" alt="Tracking" /></p>
<p><em>This is a repost of a series of article I originally published on <a href="http://blog.songbirdnest.com/author/georges/" target="_blank">Songbird&#8217;s blog</a></em></p>
<p>In the previous two installments of this series on Agile development at Songbird, I&#8217;ve covered our move from <a href="http://auberger.com/archives/2008/06/songbird-path-to-agility-part-i-2">waterfall to Agile</a> and provided an in-depth look at some <a href="http://auberger.com/archives/2008/09/songbird-path-to-agility-part-ii-2">actual release cycles</a>. In this last post, I&#8217;m going to introduce a tool &#8211; which I gave the uninspiring name sdpbot &#8211; built internally to help facilitate the tracking of our releases.</p>
<h3>Wrestling Bugzilla into shape</h3>
<p>Because so much of our existing workflow occurred in <a href="http://www.bugzilla.org/">Bugzilla</a>, we&#8217;ve decided to use it as a central database to drive our process. Every actionable project artifact lives in Bugzilla, a Feature, Story, Task or Bug. From a release standpoint, the only actionable items are Story, Tasks or Bug and hence, we only track these. Here is how we&#8217;ve organized our <a href="http://bugzilla.songbirdnest.com">bugzilla.songbirdnest.com</a> to help us track each release.</p>
<h4>Release train</h4>
<p>Every release train has a name and is used to create a <a href="http://bugzilla.songbirdnest.com/page.cgi?id=fields.html#target_milestone">target milestone</a> in Bugzilla. This allows us to put items in release buckets. See some examples of what was included in the <a href="http://bugzilla.songbirdnest.com/buglist.cgi?query_format=advanced&amp;short_desc_type=allwordssubstr&amp;short_desc=&amp;product=Songbird&amp;target_milestone=Fugazi&amp;long_desc_type=substring&amp;long_desc=&amp;bug_file_loc_type=allwordssubstr&amp;bug_file_loc=&amp;status_whiteboard_type=allwordssubstr&amp;status_whiteboard=&amp;keywords_type=allwords&amp;keywords=&amp;bug_status=RESOLVED&amp;bug_status=VERIFIED&amp;bug_status=CLOSED&amp;emailassigned_to1=1&amp;emailtype1=substring&amp;email1=&amp;emailassigned_to2=1&amp;emailreporter2=1&amp;emailqa_contact2=1&amp;emailcc2=1&amp;emailtype2=substring&amp;email2=&amp;bugidtype=include&amp;bug_id=&amp;votes=&amp;chfieldfrom=&amp;chfieldto=Now&amp;chfieldvalue=&amp;cmdtype=doit&amp;order=Reuse+same+sort+as+last+time&amp;field0-0-0=noop&amp;type0-0-0=noop&amp;value0-0-0=">Fugazi</a> and <a href="http://bugzilla.songbirdnest.com/buglist.cgi?query_format=advanced&amp;short_desc_type=allwordssubstr&amp;short_desc=&amp;product=Songbird&amp;target_milestone=Genesis&amp;long_desc_type=substring&amp;long_desc=&amp;bug_file_loc_type=allwordssubstr&amp;bug_file_loc=&amp;status_whiteboard_type=allwordssubstr&amp;status_whiteboard=&amp;keywords_type=allwords&amp;keywords=&amp;bug_status=RESOLVED&amp;bug_status=VERIFIED&amp;bug_status=CLOSED&amp;emailassigned_to1=1&amp;emailtype1=substring&amp;email1=&amp;emailassigned_to2=1&amp;emailreporter2=1&amp;emailqa_contact2=1&amp;emailcc2=1&amp;emailtype2=substring&amp;email2=&amp;bugidtype=include&amp;bug_id=&amp;votes=&amp;chfieldfrom=&amp;chfieldto=Now&amp;chfieldvalue=&amp;cmdtype=doit&amp;order=Reuse+same+sort+as+last+time&amp;field0-0-0=noop&amp;type0-0-0=noop&amp;value0-0-0=">Genesis</a> releases.</p>
<p><span id="more-568"></span></p>
<h4>Priority field</h4>
<p>As we create stories, tasks and bugs we assign them to the release milestone and place them in a <a href="http://bugzilla.songbirdnest.com/page.cgi?id=fields.html#priority">priority</a> bucket. Each priority level indicates how the item is being treated during the release:</p>
<ul>
<li><strong>P2</strong> &#8211; must have for the release, next candidates for promotion to P1</li>
<li><strong>P3</strong> &#8211; nice to have for the release, we may ship without it</li>
<li><strong>P4 </strong>-<strong> </strong>nice to have and low risk. This represent the kind of work that we probably will undertake during the QA phase as it is low risk and won&#8217;t likely cause a regression.</li>
<li><strong>P1</strong> has a special meaning. It is used as a flag to represent what is being committed by the team for the current weekly iteration. Everything in P1 signals our tool that this is our &#8220;plan&#8221; for the week and is under active development (We are considering changing this in the future to use the assigned bug functionality since Bugzilla 3.2 will now allow you to accept and assign a bug in one operation).</li>
</ul>
<div>From an overall release tracking standpoint, the tool includes P1, P2 and P3. P4 are not considered part of the plan. If we get to them during QA, they are freebies.</div>
<h4>Costing</h4>
<div>We would not be able to track anything without costing. Every item is being assigned a cost of 1, 2 or 3 based on complexity, scope and past experience. We also use 0 when an artifact exists but is not actionable by itself. For instance, we often start creating stories and cost them. Then, as we refine our plan, we may create one or several tasks to represent the particular engineering implementation of that story. When this occurs, each tasks has a cost, and the story cost field is zeroed out so we don&#8217;t double count. Also, the story to task relationship is being identified with the blocks/depend on field of Bugzilla. See story <a href="http://bugzilla.songbirdnest.com/show_bug.cgi?id=12066">12066</a> for an example of that.</div>
<h3>Weekly iterations</h3>
<p>Every Monday, we plan our work for the week. Every member of the team elects items to P1 status. We then tally up the total points and determine if the plan is sound. Once we are all in agreement, the plan gets locked. This simply means that the tool takes a snapshot of all the items marked as P1 and saves their ids.</p>
<h3>Daily reports</h3>
<p>The main function of the bot is to compute delta and generate a daily report. Let&#8217;s take a look at every sections of the report.</p>
<h6>Iteration</h6>
<p>A simple number to represent the iteration (week)</p>
<h6>Plan</h6>
<p>This section represent the plan of records as snapshot at the beginning of each iteration. Once the plan is locked, it becomes immutable.</p>
<h6>Duration</h6>
<p>Duration of the iteration. Usually 5 working days, but it automatically adjusts for holidays.</p>
<h6>Remaining</h6>
<p>Total points for P1, P2 and P3 items which status is open (e.g. UNCONFIRMED, NEW, ASSIGNED or REOPENED)</p>
<h6>Planned</h6>
<p>Total points for P1 items that are opened.</p>
<h6>Planned Velocity</h6>
<p>Normalized points per work day.</p>
<h6>Actual</h6>
<p>This section represent the actual metrics computed at the end of each iteration. The iteration ends on Sunday at midnight.</p>
<h6>Intake</h6>
<p>Represent everything that was either added or removed to the P1 list (the plan) during the iteration.</p>
<h6>Intake Velocity</h6>
<p>Normalized intake points per work day.</p>
<h6>Completed</h6>
<p>Total point of everything that was marked fixed during that iteration.</p>
<h6>Team Velocity</h6>
<p>Normalized completed points per work day.</p>
<h6>Carried over</h6>
<p>Everything planned at the beginning or added during the week and not completed by the end of the iteration.</p>
<h6>Environment</h6>
<p>Originally, this was introduce to track distractions outside of the core release that could impact the team velocity. The idea being that it would give us a gauge of what the &#8220;environment&#8221; was like during that period. This columns would capture everything open or closed in the special ASAP Bugzilla milestone. We used this classification to track urgent issues, infrastructure work, etc. As our process matured, the need for this diminished and we no longer use this.</p>
<p>Here is a sample of such report for Fugazi</p>
<p style="text-align: center;"><a href="http://files.songbirdnest.com/fugazi-tracking.png" rel="lightbox[568]"><img class="s3-img aligncenter" style="border: 0px initial initial;" src="http://files.songbirdnest.com/fugazi-tracking.png" border="0" alt="fugazi-tracking.png" width="100%" /></a></p>
<p style="text-align: center;">
<h3>What to look for</h3>
<p>Every day an email report is being generated allowing us to track progress to date. For every column described above, a link is provided. The link points back to Bugzilla and contains a list of ids for the items included in the list. Every item can then be reviwed independently.</p>
<p>At our weekly planning meeting, we usually start by reviewing what was carried over from last week. Ideally, we want this to be a null set, but the reality is that it often contains a fair amount of items. It&#8217;s primarily due to intake during the iteration. Items are being added because of regression introduced and discovered, new tasks being identified or slight adjustment to the plan. This is definitely an area we need to improve on.</p>
<p>The next view is the planned items for the new iteration. This allows us to make some tweak to our plan before we commit.</p>
<p>The intake views are very useful to analyze what is being added or removed during the cycle.</p>
<p>The team velocity gives us a measure on how well we are doing and how much load we think we can carry during the next iteration.</p>
<p>Finally, the remaining points tally gives us our burn down number. This is how much work is left and by dividing this with our historical velocity gives us a sense of how long it will be until we are done.</p>
<h2>Open source library</h2>
<p style="text-align: left;">SDPBOT is built as a Ruby library. The source code has been open sourced under the MIT license. You can download it here: <a href="http://code.google.com/p/sdpbot/">http://code.google.com/p/sdpbot/</a></p>
<p style="text-align: left;">We have made no attempt to make it generic, so do expect to do some work to customize it for your own needs. If you&#8217;re using Bugzilla and want to generate some type of reports you will hopefully find the library to scrape and instantiate objects from Bugzilla very valuable. Enjoy!</p>
<p style="text-align: left;">
<img src="http://feeds.feedburner.com/~r/auberger_com/~4/WNJ8qfgdqOI" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://auberger.com/archives/2008/12/songbird-path-to-agility-part-iii/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://auberger.com/archives/2008/12/songbird-path-to-agility-part-iii</feedburner:origLink></item>
		<item>
		<title>Riding up and down Haleakala</title>
		<link>http://feedproxy.google.com/~r/auberger_com/~3/Zkal1rtLbc4/riding-up-and-down-haleakala</link>
		<comments>http://auberger.com/archives/2008/10/riding-up-and-down-haleakala#comments</comments>
		<pubDate>Thu, 23 Oct 2008 04:09:42 +0000</pubDate>
		<dc:creator>Georges</dc:creator>
				<category><![CDATA[cycling]]></category>
		<category><![CDATA[climb]]></category>
		<category><![CDATA[descent]]></category>
		<category><![CDATA[haleakala]]></category>
		<category><![CDATA[house of the sun]]></category>

		<guid isPermaLink="false">http://auberger.com/?p=360</guid>
		<description><![CDATA[Why do people climb mountains? Because it&#8217;s there. When it comes to mountain, Haleakala is not your average hill. It&#8217;s a dormant volcano and you can ride it from sea level to summit, 10,023 feet (3&#8242;055 m) of elevation gain in one uninterrupted climb. Some claim it&#8217;s the highest paved road on earth. Here&#8217;s my [...]]]></description>
			<content:encoded><![CDATA[<p>Why do people climb mountains? Because it&#8217;s there. When it comes to mountain, Haleakala is not your average hill. It&#8217;s a dormant volcano and you can ride it from sea level to summit, 10,023 feet (3&#8242;055 m) of elevation gain in one uninterrupted climb. Some claim it&#8217;s the highest paved road on earth. Here&#8217;s my account of attempting such climb.</p>
<p>I rented a bike from South Maui Bike. They now feature Trek 5000, all carbon for $250/week. You can call in advance to reserve it and make sure you get the proper frame size. The bike was in decent condition, but don&#8217;t expect too much. I started from <a href="http://maps.google.com/maps?client=safari&amp;rls=en-us&amp;q=paia,+hi&amp;ie=UTF-8&amp;oe=UTF-8&amp;um=1&amp;sa=X&amp;oi=geocode_result&amp;resnum=1&amp;ct=title">Paia</a> as planned, and got rolling shortly after 6:30 am. Plenty of daylight at that time of the year. <a href="http://www.hawaiiweb.com/maui/beaches/HABaldwinBeachPark.htm">Baldwin Beach Park</a> is the perfect location to take a picture and a toe dip in the water before starting the ascent.</p>
<div class="wp-caption aligncenter" style="width: 583px"><br />
<img class="  " title="Baldwin Beach Park, Paia HI" src="http://gallery.me.com/gauberger/100277/P1000925/web.jpg" alt="" width="573" height="410" /><br />
<p class="wp-caption-text">Baldwin Beach Park, Paia HI</p></div>
<p><span id="more-360"></span></p>
<p>Here is what I carried with me:</p>
<ul>
<li>Arm warmers</li>
<li>Knee warmers</li>
<li>Rain jacket</li>
<li>Long finger gloves</li>
<li>2 extra portions of cytomax in ziplock bags</li>
<li>4 energy bars</li>
<li>4 dates</li>
<li>Some chocolate covered coffee beans</li>
<li>Digital camera</li>
<li>Cell phone (reception can be a bit spotty up top)</li>
<li>Cash to pay for the park entrance ($5) and for emergency ($60)</li>
<li>iPod shuffle</li>
<li>Additional sunscreen</li>
<li>Trek seat 75-cubic-inch seat pack</li>
<li>2 spare tubes</li>
<li>Tire levers, compact multi-tool, patches</li>
</ul>
<p>I ended up eating everything and wore all the clothes I brought. The weather was pretty good, slightly overcast. The arm warmer came handy once I reached 8,000 feet. I wore everything for the descent and I was glad that I did. Unless you like more abuse than necessary, don&#8217;t attempt a descent without long finger gloves and a wind jacket at a minimum.</p>
<p>You should check out the weather forecast and pick the best day to ride. You will notice a big difference between weather at the summit and forecast at the base.</p>
<ul>
<li><a href="http://forecast.weather.gov/MapClick.php?zoneid=HIZ022">Haleakala Summit weather forecast</a></li>
<li><a href="http://forecast.weather.gov/MapClick.php?zoneid=HIZ020">Windward Haleakala weather forecast</a></li>
</ul>
<p>The route is pretty straight forward. The only tricky part is the right turn off Baldwin or else you&#8217;ll be climbing an extra 1,700 feet for nothing like <a href="http://www.chainreaction.com/haleakala.htm">Mike</a> did. When you see the horse arena on the left, it&#8217;s your cue to make a right.</p>
<div class="wp-caption aligncenter" style="width: 727px"><br />
<img title="Horse Arena" src="http://gallery.me.com/gauberger/100277/P1000929/web.jpg" alt="" width="717" height="538" /><br />
<p class="wp-caption-text">Turn right after the horse arena</p></div>
<p>The first 3,500 feet of the ride are pretty easy. I stopped at Sunrise market and indulged on Maui potato chips and fresh cut pineapple chunks. Apparently, you get good karma points for going up judging by my short exchange with the cashier:</p>
<blockquote><p>Cashier: Are you going up hon?<br />
Me: Yes.<br />
Cashier: You&#8217;re a good man.</p></blockquote>
<p>After a short rest, downhill riders in full gears including motorcycle helmets and rain coveralls started to appear. Expect to see a lot of them. As of end of 2007, the tour operators are no longer allowed in the park proper because of <a href="http://news.yahoo.com/s/ap_travel/20071008/ap_tr_ge/travel_brief_haleakala&lt;br &gt;&lt;/a&gt;">too many accidents</a> resulting in death. As a result, their tour start right below the entrance of the park at around the 6,500 feet mark.</p>
<p>Make sure to refill on water at the Sunrise market. Your next opportunity will be at the visitor center in the park at 7,000 feet. The next leg of the climb is pretty cool. Lots of switch back with pretty vistas.</p>
<div class="wp-caption aligncenter" style="width: 727px"><img class=" " title="One of many switchbacks" src="http://gallery.me.com/gauberger/100277/P1000940/web.jpg" alt="One of many switchbacks" width="717" height="538" /><p class="wp-caption-text">One of many switchbacks</p></div>
<p>Along the way, you won&#8217;t see many elevation signs but if you pay attention, there are marking on the asphalt. A blue number below a yellow sun. I&#8217;m assuming that they are for the <a href="http://www.cycletothesun.net/">Cycle to the sun</a> race.</p>
<div class="wp-caption aligncenter" style="width: 727px"><img class=" " title="Elevation markers" src="http://gallery.me.com/gauberger/100277/P1000942/web.jpg" alt="Elevation markers" width="717" height="512" /><p class="wp-caption-text">Elevation markers</p></div>
<p>The marking stops as you enter the park.</p>
<div class="wp-caption aligncenter" style="width: 727px"><img class=" " title="Park entrance" src="http://gallery.me.com/gauberger/100277/P1000957/web.jpg" alt="Park entrance" width="717" height="512" /><p class="wp-caption-text">Park entrance</p></div>
<p>I payed the $5 entrance fee and off I went. Next stop is the visitor center several hundred feet up. There is a water fountain by the restroom and plenty of space to sit, relax and recharge.</p>
<p>As I continued the ascent, I started to feel the effect of the elevation. I don&#8217;t know if it was the lack of oxygen in my brain but the sight of the 9,000 feet sign felt exhilarating and I could not suppress reading it out loud with the mandatory expletive: nine f#&amp;*ing thousand feet!</p>
<p>The last 1,000 feet go by pretty quickly. Once you see the summit and <a href="http://www.ifa.hawaii.edu/haleakala/">Science City</a>, you know you&#8217;re home.</p>
<div class="wp-caption aligncenter" style="width: 727px"><img class=" " title="Summit and Science city" src="http://gallery.me.com/gauberger/100277/P1000989/web.jpg" alt="Summit and Science city" width="717" height="538" /><p class="wp-caption-text">Summit and Science city</p></div>
<p>The steepest portion of the ride is on the road joining the lower parking lot to the upper obeservation deck. Or maybe it just felt like it.</p>
<div class="wp-caption aligncenter" style="width: 727px"><img class=" " title="Mandatory summit picture" src="http://gallery.me.com/gauberger/100277/P1000998/web.jpg" alt="Mandatory summit picture" width="717" height="512" /><p class="wp-caption-text">Mandatory summit picture</p></div>
<p>Although the ride is pretty long, once I reached the 10,023 feet mark I was surprise that it was over already. I took the time to look around and take pictures of the crater. I had fun watching people&#8217;s reaction of finding a lonely rider that far up. A nice couple took my picture and confessed they thought about taking a picture of themselves in front of the bike so they could pretend they rode up.</p>
<p>The ascent took a little over 6 hours with plenty of time to stop, enjoy the vista and take <a href="http://gallery.me.com/gauberger#100277&amp;view=null&amp;bgcolor=black&amp;sel=24">pictures</a>. Although the climb is never very steep, I found the ride to be somewhat difficult because of its length and elevation. I also think that I screwed up the adjustment of the seat and had it too high. As a result, I developed a pain on my left glute that made it pretty uncomfortable to stay seated. I also did not train much prior to it, relying on miles accumulated previously in the season. Ok, that should be enough excuses to ignore the crushing realization that the best rider in the <a href="http://cycletothesun.net/reports2008/ResultsCombined.PDF">Cycle to the sun race</a> made it in 2 hours and 51 minute, wow.</p>
<p>After dressing up with all the clothes I brought, I started the descent. I was surprise how easy and pleasant the downhill turned out to be. As I lost elevation, the weather warmed up gradually and I passed a couple riders on their way up.</p>
<p>I made it back to Paia in a couple of hours, in time for a celebratory Gianduia Gelato at <a href="http://www.onogelatocompany.com/">Ono Gelato</a>.</p>
<p>Overall, the ride went very well. The only problem was a total failure of my Garmin Edge 305 computer. After I turn it off at Sunrise Market to preserve batteries, it would not re-acquire satellite signals. Because the bike was a rental, there were no sensor mounted so without GPS, I lost elevation and distance tracking. So, no route and no stats to share for posterity. I guess I&#8217;ll have to do it again.</p>
<p><a href="http://gallery.me.com/gauberger#100277">Complete picture gallery</a></p>
<h3>Route</h3>
<ul>
<li>0: Start on Baldwin Ave (downtown Paia).</li>
<li>6.5: Pass Makawao Park and town. Baldwin change into Olinda Rd.</li>
<li>8: RIGHT to Hanamu Road (as you&#8217;re passing the horse stables).</li>
<li>9: LEFT at intersection.</li>
<li>9.1: LEFT on Haleakala Hwy.</li>
<li>13.5: LEFT on Haleakala Hwy.</li>
<li>14: Last chance for food STOP at Sunrise Market (3,500 feet)</li>
<li>23: Park entrance (7,000 feet)</li>
<li>34: Summit (10,000 feet)</li>
</ul>
<p><a href="http://www.gmap-pedometer.com/?r=2301846">Google map</a> or <a href="http://cycletothesun.net/details/coursemaplarge.htm">Cycle to the sun map</a></p>
<img src="http://feeds.feedburner.com/~r/auberger_com/~4/Zkal1rtLbc4" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://auberger.com/archives/2008/10/riding-up-and-down-haleakala/feed</wfw:commentRss>
		<slash:comments>2</slash:comments>
		<feedburner:origLink>http://auberger.com/archives/2008/10/riding-up-and-down-haleakala</feedburner:origLink></item>
		<item>
		<title>Songbird path to Agility – Part II</title>
		<link>http://feedproxy.google.com/~r/auberger_com/~3/X2RVTnJ2RBk/songbird-path-to-agility-part-ii-2</link>
		<comments>http://auberger.com/archives/2008/09/songbird-path-to-agility-part-ii-2#comments</comments>
		<pubDate>Thu, 04 Sep 2008 23:56:10 +0000</pubDate>
		<dc:creator>Georges</dc:creator>
				<category><![CDATA[agile]]></category>
		<category><![CDATA[burndown]]></category>
		<category><![CDATA[intake]]></category>
		<category><![CDATA[songbird]]></category>
		<category><![CDATA[velocity]]></category>

		<guid isPermaLink="false">http://auberger.com/?p=566</guid>
		<description><![CDATA[
This is a repost of a series of article I originally published on Songbird&#8217;s blog
Previously, we&#8217;ve examined the new development practices that the Songbird team adopted to plan and track a release. Everyone on the team was very eager to put them to the test. Unfortunately, at the time, we were still in the middle [...]]]></description>
			<content:encoded><![CDATA[<p><img style="vertical-align: top;" src="http://files.songbirdnest.com/twister-coaster.png" alt="Twister Coaster" height="420" /></p>
<p><em>This is a repost of a series of article I originally published on <a href="http://blog.songbirdnest.com/author/georges/" target="_blank">Songbird&#8217;s blog</a></em></p>
<p><a href="http://auberger.com/archives/2008/06/songbird-path-to-agility-part-i-2">Previously</a>, we&#8217;ve examined the new development practices that the Songbird team adopted to plan and track a release. Everyone on the team was very eager to put them to the test. Unfortunately, at the time, we were still in the middle of the <a href="http://blog.songbirdnest.com/2007/10/30/songbird-03-is-launched/">0.3 release cycle</a> and new work could only be started once that release was completed. During the 0.3 release, everything was still treated as a bug, but in fact, many bugs were <a href="http://bugzilla.songbirdnest.com/show_bug.cgi?id=5472">stories</a> and <a href="http://bugzilla.songbirdnest.com/show_bug.cgi?id=3215">tasks</a> in disguise. We decided to apply some of the newly defined tracking principle to help us guide and finish the cycle, so we could start fresh with our next release as soon as possible.</p>
<h4>Cuánto es?</h4>
<p>The first step was to add cost to everything. We introduced a new <strong>cost</strong> field in <a href="http://bugzilla.songbirdnest.com">Bugzilla</a> and put a cost value on everything according to our new scale of 1, 2 and 3 points. With costing in place, we were in a position to compute how much points the team was able to complete in a typical work week. That total, normalized per work day became our <strong>team velocity</strong>.</p>
<p><span id="more-566"></span></p>
<p>Below is a chart representing our velocity over many — one week — iterations during the 0.3 release (code name Bowie). The blue line is the number of points the engineering team completed, averaged per work day. The red line tracks the cost of new things being introduced, normalized per work day. The green line tracks the net velocity.</p>
<p>It quickly became apparent that as the team took things off the pile, new work was being identified and added. We had to keep track and take this into account. We named this <strong>intake</strong> to globally represent new functionality, regressions and newly discovered bugs.</p>
<p>The net velocity gave us an indication on how well we were doing overall. When it gets in negative territory, we are losing ground.</p>
<p>You can see below 3 events that had clear impact on intake, namely scope creep (some features were not well defined upfront), and bug intake due to public feedback from a blessed build and a release candidate.</p>
<p>Also noticeable is a week when the team was not as productive as usual. With that information in hand, we were able to have open conversations about the state of progress and try to determine the cause for it. Sometimes, a low velocity is simply because work gets accumulated in a week and does not get checked in until the next. We call this <strong>carry over</strong>. Other time, there are some inevitable distractions such as a move, interviews, equipment failure, etc. In other cases, the team is just having a bad week.</p>
<p><a href="http://files.songbirdnest.com/bowie.001.png" rel="lightbox[566]"><img class="s3-img" src="http://files.songbirdnest.com/bowie.001.png" border="0" alt="bowie.001.png" width="100%" /></a></p>
<p>With this in place, we were able to understand the rate at which the team was completing work. We created a burn down chart that tracked the total points of known work left. Using the team velocity, we could forecast an expected release date with a simple best fit projection. When the line crosses the X-axis, you are done and can ship.</p>
<p><a href="http://files.songbirdnest.com/bowie.002.png" rel="lightbox[566]"> <img class="s3-img" src="http://files.songbirdnest.com/bowie.002.png" border="0" alt="bowie.002.png" width="100%" /></a></p>
<p>If you compare the two charts, you can see how much influence intake had on the release. This became a key component to take into account in our planning. By budgeting points towards intake, it allowed us to reserve some engineering capacity to take change into account upfront and have a more realistic schedule.</p>
<h4>Where does intake come from?</h4>
<p>By formally tracking our intake, we were able to better characterize the nature of change. Most of our intake comes from change introduced when features start to materialize in the product and can be tested. This is a desirable effect of adopting an Agile practice. Other contributors are defects being reported by existing users, which is a benefit of early releases. Less desirable intake come from regressions or new tasks that resulted from bad assumptions or misunderstandings. Those can usually be mitigated by increasing unit tests coverage and more upfront detailed planning.</p>
<h4>Full Agile cycle</h4>
<p>Let&#8217;s take a look at another release cycle. <a href="http://blog.songbirdnest.com/2008/03/26/songbird-05-final-released-all-aboard/">Dokken</a> was our second release in which we used the new process from inception. The charts below represents velocity and burn down respectively. Note that the scale on the velocity has increased. There is more dynamic range. Because the release started from day 0, we noticed a ramp up in the velocity. We learnt not to be necessarly alarmed by this. In a new release cycle, the team needs some time to &#8220;prime the pump&#8221; of development. As the release progressed and we got better visibility of the team progress, we decided that we should defer feature work that was identified as nice-to-have. This is another thing we did during planning. We prioritized work in must have for the release, hope to have for the release and nice to have &#8211; mainly cosmetic changes, low risk bugs &#8211; buckets. This gave us a pre-negotiated way to easily shift features as the release progressed.</p>
<p>By actively tracking and managing the intake, we were able to <strong>steer</strong> the release and deliver within weeks of the projected date. Not great, but better than our previous releases. Dokken was a particular difficult release as we undertook a lot of device support work, which can lead to <a href="http://tinyurl.com/62y7ew">nasty device compatibility problems</a>.</p>
<p><a href="http://files.songbirdnest.com/dokken.004.png" rel="lightbox[566]"><br />
<img src="http://files.songbirdnest.com/dokken.004.png" alt="" width="100%" /><br />
</a></p>
<p><a href="http://files.songbirdnest.com/dokken.003.png" rel="lightbox[566]"><br />
<img src="http://files.songbirdnest.com/dokken.003.png" alt="" width="100%" /><br />
</a></p>
<h5>Embracing change</h5>
<p>The next release, named <a href="http://blog.songbirdnest.com/2008/06/13/songbird-06-final-released-harder-better-faster-stronger/">Eno</a> presented some interresting characteristics. The <strong>intake</strong> was relatively high thru the release but the team was also maintaining a higher velocity. This is a good example of the team achieving a good level of agility. Change is being introduced throughout the release and the team is well prepared to tackle it. Also notice that the spike in intake due to feedback from release candidate has a corresponding level of increase in team velocity. This is due to the shortening of feedback loop. With proper ownership, the developers are able to respond in real time to issues being discovered.</p>
<p><a href="http://files.songbirdnest.com/eno.005.png" rel="lightbox[566]"><br />
<img src="http://files.songbirdnest.com/eno.005.png" alt="" width="100%" /><br />
</a></p>
<p>Notice how the burn down trend is converging almost linearly. This means that the team is achieving a sustainable pace, leading to more predictable ship date.</p>
<p><a href="http://files.songbirdnest.com/eno.006.png" rel="lightbox[566]"><br />
<img src="http://files.songbirdnest.com/eno.006.png" alt="" width="100%" /><br />
</a></p>
<h5>Achieving high velocity</h5>
<p>Our latest release, <a href="http://blog.songbirdnest.com/2008/08/20/songbird-beta-is-released/">Fugazi</a> is another example of a successful cycle. This was the shortest release cycle the team ever undertook, with only 4 weeks of planned development work and 3 weeks of QA. In order to maintain our original release date, we had to defer some lower priority work in iteration 3. Despite the shorter release period, the team actually completed more points per iteration than any other release. We maintained an unprecedented high velocity, which in turn allowed for a high level on intake to be absorbed, so all the planned must have featured could be kept in the release and still hit our original target date.</p>
<p><a href="http://files.songbirdnest.com/fugazi.007.png" rel="lightbox[566]"><br />
<img src="http://files.songbirdnest.com/fugazi.007.png" alt="" width="100%" /><br />
</a></p>
<p><a href="http://files.songbirdnest.com/fugazi.008.png" rel="lightbox[566]"><br />
<img src="http://files.songbirdnest.com/fugazi.008.png" alt="" width="100%" /><br />
</a></p>
<h4>DIY tools</h4>
<p>In the last part of the series, we&#8217;ll cover the tools we created to make the tracking easier and how they are being used on a daily basis to help us steer the release. Stay tuned.</p>
<img src="http://feeds.feedburner.com/~r/auberger_com/~4/X2RVTnJ2RBk" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://auberger.com/archives/2008/09/songbird-path-to-agility-part-ii-2/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://auberger.com/archives/2008/09/songbird-path-to-agility-part-ii-2</feedburner:origLink></item>
		<item>
		<title>Surviving the 2008 Death Ride</title>
		<link>http://feedproxy.google.com/~r/auberger_com/~3/ijC3uJmA-dg/surviving-the-2008-death-ride</link>
		<comments>http://auberger.com/archives/2008/07/surviving-the-2008-death-ride#comments</comments>
		<pubDate>Tue, 15 Jul 2008 06:45:23 +0000</pubDate>
		<dc:creator>Georges</dc:creator>
				<category><![CDATA[cycling]]></category>
		<category><![CDATA[death ride]]></category>

		<guid isPermaLink="false">http://auberger.com/?p=206</guid>
		<description><![CDATA[It&#8217;s only been 48 hours since I finished the Tour of the California Alps, also known as the Death Ride and I&#8217;ve been feeling the pressure to share all the gory details. So here ya go.
Joe, Jay and I setup for an early start. We figured we wanted to leave plenty of time to make [...]]]></description>
			<content:encoded><![CDATA[<p>It&#8217;s only been 48 hours since I finished the Tour of the California Alps, also known as the <a href="http://deathride.com">Death Ride</a> and I&#8217;ve been feeling the pressure to share all the gory details. So here ya go.</p>
<p><a href="http://auberger.com/wp-content/uploads/2008/07/p1000806.jpg" rel="lightbox[206]"><img class="alignright size-medium wp-image-211" title="Joe &amp; Jay off to an early start" src="http://auberger.com/wp-content/uploads/2008/07/p1000806-272x300.jpg" alt="" width="272" height="300" /></a>Joe, Jay and I setup for an early start. We figured we wanted to leave plenty of time to make the check points and finish the ride. We had a great carbo load dinner at <a href="http://www.passarettis.com/">Passaratti&#8217;s</a> the night before and set the alarm for 4 am. We arrived at the <a href="http://www.alpinecountyca.gov/departments/turtle_rock_park_campground">Turtle Rock park</a> shortly after 5 am. There was already a lot of people there as everyone was trying to get a headstart. The temperature was warmer than expected and after much debate about what to wear, we were ready to roll at 5:30, heading south towards Monitor Pass.</p>
<p>The day was off to a good start. The sky cleared up from smoke the day before and we were all happy to finally see some blue sky and clouds. Lake Tahoe had seen some pretty bad air quality recently, so bad that several events got cancelled, including the <a href="http://www.changeofpace.com/Donner_lake_tri.html">Donner Lake Triathlon</a> the day before.<br />
<span id="more-206"></span></p>
<h3>Monitor Pass</h3>
<p>The climb up <a href="http://en.wikipedia.org/wiki/Monitor_Pass">Monitor Pass</a> (el. 8,314 ft. / 2,534 m) was relatively easy. The pavement is in excellent condition as the road is closed most of winter. We reached the summit quickly and got our first sticker.<br />
<a href="http://auberger.com/wp-content/uploads/2008/07/07122008009.jpg" rel="lightbox[206]"><img class="alignright size-medium wp-image-212" title="Monitor Pass Summit 8,314 ft" src="http://auberger.com/wp-content/uploads/2008/07/07122008009-300x224.jpg" alt="" width="300" height="224" /></a></p>
<p>The first long descent on the other side of Monitor Pass was awesome. One of the great thing about the ride is to be able to experience riding on closed mountain roads. Once we reached the rest stop down by <a href="http://en.wikipedia.org/wiki/Topaz_Lake">Topaz Lake</a>, time to get our 2nd sticker, turn around and go back up. This is when it dawns on you that the exhilaration you&#8217;ve experienced during the downhill will now become sheer pain, ridding the same road back up. When it comes to climbing I&#8217;d say ignorance is bliss.</p>
<h3>Ebbetts Pass</h3>
<p>With Monitor out of the way, we headed towards <a href="http://en.wikipedia.org/wiki/Ebbetts_Pass">Ebbetts Pass</a> (el. 8,730 ft./2,661 m.). While Monitor landscape is more reminiscent of high altitude desert, Ebbetts is more of your typical high mountain pass, with lots of trees and stunning views. The road is fairly narrow and is one of the most scenic, least travelled in the Sierra. It even has its <a href="http://www.scenic4.org/">own web site</a>.</p>
<p>The first several miles seemed like a gradual climb, with what felt like many flat reprieve. Needless to say it did not last for long. Before reaching the top of the summit, I was welcomed with a steady 12% grade that lasted forever. <a href="http://auberger.com/wp-content/uploads/2008/07/07122008011_2.jpg" rel="lightbox[206]"><img class="alignright size-medium wp-image-208" title="Ebbetts Pass summit" src="http://auberger.com/wp-content/uploads/2008/07/07122008011_2-300x204.jpg" alt="" width="300" height="204" /></a><br />
Mentally, this was certainly the most difficult part of the course for me. I knew I was not even half way thru the whole ride and started to doubt my ability to finish it. Then when you&#8217;re ready to give up, the summit shows up right around the corner. Cycling is as much a mental as a physical exercise. 3rd sticker down.</p>
<p>The back side of Ebbetts is relatively short compared to all the other climbs. Going back up, we passed some crazy guys from the Rolling Bones team (08/04/08 UPDATE: See picture below). One of the guy was towing a trailer in the form of a coffin with a skeleton having a drink inside. I don&#8217;t know whether he finished the whole ride, but at that point he was on his 4th pass. I can&#8217;t imagine what it must be like to do this towing an extra 20 lb or so. Once we reached Ebbetts summit again, all that was left was to go down, have lunch and power thru to Carson Pass, a 45 miles or so journey away. Time to go get that last sticker.</p>
<h3>Carson Pass</h3>
<p>The road back to Carson has a slight incline and can be long and discouraging, partly because of the frequent head winds. We got lucky to hook up with an impromptu <a href="http://www.cvcbike.org/club/paceline.html">pace line</a>, which we drafted all the way past <a href="http://en.wikipedia.org/wiki/Markleeville,_California">Markleeville</a>. At Markleeville, the whole town (population 200) was out cheering the riders, with claps and bells. There were many spectators supporting the riders along the course, which was really neat.</p>
<p>To get to Carson, you have to go back to Turtle Rock Park, which means passing your car. I thought this would be more difficult because at this point you&#8217;re 88 miles into the ride with over 11,000 feet of climbing and need a very good reason to stop you from calling it quit. I was determine to finish and the prospect of an ice cream at the top of Carson Pass was good reason enough for me.</p>
<p>The climb up Carson Pass is comparatively the easiest because the grade does not go much above 8%. A little garden hose shower at Woodfords made it easy to reach the rest stop at Picketts Junction, sitting half way thru the climb. With 10 miles left to climb to reach the summit, the finish was within our grasp. However, at that point, a storm was moving in quickly in our direction. It started raining and as we were heading up again, we got caught in a nasty hail storm. It was so bad that cars were stopping, waiting for it to get better. Our handy bike helmets were fending off the giant piece of ice hurling down from the sky and bouncing everywhere. The cacophony of hail hitting the carbon bikes and the metal railing on the side of the road almost made the climb humorous. We kept riding while the hail storm turned into plain rain storm. There was little reprieve until we reached the summit.</p>
<p>Once we reached the summit of Carson Pass, we got our pin and started huddling with other rider in a futile attempt to get warm. We were so wet and cold that the porta-potties became the most, ahem, inviting place to keep dry. Despite being on the verge of <a href="http://en.wikipedia.org/wiki/Hypothermia">hypothermia</a>, we were determined to enjoy our you-made-it-to-the-last-summit ice cream. I went for a <a href="http://en.wikipedia.org/wiki/Choco_Taco">Choco Taco</a> which had the sweet taste of victory. We waited for a while for the weather to calm down and our body heat to raise while trying to scrounge any plastic bag that could be used as wind breaker. We knew we had a long, cold descent ahead of us.</p>
<p> <br />
<object classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" width="425" height="350" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,40,0"><param name="src" value="http://www.youtube.com/v/vC3x5QSSS_k" /><embed type="application/x-shockwave-flash" width="425" height="350" src="http://www.youtube.com/v/vC3x5QSSS_k"></embed></object><br />
 </p>
<p>On the way down, we got hit with hail again. At some point, I had to stop because my bike was wobbling. I feared a mechanical problem. I soon came to the realization that it was my body shaking uncontrollably that caused it. After several miles of this, we finally reached some sunny spot and started to dry off. This is the amazing part about mountain storm they go as quickly as they come in. We then rode all the way back to Joe&#8217;s truck by Turtle Park without any problem.</p>
<p><a href="http://auberger.com/wp-content/uploads/2008/07/p1000809.jpg" rel="lightbox[206]"><img class="alignright size-medium wp-image-209" title="Stickers" src="http://auberger.com/wp-content/uploads/2008/07/p1000809-300x244.jpg" alt="" width="300" height="244" /></a>After a quick change of cloth, we hit the post ride BBQ at Turtle Park. There was a band there and the mood was cheery. We were looking forward to celebrate our accomplishment with some cold beer. Our dream got quickly shattered when the guy in front of me finished the last of the keg. They ran out of beer. How can you f***ing run out of beer? They&#8217;ve only been organizing this ride for over 25 years! Completing the ride was grueling enough, but depriving us of a finish beer now that&#8217;s simply cruel. How well, we quickly recovered from this last blow. We were not going to letting anything spoil the joy of knowing we accomplished a hell of a great ride that day.</p>
<p>You can view <a href="http://gallery.me.com/gauberger#100008">more pictures</a> from the ride.</p>
<h3>Stats</h3>
<p>Unfortunately, my Garmin Edge bike computer ran out of battery before the end of the ride. Here is a compilation of my data and some from Joe&#8217;s computer.</p>
<ul>
<li> Distance: 128 miles (206 km)</li>
<li>Elevation gain: 15,287 feet (4&#8242;660 m)</li>
<li>Time in the saddle: 10 hours</li>
<li>Average grade: 5.2 %</li>
<li>Steepest grade: 18 %</li>
<li>Average Speed: 12.9 mph (20.7 km/h)</li>
<li>Top speed: 46.4 mph (75 km/h)</li>
<li>Calories burned: ~ 8,000</li>
<li>Gears: 52/39/30, 12-25</li>
</ul>
<p>You can view a <a href="http://trail.motionbased.com/trail/activity/6238765">complete profile for the ride</a>.</p>
<h3>Elevation Profile</h3>
<p><a href="http://auberger.com/wp-content/uploads/2008/07/get-1mb.jpeg" rel="lightbox[206]"><img class="aligncenter size-full wp-image-207" title="Death Ride Profile" src="http://auberger.com/wp-content/uploads/2008/07/get-1mb.jpeg" alt="" width="500" height="225" /></a></p>
<p>The complete <a href="http://www.deathride.com/elemap.html">official elevation map</a>.</p>
<h3>Resources</h3>
<p>Surprisingly, there isn&#8217;t much information about the Death Ride online. One useful resource is this <a href="http://www.arniebakercycling.com/handouts/ht_deathride_just_made_it.htm">&#8220;just made it in time&#8221; sheet</a> that basically let you know the bare minimum cut off time in order to finish the ride.</p>
<p> </p>
<p><strong>08/04/08 UPDATE:</strong> Picture of the crazy Rolling Bones guy and their contraption.</p>
<p><a href="http://auberger.com/wp-content/uploads/2008/08/dr08-wagon-photo.jpg" rel="lightbox[206]"><img class="alignnone size-full wp-image-249" title="Rolling Bones" src="http://auberger.com/wp-content/uploads/2008/08/dr08-wagon-photo.jpg" alt="" width="300" height="448" /></a></p>
<p>Photo (c) Copyright <a href="http://westworldimages.com/cgi-bin/searchoptionspage.cgi?PageNumber=1&amp;EventCode=164&amp;">West World Images</a></p>
<div class='wp_likes' id='wp_likes_post-206'><a class='like' href="javascript:wp_likes.like(206);" title='' ><img src="http://auberger.com/wp-content/plugins/wp-likes/images/like.png" alt='' border='0'/>Like</a><span class='text'></span>
<div class='unlike'><a href="javascript:wp_likes.unlike(206);">Unlike</a></div>
</div>
<img src="http://feeds.feedburner.com/~r/auberger_com/~4/ijC3uJmA-dg" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://auberger.com/archives/2008/07/surviving-the-2008-death-ride/feed</wfw:commentRss>
		<slash:comments>3</slash:comments>
		<feedburner:origLink>http://auberger.com/archives/2008/07/surviving-the-2008-death-ride</feedburner:origLink></item>
	</channel>
</rss>
