Buying brand new cars is not good financial advice either. Instant depreciation, no time for problems to blow up in someone else's face first, tiny longevity gain over buying a 2-3 year old car for drastically less.
Oh, I agree with that in general. I've just never been able to get a 2-3 year old car to be worth keeping for more than another 3-5 years (either previous owner got rid of it early because it was a lemon, or didn't take care of it [oil changes, garage kept, easy driving, etc]). Whereas a car I've owned from day one (since year 2000) has only needed minor repairs (most of which I do myself, except when the fuel pump went out far from home). Once it starts costing me more than a couple thousand a year for repairs, or becomes unreliable, it will be time to trade up. If I keep it for a couple more years, it comes out to about $1500 a year. Heck, I may keep it for 20 years. I just can't see me wanting to keep a car I bought used for 20 years though (or till the car is 20 years old even).
Human beings are not perfectly rational automatons. Sometimes they want brand new stuff.
I have a friend who is 15 years older than me and very financially savvy. He grew up in India in a poor family and his father spent all his free time repairing their ancient clunker that kept breaking down. That memory is enough that he only buys new cars.