I wouldn't put too much stock into quotes like this (I do agree that bad software engineering and repeatedly changing design specs are to blame for CP77 though). The old adage of " the last 10% of coding takes 90% of the time" talks about how it takes a lot of time to finish and debug complex code and Shamus Young constantly re-iterates his own experiences with how hard it is to hit milestone dates even when you aren't interrupted, because programming is seriously tricky business.This quote also forgets why you keep getting new specs from the game designers: Not because designers just love to fine tune forever, but because different departments run into various problems they can't solve.
If you're an entry level programmer in the AI department you won't know what's going on with the gunplay, physics or netcode programmers. If a feature of your game is meant to guns that can shoot around walls, you code for that. But it turns out that coding curving bullets is really hard (you have made a really nifty AI that will attempt to hug the corner so the bullet curves around them though), so instead the designers talk to the gunplay coders and decide that bullets will now travel through walls instead. Guess what AI has to do? Scrap all your cool wall hugging and rewrite the AI for wall penetration instead. So you do that, but netcode is having real problems with getting your advanced crowd AI to function in MP because it requires too much bandwidth. Design comes back to you: Resdesign the crowd AI. Then you realize that the bouncing physics for pilates balls is causing some really wonky physics for tires which messes up driving AI. You talk to physics, they can't figure it out and game design intervenes: Physics have to change how pilates balls work.
For all of the above, the problem is not feature creep or indecisive game designers, but naturally occurring problems during game development. Game design will have final say about what to keep, what to cut and what to change so naturally it will seem like they are constantly changing their mind. In reality, they are often just reacting to problems that crop up and trying to keep the game with as many cool features as possible. For the average coder or artist it might seem as if game design are indecisive and neurotic, but they are trying to juggle the competing demands of an ambitious design document and hundreds of people who are running into hard to solve problems every day.