The most important lesson I ever learned as I was starting out in software engineering came from my Design Principles teacher, during my short stint at a community college. That was a class which was technically not associated with a specific programming language, though the same teacher also taught various programming classes in different languages. She also wrote her own textbook for that Design class, actually… I still have my prepublication copy of it somewhere, that she had handed out to the entire class for free that semester. To this day, I still have a great deal of respect for that teacher. But I digress.
The lesson I learned from her was this: Programming languages are just tools like any other. Tools come and go over the years. The skills that you learn which will last beyond whatever language you’re learning and using right now are going to be things like how to construct good logic and how to structure a meaningfully intuitive user interface. These are the things that you should focus on perfecting first and foremost, rather than the syntactical nuances of any given language. If you have a good design at the outset, everything else should fall into place much more easily.
You are going to be short-handed on tools to do that if you stick to Python, though Python is great to get introduced to programming. C++ and C# are going to allow you to work with the most used game engines in the market, but if you’re just starting to learn, you’re pretty far away from getting to your goal anyway.
A sensible route to take would be making some scripts in Python, then small apps in C, then small apps in C++, then a very small game on Unity, Unreal or Godot. Completing each of these milestones means that you have (or should have) learned either technical capabilities or philosophy of design that you are going to need for a very large piece of software with intricate logic. The extra neat part is that, if you give it up at some step of the way, you have still learned useful stuff. If you need extra motivation for things that do not seem to be too related to your ultimate goal, conceptualize those scripts or small apps as prototypes of modules of your dream game.
my hyperfixation rn is learning how to code
Ooooh ! Lovley. What language? Pyton? C? Java?..
im still looking into what will suit me best. maybe C#, C++ or Python
Welcome to the fold! Be warned: coders tend to be a weird bunch of folks.
The most important lesson I ever learned as I was starting out in software engineering came from my Design Principles teacher, during my short stint at a community college. That was a class which was technically not associated with a specific programming language, though the same teacher also taught various programming classes in different languages. She also wrote her own textbook for that Design class, actually… I still have my prepublication copy of it somewhere, that she had handed out to the entire class for free that semester. To this day, I still have a great deal of respect for that teacher. But I digress.
The lesson I learned from her was this: Programming languages are just tools like any other. Tools come and go over the years. The skills that you learn which will last beyond whatever language you’re learning and using right now are going to be things like how to construct good logic and how to structure a meaningfully intuitive user interface. These are the things that you should focus on perfecting first and foremost, rather than the syntactical nuances of any given language. If you have a good design at the outset, everything else should fall into place much more easily.
Python or rust would be my suggestion
Peraonaly a fan of Java. Its nice not to have to deal with pointers. But python is a lovley language especially if you are a beginner
What are your goals, exactly?
Making a FOSS grand strategy game. I like the genere but hate the dlc policy of paradox.
You are going to be short-handed on tools to do that if you stick to Python, though Python is great to get introduced to programming. C++ and C# are going to allow you to work with the most used game engines in the market, but if you’re just starting to learn, you’re pretty far away from getting to your goal anyway.
A sensible route to take would be making some scripts in Python, then small apps in C, then small apps in C++, then a very small game on Unity, Unreal or Godot. Completing each of these milestones means that you have (or should have) learned either technical capabilities or philosophy of design that you are going to need for a very large piece of software with intricate logic. The extra neat part is that, if you give it up at some step of the way, you have still learned useful stuff. If you need extra motivation for things that do not seem to be too related to your ultimate goal, conceptualize those scripts or small apps as prototypes of modules of your dream game.