When it's 4 days or 4 months, then it becomes an issue.
I would dig myself into a well so deep it might take a month to crawl out of before my code is useable again, but it would be a huge waste to stop.
If you’ve only invested 4 hours it doesn’t seem that bad.
1) simple, polished, functional UI
2) quick and dirty code
If the code is nice, then the requirements aren't met! You might even write this in large letters on a piece of paper or whiteboard next to your desk at home, keeping it visible while you work on it.
Environmental clues like that can sometimes be helpful for me. I view it as an attempt to collaborate with "future me". Sometimes the collaboration is a failure, other time it is a great success. I think one can get better at this as well.
Back on topic, one phrase I really like "Make it work, then make it nice". The definitions of "working" and "nice", of course, will depend on the context. But I find it to be a helpful maxim.
I don't know if it's my enterprise upbringing (been working for a megacorp for ~20 years), my love of tech, or my language of choice (C#, which I love, BTW), but sometimes I wish I could just ship a working product.