I mostly agree, though I don't think "business plan" in this context is meant to read "a 100+ page analysis of the market and other bullshit." Rather, I took it to mean a sense of how you're going to get the product out to users and (maybe) how you'll eventually make money. Both of those things are required if you want your business to become sustainable.
In spite of this being repeated so many times still it is so easy to fall into the trap. At-least it was for me. Working on my latest project we discussed so much on the feature, design and others but never on how to get users. We kinda assumed that once the project is done users will be waiting for us.
smanek's point still stands. If your plan was incorrect and what you THOUGHT was going to make you money, doesn't do so, then you still don't have a business.
However it's much easier to get users if you do have a business plan, or as I prefer to think of it, a business model. If you throw something out there on the internet and start gaining users, you probably have more of a plan (model) than you think.
Having just a good business model can generate sales too though. Actually there's quite an argument for doing so before writing any code. Its a whole lot easier to change some words around on a word document than to completely rewrite an application.
A business without a business plan is still a business.
A codebase without users is probably not a business, sure.
But if you have users there is almost always a way to monetize that. Thus, a business. The plan doesn't have to be any more complex than, "Charge for something."