Great article, even four years later. I can relate so well to the descriptions partially because I've found myself in both positions so often. I wonder however if it there is a small or even a large correlation to how long you've worked on a problem. On any given project most of the old timers will want to take the Incrementalist approach and most newbies will want to take the Completionist approach. I have rarely ever met a programmer that didn't want to rewrite from scratch the project he just joined. It's also common for the people working on the same project for years to want to maintain the status quo and only make small incremental changes. I been in both situations myself and witnessed this dozens of times.

I don't fault new members for wanting to inject new ideas in. Older members often get stuck in a rut and forget to think out of the box sometimes. Many of their assumptions in the past don't apply anymore and it's essential to reevaluate sometimes. It's also the case the the old timers know how the company works. They know the pitfalls in the technology, in the business requirements, and and other dependencies. The newbies often turn out to be naive dreamers that just waste everyone's time.

I agree that the balance is essential though. Old ideas must be tested and reevaluated periodically. We also have to avoid the pitfalls of always rewriting everything all the time. The times when companies have failed is when one group becomes two strong: either no change ever occurs or the baby is thrown out with the bath water.