Hard to say cause I'm still pretty bad at coding. My biggest advice would be to learn how things work properly - don' assume and half-ass them, and also try to thing of all systems your game will have (and how they will interact with each other) beforehand. I lost hundreds of hours to inconvenient methods and bad planning.
And no, all my graphics is sprites, so no physics :^)