You are starting a journey which is not short, that will be full of amazing things but also frustration. You also mentioned in a post that you want to create a videogame like EU4 and HOI4. I think that is a good goal to have, but also a quite ambitious one.
In my view, you should focus on finding a way to learn programming that keeps you motivated and prevents you from quitting early in the process. Choices of programming languages, technologies, platforms and things with fancy names should be done with that in mind.
So, how to learn programming? I think that you should...
- Find some materials you find yourself comfortable with. Those materials might be reference books, video tutorials, guides, online courses or anything else. You need to find what you like to use as a reference.
- Start making things as early as possible, and complete them as often as possible. In other words: start simple, small projects that you can complete and start them often, don't wait until you can implement a quicksort to write something you are interested in writing. Maybe even don't write a quicksort at all. Focus on doing stuff that interests you while making you learn.
- Find humans that you are comfortable with to share your progress with, ask and learn from. This community may very well be that group of humans, but you can think of others too. Maybe some friend, maybe someone you know online. This is useful because other people can make your learning process faster and, importantly, less frustrating. Other people can also help you with the two previous points in this list: finding materials and giving some ideas for new activities or projects.
So, where exactly to start learning? I think that you could... (different options)
- Start learning a programming language, such as Python. Python in particular is easy to learn, very powerful, well supported and has huge community. It will help you learn programming and it will be useful after you have learned. Other languages can also be okay, for instance C#, which is maybe slightly more difficult than Python but it's a good choice for game development.
- Start learning a game engine, such as Godot. This way you will need to learn the game engine AND programming in order to do anything, and that's maybe a little too ambitious, but it is more pragmatic.
- Find a community, school or similar that can guide you through the learning process and stick to it. I am talking about sites such as https://www.freecodecamp.org, https://exercism.org/ or https://www.theodinproject.com/. I am not recommending any of these in particular because I have no experience with them, just mentioning them so that you know what I am talking about. These communities usually have a plethora of challenges or guided exercises that walk you through learning how to program.
There are many options, and you will hear a lot of recommendations of what worked for other people. That is fine, but you need to find what works for you π