They can only afford to pay the squishy b-school marketing types. Good marketers are worth thousands of dollars per week of work. A really really good one with a good work history can cost hundreds of thousands of dollars.
There is not a lack of good marketers. They sure are less good marketers than good programmers. But the only lack here is in one thing: startups tend to think that they can underpay a marketer. Listen, there is no way you should try and hustle someone who knows how much they are worth. You will only get ignored. Plus you want to hire someone who will call out your obvious product flaws. Do you really want to underpay the person who will be in charge of making you money?
They wait to hire a marketer because most startups begin by first creating a product and then thinking of ways to sell it. I've learned that its simpler and more profitable to just sell it and then build it.
Also, its marketers who have the power in the startup/marketer relationship. I can find new clients to work with tomorrow morning, but you cannot find good marketers to hire. The same power programmers have over business guys is had over them by marketers.