title: What is the best approach for coding in a slow compilation environment?
body: <p>I used to be coding in C# in a TDD style - write/or change a small chunk of code, re-compile in 10 seconds the whole solution, re-run the tests and again. Easy...</p>
  
  <p>That development methodology worked very well for me for a few years, until a last year when I had to go back to C++ coding and it really feels that my productivity has dramatically decreased since. The C++ as a language is not a problem - I had  quite a lot of C++ dev experience... but in the past.  </p>
  
  <p>My productivity is still OK for a small projects, but it gets worse when with the increase of the project size and once compilation time hits 10+ minutes it gets really bad. And if I find the error I have to start compilation again, etc. That is just purely frustrating.</p>
  
  <p>Thus I concluded that in a small chunks (as before) is not acceptable - any recommendations how can I get myself into the old gone habit of coding for an hour or so, when reviewing the code manually (without relying on a fast C# compiler), and only recompiling/re-running unit tests once in a couple of hours. </p>
  
  <p>With a C# and TDD it was very easy to write a code in a evolutionary way - after a dozen of iterations whatever crap I started with was ending up in a good code, but it just does not work for me anymore (in a slow compilation environment). </p>
  
  <p>Would really appreciate your inputs and recos.</p>
  
  <p>p.s. not sure how to tag the question - anyone is welcome to re-tag the question appropriately.</p>
  
  <p>Cheers.</p>