What makes you a good programmer is your ability to make non trivial programs that can do complicated things and do them correctly and efficiently so that the user feels like they are using a well made product and not some unfinished half-baked thing.
The only way to acquire that ability is by practicing. And what I mean is actually creating programs that are just a little bit outside your comfort zone, enough to be challenging and engaging and interesting and fun to work on, but not too far out of your comfort zone to be scary and overwhelming.
So look at the last program you've made and think about the areas that you feel you're good at and the areas that need improvement, and work on the areas that need improvement.