I am a terrible programmer. My code is always written awfully. I use only basic functionalities of easy programming languages. My methods are weak, they could be rewritten so that they run much more effectively. I look for help on StackOverflow and Google hundreds of times to write quite simple peace of code. Most of the time I don’t fully understand what I copy. I just paste that peace of code, run the program and if it works I am happy 🙂 but it only works 50% of the time because sometimes I do not understand how to properly put that code in my program. I cannot remember the syntax of any language. So I have to look on examples online almost every time I need them. Even the easiest and basic ones like syntax of for loop or proper names of types in Java (not joking). I am very slow. I need 5–7 times more time than an average programmer to write a basic function. My code is written very unprofessionaly and I need to look up basic things on internet that I used in my code a hour ago.
I managed to get 1,000,000 total downloads on all my Android apps! and I am very proud of it. The games are simple but people like them. Average rating is 4.2/5. I had to test much. Make changes. Redesign the whole app several times. Analyse user behavior and change some parts of my apps to meet their needs. I get tens of 5 star ratings and awesome comments every day and that makes me happy. I monetized my apps from the day 1, so I also get not a bad income from my creations. I experimented much with marketing strategies. Some did not work. Some have boosted my downloads greatly. I learned much on Quora and I am very thankful to this awesome community! I also bought some courses on Udemy (before buying a course always Google-search for a coupon). Thay also helped me a lot.
So the reason I am writing this answer is that even if you know that you are between 20% or even 1% worst (like me) programmers in the world, you can still be successful. Do what you love. Passion makes miracles.