Great point. The long-term survival of a business distills down to being able to bring in more money than it costs you to produce a product. It's such a simple concept, but it's easy to forget when you're swept up in the excitement of coding and engineering an idea you're excited about.
Ironically, it's the most ambitious engineers who tend to make the mistake of doing too much engineering work before trying to validate the product. I can't count how many times I've signed up to follow ambitious engineers' startup ventures that turn into years of highly-detailed marketing updates for products that never seem to get any closer to materializing. These are the startups that fizzle out 2-3 years later with blog posts blaming the industry, the timing, the economy, or other external factors for their failure.
In reality, most of them could have determined their market fit, or lack thereof, much faster by launching a smaller version early and iterating with customer feedback.