I am not sure what do you mean that programming is “think out of the box”. Most problems you are going to encounter in any development (game, or whatever) are already solved. There is no glory neither it is practical in spending 1 year on new path finding algorithm…
Either way, find an old game you like and make it happen. Why? because in game development there are at least 2 layers:
- Development as such -> programming, code writing or whatever you want to call it
- Game design -> creating actual game idea
- Then there is art part of it as well – but that’s other story.
Apparently since you are asking this question here, you do not have game design idea but you want to learn game development.
You can create game from scratch but if you start learning how to design game and how develop a game everything will take you more time. You will be learning 2 different aspects of game creation. I do not say it is bad idea, just be aware you are learning 2 different things.