That is great advice if you set out to build a profitable business on day one.
But it seems to me that there are many projects out there like mine. You start building something because it scratches an itch you have. You think it would be fun to build. You keep adding features and fine tuning the code because you want to see something work better and/or faster than anything else.
Then one day you look at it and say: "I wonder if other people will think this thing is as useful as I do (and be willing to pay something for it)?"
It might still be a work in progress, but it does a number of very useful things, so you now have to put on your marketing hat or team up with someone who is good at that.