First, lack of confidence and purpose, a lot of people start a programming language with no idea or goal, that is a self-created roadblock, instead ask yourself, what are you learning it for, your goal does not need to be a diary full of affirmations and beliefs, it can be a simple sentence. I personally, enjoy it as a hobby and a part time job, that's WHY I code, and I aim to improve people's lives no matter how little, that's WHAT I aim to benefit from coding. Yes, yours can be that simple or much simpler.
Leaving how to learn and going back to the main topic of the article, the fourth is fear of failure, we watch youtubers go through different languages and code well, no mistakes, and we think we can never be that good, first mistake is that short video with no mistake was a week of coding with bugs. The second is if you say you won't be good, you won't be, period.
So, what can make you better, I will drop a few points in this article, and my one biggest helper is learn as if you will teach it in 6 months, yes, learn as if you will teach it, apply this to anything you learn or practice and watch your progress improve tremendously. When you learn with this mentality, you will find yourself subconsciously teaching yourself and subconsciously, you will believe you are getting better.
Secondly, you won't go from a 'hello world' to a search engine with a Google sign in, practice makes perfect, don't have a project? Try to practice concepts even if it's one, for example, a little console.log project on destructuring, a project does not have to be a mega code block. Have fun on your journey, that's what counts, and never give up. Failure is not the end, Success isn't the main decider, it's the ability to rise again that counts.
I will like to end this article at this point, thanks for reading, this subject is broad and I hope to write more on it in the future, drop your comments, I will love to hear your pattern of overcoming this obstacle. Thank you very much.