The really Bad Thing about not thinking about the application, is that every time you add something, something else will inevitably break.
Until recently, this has been predominant view: If you don't Plan Ahead, things will break later.
Extreme Programming offers a novel counter proposal: If you only think one step ahead, and at the end of each step you have a well-tested, well-factored system, then the chances of your breaking something on the next, not-yet-thought-of step are reduced to near zero. Well-factored implies good structure, with things done "once and only once". Then means that many decisions are well localized. A well localized decision is much easier to safely change or replace than once that's becomes spread out over time.