Earlier quoted context omitted.
I think some of the contention comes in the statement "first make it work, then make it work well and then make it pretty or fast (depending on what the project is)" and the belief that without good design in the first place it doesn't really work. Leaving design till the end means it won't really have a positive impact on the use of the software.
While my statement probably doesn't covey this very well, I certainly am not an advocate of amalgamating dirty hacks or throwing any thoughts about good design out the window in the name of speed. You are quite right that leaving design until the very end isn't incredibly efficient or effective. I'm also not a big believer in the "big design effort up front" methodologies. I tend to think of design (of code, at least…
As a designer, I feel that the design process is meant to highlight better routes to take with any artefact. It develops it further whilst keeping the goals more focused as they are nearer.