<div dir="ltr"><br><div class="gmail_extra"><div class="gmail_quote">On Mon, Aug 10, 2015 at 10:20 AM, Bryan Davis <span dir="ltr"><<a href="mailto:bd808@wikimedia.org" target="_blank">bd808@wikimedia.org</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">I think I would personally invert Kevin's assertion and say that most<br>
teams are (or should be) spending a non-trivial amount of time<br>
performing both maintenance and responsive correction work. Hopefully<br>
this doesn't rise above a reasonable threshold (say 30%) of the full<br>
team capacity, but it really would always be there. </blockquote><div><br></div><div>I actually proposed 10-20% as a guess, and you're saying not more than 30%. So I don't see much disagreement between us about the amount of time a team should spend on maintenance. <br><br></div><div> I'm not sure yet on the "keeping the lights on" vs. "maintenance" distinction, but I don't think that matters right now. <br></div><div> </div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">This "burden" is not unique to the WMF or FLOSS systems. This is one<br>
of the reasons that a typical software development organization with<br>
stable funding grows its developer team at a fairly constant rate.<br>
That head count growth doesn't go into acceleration of new<br>
development; it is instead used to offset the constantly increasing<br>
maintenance cost of running a successful software product. </blockquote><div><br></div><div>I'm not sure exactly what you mean, but there's a chance I might disagree. If you are suggesting an inevitability that code will become harder and harder to maintain over time, I'll push back. Yes, most teams end up needing more developers to compensate for ever-increasing tech debt, but that effect can be reduced, if not avoided. I worked on a 14-year-old codebase, and although it was far from perfect, it remained quite maintainable. That was mostly thanks to extensive unit tests, strict coding styles, and ongoing aggressive refactoring. <br><br></div>Kevin<br></div></div></div>