I totally disagree on some conclusions here. Of course, clean code does not mean perfect code. However, writing clean code is exactly what helps to meet time constraints in the near future. Hairy code does not.
And I'd argued even, that clean code doesn't necessarily takes longer to write.
As for scaring off beginners - do you want to be operated by a very beginner surgeon? I guess no. They may be scared, but they need to learn.
"where you know exactly what to write and where to put it" - I think if one does not know what to write, then one should not, and instead needs to take time to think what is the problem, and what can be a solution. Even, end especially, under time pressure situations. Because if one does not know what to write, it means the problem is not understood - so writing something just for the sake of it actually delays the project.
"I would not suggest spending several hours trying to research the most optimal way of implementing that feature." - this really depends. Clean code does not mean one needs to optimize. But if you add a query to the database without proper indexes, chances are it's better you research first (or at least before it hits production with millions of records).
Good design principles, once internalized and reinforced in practice will lead to writing clean code, even right the first time.
"I believe a lot of people feel like crappy programmers because their code looks like a giant mess." - it is good they feel it. Hopefully, they also absorb growth attitude and learn from that feeling of pain and shame. Maybe, those, who do not feel like that towards their code need to wake up?
(Also in recent O’Reilly additions — quite on topic: https://learning.oreilly.com/videos/understand-the-programmers/60417VIDEOPAIML ) - “Failure is good”.