Develop software (and so games) is an iterative process that need a start.
Yes, indeed, that is quite true. It's best to do a "once over" which is an early cycle in the process to cover all the basic skeletal structure of the game and then add coding flesh to that in orderly and categorized fashion. Following cycles add more flesh, including the real muscle of game scripting and the outer parts which the ender user sees such as the GUI and other artistic assets.
Highly sophisticated game developers tend to work hard on game design before coding (or before much coding) and the next stage is software architecture using flowcharts and many other kinds of documentation in potential. A basic skeleton of a game is then coded in the third stage by many people who have years of experience. The forth stage might be either heavy debugging or go to adding more player features and art assets, depending on your experience.
At this point, only fundamental implementation of these stages and their tasks is in your ability but you will advance much faster if you are mindful of them and execute them carefully. Avoid spaghetti coding or you will spend more time debugging and perhaps delays by abandoning certain sections of coding. Learn class files and other modular forms of coding. All of this basic struct should be planned as much as you are able.
Make 3-5 very simple single player games before doing anything complex such as mult-player. If your workflow pipeline is correct, then your coding will flow naturally from one game to the next, using good code made previous by you to springboard into the next project.