Improve your code by doing programming puzzles
After learning to code the most important thing is to practice. Creating your own game is invaluable, you will be able to more clearly see how everything fits together and learn how to squash the bugs in your code. Also don’t despair about bugs in your code because you learn so much from them each time you solve them, the only difference between a rookie developer and a master developer is how many bugs they’ve squashed.
That said solving programing puzzles I think is also important to your on-going education. When you’re solving a puzzle you’re having to read another persons code, and this is crucial if you’re going to be working with other developers.