title: Our code sucks and I'm powerless to fix it. Help!
body: <p>Our code sucks.  Actually, let me clarify that.  Our <em>old</em> code sucks.  It's difficult to debug and is full of abstractions that few people understand or even remember.  Just yesterday I spent an hour debugging in an area that I've worked for <strong>over a year</strong> and found myself thinking, "Wow, this is really painful."  It's not anyone's fault - I'm sure it all made perfect sense initially.  The worst part is usually It Just Works...provided you don't ask it to do anything outside of its comfort zone.</p>
  
  <p>Our new code is pretty good.  I think we're doing a lot of good things there.  It's clear, consistent, and (hopefully) maintainable.  We've got a Hudson server running for continuous integration and we have the beginnings of a unit test suite in place.  The problem is our management is laser-focused on writing New Code.  There's no time to give Old Code (or even old New Code) the TLC it so desperately needs.  At any given moment our scrum backlog (for six developers) has about 140 items and around a dozen defects.  And those numbers aren't changing much.  We're adding things as fast as we can burn them down.</p>
  
  <p>So what can I do to avoid the headaches of marathon debugging sessions mired in the depths of Old Code?  Every sprint is filled to the brim with new development and showstopper defects.  Specifically...</p>
  
  <ul>
  <li>What can I do to help maintenance and refactoring tasks get high enough priority to be worked?</li>
  <li>Are there any C++-specific strategies you employ to help prevent New Code from rotting so quickly?</li>
  </ul>