<div dir="ltr"><div><div>Kevin: <br><br>You summed up a lot of what I felt but couldn't express because I didn't know where to start. :)<br><br></div>Thanks for the essays. It's ironic that these two leaders in the Agile space also represent different ends of the spectrum of what happens when you over-engineer process and lose sight of the people involved, and the nuance generally helpful when supporting those people.<br><br></div>Joel:<br><br><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">It sounds like he's opposed to a particular kind of estimation, in favor
 of another kind of estimation, and perhaps using a bit of hyperbole as a
 marketing tool.</blockquote><div><br></div><div>Yes. He was also selling his book last night, so marketing hyperbole sounds about right. It mostly came off as bullying to me. :-/ <br></div></div><div class="gmail_extra"><br><div class="gmail_quote">On Wed, Sep 21, 2016 at 4:18 PM, Kevin Smith <span dir="ltr"><<a href="mailto:ksmith@wikimedia.org" target="_blank">ksmith@wikimedia.org</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr"><div class="gmail_default" style="font-family:verdana,sans-serif">Thanks for sharing, Max and Joel!<br><br></div><div class="gmail_default" style="font-family:verdana,sans-serif">tl;dr of my own reactions and beliefs: Holub and McConnell each have some valid points, and I substantially disagree with both of them on several points. Estimates are often abused by managers. Task estimation is not inherently useless. Task estimation is a skill that developers can (and arguably should) build. Software development is a craft (not engineering, science, or art). Comprehensive up-front requirements-gathering is generally impossible (and counter-productive). I value agility over predictability. <br><br><br><br></div><div class="gmail_default" style="font-family:verdana,sans-serif">Ok, here's the wall of text for those who want more than just a sound bite. This seems to have struck some nerves. :)<br></div><div class="gmail_default" style="font-family:verdana,sans-serif"><br></div><div class="gmail_default" style="font-family:verdana,sans-serif">I am in neither camp--I see value in estimates for some teams, and not for others<br><br></div><div class="gmail_default" style="font-family:verdana,sans-serif">To get Holub's views, I watched the #NoEstimates video on his site. He is clearly extremist, and seems to be arguing against something that nobody is actually arguing in favor of. Just because some bosses treat estimates as commitments doesn't mean all estimates are bad. It's either bad communication and/or bad management. <br></div><div class="gmail_default" style="font-family:verdana,sans-serif"><br></div><div class="gmail_default" style="font-family:verdana,sans-serif">Even if estimation is useless for forecasting (which is debatable), it can be valuable as a tool for developers to really understand what it is that they're about to work on. Even inaccurate estimates are also helpful to product owners to be able to prioritize work. "Valuable and easy" has a better ROI than "valuable and hard". <br><br></div><div class="gmail_default" style="font-family:verdana,sans-serif">His jibe that the only thing managers do is enforce a schedule was frustrating. Good managers *already* support their direct reports, rather than commanding them. <br><br></div><div class="gmail_default" style="font-family:verdana,sans-serif">As Joel pointed out, Holub's discussion of projections based on burnup charts is odd. But it makes more sense if you understand his main point, which is: "projections (based on task counts) are good and necessary; estimates are harmful waste". <br><br>He uses burnup charts to "prove" that projections based on story points are no better than projections based on task counts. But this data came from a team that did story point estimation, which means they thought through the stories to a degree, which also probably means the stories are decomposed to a reasonable level. Without those steps, the tasks would probably vary in size more, and the graphs probably wouldn't align as well. <br></div><div class="gmail_default" style="font-family:verdana,sans-serif"><br>As for the McConnell essay...<br><br>I used to be a big fan of McConnell, back in the day. But he remains rooted in the pre-agile ways, despite his embracing some aspects of agile. As one example, he refers to software development as "engineering", whereas I firmly believe that it is a craft. It is not engineering, nor science. Nor is it art. To write excellent software in most domains requires skill and knowledge, AND creativity and soft skills. Sure, cranking out yet another e-commerce website might be fairly rote these days. But that's not what most software developers are doing, and it's certainly not what most want to be doing. Software development is not an assembly line. <br><br>McConnell's customers apparently value predictability over agility. What that means is that when the project wraps up a year from now, they would rather have what they thought they wanted when the project started than what they now realize at the end that they actually want. I believe that is the reality in a lot of contexts (e.g. corporate work), but certainly not ours, and I would argue that it is not in most. <br><br><div class="gmail_default" style="font-family:verdana,sans-serif">McConnell also seems to believe you can gather requirements up front. As he says: “The typical software project has requirements that are knowable in 
principle, but that are mostly unknown in practice due to insufficient 
requirements skills".<br><br>I strongly disagree with that, because I believe that for most projects, you can't possibly predict the actual requirements until you have built something and started the feedback loop. You won't learn the final requirement until the day the project ends (at which point there will be a large pile of requirements which were not built). <br><br></div>I agree with McConnell that task estimation is a skill that most developers haven't built up, but most could. It's a skill I developed with practice, and I have helped a couple other developers build it up as well. You'll never get to the point of perfect accuracy, but "good enough" estimation is definitely a realistic goal, and can be valuable. <br><br>However, I think I disagree with McConnell (and Holub) that *project* level estimation (or "projection", as Holub prefers) is easy. New requirements can show up in lumps at various times, in addition to some tasks being easier or harder than expected. I think that you can accurately predict the time, scope, cost, or quality of a project. Probably 2 of those for the same project. Certainly not all 4. <br></div><span class="HOEnZb"><font color="#888888"><div class="gmail_default" style="font-family:verdana,sans-serif"></div><br></font></span></div><div class="gmail_extra"><span class="HOEnZb"><font color="#888888"><br clear="all"><div><div data-smartmail="gmail_signature"><div dir="ltr"><div><div dir="ltr"><div><div dir="ltr"><div><div dir="ltr"><span><font color="#888888"><br>Kevin Smith<br>Agile Coach, Wikimedia Foundation<br></font></span><font><font><i><font color="#888888"><br></font></i></font></font></div></div></div></div></div></div></div></div></div></font></span><div><div class="h5">
<br><div class="gmail_quote">On Wed, Sep 21, 2016 at 2:49 PM, Joel Aufrecht <span dir="ltr"><<a href="mailto:jaufrecht@wikimedia.org" target="_blank">jaufrecht@wikimedia.org</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr"><div style="font-family:georgia,serif" class="gmail_default">I skimmed through his #NoEstimates video until I saw burnup charts:<br><br><a href="https://youtu.be/QVBlnCTu9Ms?t=1616" target="_blank">https://youtu.be/QVBlnCTu9Ms?t<wbr>=1616</a><br><br></div><div style="font-family:georgia,serif" class="gmail_default">His argument seems to be (and I'm not watching the whole 40 minutes so I could be going out of context) that you can do projections from burnups and use that instead of estimation.  "Now I guess this is estimating but it's not really estimating, all we are doing is counting."<br><br></div><div style="font-family:georgia,serif" class="gmail_default">It sounds like he's opposed to a particular kind of estimation, in favor of another kind of estimation, and perhaps using a bit of hyperbole as a marketing tool.<br></div></div><div class="gmail_extra"><span><br clear="all"><div><div data-smartmail="gmail_signature"><div dir="ltr"><div><div dir="ltr"><div><div dir="ltr"><font color="#888888"><div><b>-- <br>Joel Aufrecht<br></b></div><div>Team Practices Group<b><br></b></div><div>Wikimedia Foundation<br></div></font></div></div></div></div></div></div></div>
<br></span><div><div><div class="gmail_quote">On Wed, Sep 21, 2016 at 2:38 PM, Joel Aufrecht <span dir="ltr"><<a href="mailto:jaufrecht@wikimedia.org" target="_blank">jaufrecht@wikimedia.org</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr"><div class="gmail_default" style="font-family:georgia,serif">Interesting.  I just finished Steve McConnell's response to #NoEstimates, <a href="http://www.construx.com/10x_Software_Development/17_Theses_on_Software_Estimation_%28Expanded%29/" target="_blank">17_Theses_on_Software_Estimati<wbr>on_(Expanded)</a>.<br><br></div><div class="gmail_default" style="font-family:georgia,serif">The most essential of those theses might be:<br><br><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><b>5. Estimates serve numerous legitimate, important business purposes.</b><br></blockquote></div><div class="gmail_default" style="font-family:georgia,serif"><br>​I think the #NoEstimates response to that is, estimation doesn't work, so even if estimates would be nice, estimation doesn't actually provide them.<br><b><br></b></div><div class="gmail_default" style="font-family:georgia,serif">McConnell's response is basically, estimation does work if you know what you're doing and do it right.  <br><br><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><b>1. Estimation is often done badly and ineffectively and in an overly time-consuming way.</b></blockquote><div> </div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><b>2. The root cause of poor estimation is usually lack of estimation skills.</b>)<br></blockquote><br></div><div class="gmail_default" style="font-family:georgia,serif">And also that Scrum is actually very compatible with estimation, and that discussions should be pragmatic and not dogmatic:<br><b></b></div><div class="gmail_default" style="font-family:georgia,serif"><br><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><b>14. Scrum provides better support for estimation than waterfall ever 
did, and there does not have to be a trade off between agility and 
predictability. </b></blockquote><div> </div><blockquote style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex" class="gmail_quote"><b>16. This is not religion. We need to get more technical and more economic about software discussions. </b></blockquote></div><div class="gmail_default" style="font-family:georgia,serif">​<br><br></div><div class="gmail_default" style="font-family:georgia,serif">What did he call his burnup charts (charts that, by the way, support estimation at a glance)?<br></div><br><br></div><div class="gmail_extra"><br clear="all"><div><div data-smartmail="gmail_signature"><div dir="ltr"><div><div dir="ltr"><div><div dir="ltr"><font color="#888888"><div><b>-- <br>Joel Aufrecht<br></b></div><div>Team Practices Group<b><br></b></div><div>Wikimedia Foundation<br></div></font></div></div></div></div></div></div></div>
<br><div class="gmail_quote"><div><div>On Wed, Sep 21, 2016 at 1:29 PM, Max Binder <span dir="ltr"><<a href="mailto:mbinder@wikimedia.org" target="_blank">mbinder@wikimedia.org</a>></span> wrote:<br></div></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div><div><div dir="ltr"><div><div>I attended a Meetup last night, via Bay Area Agile Leadership Network.<br></div><div><br>Don't have Allen's deck, but here is his website with a lot of the same:<br><a href="http://holub.com/" target="_blank">http://holub.com/</a><br><br></div>TL;DR: His presentation was about how estimation is bad (among other things, he argues that estimating is unethical). I felt it was a fairly aggro presentation (full disclosure: I'm pro-estimation), but under the veil of what I observed as an extremist view of Agile was a message promoting Agile as a state of mind, rather than a panacea-by-rigid-structure, all too often deployed by "Agile" companies. <br><br>He also showed burnup charts (he didn't call them that) very similar to those on <a href="http://phlogiston.wmflabs.org" target="_blank">phlogiston.wmflabs.org</a>. <br><br></div><br></div>
<br></div></div>______________________________<wbr>_________________<br>
teampractices mailing list<br>
<a href="mailto:teampractices@lists.wikimedia.org" target="_blank">teampractices@lists.wikimedia.<wbr>org</a><br>
<a href="https://lists.wikimedia.org/mailman/listinfo/teampractices" rel="noreferrer" target="_blank">https://lists.wikimedia.org/ma<wbr>ilman/listinfo/teampractices</a><br>
<br></blockquote></div><br></div>
</blockquote></div><br></div></div></div>
<br>______________________________<wbr>_________________<br>
teampractices mailing list<br>
<a href="mailto:teampractices@lists.wikimedia.org" target="_blank">teampractices@lists.wikimedia.<wbr>org</a><br>
<a href="https://lists.wikimedia.org/mailman/listinfo/teampractices" rel="noreferrer" target="_blank">https://lists.wikimedia.org/ma<wbr>ilman/listinfo/teampractices</a><br>
<br></blockquote></div><br></div></div></div>
<br>______________________________<wbr>_________________<br>
teampractices mailing list<br>
<a href="mailto:teampractices@lists.wikimedia.org">teampractices@lists.wikimedia.<wbr>org</a><br>
<a href="https://lists.wikimedia.org/mailman/listinfo/teampractices" rel="noreferrer" target="_blank">https://lists.wikimedia.org/<wbr>mailman/listinfo/teampractices</a><br>
<br></blockquote></div><br></div>