Make games you know are possible within your abilities. Get them done and out before trying to make a dream game. More games means more rounded understanding of the entire process as well as more external feedback on what to improve. Just a personal tip after being self-taught in programming games for 17 years. Modularization is by far your best ally. The better you can understand how to compact concepts such that you don't have to edited/add 50 lines of code to achieve one thing, the more efficient you will be. And if you have a specialty in a different field then lean into that, say your a good artist but want to make games generally. Make a very basic platformer but make up for it with good art and design. You will get better through failure and correction/trial and error, not just practice. So prepare yourself.