Correct and broken are black and white if you can divide the problem correctly, and there's no excuse for shipping broken code. At some point someone has to take responsibility for not shipping garbage. I get that you, me, or any engineer don't always have that luxury, but it should be a shameful thing not something you accept as normal or ok.
I would argue it's much worse "engineering" to have no product at all.
Is that a euphemism for wandering around aimlessly? committing random code to see what works? That's also not good engineering....
Not saying it won't end in the outcome you want people gamble all the time, I'm just saying it's bad engineering.
Those, among others, are the types of cases where spending extra time getting something exactly right (even if just a few hours) is just not worth it.
It seems that only in Silicon Valley startups and the like do people start companies with only the vaguest idea of what they are actually going to build and no idea of whether or not they're solving an actual problem that anyone cares about.